OnDoOdy

OnDoOdy is a fork of the plug-in DoOdy Duty. Being inspired by its feature set, seeing that it was open source and being in need of such a plug-in for my own purposes, I decided to pick up where it left off and make my own version.

OnDoOdy retains most of its predecessor's features, but a lot of the code has been re-written and re-purposed, so for anyone being a former DoOdy Duty user, you will have to re-learn a few things. On the other hand, a lot of things should be familiar, so the learning curve should not be all that steep. For one, all the permissions are the same as they were in DoOdy Duty.

Description

The main purpose of OnDoOdy is to give your staff members a way to go "on duty" (i.e. to do staff work) without losing the ability to play the game normally. When you go on duty, everything about your character is saved.

OnDoOdy places you in Creative Mode when you go on duty. Creative Mode is convenient for staff work, it lets you fly, it has mobs ignore your presence and it makes it near impossible for you to die. However, Creative Mode has a lot of pitfalls. Even if you trust your staff, how do you prevent them from spawning in hundreds of diamond blocks so they can get rich? OnDoOdy comes to your rescue here as well! With a very fine configuration level of what is allowed and not allowed while on duty, you can stop your staff members from doing almost anything you can normally do in creative mode while they are on duty.

The default configuration file is heavily commented, and should not require any further description here. If you have any question about it, feel free to drop me a comment, and I'll help you (and probably update the comment in the config file as well.)

Source code

Being based on a GPL v3 project, mine also has to be GPL v3, and I am fine with that. Should you be interested in having a look at the source code, you can find it on GitHub.

Features

  • Creative Mode with limitations: Configurable permissible actions while on duty, including block breaking, block placing, block dropping, block/item spawning, hurting mobs and hurting players.
  • Saving and restoration of player data: When you go on duty, your position, all your items, armor, health, food level and active potion effects are stored and then taken away from you. When you go off duty, you're placed back where you left off, and all the stats are given back to you. Were you in the nether fighting blazes around a blaze spawner with 5 minutes and 23 seconds left on your fire resistance potion? When you go off duty, you'll be right back there, with those exact 5 minutes and 23 seconds of fire resistance left
  • Returning to last duty location: Did you go off duty too soon, and you had gone far away from your current spot to do work? Worry not, there's a way to get back there!
  • Hiding from players: A configuration setting lets your on-duty players hide from other players. This is useful if you plan to use OnDoOdy to monitor new players for suspicious behavior, or if you simply want to not be seen and disturbed while you are on duty.
  • Giving your players extra permissions when they go on duty: These will be removed from your players when they go back off duty. This is a great way to allow your staff members to have extra powers when they are staff, but keeping them more like regular players when they're not.
  • Running commands for your players when they go on duty: Useful for doing certain things each time a staff member goes on and off duty. For instance, if you use DynMap, you can configure OnDoOdy to hide them when they go on duty, and show them again when they go off duty. They don't even have to have the permission to run these commands normally, you can set it up so they get the required permissions just for the time it takes to run the commands!

Commands

CommandDescriptionPermission Node
/ondoodyShows available commands.None
/ondoody [on/off]Enter/Leave duty mode.doody.duty
/ondoody [player] [on/off]Put another player on/off Duty.doody.others
/ondoody backTeleport back to last known duty locationNone
/ondoody listLists current players on duty.None
/ondoody reloadIngame command to reload config.yml file.doody.reload
/ondoody debug [on/off]Enable/disable debug mode.doody.debug

Permissions

All permissions default to OP.

Permission NodeDescription
doodyallows access to duty command
doody.*allows access to all commands and abilities
doody.dutyallows access to duty mode
doody.backallows returning to last duty location with /duty back
doody.listallows listing on-duty players with /duty list
doody.reloadallows in-game reloading of the configuration
doody.allowplaceallows players to place blocks regardless of configuration settings
doody.allowbreakallows players to break blocks regardless of configuration settings
doody.allowinteractallows players to interact with blocks regardless of configuration settings
doody.dropitemsallows players to drop items regardless of configuration settings
doody.pickupitemsallows players to pick up items regardless of configuration settings
doody.inventoryallows players to access inventories regardless of configuration settings
doody.pvpallows PvP while on duty, regardless of configuration settings
doody.moballows attacking mobs while on duty, regardless of configuration settings
doody.othersallows controlling other players' duty mode
doody.failsafe.bypassallows fail-safe bypass for players with access to /gamemode or /gm commands (very optional permission node)
doody.debugallows access to enable or disable debug mode
doody.seehiddenallows seeing hidden on-duty players
doody.worlds.[worldName]allows players to enter duty mode in worlds normally not allowed by configuration settings
doody.duty.extraperms.[permName]gives the players the extra permissions defined in the configuration named [permName]
doody.duty.dutycommands.[permName]runs the commands defined in the configuration named [permName] when the player goes on and off duty

Comments

  • To post a comment, please or register a new account.
Posts Quoted:
Reply
Clear All Quotes

About This Project

Categories

Members

Recent Files

Bukkit