update Tue 07/14/2026 16:45:47.62
This commit is contained in:
@@ -31,6 +31,13 @@ positions and sizes, wander radius, calibration readouts. Marker print size stay
|
||||
- **Playlist engine** (server-driven, all viewers in sync): N concurrent ghosts,
|
||||
per-ghost dwell time then rotate through the whole roster, shuffle/roster order,
|
||||
color/rarity filters, optional time-of-day windows, crossfade in/out.
|
||||
- **Paths**: waypoint routes (loop or pingpong) drawn in the 3D editor — ghosts walk them
|
||||
at constant speed and turn to face each new direction, like they live there. Waypoints are
|
||||
full 3D so paths can climb. Path motion is deterministic (pure function of time), same as wander.
|
||||
- **Rarity system**: `weighted` order makes Commons appear often and Legendaries rarely
|
||||
(per-rarity appearance weights), and `movementScale` shrinks how much rarer ghosts move.
|
||||
- **Residents**: pin any ghost permanently to a spawn or path (`residents` in the playlist);
|
||||
they never rotate out and their spot is excluded from rotation.
|
||||
- **Behaviors**: static float (bob + idle sway) or wander (deterministic orbit-drift —
|
||||
a pure function of server spawn record + wall clock, so every phone computes the
|
||||
same motion with zero position streaming). Wander is 3D: horizontal radius plus a
|
||||
|
||||
Reference in New Issue
Block a user