This repository has been archived on 2023-11-26. You can view files and clone it, but cannot push or open issues or pull requests.
Twine/docs/GAMEPLAY.md
TheBrokenRail b92e9624c7
All checks were successful
Twine/pipeline/head This commit looks good
Improve Documentation
2020-06-18 19:24:21 -04:00

27 lines
1.4 KiB
Markdown

# Gameplay
## Difficulty Stages
Each player has a "personal" difficulty stage of an area, the highest online player's difficulty stage in an area will be the "effective" difficulty stage of that area.
### Stage 1
- Normal Gameplay
### Stage 2
- Hostile Mobs Attack Passive Mobs
### Stage 3
- Mobs Are Guaranteed To Have At Least One Piece Of Armor
### Stage 4
- Villages Kick You Out (Using Iron Golems)
- Creepers Target Artificial Blocks
### Stage 5
- Neutral Mobs Are Always Hostile
- Mobs No Longer Have Knockback
### Stage 6
- Mobs No Longer Burn In Sunlight
### Technical Details
Each player has a 6-element long list in their NBT data. Each element in the list has a chunk position and time value. Every tick, the player will first find which stage element's area its current position is in, and then increase the time value of that stage element. If the time value when increased is over 24,000 ticks the next stage element will have its chunk set to the players current position, have its time value reset, the old stage element will have the next stage element's old chunk, and have its time value reset. To determine if a player is in a stage element, it checks if the player is within 16 chunks of the stage element's chunk, it starts searching at the last element, ending at the first. The "effective" stage element of a chunk can be found by searching every **online** player for their stage element for the chunk and then picking the highest value.