49bbd2b871
- Implemented LeaveMinigameQueueEffect to handle player removal from queues and runtime. - Added OpenMinigameQueueUIEffect to manage the opening of the minigame queue UI. - Introduced StartPlayerTimerEffect and StopPlayerTimerEffect for managing player timers and scoring. - Enhanced PlaceBlocksEffect with options for filling volumes and hollow placements. - Updated SpawnItemEffect to fix codec handling for item IDs. - Added MountPlayerEffect and DismountPlayerEffect for player interactions with NPCs. - Improved StartQueuedMinigameEffect to check player counts before starting games. - Added localization entries for new effects and UI elements. - Updated manifest to include HyUI as a dependency.
2.5 KiB
2.5 KiB
King of the Hill — Overview
In this tutorial you will build a King of the Hill minigame with three rounds. Each round has a dedicated capture point in a different part of the arena. Players earn one point per second while standing on the active hill. The player with the most points after all three rounds wins.
What You Will Build
| Volume / File | Purpose |
|---|---|
King_Of_The_Hill.json |
Minigame definition — rounds, timing, HUD, PvP rules |
| Queue pad | Players step on it to join the waiting session |
| Start button | Game master trigger to launch the game and set phase to ACTIVE |
| Arena boundary | Map discovery tag — tells the runtime which map it is running on |
| Spawn zone | Where players enter to activate and start playing |
| Capture Zone A | Active during Round 1 — scores +1/second while standing inside |
| Capture Zone B | Active during Round 2 — scores +1/second while standing inside |
| Capture Zone C | Active during Round 3 — scores +1/second while standing inside |
| Round 2 / Round 3 signal volumes | Announce the new round when it starts |
| End-game timer volumes | Detect when Round 3 finishes and end the game |
Game Flow
1. Players step on the queue pad.
2. Game master triggers the start button (or add auto-start logic).
3. Runtime starts → phase is set to ACTIVE.
4. Players enter the spawn zone → they become ACTIVE (HUD shown, items given).
5. Round 1 runs for 120 seconds. Capture Zone A scores.
6. Round 1 ends → Round 2 begins. Capture Zone B scores.
7. Round 2 ends → Round 3 begins. Capture Zone C scores.
8. Round 3 ends → game_end timer fires → EndMinigame.
9. Scores are tallied. Highest score wins. Arena resets.
Prerequisites
- A Hytale server with core-minigames installed.
- A world with three distinct hilltop areas for your capture zones (A, B, C).
- A lobby or staging area where players queue before the game begins.
- Basic familiarity with placing trigger volumes and adding conditions/effects in the editor.
Files in This Tutorial
| File | Contents |
|---|---|
02-minigame-definition.md |
JSON definition with all fields explained |
03-join-and-start.md |
Queue pad, start button, map boundary |
04-spawn-and-activation.md |
Spawn zone + player activation |
05-capture-zones.md |
The three scoring capture zones |
06-round-signals.md |
Round announcements and end-game timer |
07-end-and-reset.md |
Ending the game and resetting the arena |
08-full-example-files.md |
All complete configurations in one place |