Expand TODO.md with player registration and session management details.
This commit is contained in:
parent
51ae3bbece
commit
2846a88125
50
TODO.md
50
TODO.md
|
|
@ -14,6 +14,7 @@ A Minecraft survival/PvP plugin with configurable loot, shrinking world border,
|
|||
- [Commands](#-commands)
|
||||
- [Stats System](#-stats-system)
|
||||
- [Configuration](#-configuration)
|
||||
- [Player Registration](#-player-registration--session-management)
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -88,6 +89,55 @@ A Minecraft survival/PvP plugin with configurable loot, shrinking world border,
|
|||
|
||||
---
|
||||
|
||||
## 👥 Player Registration & Session Management
|
||||
|
||||
### Registration
|
||||
- [ ] Expose a command (e.g. `/hg join <player>`) callable by other plugins/console to register a player into the upcoming round
|
||||
- [ ] Maintain a registered player list per round (separate from online players)
|
||||
- [ ] Reject registration if round is already ACTIVE or past COUNTDOWN
|
||||
- [ ] Confirm registration with a chat message to the player: `"You have been entered into the round!"`
|
||||
- [ ] Allow `/hg leave <player>` to remove a player before the round starts
|
||||
- [ ] Allow `/hg kick <player>` (admin) to force-remove a player mid-round (counts as death/DNF, no kill credit)
|
||||
|
||||
### Player States
|
||||
Track each registered player in one of these states:
|
||||
- [ ] `REGISTERED` — signed up, round not yet started
|
||||
- [ ] `ALIVE` — actively in the round
|
||||
- [ ] `DEAD` — eliminated, waiting in the safe room
|
||||
- [ ] `DISCONNECTED` — left the server mid-round
|
||||
- [ ] `SPECTATING` — admin/non-participant observer
|
||||
|
||||
### Disconnect Handling
|
||||
- [ ] On disconnect during COUNTDOWN: remove from round, free their spawn slot
|
||||
- [ ] On disconnect during ACTIVE round: treat as death (no kill credit), teleport handling skipped since they're offline
|
||||
- [ ] Store disconnect state so if they reconnect before round ends, they are placed in the safe room (not back into the game)
|
||||
- [ ] On reconnect mid-round: teleport to safe room, restore DEAD state, notify them the round is ongoing
|
||||
- [ ] On reconnect after round ends: restore their normal state
|
||||
|
||||
### Join Game Handling
|
||||
- [ ] On registration: set player gamemode survival
|
||||
- [ ] Teleport player to a configurable lobby/waiting area within the event world on registration
|
||||
- [ ] Assign spawn points randomly from the available pool at countdown start — no two players share a point
|
||||
- [ ] Teleport all REGISTERED players to their assigned spawn points when countdown begins
|
||||
- [ ] Notify player they joined the game
|
||||
|
||||
### Safe Room
|
||||
- [ ] Command to re-teleport all players not in the game to the safe room
|
||||
- [ ] Configurable safe room location (world, x, y, z, yaw, pitch) in config
|
||||
- [ ] Teleport eliminated players to safe room immediately on death
|
||||
- [ ] Teleport disconnected players to safe room on reconnect (if round still active)
|
||||
- [ ] Players in safe room: no PvP, no hunger, no fall damage
|
||||
- [ ] Optionally show a live scoreboard or action bar in the safe room (remaining players, kills leaderboard)
|
||||
- [ ] Teleport all players out of safe room to a configurable post-round location when round ends
|
||||
|
||||
### Round Cleanup
|
||||
- [ ] On round end: clear all player states
|
||||
- [ ] Restore player inventory, gamemode, health, hunger, potion effects to pre-round state (or a clean default)
|
||||
- [ ] Clear any active boss bars, action bars, speed effects from all participants
|
||||
- [ ] Reset registered player list ready for next round
|
||||
|
||||
---
|
||||
|
||||
## 🧭 Commands
|
||||
|
||||
### `/hg stuck`
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user