Prev: 42821 Up: Map Next: 43141
43135: GameModeDispatchTable
3-word jump table indexed by the highlighted game mode (0-2). JP (HL) at 43134 lands here; the word for the current selection is loaded into HL and jumped to.
Mode Handler
0 Short Game ShortGameInit
1 Long Game LongGameInit
2 Introduction IntroductionMode
Short vs Long Game summary (see the two init routines for full detail):
AlienTargetID:
Short Game 9, hard-wired at 44751. Crucially, this is >= 8, which the alien-event guard at 41274 (TriggerAlienEvent's "CP 8 / RET NC") treats as "no valid target" — so the alien's targeted- stalk logic is effectively disabled in Short Game and the alien just roams.
Long Game random pick from LongGameTargetTable (values in {1, 2, 4, 6}) at 42357. Always < 8, so the alien actively hunts the chosen crew member.
Chestburster host slot (HostMarker = byte+1=$FF, byte+7=$FF):
Long Game exactly ONE slot, picked randomly via LongGameHostSlotTable (values {1,2,5}). That crew is the chestburster host — message #33 enqueued at startup ("Alien has hatched from {actor}") substitutes this crew's name in.
Short Game FOUR pre-stamped slots in the template: Dallas (1), Kane (2), Ash (4) and Brett (7) are out of play, leaving only Ripley, Lambert and Parker — the film's final act — and no host subplot.
(The in-game "Android" of message #32 "{actor} hits the Android" is the crew slot selected into AlienTargetID — see the notes at 41390 and the activation logic in 40826.)
Starting crew/alien record state at $737E:
Short Game ShortGameCrewInit — four slots pre-stamped with the HostMarker, yielding a smaller "active" starting cast
Long Game LongGameCrewInit — every slot starts with normal (non-$FF) data; LongGameInit then picks ONE slot via LongGameHostSlotTable (values in {1, 2, 5}) and stamps the HostMarker on that record's bytes +1 and +7
Script-driven startup message:
Short Game does not enqueue any startup message
Long Game enqueues message #33 ("Alien has hatched from {actor}") carrying the host slot index via 37176 — the long game's opening narrative beat naming the chestburster host
Both modes then fall through to CommonGameInit, which finishes the per-session setup identically (alien position, animation tables, room mode = 1 corridor view).
In short: the Short Game is a deterministic, abbreviated scenario; the Long Game uses the ROM-traversal script (33589) to randomise both the alien's first target and one tagged crew slot per run, producing a longer and more varied game.
43135 DEFW 44738,42276,43242
Prev: 42821 Up: Map Next: 43141