KidsTimeout
KidsTimeout is a "kids time-out" plugin meant to keep your server "peaceful". It teleports players that kill peaceful entities to a "prison" or "time-out" location for a certain interval, and when the punishment is over, teleports them to a "release" location.
The following mobs are considered "peaceful" for the purpose of this plugin:
- pigs, sheep, cows, chickens
- villagers, iron golems, snowmans
- wolves, ocelots
- mooshrooms
Damaging friendly mobs is still permitted and the plugin doesn't register it. You should probably create a jailbreak-proof holding cell or prison, or a deserted island, or a metal cage suspended above the fiery lava pits of the nether.
The timeout location and release location can be set by visiting the location and typing /timeout and /release respectively. The plugin stores the world so you can have a timeout location in the nether and a release location in the normal world. The /timeoutlength option modifies the time-out length in seconds.
Players can also be put directly into timeout by passing the username to the /timeout option: "/timeout adam".
Only players with the "kidstimeout" permission (op by default only) can change the settings or put another player in timeout.
The plugin attempts to prevent players from teleporting out of the time-out location. This may interfere with other plugins that can teleport - it's behavior is undefined because other plugins can undo the restriction.
The plugins also has a timeout duration setting that defaults to 240 seconds. All settings can also be modified by editing the config.yml file in the plugins folder.
For bugs, tips, donations please feel free to contact me:
- Auke Kok - [email protected]
The project code is hosted on my github page:
@MTXRooster
1.7.2 compatibility was tested and OK - no issues.
I'm certainly willing to consider allowing players to bypass the rules, as I can personally see the advantage of such a system.
I could see if we can hook into WorldGuard/Factions etc. and make it so that players can butcher animals in their own regions, but it may just be too complex quickly, and also be a problem with many people in communal regions.
Hey it's been awhile ;)
Wanted to ask if you considered adding to your config file options for what should jail players? As an example: We run an economy-based survival server with towny and other plug'ins. I also run your plugin, as you know, but it causes conflict as players have farms on their property, and often need/want to kill the cows, pigs, and chickens for meat to eat for adventuring. I'd like a way to 'allow' those to be killed, whilst protecting wolves, ocelots, etc (you get the gist).
Another alternative that some of my players commented on (who also like your plugin btw) would be a 'whitelist', IE a permission to avoid the "rules" of the plugin.. An exempt list, or permission setting. Keep up the good work! With all the MC core changes and whatnot, I hope ya stay active and up to date. This is a nice, handy plugin!
EDIT/UPDATE: Wanted to add seems to be working with 1.7.2 for anyone wondering.
v6 fixes quite a few things - horses are now considered by default, and I cleaned up the API for 1.6.4 entirely.
@exit151
I posted v5 which allows you to edit the config.yml and specify the list of mobs to track kills for. If you install the new version and reload the server it should save the default list into config.yml, after which you can then edit the config.yml to change the mobs in the list.
as for the manual /timeout <name> not working, I didn't have time to setup a 1.4.7 client/server yet. Maybe later.
@exit151
Looking at the server side 1.4.7 API side I can't find any problems and eclipse doesn't say there are any issues. What is your issue with the manual command? You're unable to manually put a player into timeout? Do you get a "No such player" error message?
Cool deal man.. Yeah no worries though I appreciate the heads up - Would be cool to see it added via config, but only if it's something you want - Didn't mean to come off 'demanding' if I did, just throwing some suggestions out there.. I do some small scripting for another couple projects, considering this, but know all too well the "hey this would be really cooler if ya..." kind of posts :) lol.. Yeah on 1.4.7 it seems to function perfectly minus the manual command, least for what we've tried and seen.. I also will throw it on our (small) 1.5.2 server and see how/what happens over there over the weekend.
@exit151
I just got back from work travel to Asia (was gone for a few days) and will take a look at this later - I'll set up a test 1.4.7 server so I can see where the problem lies.
As for making it configurable what mobs should be protected, it's a fair request. I'll likely make it a config.yml setting that you would need to edit the file for, since that is the easiest way.
Any chance for 1.4.7 support on this as well? While I have a 1.5.x server started up, most my players still run 1.4.7 and are too vested in those worlds (heavily modded with some plugins not supporting 1.5.x so far).. Just curious.. I tried putting it on there to see if it would work, and when I use /kidstimeout ? to get command list/help it just tells me it's not a valid command.
(on 1.4.7) I used the /timeout command alone and it set the timeout spot, but trying to send someone there did nothing. Also when a cow is killed it didn't send him there, just gave the line about if there was a jail set he'd be in it, he was caught red-handed.
More food for thought for down the road, if I'm not being too pushy/requesty.. Add to the config or settable flags (harder I'm sure, config fine for now?) the ability to set what will send you to a timeout. Some way want critters to be killed but still want the timeout portion :)
EDIT: I am partially mistaken.. (in 1.4.7) it won't/isn't sending players to the spot I designated via /timeout, but the help IS working.. I was simply trying /kidstimeout ? and not /help kidstimeout (which works) :)
Ahh sweet, downloading new version now and will follow up! Thanks in advance for the info and project :)
Posted v4 - I fixed the loophole where players were not put in timeout if they killed a friendly entity by shooting arrows or other projectiles. The code will now detect this and properly track back the projectile to the shooter.
@exit151
Well, that was too easy - I implemented "/timeout [playername]" which extends the current timeout option. If you give it a player name, that player will be put in a timeout.
Please test and feedback. Note you can get the file from my download link below already, or wait for it to be approved here some longer.
Enjoy.
@exit151
That's been my intend to add, except I was focusing today on making the plugin a bit more "secure" by adding permissions (so only ops or people with the right permissions can change settings) and jailbreak-by-teleport protection (meaning the plugin will prevent players from teleporting out of the jail while under timeout).
Now that I have those 2 things implemented (I'm releasing a new version as we speak), and some major cleanups, I will see if I can tomorrow or so add an option to punish a player with a time-out, which should be trivial at this point.
Also, I use factions to protect my jails - it's trivial enough to create a separate global jail faction for instance, or just use SafeZone, which is what I ended up doing.
Hey, this sounds like a cool plugin.. I have one suggestion from an admin's point of view. Have you considered adding a /jail <username> command which would send the player to 'jail' for the designated amount of time and again, release to your release point? An old MMO used to have this feature that seers could use (player helpers) - Your plugin works just like it, minus that part.. Would be sweet to get a players attention without having to kick/ban, ya know, a good warning and time to think whilst in jail :)
And if admins run other plugins, like residence, towny or anything that allows setting permissions of areas, you don't even need to build anything "fancy", you can whip up your standard looking jail and players won't be able to harm it :)
@Kartikitrak
Thanks! If anyone is testing or using the plugin, please let me know what you think. I intend to expand the plugin a bit with a few things to make it more complete (e.g. protect against teleporting out, using permissions so only admins can chance the timeout location). The feedback is appreciated.
This would be awesome for those roleplaying servers!
Unfortunately my server isn't that however IF ANY USES THIS, I would LOVE to visit it!