===== Account Permission File permissions.xml ====== ==== Current state ==== Currently Manaserv knows 8 permission classes (player, tester, gm, developer, administrator and 3 reserved for future use). The permissions of every class are hardcoded. ==== Target state ==== To allow server administrators to decide their server management policy it should be possible to freely name the 8 available classes and define the extent of their permissions. The limitation of 8 classes should stay because it allows the economic and performant method of storing it in an 8 bit bitfield. ==== permissions.xml ==== Player !login !chat !fight !level !createcharacter @where GM Game Master @ban @kick @kill @warp !createcharacter Dev Developer @spawn @item @warp [...] Admin @giverightclass @takerightclass === === User with this class may perform this action. Action names starting with "@" are the corresponding @commands, those starting with "!" are other actions which are not performed with a command. === === A user with this class may '''not''' perform this action, even when it has other classes which allow it. === === Alternative name for a class which can be used in the @giverightclass or @takerightclass ==== Comments ==== I agree with the principle. Could you add some details about the implementation status? Also, is the xml file named rights.xml or permissions.xml? I'd say at.xml. at -> access table? Why not also a more common one? acl.xml? "at" as in @. acl.xml would acceptable too, IMO. Ok for renaming to acl.xml, then, Crush?