Boost player engagement, optimized for large-scale playerbase, best afk rewards plugin on market.
The host's ip has been changed. Use this version in order to make it work again.
New features:
- methods, you can now use the checking methods, they can either be optimized or check, put this in config.yml:
player_check_method: "optimized" # this checks the player's movement for when he enters a region, however sometimes he can't enter a region
# or use 'check' to automatically check all players every second (not as optimized as the first one)
Bugs fixed:
- On 1.8 each time you would leave the region you would get an error PLAY_ONE_MINUTE
- Another bug when leaving the region was when the player quit, now it's fixed
- Fixed some optimization issues
Features:
* You can now choose the format when the player enters/leaves a region:
regions:
type: titlescreen # you can also put titlescreen, chat or actionbar, this also goes for subregions, aka regions type = subregions type
entered: '&cYou &fentered &can afk region!'
left: '&cYou just &fleft &cthe afk region!'
Bugs fixed:
* When a player didn't have perm, you would get an error in the console, now it's fixed.
you can now use most of the /tplaytime commands in console
new settings inside playtime.yml
time_format:
week: " week, "
weeks: " weeks, "
...remove_playtime_inside_afk_region: false # after a player leaves a region, it will calculate the total time spent in there and remove the playtime he spent thereIn some cases, when doing /tplaytime claim, the server would crash. It has been fixed.
You can now also use {timer} inside the title screen, also new placeholder: %afktimerseconds% --> shows the timer in seconds
New features:
* Player invisiblity, now you can make it so if there are too many players, activate invisiblity (reduces player lag)
* Global region override, now you can put like 5 regions in the same place and for each one give different rewards (good for donors)
* Subregions! That's right, subregions. Players with a specific block will now be able to have their own afk region at their own base! Wow, think of that. You can give custom subregions using the command /silentgive {player} {item} {amount} {true/false} if it's true then the block (only this case) will have at the end an "encrypted" lore line with the block id.
* And a lot more mini features which you won't notice but they add up :)
Bug fixes:
* I haven't found really that many bugs, just some minor ones. Also, cached a lot of variables A.K.A. optimization :)
Sometimes if the players glitched out of the rewards section without being removed from the region they would still be able to get rewards. Now it's fixed and logged.
After you reloaded the config by force, players wouldn't be able to re-enter the region, now they can :)
Now you can see each players when he left/entered a region and what rewards they've received too at what timestamp. This is useful because some players might lie about them not receiving any rewards from the afkzone. It's better to be safe with this! To activate/disable this feature, inside the performance section make logs : true/false (true by default)
The new rewarding system for afk regions is now released!
It is now 3x faster than the old one.
New features:
- instead of xp_usage_when_in_region, it's now block_xp_usage_when_in_region
Features:
* Now you can add ip limiters, a.k.a. only 1 player per ip receive rewards inside the afk region.
Bugs fixed:
* Default_afk_time would mess up with other timings so now it has been removed and replaced with ip_limit
* ShopGUI+ would give an error when the provider was registered
IMPORTANT FIX
Use dev_mode: true to check if a player has been registered into your region and many more things!
Initialization and Handling of Variables:
commandData is initialized before being used in loops.commandsSection and regionSection.HashMap Overwriting:
commandData for each region iteration to prevent overwriting data.Division by Zero:
ratio.Config Retrieval:
config object.Debugging and Logging:
loggers statement for debugging purposes. (if dev_mode=true)Data Copying and Isolation:
ArrayList and HashMap) when storing them in commandData and test to avoid shared data.test map to ensure complete isolation of data between regions.Robustness and Defensive Programming:
Timeouts, if you are tired of players being AFK all day and only stay there to receive rewards (some may use bots) you can time them out a.k.a. teleport them anywhere u want or do anything u want with them after the player has received the reward N times
timeout:
times: 0
commands:
- msg {player} you have been timed out!
Dev mode, this is for debugging purposes only