Very nice mod.
It's a very good start, but from now my needs can't be fulfill with this current mod
A) Protect
>> currently when protection is defined for a particular zone , the zone is locked, nobody can build in the zone even the server admin.
>>Admin should always be able to dig and place
>>Multi zone : one zone per player or set of players : nobody can't build except the player or set of players or admin
>> BlackList / WhiteList (the list define the players accepted, and refused all others or the list define the players rejected and the other players are accepted)
>> Named Zone : to identify uniquely the zone (for add / remove / zone list and other command)
>>A particular privilege should define the protection administration privilege to enable administrative delegation of zone protection to one or more chosen players.(not only server admin)
>>A command to enumerate current zones defined
>>A command to add/remove a player to a zone
>>A command to enable/disable the zone (on / off protection per zone)
>>A command to customize a message sent per zone when wrong player dig/place on disallowed zone .
B) - Bucket should be allowed/disallowed per zone
>> I know that is more diffuclt to manage liquid flow (out-to-in / in-to-out zone flow) but knowing the limitation it can be nice
C) - Confidential zone
>> A zone parameter should define if a unwanted player should be ejected from the zone (eject up(teleport) to the nearest zone border)
D) Mega feature : Accept and handle overlapped zones.. ( this feature is not mandatory)
>> At least at the beginning a map zone (a zone for the entire world) to define the default behavior (dig/place/bucket) except for ejection (is managed by ban list)
multiple zone ... each zone defines:
Name : "TheZoneName"
Area : (x1,y1,z1)-(x2,y2,z2)
MessageToWrongPlayer : "Sorry You can't dig/place in this area" / "You were ejected from a confidential zone"
Enabled : True /False (defined zone is active or not)
BlackList : True / False (if false then "Players" list define the authorized players )
Players {player1,player2, player3 ....}
Bucket : On/Off :
EjectWrongPlayer : On/Off
One mandatory zone for the map zone (default behavior for the entire map)
it should be a zone with a reserved Name (e.g "World") so by default ...
Name : "World"
MessageToWrongPlayer : "Sorry you're no able to do all what you want (landlord)"
Area: <ignored values>
Enabled : True / False (can choose to ignore the zone definition)
BlackList : True / False
players : {} / {players1, players2 ...}
Bucket : on / off
EjectWrongPlayer : Off (ignored and always be considered as Off )
this World zone can't be removed of course.
Thanks for you current work, I hope that my needs is not too huge/hard to implement but anyway, what I've written is my current need..