Thursday, September 1, 2011

Bukkit DefaultCommands Permissions

Question

I'm starting up a new Minecraft server. I was advised to use Bukkit and to use the DefaultCommands plugin to add functionality. However, upon installation of DefaultCommands, nobody but ops could pick up items...but they had every other permission (set the time, give people items, etc.). This was a straight-out-of-the-box CraftBukkit install into which I then put the latest DefaultCommands plugin.

I tried mucking around with the permissions file, but it is unclear whether or not I need a special plugin for that, and it is even more unclear as to how I would create permissions that would play nice with DefaultCommands. The documentation seems half-baked and very out of date.

A quick google search turned up several people asking the same question on the Bukkit forums with no answer; I have confidence that this community might be able to actually give me an answer.

Is there a simple way to make it so that ops/admins of some sort have all the DC permissions and normal (default) users have all the normal, default Minecraft commands (including picking up items...) and nothing more?

Answer

In my opinion, your best bet here is to use Essentials' GroupManager. It's simple to set up, gives OPs all available commands and lets normal users play with basic permissions. All you have to do is download the Essentials Suite from here, paste the Jar files into your plugins directory and start the server to let it generate the default files.

Then, open plugins/GroupManager/Worlds/World/Groups.yml with your favourite text editor and tweak it a little. By default, new players will be added to the default group, which has no building permissions. If you change build: false to build: true under the info section, they'll be able to place and destroy blocks, and use a very basic set of commands.

groups:
  Default:
    default: true
    permissions:
    - essentials.help
    - essentials.helpop
    - essentials.list
    - essentials.motd
    - essentials.rules
    - essentials.spawn
    inheritance: []
    info:
      prefix: '&e'
      build: false
      suffix: ''  ...

If you want to give your users some more freedom, change default: false to default: true for the Builder group. You can also remove some commands you don't want them to have while still conserving the other ones, such as essentials.kit and essentials.kit.tools. You can also change the group of the already existing users editing plugins/GroupManager/Worlds/World/Users.yml.

For more advanced Permission management, I'd recommend Permissions 3.x before DefaultCommands.

Edit: Here's a really useful command reference for GroupManager: forums.fragnet.net/minecraft/588-essentials-command-reference.html

No comments:

Post a Comment