Delay Temp Ban timer start
bookerthegeek opened this issue ยท 9 comments
Simple idea really. When "/tempban bookerthegeek 1d trolling" is run and I am:
- Online
- Everything works as normal
- I would be banned for 1 day starting when the command is run
- Offline
- As I am offline, I am not immediately banned
- As soon as I log onto the server again the 1day count would start.
- I am now banned from the time I tried to relog onto the server.
This will make it so that the players who only play infrequently will still feel the the brunt of the ban and not miss it completely as they did not even try to log onto the server while the ban was in effect.
Apologies in advance for the necro-bump.
I really like this idea, and I also agree that there should be a config option for it. I know Mineplex uses a system like this so that it is impossible for people to effectively "skip" their bans and it would probably be a very nice feature for the network I work for. As for others, well it really depends on how they want to run their server obviously but I think this would be a brilliant feature to have available, on the whole.
No worries @T1mTheEnchanter thank you for bringing it to my attention.
There is a little difficulty in implementing this due to the way temp bans are stored, with their expiry
set to a date/time in the future, which once passed is automatically expunged.
Could their be a way to not set the expiry till next login if player is currently not online?
Yeah, @bookerthegeek - perhaps set a schedule (or something like that) and when they login, get the time & date and extend the ban to whenever is appropriate? I'm no plugin developer, but that's just an idea.
I like and dislike the idea at the same time.
Sure it is fair adversed to player who get really banned.
On the other side it is kind of the same problem as the judiciary has. It takes way too long to adjudge criminals (especially young people) and the learning effect is gone at all.
I think I won't use this or probably use it in another way.
If a player gets banned while offline the ban will be enforced. If the player tries to join during the period he gets the message that he is banned and probably why and when the ban expires, just as usual.
When the player joins again after the ban has expired he should receive a notice that he served a sentence in absence and the ban has been recorded in players statistics.
Both options could be implamented, along with a simple configuration to switch between the two so server operators could decide what is best for their server. :)
-
add a flag to the punishment DB table named something like: punishmentTimerStarted = <bool>
-
the default values would come from the config file unless the punishment is issued while the player is online, then it defaults to true:
startTempWarnImmidiately: [true|false]
startTempMuteImmidiately: [true|false]
startTempBanImmidiately: [true|false]
- set punishmentTimerStarted to true on next player login attempt and recalculate the expiration dateTime