feat: Add new effects for player interactions and NPC management

- Introduced DismountPlayerEffect to handle player dismounting from NPCs.
- Added MountPlayerEffect for mounting players onto NPCs with configurable parameters.
- Implemented PlaceBlocksEffect to allow block placement in specified regions.
- Created RespawnPlayerEffect with improved destination resolution for player respawns.
- Added SetPlayerLoadoutEffect to manage player loadouts dynamically.
- Introduced SetPlayerStatusEffect to manage player statuses with additional activation logic.
- Created SpawnNpcEffect for spawning and managing NPCs with respawn capabilities.
- Updated language files to include tooltips and descriptions for new effects.
This commit is contained in:
2026-06-07 21:38:30 -07:00
parent 479d010e60
commit 67e70a71bd
30 changed files with 1750 additions and 85 deletions
+11
View File
@@ -90,6 +90,8 @@ Tag each team spawn volume with:
This means checkpoint-based games can still override spawns per player, while team arena games can rely on tagged team spawn volumes.
Player deaths during a minigame automatically use the same destination order. `DestinationId` and `SetSpawnPoint` values are coordinate strings, such as `100,64,200` or `world_name,100,64,200`; team-spawn fallback is resolved from tagged spawn volumes.
### Counters
Use a trigger volume to increment a named runtime counter:
@@ -117,6 +119,15 @@ Use a small trigger volume at the pickup location and attach:
The item spawns at the volume position plus optional `OffsetX`, `OffsetY`, and `OffsetZ`. Attach the effect to a `TICK` trigger when the pickup should automatically respawn after being collected or despawning. If the same volume has multiple item spawners, set a different `SpawnKey` for each one.
### Block Fill Effects
Attach `PlaceBlocks` when a trigger should place or replace a cuboid of blocks:
- Effect: `PlaceBlocks`
- Fields: `BlockId = <block id>`, `X1/Y1/Z1 = <first world corner>`, `X2/Y2/Z2 = <second world corner>`
The region is inclusive and uses absolute world block coordinates. `MaxBlocks` defaults to `32768`.
## Reusable Effect Assets
For repeated logic, define a Hytale trigger effect asset and attach it to multiple trigger volumes. The minigame trigger condition/effect entries are normal codec types, so they can be reused the same way Hytale's built-in trigger-volume effects are reused.