Page 1 of 4
My fork - ownership of blocks, clans, teleports

Posted:
Mon Sep 12, 2011 09:07
by jachoo
Hello everyone!
I'm working on a group/clan system for MineTest.
My idea is something like this:
- any player can define one clan => he becomes its admin
- any member of the clan can add any other player to that clan
- any member of the clan can kick any non-admin member from that clan
- world blocks (16x16x16) may have (at most one) owner clan
- only members of the clan can modify those blocks
- clan owns a terrain by placing on it some special block
Any comments?
[h]Work progress:[/h] (upgrade)
- block (16x16x16) ownership - 100%
- server-side ownership checking - 100%
- client-side ownership checking - 100%
- client-side ownership displaying - 100%
- special block to take ownership - 100%
- new client permission "CLANS" - 100%
- clan names - 100%
- defining a clan - 100%
- deleting a clan - 100%
- admin of a clan - 100%
- adding players to clan - 100%
- kicking players from clan - 100%
- teleports - 100%
[h]Almost ready![/h]
It needs some more testing, especially on Linux. Please help:
https://github.com/jachoo/minetest-jachoo. Windows binary:
https://github.com/downloads/jachoo/minetest-jachoo/minetest-jachoo-rc1.zip[h]Screenshots[/h]




Posted:
Mon Sep 12, 2011 12:40
by Staffs
It sounds hard but i believe its Awesome !

Posted:
Thu Sep 15, 2011 17:47
by jachoo
Sources are here:
https://github.com/jachoo/minetest-jachoo[h]How it works[/h]
Player has 4 new commands:
/#clan-new clan name - creates a new clan. One player can create only one clan. Creator of the clan can't be kicked from it.
/#clan-delete clan name - deletes clan. Only clan admin can do this.
/#clan-join clan name player name - adding another logged-in player to the clan. You must be a member of this clan.
/#clan-kick clan name player name - kicking another logged-in player from the clan. You must be a member of this clan.
To own the terrain you have to be a clan member and just place somewhere special block (border stone - 8x stone + 1x steel block) and set its content to clan name (it works like signs). Now, only members of that clan can modify that terrain (16x16x16 blocks). If you remove that block or change its content to null, "#" or "nobody",
ownership is cleared.
Only one clan can own one terrain block, but player can be a member in many clans.
[h]It needs some more testing, but I don't have a server. So if anyone could run a public server of this version, it would be great :)[/h]
Additionally: I don't like /#teleport command. In minetest-jachoo, you can build new special block "teleport". It's made up from 8 steel blocks and 1 mese at the center. After placing a teleport, you can set its content to coords in format
X,Y,Z {some text, e.g. name or comment}. Player is teleported when stands on a teleport.

Posted:
Thu Sep 15, 2011 23:40
by Calinou
I love the group idea/protection idea, great work so far! When PvP will be implemented, people in the same group will not be able to attack other players of the group, probably. I'll look into making a non 24/7 server tomorrow, maybe.

Posted:
Tue Sep 20, 2011 00:35
by jachoo
New version is available on github.
[h]New blocks:[/h]
- border stone (8 stone (not cobble!) + 1 steel block (!) at the center) => 4 border stones
- teleport (8 steel blocks + 1 mese at the center) => 1 one-way teleport

Posted:
Fri Sep 30, 2011 20:16
by jachoo
New version on github.
- [h]Merged 0.2.20110922 minetest version[/h]
- groups renamed to clans

Posted:
Sat Oct 15, 2011 22:24
by jachoo
New version. Almost final :)
- added new privilege: CLANS (to perform clan-related commands)
- added "clan-delete" command
[h]Testers needed![/h]
Source:
https://github.com/jachoo/minetest-jachooWindows binary:
https://github.com/downloads/jachoo/minetest-jachoo/minetest-jachoo-rc1.zipEnjoy!

Posted:
Sun Oct 16, 2011 07:44
by Staffs
I Shall test !

Posted:
Sun Oct 16, 2011 07:58
by Staffs
Prooooblem

Posted:
Sun Oct 16, 2011 07:59
by Staffs

Posted:
Sun Oct 16, 2011 09:59
by jachoo
Oh... Sorry. Try now.

Posted:
Sun Oct 16, 2011 12:43
by Atype
Everything works fine.
Ubuntu.

Posted:
Sun Oct 16, 2011 13:58
by jordan4ibanez
let me try this :D

Posted:
Mon Oct 17, 2011 09:14
by hijera
tested on windows xp sp2. ok

Posted:
Mon Oct 17, 2011 16:34
by Staffs
The fork is AWESOME and yes it works !

Posted:
Mon Oct 17, 2011 16:49
by jachoo
Can anyone run a public server?

Posted:
Tue Oct 18, 2011 05:11
by Staffs
Yea that would be cool

Posted:
Sun Oct 23, 2011 23:33
by placki
test server (seems to work):
89.167.22.131 port 30000
trying to connect with any other client version than jachoo will not work, so please do not try.
btw. In my opinion allowing anybody from clan to kick/add anybody else (except creator) is mistake.
1. Ordinary members should be only allowed to build, without clan management rights.
There should be extra class of clan members (officers?) who can kick/add ordinary members (but not creator/other officers).
And only clan creator can promote/sack officer.
/edit:
Other thoughts:
2. Borderstones should have name filled after placement (simply repeat name last inserted into previous borderstone?)
3. With teleports it is possible to create infinite loops/traps. And with borderstones - rooms impossible to escape. So adding server command "/respawn" is a must. This would teleport/respawn player to a safe place with health restored (maybe to any random borderstone of any of his/her clans?). In survivor this would also cause standard death/loss of equipment (so avoid unknown teleports :P )
4. maybe limit teleports, so they only work if target place is owned by player clan (what is the point of building clan fortress if anybody can teleport in?)

Posted:
Mon Oct 24, 2011 12:27
by jachoo
Thanks for comments :)
1. Yes, you're right, but... what if a clan member starts to grief or destroys everything? Allowing everyone from clan to kick him could greatly minimize griefing. We should think about it. Maybe something like 1 hour clan build rights suspension?
2. Good idea.
3. Prisons for griefers ;) But seriously, imo command /die should be enough.
Hmmm... What you think about making clan-related spawn points?
4. Better idea is to allow teleport only to another already placed teleport that is owned by your clan. It's a bit more difficult to implement...

Posted:
Mon Oct 24, 2011 14:00
by placki
1. Suspension until clan admin/officer removes it would be best solution, but very complex.
Timed suspension would limit damage... but then malicious player can first suspend everybody else. Or if retaliatory suspension is allowed - everybody would end up suspended...
3. /die is good.
Always spawning players on (random) clan owned land seems reasonable.
Maybe even add "spawn marker" - only single per clan possible (only clan admin can place it). Player belonging to multiple clans would spawn on random clan marker (if it exists) or some owned ground otherwise.
4. I assume you are talking about pairing teleports - both teleports work if and only if they point to each other. This would be great.
And another minor proposal:
5. How about labelling teleports "x,y,z,name" - so non-clan members would see only name?

Posted:
Mon Oct 24, 2011 14:08
by jachoo
2,3,4 - agreed
1,5 - must think about it...
Lots of work... Help needed...

Posted:
Mon Oct 24, 2011 17:03
by Staffs
jachoo about 5 -->"x,y,z,name" - so non-clan members would see only name? <--
Totally has to be done or else somebody might just use teleport manually and go to places were would not everybody else only clan be

Posted:
Mon Oct 24, 2011 17:05
by hijera
teleport dont work to 0,0,0 .

Posted:
Mon Oct 24, 2011 17:39
by Staffs
Worked for me :/

Posted:
Mon Oct 24, 2011 18:51
by saschakb
For the Arch Linux users I have setup a quick PKGBUILD in the AUR.
Have fun with it,
Sascha
https://aur.archlinux.org/packages.php?ID=53421

Posted:
Tue Oct 25, 2011 08:42
by Staffs
Im arch Thanks

Posted:
Wed Oct 26, 2011 16:44
by Staffs
There should be a /clan-home (set/restore) Or smth like that jachoo new todo list :D

Posted:
Wed Oct 26, 2011 20:00
by jachoo
Alright... Let me summarize...
[h]FEATURE REQUESTS:[/h]
1. Command /die [DONE]
2. Clans - admin / moderators / members [DONE]
3. Pairing teleports, two-way teleports [DONE]
4. Hidden teleport's destination position [priority:MEDIUM] [in progress]
5. Clan's spawn point [DONE]
6. Better graphics of teleport and borderstone [priority:LOW]
7. Client-side teleporting (faster, but will be problematic if server-side flying protection will be implemented) [DONE]
8. When player points to borderstone (s)he should see coordinates that it protects (some players find it confusing that it protects 16x16x16 grid and not blocks in radius around). [priority:MEDIUM]
[h]BUGS REPORTED:[/h]
1. Borderstone should not have no owner [priority:HIGH] [in progress]
2. Better checking of teleport coords + teleport to 0,0,0 [DONE]
3. Prohibit mobs destroy clan's terrain. [DONE]
4. Teleports sometimes don't work [DONE] (see: request 7)
5. option: building/placing objects is not allowed outside of owned land if player points on border of owned land. [DONE]
6. Player has to jump if teleport is placed at eye level[DONE] (take note that this means player can be affected by 2 teleports at once - lower teleport will work)
[h]OTHER:[/h]
1. Merge with celeron55 newest repository version [DONE]
[h]-----------------[/h]
I'll try to publish a new version on the nearest weekend. Anyone wants to help?

Posted:
Wed Oct 26, 2011 20:07
by placki
i can do 1,3,4 + bug1+bug2 if you haven't done that yet.
REQUESTS:
4.
[DONE]8.
[DONE]BUGS:
1.
[DONE] (also fixed removing borderstone from inventory but not placing it on map if block already has owner)
btw: my git repository is here:
https://github.com/placki/minetest-jachoo

Posted:
Wed Oct 26, 2011 20:22
by jachoo
OK. I'll try to do the rest, if I find some time this week...
Today I plan to merge with celeron's latest source.
//edit:
New version on github. Merged latest celeron's sources and some minor changes. I like bigger teleports ;)