KarmicJail
KarmicJail
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
About
This plugin is a fork of imjake9's SimpleJail plugin. It was made because our server needed a new Jail system to replace the defective one that was implemented in the past. While other jail systems were simple and lightweight, they were not nearly as featured as we were used to or wouldn't support our scope. For instance, at the time we had about 190 old entries of jailed players in a MySQL database and we wanted to transfer those over to whatever new system we woud use. Thus, KarmicJail was made, for Mine-RP.
Features
- Simple, single jail system.
- Uses MySQL / SQLite database for storage.
- Look up and page through current jail records.
- Complete history of every jailed player.
- Records each instance a player gets jailed, with all attached info, such as who jailed them, the reason, date, etc.
- Can add custom comments to any player's record.
- Optional permission group modification
- Optional jailed player event / interaction denial
- Persistent jail time. Players need to be online to actually serve their time in jail.
- Quick alias to commands
- Name auto-complete for online players.
- Auto-correct name capitalization for online and offline players, so long as they have visited the server at least once.
- Ex/ Try to jail player "HaXXoR", the following command would work: /j haxxor
- Offline player support.
- Optional inventory management of jailed players.
- Clear the jailed player's inventory so that they don't have access to it in jail.
- View and modify the inventory of a jailed player.
- Return inventory (with modifications if any) to jailed player on release (or not :P).
- Jail multiple people in one command.
- Teleport to the last known location of any player to ever visit the server.
- Warp players to the jail location without "jailing" them.
- Custom jail event for other plugins.
This plugin depends on Vault.
Also requires SQLibrary for SQLite and MySQL.
Commands and Permissions
Configuration
Custom events for plugin developers
TODO:
- ??? - Vote/comment and shape what the future update for the plugin should be.
Maven
This plugin supports Maven. Just add our repository:
<repository> <id>dakani</id> <name>Dakani Nexus Repo</name> <url>http://repo.dakanilabs.com/content/repositories/public</url> </repository>
And add KarmicJail as a dependency:
<dependency> <groupId>com.mitsugaru</groupId> <artifactId>KarmicJail</artifactId> <version>0.443</version> </dependency>
Trello Dev board
Visit the Trello board to see the current todo list for all projects.
You can comment and vote on any of the topics there.
All changes on the Trello board are in real-time.
If this plugin has helped you, please consider donating.
Im a little confused as to how you jail a player, I do "/kj jail Joe 5m Your mean", and it jails joe, 5m, your, mean, How do I actually set time and reason?
@brewno2k
I'm going to suggest that you alias the command instead.
I don't want to say that I'll get around to adding options in the config to configure what aliases to use, because I honestly don't have the time to do it by a reasonable dead line.
Can we get the /jail command back? People are so used to it... /kj jail isnt practical
people are dumb, they arent as smart as we think they are :P<<reply 1345080="">>
Glad it got resolved. Sorry that it happened and that I couldn't help... :\
@Mitsugaru
You don't need to do this, but thanks for offering!
I tried removing the config file and the jail.db file from the KarmicJail folder and restarted my server for those files to get regenerated. I then logged back onto my server and logged back off to see if this problem still exists. I have not encountered this problem yet.
Thanks for helping me out!
@cacman14
Sorry for the late reply on this issue.
I can honestly say I haven't encountered this before and not completely sure what is going on behind the scenes with that.
I could make the plugin's inventory management an option... sorta bypass it altogether for you. If that's alright?
@Mitsugaru
Did you ever get a chance to look at this yet?
@cacman14
I can try and have a look at it tomorrow after work.
Hello,
I'm getting the following error message whenever someone quits my server:
2013-03-11 22:48:51 [SEVERE] [KarmicJail] SQL Exception on setting inventory for '[INSERT_USERNAME_HERE]' java.sql.SQLException: statement is not executing at org.sqlite.Stmt.checkOpen(Stmt.java:49) at org.sqlite.PrepStmt.execute(PrepStmt.java:62) at lib.PatPeter.SQLibrary.Database.query(Database.java:254) at lib.PatPeter.SQLibrary.Database.query(Database.java:271) at com.mitsugaru.karmicjail.database.DBHandler.query(DBHandler.java:300)
at com.mitsugaru.karmicjail.database.DBHandler.setPlayerItems(DBHandler. java:646) at com.mitsugaru.karmicjail.jail.JailLogic.setPlayerInventory(JailLogic. java:1149) at com.mitsugaru.karmicjail.listener.PlayerListener.onPlayerQuit(PlayerL istener.java:147) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja va:425) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav a:62) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.j ava:479) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j ava:464) at net.minecraft.server.v1_4_R1.PlayerList.disconnect(PlayerList.java:20 9) at net.minecraft.server.v1_4_R1.PlayerConnection.a(PlayerConnection.java :719) at net.minecraft.server.v1_4_R1.NetworkManager.b(NetworkManager.java:295 ) at net.minecraft.server.v1_4_R1.PlayerConnection.d(PlayerConnection.java :115) at net.minecraft.server.v1_4_R1.ServerConnection.b(SourceFile:39) at net.minecraft.server.v1_4_R1.DedicatedServerConnection.b(SourceFile:3 0) at net.minecraft.server.v1_4_R1.MinecraftServer.r(MinecraftServer.java:5 89) at net.minecraft.server.v1_4_R1.DedicatedServer.r(DedicatedServer.java:2 24) at net.minecraft.server.v1_4_R1.MinecraftServer.q(MinecraftServer.java:4 85) at net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java :420) at net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:8 49)
Can you tell me why I'm getting this message? I do have the dependency plugins installed.
Thank you.
Newest version released.
Please note the new dependency on SQLibrary.
And the fact that the commands have changed and have been prefixed with kj.
@Rychleji
best thing to do is turn the server back to online mode.
@brewno2k
Lots of good ideas i would also like to see implemented.
Also, if you could, can you make it so there is a command whitelist so if you have block commands: true , any commands in the whitelist, they can still use. I'm trying to make it so my jailed players can check how much longer they have in jail, but i also don't want them using commands.
@brewno2k
By default, it gives a warning for an unknown player. Only reason why I chose not to deny the command going through was in the case that you meant to jail users, such as known player names of griefers, that had not visited your server.
That being said, it'd be relatively easy to add in a config node to switch between actively deny or just passively warn.
Not exactly sure when I could make time to do that though... been kinda away from plugins, and I feel bad about it.
In regards to the time unit parameters, I know of that and how to go about handling it. Its something that I will consider doing... just can't give you a good time frame as to when it'd be done...
Hello, dear developer. I love your plugin and use it since a long time ago. If I could give you a suggestion during all this time that I've been using your plugin, is that to check the players name with the "seen" command. If there is no such player, the jail shouldn't work. Let me tell you why. When someone jails a username that was mistyped, ie: brewni instead of brewno, it not only jails the brewni that doesn't exist, but it also adds brewni to the permissions file as a new player... increasing permissions.yml for every typo. So it doesn't only affect the jail list with 923843 incorrect jails, but also other plugins. I would appreciate if a check could be implemented, even if it's optional. (true/false). Thank you kindly! Also, people are used to the 15m for 15 minutes due to the essentials jail command, so people tend to jail "15m" quite a lot... maybe you should also make the plugin accept
m for the
amount of minutes...@Mitsugaru
Ah I hadn't thought of that, that works thank you!
@Rychleji
A whitelist of allowed commands was planned... heck, it might already been added, just not integrated... Just haven't gotten around to doing anything plugin-wise lately, sorry :\
@dandelion02
Your best bet is just to add 0 as the time. They should be jailed indefinitely that way.
Wonderful plugin, is it possible to set a reason without setting a time? I want my cheat detection plugin to run command "jail [player] Ask an Admin" but I can't find a way to do so without setting the time as well. Thank you!
Hi. I have a problem. If I send player to the jail and he logs out and logs in he can't use /login password. Can you add something like "allowed commands" to config? Thank you :)
@tcadonau
Is that all it says... just "[INFO] Problem!"....? Like, can we get a copy and paste of the full message? Is this even caused by my plugin? Have you tried disabling plugins one by one to attempt to find what was causing it?
I keep getting a spam on my server log. all it says is the time [info] Problem! over and over agian. has anyone else seen this on their servers? im just trying to find the problem.