Staging
The moments of *First Light: Vagant* — the beats where the game takes the camera off the player, and the voice of the whole script.
Staging
The moments of First Light: Vagant — the beats where the game takes the camera off the player, and the voice of the whole script.
Mounted once, on mount_staging. It places nothing in the scene and owns no
entity; it listens to the game and answers with a shot.
The beats
| Beat | What starts it | What it is |
|---|---|---|
opening | the round begins | The fen, low over the water, then the first dark standard, then the vagant at the sluice house. The Commissioner is heard before anything is seen. |
seventh | the last lamp catches | Off the lamp head and up, until all seven lights are in one frame. |
firstLight | the night is won | The crane up off the vagant, out to the dawn, and out into the light. |
caught | a Commissioner reaches you | The camera falls to the ground and the wig fills the frame while your entry is read. |
dawnLost | first light, lamps still dark | The same rise, over a fen that never came on. |
A night ends one way: a named ending — caught, or first light — displaces the dark-fen one, even mid-shot.
Skipping
Every beat is skippable, from a keyboard (Space, Esc, Enter), from a pad
(south, east, start), from a thumb (the Skip button, bottom right) and
from a mouse (the SKIP pill, top right). staging.inputMap carries that one
control and stands the player group down while a beat runs, so the gameplay
controls leave the screen along with the gameplay camera and come back with it.
A skipped beat keeps its consequences and drops its remaining lines: what has not been said yet is not said over the game you have just been handed back.
Every shape of screen
No shot in here is a fixed camera position. Each is a direction and a distance
from what the shot is about, resolved against the live ui.screenSize():
- a laterally wide subject — the fen, the line of seven lights — needs more room across than a tall frame has, so a tall frame stands back;
- a tall subject — the vagant, a Commissioner filling the frame — is the other way round, and a tall frame comes closer;
- the seven-lamp vista is fitted rather than placed:
flbeats.fitEyesolves the distance at which the whole fen fits the narrower of the frame's two half angles, which is the horizontal one on a phone held upright and the vertical one on a television.
The voice
Staging decides when a line happens and emits say(key); the sound of it
belongs to SoundDirector, and the words on screen belong to Screens. Every
key staging fires is in staging.flscript, with its written form beside it — so
a line whose audio never arrives is a quiet line rather than a lost one.
Beyond the beats, staging speaks over live gameplay without taking the camera: the first relit lamp, the fourth, the sixth, the first time something notices you, the wig going on, the wig soaking through, and the oil running short.
Public
playBeat(name)— play one now, whether or not it has already played.skip()— skip whatever is running.
Signals it raises
stagingBeat(name)— a beat began.stagingDone(name, reason)— it ended:completed,skippedorstopped.
Scoped to this part · feeds back into the world's score.