Stage 7: polish & wrap-up
One last manifest addition, then a tour of what you built.
Default redeems
Section titled “Default redeems”Suggested Cue→Event mappings the broadcaster gets offered when activating the Pack, instead of wiring every mapping by hand:
[[default_redeem]]cue = "Moon Gravity"event = "gravity"
[[default_redeem]]cue = "Send a Bot"event = "add_bot"
[[default_redeem]]cue = "Taunt the Streamer"event = "say"The finished Pack
Section titled “The finished Pack”| Event | Queue | Policy | Effect |
|---|---|---|---|
say(message) | chat | applied | Viewer message in game chat |
add_bot(count) | effects | applied | Hostile bots, instantly |
gravity(level, seconds) | timed | done | sv_gravity, serialized, per-reward duration |
fast_monsters(seconds) | timed | done | Fast monsters, serialized, per-reward duration |
Plus the data plane in both directions:
| Key | Direction | Purpose |
|---|---|---|
effect_count | adapter → platform | Lifetime chaos tally, persist = true |
active_effect | adapter → platform | Running timed effect, "" when none |
deaths | adapter → platform | Session deaths, parsed from server obituaries |
last_effect | adapter → platform | {name, seq, by?} per applied effect — drives the toast |
max_bots | broadcaster → adapter | Per-redeem bot cap |
chat_prefix | broadcaster → adapter | Branding on say messages |
Three queues, two policies, four events, four state keys, two config
fields, two overlay widgets — and every piece of the Pack surface used: viewer-override params,
enum validation, env-based secrets, fail-with-reason, deferred done,
persistent state, game-sourced state, latched config, an on-stream
overlay, default redeems.
Where to go next
Section titled “Where to go next”- Richer effects. Raw console cvars only go so far. Doom engines run
ACS scripts from a
.pk3your Pack can ship; trigger them over RCON withpuke <script>to spawn specific monsters at the player, rain items, or flash the screen. - More overlay.
active_effectis declared but unused by the overlay — a persistent “MOON GRAVITY ACTIVE” banner while the effect runs is a natural third widget. - Any other game. Nothing here is Doom-specific except the
RconClient: if a game exposes a console, a socket, or stdin, the same manifest-queues-handlers shape drives it.
See also
Section titled “See also”- Manifest reference — queues, events, state.
- Defining Events — params schemas and viewer overrides.
- MPP protocol — dispatch semantics and the frame catalog.