Prev: 33794 Up: Map Next: 34636
33862: Dispatch-table tails and message text
Three back-to-back data tables (once misclassified as a code routine, "GetCorridorTableEntry"):
  • 33862 (14 bytes, 7 × 16-bit pointers) — RoomDispatchTailExtra, the tail of the RoomDispatchTable: the mode-1 row words for rows 11-17 (see that table's header), sharing the same small handler pool.
  • 33876 (16 bytes, 8 × 16-bit pointers) — CrewActionDispatch, indexed by crew/alien action state in (IX+3). Action 0 returns early; actions 1-7 jump to the matching handler. Used by the routine at 36014.
  • 33892 (744 bytes) — MessageTextTable, 34 strings terminated by byte 255. Substitution codes inside the strings: 254 = actor name, 253 = target name, 252 = room name, 145 = apostrophe glyph. Walked and rendered by the routine at 37221.
Triggers (message # -> firing condition):
Msg Firing condition
0 Jones enters a living crew member's room (36859)
1 alien attack tick, victim strength still >= 4
2 Get Jones action succeeds (JonesRoom := 255 = carried)
3/4 crew nets / hits the alien (CrewHitsAlien outcomes)
5/6/7 weapon spent: Tracker / extinguisher (also fire handler with no charges) / Laser
8 room damage event, cell value 55
9 fire breaks out in a room
10 alien attack tick, victim strength 2-3
11/12 hypersleep pod entered (38529) / completed (38784)
13/14 destruct lever armed / aborted (DestructArm/DestructAbort)
15 engine-room fire fully extinguished
16/17 airlock blown (BlowLock) / resealed (SealLock)
18 alien re-enters via ShuttleBay after surviving an airlock blow
19 actor stands beside Jones's strip cells 20/21
20 actor shares a room with a dead crew member
21 victim strength exhausted - collapse
22/23/24/25 accumulated room damage crosses the '3x' threshold in CommdCentr / Computer / Life Suppt / Narcissus (AddRoomDamage, damage digits at 30006)
26 oxygen clock reaches "05:00"
27/28 launch check: Jones missing / crew not all aboard (LaunchGate)
29/30/31/32 Android combat set (UpdateAndroid / CrewHitsAndroid)
33 Long Game opening: chestburster host named (LongGameInit)
33862 DEFW 35725,35448 rows 11-12
33866 DEFW 35787,35845 rows 13-14
33870 DEFW 38398,38398,35440 rows 15-17
33876 DEFW 35448,36034
33880 DEFW 36101,36150
33884 DEFW 37520,39256
33888 DEFW 38784,40757
#0: "{actor} Sees Jones the Cat"
33892 DEFB 254
33893 DEFM " Sees Jones the Cat"
33912 DEFB 255
#1: "The ALIEN is attacking {actor}"
33913 DEFM "The ALIEN is attacking "
33936 DEFB 254
33937 DEFB 255
#2: "{actor} has captured Jones"
33938 DEFB 254
33939 DEFM " has captured Jones"
33958 DEFB 255
#3: "{actor} nets the ALIEN"
33959 DEFB 254
33960 DEFM " nets the ALIEN"
33975 DEFB 255
#4: "{actor} hits the ALIEN"
33976 DEFB 254
33977 DEFM " hits the ALIEN"
33992 DEFB 255
#5: "{actor}'s Tracker is broken"
33993 DEFB 254,145
33995 DEFM "s Tracker is broken"
34014 DEFB 255
#6: "{actor}'s extinguisher is empty"
34015 DEFB 254,145
34017 DEFM "s extinguisher is empty"
34040 DEFB 255
#7: "{actor}'s Laser is exhausted"
34041 DEFB 254,145
34043 DEFM "s Laser is exhausted"
34063 DEFB 255
#8: "Structural Damage in {room}"
34064 DEFM "Structural Damage in "
34085 DEFB 252
34086 DEFB 255
#9: "WARNING:Fire in {room}"
34087 DEFM "WARNING:Fire in "
34103 DEFB 252
34104 DEFB 255
#10: "{actor} is being wounded"
34105 DEFB 254
34106 DEFM " is being wounded"
34123 DEFB 255
#11: "{actor} prepares for hypersleep"
34124 DEFB 254
34125 DEFM " prepares for hypersleep"
34149 DEFB 255
#12: "{actor} enters hypersleep"
34150 DEFB 254
34151 DEFM " enters hypersleep"
34169 DEFB 255
#13: "DESTRUCT SEQUENCE INITIATED"
34170 DEFM "DESTRUCT SEQUENCE INITIATED"
34197 DEFB 255
#14: "DESTRUCT SEQUENCE ABORTED"
34198 DEFM "DESTRUCT SEQUENCE ABORTED"
34223 DEFB 255
#15: "Fire extinguished in {room}"
34224 DEFM "Fire extinguished in "
34245 DEFB 252
34246 DEFB 255
#16: "WARNING:{room}DEPRESSURISED"
34247 DEFM "WARNING:"
34255 DEFB 252
34256 DEFM "DEPRESSURISED"
34269 DEFB 255
#17: "{room} PRESSURE RESTORED"
34270 DEFB 252
34271 DEFM " PRESSURE RESTORED"
34289 DEFB 255
#18: "INTRUDER ENTERING {room}"
34290 DEFM "INTRUDER ENTERING "
34308 DEFB 252
34309 DEFB 255
#19: "Jones is looking uneasy"
34310 DEFM "Jones is looking uneasy"
34333 DEFB 255
#20: "{actor} finds {target}'s body"
34334 DEFB 254
34335 DEFM " finds "
34342 DEFB 253,145
34344 DEFM "s body"
34350 DEFB 255
#21: "{actor} has collapsed"
34351 DEFB 254
34352 DEFM " has collapsed"
34366 DEFB 255
#22: "Partial loss of control systems"
34367 DEFM "Partial loss of control systems"
34398 DEFB 255
#23: "Computer Malfunction detected"
34399 DEFM "Computer Malfunction detected"
34428 DEFB 255
#24: "Environmental irregularities"
34429 DEFM "Environmental irregularities"
34457 DEFB 255
#25: "Narcissus status RED"
34458 DEFM "Narcissus status RED"
34478 DEFB 255
#26: "Oxygen status CRITICAL"
34479 DEFM "Oxygen status CRITICAL"
34501 DEFB 255
#27: "BioUnit Jones not present"
34502 DEFM "BioUnit Jones not present"
34527 DEFB 255
#28: "LAUNCH COUNTERMANDED"
34528 DEFM "LAUNCH COUNTERMANDED"
34548 DEFB 255
#29: "{target} is attacking {actor}"
34549 DEFB 253
34550 DEFM " is attacking "
34564 DEFB 254
34565 DEFB 255
#30: "{actor} is attacking {target}"
34566 DEFB 254
34567 DEFM " is attacking "
34581 DEFB 253
34582 DEFB 255
#31: "{actor} nets {target}"
34583 DEFB 254
34584 DEFM " nets "
34590 DEFB 253
34591 DEFB 255
#32: "{actor} hits the Android" Enqueued by CrewHitsAndroid. The "Android" is the long-game AlienTargetID slot (33703) — the dormant traitor crew member that UpdateAndroid activates on first encounter with the alien. The actor placeholder is filled from CrewIndex = the slot currently being dispatched in combat state 4 — whichever crew member stands in the Android's room when the ATTACK order fires (CrewAction4_Handler matches on the room byte).
34592 DEFB 254
34593 DEFM " hits the Android"
34610 DEFB 255
#33: "Alien has hatched from {actor}"
34611 DEFM "Alien has hatched from "
34634 DEFB 254
34635 DEFB 255
Prev: 33794 Up: Map Next: 34636