AFK Sleep

Sleep while players are idle on your server · Works with custom player sleeping percentages · Handles dimensions, leaving, joining, ...

7,36k

AFK Sleep

AFK Sleep

Requires Detect AFK Players.

Allows players to sleep even when there are players AFK on the server, and respects your original `playersSleepingPercentage`. If you've got someone that joins then immediately leaves to take a shower, now that won't stop you from being able to skip the night.

Features

- Works correctly - Change the gamerule like you would normally - Works correctly - No commands run unless necessary, no NBT usage, no checks every tick - Works correctly - Leaving, joining, changing AFK state, changing dimension, etc - Works correctly - Other data packs don't consider dimensions or state changes

https://cdn.modrinth.com/data/hBJVFBHF/images/a555a85ba89158b0d992c7151b6d811a21493f16.jpeg

Details

When AFK Sleep is first installed, it uses the `playersSleepingPercentage` you've set as the *percentage of non-AFK players in the overworld* that have to be sleeping to skip the night. The table below explains it:

| Players | Not AFK | playersSleepingPercentage | Players required to sleep | | -------------- | --------------- | --------------------------------- | -------------------------------- | | 3 | 3 | 100% | 1 (all three players have to sleep) | | 3 | 2 | 100% | 1 (only the two non-afk players have to sleep) | | 3 | 2 | 50% | 1 (only half of the non-afk players have to sleep) |

To change the percentage of "active" players that need to sleep, just change the gamerule like you normally would, with `/gamerule playersSleepingPercentage NUMBER`. This gamerule is managed for you, so don't worry if it isn't set to the value you expect.

Before version 1.3: How to change playersSleepingPercentage

Because this datapack overrides the `playersSleepingPercentage` gamerule, you have to modify a scoreboard value to change its calculations. Replace the number '50' with the percentage you want to set.

```mcfunction /scoreboard players set .relativePercentage afk_sleep.dummy 50 ```

If you want to uninstall the datapack, run `/function afk_sleep:uninstall` to delete the backing scoreboards and reset the `playersSleepingPercentage` automatically.

ADS