Hey guys, This is a thread of one of my 3 ideas for permissions. I'm making 3 threads because the only thing the ideas have in common is that they're permissions related, and would in fact be in 3 different plugins anyway. This is probably the easiest of my 3 suggestions. Simply what it does, is let you choose or change a permissions group, by clicking on a sign. Its sort of hard to describe, so I'll throw a big example at you with everything you should need. First, the permissions groups: Code: groups: Newbie: default: false info: prefix: '' suffix: '' build: true inheritance: - Citizen permissions: - GroupSign.set.warrior - GroupSign.set.mage - GroupSign.set.ranger - GroupSign.add.job1 - GroupSign.add.job2 - Starterplugin.random - AnotherPlugin.useful.good Warrior: default: false info: prefix: '' suffix: '' build: true inheritance: - Citizen permissions: - swordplugin.all - armourplugin.all - FireLord.sword - -GroupSign.set.warrior - -GroupSign.set.mage - -GroupSign.set.ranger - GroupSign.switch.mage - GroupSign.switch.ranger Mage: default: false info: prefix: '' suffix: '' build: true inheritance: - Citizen permissions: - Magic.cast.fire - -GroupSign.set.warrior - -GroupSign.set.mage - -GroupSign.set.ranger - GroupSign.switch.warrior - GroupSign.switch.ranger Powermage: default: false info: prefix: '' suffix: '' build: true inheritance: - Mage permissions: - Magic.cast.fireball Ranger: default: false info: prefix: '' suffix: '' build: true inheritance: - Citizen permissions: - Archers.bow - Archers.arrow.* - -GroupSign.set.warrior - -GroupSign.set.mage - -GroupSign.set.ranger - GroupSign.switch.warrior - GroupSign.switch.mage Job1: default: false info: prefix: '' suffix: '' build: true inheritance: - Citizen permissions: - craftgroup.job1 Job2: default: false info: prefix: '' suffix: '' build: true inheritance: - Citizen permissions: - craftgroup.job2 Its a very simple roleplay layout: 3 races, and two jobs. The permissions are set up so a newbie can choose a race, but once chosen they have a different node of "Switch". Their original "set" nodes are negated out to stop them working (this could be automatic in the plugin though?) Next, the config (just a simple one, could add a lot more...) Code: useiconomy: true useboseconomy: false usewhateverothereconomypluginsthereare: maybe defaultcosttoset: 0 defaultcosttoswitch: 2500 defaultcosttoadd: 0 defaultcosttoupgrade: 1000 switchgroups: Warrior, Mage, Ranger, and an "upgrade chart" (Optional, but useful) - The example is linked to the file above. Code: Upgrades Upgrade Name: - PowerMage Upgrade From: - Mage Upgrade to: - PowerMage Upgrade Name: - Another upgrade (etc...) Within the upgrade chart, the group they're upgrading from would have the "GroupSigns.upgrade.PowerMage" node. Upgrade From and Upgrade To can have more than one group. All the ones in "Upgrade From" are removed from the list, and all the ones in "Upgrade To" are added (Just to help change the prefix in a prefixing plugin, should you have one.) Upgrade Costs are optional, and use an economy plugin (preferably iconomy, but most plugins support a few now anyway) Finally, the signs. A simple syntax: Code: Line 1: GroupSign Line 2: Set/Switch/Upgrade/Add Line 3: (The group to be altered) Line 4: Cost (if using iconomy) - If not entered, goes to default as in config Thats all for the config etc. I know theres quite a lot there... Here is a quick summery of what each thing means: Set: All your permissions groups are removed and you're left purely with this one Switch: Checks against the "Switchgroups" config option, and if you have one of those groups it is replaced with whats on the sign (Good for changing races on a race server) Upgrade: Uses the Upgrades file, to follow an upgrade track Add: Simply adds the group onto the end. Finally, the admins would have nodes and commands as follows: Code: GroupSign.admin.create - create a sign Groupsign.admin.destroy - destroy a sign Groupsign.admin.admin - lets the admin switch to a group by clicking the sign, and switch back to their admin group by clicking it again (useful for testing etc) Groupsign.admin.commands - use the commands /groupsign set [player] [group] - Command for setting groups /groupsign switch [player] [group] Command for switching groups /groupsign upgrade [player] [upgrade name] Command for upgrading groups /groupsign add [player] [group1] [group2] Command for adding groups All commands still use costs as do the signs. Hope my thread wasn't too hard to follow. Any questions just tag me back!