AntiAddict Revisited
AntiAddict Revisited - Limit some players' playtime on your server
Version: v2.1
Description:
If you are an admin who really cares about the players of your server, there might come a day when you recognise that some of them got addicted to the game and really play to much on your server. AntiAddict is a plugin which allows you to limit the time specified players can play on your server. This timelimit will be reset the next day, which then would allow them to play again. (so normally it's daily).
The first developer of this plugin was Phiwa, who wrote most of the code. He read a plugin request by wuppieigor and recognised that there are some server admins who really care about the players on their server and do not only watch the number of slots they manage to fill.
(Follow me on Twitter for updates!)
Quote from Phiwa:Of course you cannot control what the players do on other servers or in single-player, but it is a step into the right direction. In my opinion it is great that those admins care about their members and therefore wrote this plugin to help them with it.
After a long time and finally releasing AntiAddict, a lot of server admins became familiar with it and started to love it. Unfortunately, Phiwa had a busy time and couldn't update his plugin anymore. All were sad. I decided to step in. Staartvin. I'm the new main developer of AntiAddict and I will do my best to make this plugin even better than it was!
Features:
- Ability to set which players are 'addicted'
- Highy customisable messages with more than 14 translations.
- Ability to check how much time you have left untill you're kicked
- Easily see which players are 'addicted'
- Permissions used for commands
- Ability to limit all players on the server with one simple toggle
- Support MultiWorld. Configure which worlds you want to use!
- Ability to turn off MultiWorld and just use all worlds, as default.
- Admins will be noticed when there is a new version available.
- Addicted players will get noticed when they're getting kicked soon.
- Translations for 14 countries.
- Ability to see info about an addict, such as: total playtime, language, time left, reputation and more!
- Group support. Make multiple groups that have different time limits
Screenshots:
What is shown to addicted player:
What is shown in console when addicted player logs in:
What is shown when addicted player gets kicked:
What is shown in console when addicted player gets kicked:
Commands:
- /antiaddict <on/off> (De)activates AntiAddict.
- /antiaddict status Shows the current status for AntiAddict (on/off).
- /antiaddict left Shows the time the player has got to play.
- /antiaddict about Shows useful information about AntiAddict.
- /timeleft This command is deprecated and therefore not used anymore.
- /antiaddict config reload Reload AntiAddict's configs.
- /antiaddict language set <language code> (player) Sets the language for a specified player if specified, else it will set the language for player who used command.
- /antiaddict language list Shows the available languages and their language code.
- /antiaddict info <player> Shows information about the player, such as language, reputation , time left and total playtime.
- /antiaddict help Shows all commands.
- /aa <command> This is an alias to /antiaddict. You could use this as '/aa config reload' for example.
Permission-nodes:
- antiaddict.admin - Allows the player to control AntiAddict.
- antiaddict.ignorelimits - Gives the player the ability to ignore the timelimits for addicts if LimitAll is set to true in the config.
- antiaddict.lefttime - Gives the player the ability to check how much time he/she has left before getting kicked.
- antiaddict.* - Gives the player total control.
- antiaddict.versionnotice - Players with this permission will be noticed when the plugin is outdated.
- antiaddict.language.list - Gives the player the ability to get a list of available languages and their language code.
- antiaddict.language.set - Gives the player the ability to change their language.
- antiaddict.language.setother - Gives the player the abilty to change the language of others.
- antiaddict.infoplayer - Gives the player the ability to get info about other players.
Supported Languages:
- - English
- - Dutch
- - German (Thanks to Phiwa)
- - Polish (Thanks to Phiwa)
- - Italian (Thanks to samu301295)
- - Brazilian Portuguese (Thanks to TheLunarFrog)
- - Spanish (Thanks to TheLunarFrog)
- - French (Thanks to MrLongBacon)
- - Danish
Requests:
If there is anything you would like me to add, simply ask for it.
Known Bugs:
Totally bugfree!
Donations
I'm a poor student and I'm developing this plugin in my free-time, if you like my plugin and want to help me, please donate. Donating is the best way to help me out, it goes towards more bug-fixing. Thanks!
Group config
# Time limit is defined in minutes.
# To assign a player to a group, give them the permission with the group name.
# Example: When you give Herobrine antiaddict.groups.Default it will assign Herobrine to the Default group.
# Names are case-sensitive. So antiaddict.groups.default wouldn't work.
Groups:
Default:
time limit: 120
Guests:
time limit: 60
@mjtillis2006
What about the groups.yml?
# AntiAddict v2.0 Config
AntiAddict:
LimitAll: true
PermissionsWarningOnStartup: true
ShowWhenAddictJoinsServer: true
ReputationPointsBan: 4
NoticeOnVersionUpdate: true
World:
UseMultiWorldSetup: false
ExemptedWorlds:
- unusedworld
groups:
Default:
default: true
permissions:
- antiaddict.lefttime
- essentials.helpop
- -bukkit.command.kill
- essentials.afk
- essentials.afk.others
- essentials.balance
- essentials.balance.others
- essentials.balancetop
- essentials.ban.notify
- essentials.kit
- essentials.kits.tools
- essentials.msg
- essentials.msg.url
- essentials.rules
- essentials.spawn
inheritance:
info:
prefix: '&e'
build: true
suffix: ''
Member:
default: false
permissions:
- essentials.del.home
- essentials.exp
- essentials.home
- essentials.sethome
- essentials.tpa
- essentials.tpaccept
- essentials.tpdeny
- essentials.pay
- essentials.kits.survival
- essentials.signs.use.buy
- essentials.signs.use.free
- essentials.signs.use.sell
- antiaddict.ignorelimits
inheritance:
- default
info:
prefix: '&4[Member]'
build: true
suffix: ''
Donator:
default: false
permissions:
- essentials.sign.use.enchant
- essentials.kits.donator
inheritance:
- member
info:
prefix: '&f[Donator]'
build: true
suffix: ''
Admin:
default: false
permissions:
- antiaddict.admin
- essentials.ext
- essentials.fly
- essentials.fly.others
- essentials.getpos
- essentials.getpos.others
- essentials.help
- essentials.kick
- essentials.kick.exempt
- essentials.kickall
- essentials.time
- essentials.time.set
- essentials.tp
- essentials.tp.others
- essentials.tphere
- groupmanager.manuadd
- groupmanager.manpromote
inheritance:
- donator
info:
prefix: '&5[Admin]'
build: true
suffix: ''
Owner:
default: false
permissions:
- mcore.*
- '*'
- -vanish.*
inheritance:
- admin
info:
prefix: '&2[Owner]'
build: true
suffix: ''
@mjtillis2006
That's very strange. I'm not sure you mean by linking files? Could you show me your configs so I can check your situation?
Hey Staartvin. Is there anyway that I could link my groups and the antiaddict config and see if that sheds any light. I am still having issues. Also on the auto kicking people. Its kicking people that have not even ever been on the server before. Its auto making there rep below the minimal.
Man, your response times are unreal. Thank you. I will be giving this a shot here in a while and ill let you know how it works out. Thanks a lot.
@mjtillis2006
Whenever the reputation is below a certain threshold it will keep players from getting in your server.
Don't worry about the error. It is nothing to be scared of.
For the other part I don't know what's happening. Make sure it's antiaddict.lefttime (with double t). The ignorelimits permission will only work when the limitall config is true. To not limit a group you should not give it the antiaddict.groups.groupname permission. To assign a player to a group give them the antiaddict.groups.grouphere permission.
Hey staartvin quick question here. I am using this plugin to limit the amount of time a player can play just like tommehRRR did. I have the config file set to true. I have the default group (Using essentials for it) set to - antiaddict.leftime the next group up is set to - antiaddict.ignorelimits. The group that should have unlimited time still has the time limit as well as every group above it, including myself the owner who has the - '*'. I also get this error
3:15:49 PM at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427) 3:15:49 PM at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) 3:15:49 PM at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477) 3:15:49 PM at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462) 3:15:49 PM at net.minecraft.server.v1_6_R3.PlayerList.c(PlayerList.java:207) 3:15:49 PM at net.minecraft.server.v1_6_R3.PlayerList.a(PlayerList.java:103) 3:15:49 PM at net.minecraft.server.v1_6_R3.PendingConnection.e(PendingConnection.java:132) 3:15:49 PM at net.minecraft.server.v1_6_R3.PendingConnection.d(PendingConnection.java:43) 3:15:49 PM at net.minecraft.server.v1_6_R3.DedicatedServerConnectionThread.a(DedicatedServerConnectionThread.java:41) 3:15:49 PM at net.minecraft.server.v1_6_R3.DedicatedServerConnection.b(SourceFile:29) 3:15:49 PM at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:592) 3:15:49 PM at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) 3:15:49 PM at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) 3:15:49 PM at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) 3:15:49 PM at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 3:15:49 PM Caused by: java.lang.ArrayIndexOutOfBoundsException: 2 3:15:49 PM at me.staartvin.AntiAddict.VersionUpdate.onPlayerLogin(VersionUpdate.java:46) 3:15:49 PM at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 3:15:49 PM at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 3:15:49 PM at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 3:15:49 PM at java.lang.reflect.Method.invoke(Unknown Source) 3:15:49 PM at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425)
Another thing is its kicking players right at the start. It is saying that if i want to allow them access i need to raise their reputation to anything above 4.
@em202020
I'm not sure, tell me!
Staartvin where do I know you from....
@brian163b
Yes, it is working.
Anyone know if this is working with 1.6.4? I'll certainly try it but I'm interested in other's experiences.
@Precautionz
The ability to read really enriches your life, you should definitely try that out! ;)
There are servers run by e.g. parents for their kids and the kids only play on those servers, so this plugin could help those people and if this plugin only helps 5 admis, this a reason enough to keep it up-to-date... :)
Pointless plugin is pointless. You're losing players, and the majority if not all WON'T go and "spend more time in real life", they'll simply load up another server.
Nobody in their right mind listens to a Minecraft server message telling them how to run their life. As said, they'll go onto another server.
Major loss for server owners, alas.. Player joins your server and loves it > Gets limited playtime > Joins another server > You're losing that player while they're on that server > They end up liking that server more than yours without restrictions. #Fayuhl
@007godofwar
Haha, you can set yourself as addict, although you won't be able to be online after your time is over and you have to wait for the next day.
is it counter productive to mark myself as addicted?? im developing my server and i think im addicted.
@Staartvin
Alright, thanks.
@TommehRRR
You set the 'limitall' to true in the config and give the groups that don't need to be checked, the 'antiaddict.ignorelimits' permission. When a player has made an app on your forum, you move him to a new group with the antiaddict.ignorelimits permission.
Hey, i was wondering if it is possible to limit everyones time a day when they join, specificly newer players.
i want to limit everyone to a hour a day untill they write a app at the forum page, using a exclusion of players.
Is this possible?
i havent succeeded in doing this, thanks.
- Thomas