Advertisement
Guest User

Hunt for the Perfect Dark Ghost

a guest
Jan 17th, 2019
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 167.29 KB | None | 0 0
  1. 0401:
  2. 00A102000000 Set Objective Bits (02000000)
  3. 017400 Return value loop when button is pressed 0174 (00)
  4. 011100CF Prerecorded camera: movement, rotation, and special fx info Chicago Prerecorded Fx Intro
  5. 017D2F Change Music To Track # (Chicago intro)
  6. 00A7F800000400 Set Tags for Guard ID# (Joanna [player 1]) Hide Guard id (Show if Unset)
  7. 011600 Show 16-Object (Chicago Hovertaxi)
  8. 00AD0004000000 Set Tags 2 for 16-Object (Chicago Hovertaxi)
  9. 01180000000010 Set Tags 3 for 16-Object (Chicago Hovertaxi)
  10. 011200D60004FFFF 16-Object Does Animation (Chicago Hovertaxi)
  11. 011601 Show 16-Object (Chicago Hovertaxi)
  12. 00AD0104000000 Set Tags 2 for 16-Object (Chicago Hovertaxi)
  13. 01180100000010 Set Tags 3 for 16-Object (Chicago Hovertaxi)
  14. 011200D70104FFFF 16-Object Does Animation (Chicago Hovertaxi)
  15. 011602 Show 16-Object (Chicago Hovertaxi)
  16. 00AD0204000000 Set Tags 2 for 16-Object (Chicago Hovertaxi)
  17. 01180200000010 Set Tags 3 for 16-Object (Chicago Hovertaxi)
  18. 011200D80204FFFF 16-Object Does Animation (Chicago Hovertaxi)
  19. 011603 Show 16-Object (Chicago Intro Police hovercar)
  20. 00AD0304000000 Set Tags 2 for 16-Object (Chicago Intro Police hovercar)
  21. 01180300000010 Set Tags 3 for 16-Object (Chicago Intro Police hovercar)
  22. 011200D50304FFFF 16-Object Does Animation (Chicago Intro Police hovercar) Chicago Intro, Joanna (hops fence)
  23. 00A71A00000400 Set Tags for Guard ID# (CIA Agent) Hide Guard id (Show if Unset)
  24. 01CB000000FF0000 Fade In/Out 01CB (000000FF0000)
  25. 01CB00000000005A Fade In/Out 01CB (00000000005A)
  26. 000205 Resume If Return Value Loop Met 0002 (05)
  27. 0003 Sleep For One Frame
  28. 011303 If Prerecorded camera not finished, Return Value Loop 0113 (03)
  29. 000004 Return Value Loop 0000 (04)
  30. 000203 Resume If Return Value Loop Met 0002 (03)
  31. 017404 Return value loop when button is pressed 0174 (04)
  32. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  33. 000204 Resume If Return Value Loop Met 0002 (04)
  34. 00A8F800000400 Unset Tags for Guard ID# (Joanna [player 1]) Hide Guard id (Show if Unset)
  35. 011700 Hide 16-Object (Chicago Hovertaxi)
  36. 011701 Hide 16-Object (Chicago Hovertaxi)
  37. 011702 Hide 16-Object (Chicago Hovertaxi)
  38. 011703 Hide 16-Object (Chicago Intro Police hovercar)
  39. 00A81A00000400 Unset Tags for Guard ID# (CIA Agent) Hide Guard id (Show if Unset)
  40. 000200 Resume If Return Value Loop Met 0002 (00)
  41. 0008 Jump to Return Subroutine
  42. 0004 Terminator
  43.  
  44.  
  45.  
  46. 0402:
  47. 00A7F500000400 Set Tags for Guard ID# (Velvet Dark [player 2]) Hide Guard id (Show if Unset)
  48. 00A7F400000400 Set Tags for Guard ID# (Counter-operative [player 2]) Hide Guard id (Show if Unset)
  49. 017400 Return value loop when button is pressed 0174 (00)
  50. 011100D0 Prerecorded camera: movement, rotation, and special fx info Chicago Prerecorded Fx Intro
  51. 00A7F800000400 Set Tags for Guard ID# (Joanna [player 1]) Hide Guard id (Show if Unset)
  52. 011600 Show 16-Object (Chicago Hovertaxi)
  53. 00AD0004000000 Set Tags 2 for 16-Object (Chicago Hovertaxi)
  54. 01180000000010 Set Tags 3 for 16-Object (Chicago Hovertaxi)
  55. 011200DC0004FFFF 16-Object Does Animation (Chicago Hovertaxi)
  56. 011601 Show 16-Object (Chicago Hovertaxi)
  57. 00AD0104000000 Set Tags 2 for 16-Object (Chicago Hovertaxi)
  58. 01180100000010 Set Tags 3 for 16-Object (Chicago Hovertaxi)
  59. 011200DD0104FFFF 16-Object Does Animation (Chicago Hovertaxi)
  60. 011603 Show 16-Object (Chicago Intro Police hovercar)
  61. 00AD0304000000 Set Tags 2 for 16-Object (Chicago Intro Police hovercar)
  62. 01180300000010 Set Tags 3 for 16-Object (Chicago Intro Police hovercar)
  63. 011200D90304FFFF 16-Object Does Animation (Chicago Intro Police hovercar)
  64. 011605 Show 16-Object (Chicago Intro Police hovercar)
  65. 00AD0504000000 Set Tags 2 for 16-Object (Chicago Intro Police hovercar)
  66. 01180500000010 Set Tags 3 for 16-Object (Chicago Intro Police hovercar)
  67. 011200DB0504FFFF 16-Object Does Animation (Chicago Intro Police hovercar)
  68. 00A71A00000400 Set Tags for Guard ID# (CIA Agent) Hide Guard id (Show if Unset)
  69. 000205 Resume If Return Value Loop Met 0002 (05)
  70. 0003 Sleep For One Frame
  71. 011303 If Prerecorded camera not finished, Return Value Loop 0113 (03)
  72. 000004 Return Value Loop 0000 (04)
  73. 000203 Resume If Return Value Loop Met 0002 (03)
  74. 017404 Return value loop when button is pressed 0174 (04)
  75. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  76. 000204 Resume If Return Value Loop Met 0002 (04)
  77. 00A8F800000400 Unset Tags for Guard ID# (Joanna [player 1]) Hide Guard id (Show if Unset)
  78. 011700 Hide 16-Object (Chicago Hovertaxi)
  79. 011701 Hide 16-Object (Chicago Hovertaxi)
  80. 011703 Hide 16-Object (Chicago Intro Police hovercar)
  81. 011705 Hide 16-Object (Chicago Intro Police hovercar)
  82. 00A81A00000400 Unset Tags for Guard ID# (CIA Agent) Hide Guard id (Show if Unset)
  83. 000200 Resume If Return Value Loop Met 0002 (00)
  84. 0008 Jump to Return Subroutine
  85. 0004 Terminator
  86.  
  87.  
  88.  
  89. 0403:
  90. 017400 Return value loop when button is pressed 0174 (00)
  91. 011100D1 Prerecorded camera: movement, rotation, and special fx info Chicago Prerecorded Fx Intro
  92. 00A7F800000400 Set Tags for Guard ID# (Joanna [player 1]) Hide Guard id (Show if Unset)
  93. 011603 Show 16-Object (Chicago Intro Police hovercar)
  94. 00AD0304000000 Set Tags 2 for 16-Object (Chicago Intro Police hovercar)
  95. 01180300000010 Set Tags 3 for 16-Object (Chicago Intro Police hovercar)
  96. 011200DE0304FFFF 16-Object Does Animation (Chicago Intro Police hovercar)
  97. 00A71A00000400 Set Tags for Guard ID# (CIA Agent) Hide Guard id (Show if Unset)
  98. 01CAF80000 Set Guard's Weapon (cutscene) (Joanna [player 1]) ( 00 Nothing Right Gun, 00 Nothing left gun)
  99. 0003 Sleep For One Frame
  100. 01CAF80400 Set Guard's Weapon (cutscene) (Joanna [player 1]) ( 04 Falcon 2 (Scope) Right Gun, 00 Nothing left gun)
  101. 000205 Resume If Return Value Loop Met 0002 (05)
  102. 0003 Sleep For One Frame
  103. 011303 If Prerecorded camera not finished, Return Value Loop 0113 (03)
  104. 000004 Return Value Loop 0000 (04)
  105. 000203 Resume If Return Value Loop Met 0002 (03)
  106. 017404 Return value loop when button is pressed 0174 (04)
  107. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  108. 000204 Resume If Return Value Loop Met 0002 (04)
  109. 00A8F800000400 Unset Tags for Guard ID# (Joanna [player 1]) Hide Guard id (Show if Unset)
  110. 011703 Hide 16-Object (Chicago Intro Police hovercar)
  111. 00A81A00000400 Unset Tags for Guard ID# (CIA Agent) Hide Guard id (Show if Unset)
  112. 000200 Resume If Return Value Loop Met 0002 (00)
  113. 0008 Jump to Return Subroutine
  114. 0004 Terminator
  115.  
  116.  
  117.  
  118. 0404:
  119. 011621 Show 16-Object (Chicago Wire fence)
  120. 00AD2104000000 Set Tags 2 for 16-Object (Chicago Wire fence)
  121. 01182100000010 Set Tags 3 for 16-Object (Chicago Wire fence)
  122. 011204702101FFFF 16-Object Does Animation (Chicago Wire fence)
  123. 017400 Return value loop when button is pressed 0174 (00)
  124. 011100E0 Prerecorded camera: movement, rotation, and special fx info Chicago Prerecorded Fx Intro
  125. 00A7F800800000 Set Tags for Guard ID# (Joanna [player 1])
  126. 011BF800020000 Set guard flag Tags 3 (Joanna [player 1])
  127. 000B00E1FFFFFFFF0600F804 Guard Plays Animation (Joanna [player 1]) Chicago Intro, Civilian (looks up)
  128. 00A71A00000400 Set Tags for Guard ID# (CIA Agent) Hide Guard id (Show if Unset)
  129. 000205 Resume If Return Value Loop Met 0002 (05)
  130. 0003 Sleep For One Frame
  131. 011303 If Prerecorded camera not finished, Return Value Loop 0113 (03)
  132. 000004 Return Value Loop 0000 (04)
  133. 000203 Resume If Return Value Loop Met 0002 (03)
  134. 017404 Return value loop when button is pressed 0174 (04)
  135. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  136. 000204 Resume If Return Value Loop Met 0002 (04)
  137. 00A81A00000400 Unset Tags for Guard ID# (CIA Agent) Hide Guard id (Show if Unset)
  138. 00A8F800800000 Unset Tags for Guard ID# (Joanna [player 1])
  139. 000200 Resume If Return Value Loop Met 0002 (00)
  140. 0008 Jump to Return Subroutine
  141. 0004 Terminator
  142.  
  143.  
  144.  
  145. 0405:
  146. 011100D2 Prerecorded camera: movement, rotation, and special fx info Chicago Prerecorded Fx Intro
  147. 01753C Set Frames to Move Camera to Jo's head 0175 (3C)
  148. 017400 Return value loop when button is pressed 0174 (00)
  149. 00A7F800800000 Set Tags for Guard ID# (Joanna [player 1])
  150. 011BF800020000 Set guard flag Tags 3 (Joanna [player 1])
  151. 000B00DFFFFFFFFF0600F804 Guard Plays Animation (Joanna [player 1])
  152. 00A71A00000400 Set Tags for Guard ID# (CIA Agent) Hide Guard id (Show if Unset)
  153. 00B6 Reset Cycle Counter And Enable It
  154. 00022D Resume If Return Value Loop Met 0002 (2D)
  155. 0003 Sleep For One Frame
  156. 01742F Return value loop when button is pressed 0174 (2F)
  157. 00BD0001E004 Check if Cycle Counter > Value, Return Value Loop 00BD (0001E004)
  158. 00012D Go To Beginning, Then Return Value Loop 0001 (2D)
  159. 000204 Resume If Return Value Loop Met 0002 (04)
  160. 01CAF80000 Set Guard's Weapon (cutscene) (Joanna [player 1]) ( 00 Nothing Right Gun, 00 Nothing left gun)
  161. 0003 Sleep For One Frame
  162. 01CAF80000 Set Guard's Weapon (cutscene) (Joanna [player 1]) ( 00 Nothing Right Gun, 00 Nothing left gun)
  163. 00022F Resume If Return Value Loop Met 0002 (2F)
  164. 0003 Sleep For One Frame
  165. 017404 Return value loop when button is pressed 0174 (04)
  166. 00BD00038E04 Check if Cycle Counter > Value, Return Value Loop 00BD (00038E04)
  167. 00012F Go To Beginning, Then Return Value Loop 0001 (2F)
  168. 000204 Resume If Return Value Loop Met 0002 (04)
  169. 000205 Resume If Return Value Loop Met 0002 (05)
  170. 0003 Sleep For One Frame
  171. 011303 If Prerecorded camera not finished, Return Value Loop 0113 (03)
  172. 000004 Return Value Loop 0000 (04)
  173. 000203 Resume If Return Value Loop Met 0002 (03)
  174. 017404 Return value loop when button is pressed 0174 (04)
  175. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  176. 000204 Resume If Return Value Loop Met 0002 (04)
  177. 000200 Resume If Return Value Loop Met 0002 (00)
  178. 00A8F500000400 Unset Tags for Guard ID# (Velvet Dark [player 2]) Hide Guard id (Show if Unset)
  179. 00A8F400000400 Unset Tags for Guard ID# (Counter-operative [player 2]) Hide Guard id (Show if Unset)
  180. 00D307 Turn off Sound in Slot 00D3 (07)
  181. 00A81A00000400 Unset Tags for Guard ID# (CIA Agent) Hide Guard id (Show if Unset)
  182. 00A8F800800000 Unset Tags for Guard ID# (Joanna [player 1])
  183. 011BF800020000 Set guard flag Tags 3 (Joanna [player 1])
  184. 000B00DFFFFEFFFF0600F802 Guard Plays Animation (Joanna [player 1])
  185. 017E Restart Default Music, Play from Beginning
  186. 0180 Restart Default Ambiance
  187. 00A120000000 Set Objective Bits (20000000)
  188. 00DD Switch Control to Joanna, Return from Camera
  189. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  190. 0004 Terminator
  191.  
  192.  
  193.  
  194. 0406:
  195. 0006FD0407 Set Return Subroutine (for 0008 Command) (Guard [whatever called it]) (JAL TO: 0407)
  196. 0005FD0402 Jump To Function (Guard [whatever called it]) (JAL TO: 0402)
  197. 0004 Terminator
  198.  
  199.  
  200.  
  201. 0407:
  202. 0006FD0408 Set Return Subroutine (for 0008 Command) (Guard [whatever called it]) (JAL TO: 0408)
  203. 0005FD0403 Jump To Function (Guard [whatever called it]) (JAL TO: 0403)
  204. 0004 Terminator
  205.  
  206.  
  207.  
  208. 0408:
  209. 0006FD0409 Set Return Subroutine (for 0008 Command) (Guard [whatever called it]) (JAL TO: 0409)
  210. 0005FD0404 Jump To Function (Guard [whatever called it]) (JAL TO: 0404)
  211. 0004 Terminator
  212.  
  213.  
  214.  
  215. 0409:
  216. 0005FD0405 Jump To Function (Guard [whatever called it]) (JAL TO: 0405)
  217. 0004 Terminator
  218.  
  219.  
  220.  
  221. 040A:
  222. 0006FD0406 Set Return Subroutine (for 0008 Command) (Guard [whatever called it]) (JAL TO: 0406)
  223. 0005FD0401 Jump To Function (Guard [whatever called it]) (JAL TO: 0401)
  224. 0004 Terminator
  225.  
  226.  
  227.  
  228. 040B:
  229. 01110178 Prerecorded camera: movement, rotation, and special fx info Chicago Prerecorded Fx Outro
  230. 017D2B Change Music To Track # (Chicago outro)
  231. 00A7F400000400 Set Tags for Guard ID# (Counter-operative [player 2]) Hide Guard id (Show if Unset)
  232. 00A7F100000400 Set Tags for Guard ID# (F1 Special Guard?) Hide Guard id (Show if Unset)
  233. 0005F20000 Jump To Function (Player 1 and Player 2) (JAL TO: 0000) Do Nothing (Ends Routine)
  234. 00E810 Immediately Open 16-Door Object (Chicago Unopened fire door)
  235. 00E811 Immediately Open 16-Door Object (Chicago Unopened fire door)
  236. 01170A Hide 16-Object (Chicago Hovertaxi)
  237. 01170C Hide 16-Object (Chicago dataDyne limo)
  238. 01150D Hide Guard ID (G5 Guard)
  239. 01150E Hide Guard ID (G5 Guard)
  240. 01150F Hide Guard ID (G5 Guard)
  241. 011510 Hide Guard ID (G5 Guard)
  242. 00A7F200800000 Set Tags for Guard ID# (Player 1 and Player 2)
  243. 00A8F200000400 Unset Tags for Guard ID# (Player 1 and Player 2) Hide Guard id (Show if Unset)
  244. 011BF200020000 Set guard flag Tags 3 (Player 1 and Player 2)
  245. 000B0179FFFFFFFF0600F204 Guard Plays Animation (Player 1 and Player 2) Chicago Outro, Joanna (walks, spins)
  246. 00B6 Reset Cycle Counter And Enable It
  247. 01CAF2FFFF Set Guard's Weapon (cutscene) (Player 1 and Player 2) (Hold nothing right hand, nothing in cinema)
  248. 0003 Sleep For One Frame
  249. 01CAF2FF02 Set Guard's Weapon (cutscene) (Player 1 and Player 2) (Continue same gun right hand, 02 Falcon 2 in cinema)
  250. 01D500 Hide/Show Non-Essential Actors 01D5 (00)
  251. 00022D Resume If Return Value Loop Met 0002 (2D)
  252. 0003 Sleep For One Frame
  253. 01742E Return value loop when button is pressed 0174 (2E)
  254. 00BD00001E04 Check if Cycle Counter > Value, Return Value Loop 00BD (00001E04)
  255. 00012D Go To Beginning, Then Return Value Loop 0001 (2D)
  256. 000204 Resume If Return Value Loop Met 0002 (04)
  257. 00CE016107 Play Sound - Foot print on stone?
  258. 00022F Resume If Return Value Loop Met 0002 (2F)
  259. 0003 Sleep For One Frame
  260. 01742E Return value loop when button is pressed 0174 (2E)
  261. 00BD00004604 Check if Cycle Counter > Value, Return Value Loop 00BD (00004604)
  262. 00012F Go To Beginning, Then Return Value Loop 0001 (2F)
  263. 000204 Resume If Return Value Loop Met 0002 (04)
  264. 00CE016207 Play Sound - Footstep
  265. 000230 Resume If Return Value Loop Met 0002 (30)
  266. 0003 Sleep For One Frame
  267. 01742E Return value loop when button is pressed 0174 (2E)
  268. 00BD00007804 Check if Cycle Counter > Value, Return Value Loop 00BD (00007804)
  269. 000130 Go To Beginning, Then Return Value Loop 0001 (30)
  270. 000204 Resume If Return Value Loop Met 0002 (04)
  271. 00CE016307 Play Sound - Footstep
  272. 000231 Resume If Return Value Loop Met 0002 (31)
  273. 0003 Sleep For One Frame
  274. 01742E Return value loop when button is pressed 0174 (2E)
  275. 00BD0000AE04 Check if Cycle Counter > Value, Return Value Loop 00BD (0000AE04)
  276. 000131 Go To Beginning, Then Return Value Loop 0001 (31)
  277. 000204 Resume If Return Value Loop Met 0002 (04)
  278. 00CE016407 Play Sound - Footstep
  279. 000232 Resume If Return Value Loop Met 0002 (32)
  280. 0003 Sleep For One Frame
  281. 01742E Return value loop when button is pressed 0174 (2E)
  282. 00BD0000D004 Check if Cycle Counter > Value, Return Value Loop 00BD (0000D004)
  283. 000132 Go To Beginning, Then Return Value Loop 0001 (32)
  284. 000204 Resume If Return Value Loop Met 0002 (04)
  285. 00CE046D06 Play Sound - [empty 0-sized]
  286. 000233 Resume If Return Value Loop Met 0002 (33)
  287. 0003 Sleep For One Frame
  288. 01742E Return value loop when button is pressed 0174 (2E)
  289. 00BD0000D204 Check if Cycle Counter > Value, Return Value Loop 00BD (0000D204)
  290. 000133 Go To Beginning, Then Return Value Loop 0001 (33)
  291. 000204 Resume If Return Value Loop Met 0002 (04)
  292. 00CE016107 Play Sound - Foot print on stone?
  293. 000234 Resume If Return Value Loop Met 0002 (34)
  294. 0003 Sleep For One Frame
  295. 01742E Return value loop when button is pressed 0174 (2E)
  296. 00BD0000EE04 Check if Cycle Counter > Value, Return Value Loop 00BD (0000EE04)
  297. 000134 Go To Beginning, Then Return Value Loop 0001 (34)
  298. 000204 Resume If Return Value Loop Met 0002 (04)
  299. 00CE016207 Play Sound - Footstep
  300. 000235 Resume If Return Value Loop Met 0002 (35)
  301. 0003 Sleep For One Frame
  302. 01742E Return value loop when button is pressed 0174 (2E)
  303. 00BD00011804 Check if Cycle Counter > Value, Return Value Loop 00BD (00011804)
  304. 000135 Go To Beginning, Then Return Value Loop 0001 (35)
  305. 000204 Resume If Return Value Loop Met 0002 (04)
  306. 00CE017107 Play Sound - Metal grate footstep
  307. 000236 Resume If Return Value Loop Met 0002 (36)
  308. 0003 Sleep For One Frame
  309. 01742E Return value loop when button is pressed 0174 (2E)
  310. 00BD00015E04 Check if Cycle Counter > Value, Return Value Loop 00BD (00015E04)
  311. 000136 Go To Beginning, Then Return Value Loop 0001 (36)
  312. 000204 Resume If Return Value Loop Met 0002 (04)
  313. 00CE017307 Play Sound - Metal grate footstep
  314. 000237 Resume If Return Value Loop Met 0002 (37)
  315. 0003 Sleep For One Frame
  316. 01742E Return value loop when button is pressed 0174 (2E)
  317. 00BD0001CA04 Check if Cycle Counter > Value, Return Value Loop 00BD (0001CA04)
  318. 000137 Go To Beginning, Then Return Value Loop 0001 (37)
  319. 000204 Resume If Return Value Loop Met 0002 (04)
  320. 00CE017207 Play Sound - Metal grate footstep
  321. 000238 Resume If Return Value Loop Met 0002 (38)
  322. 0003 Sleep For One Frame
  323. 01742E Return value loop when button is pressed 0174 (2E)
  324. 00BD0001FA04 Check if Cycle Counter > Value, Return Value Loop 00BD (0001FA04)
  325. 000138 Go To Beginning, Then Return Value Loop 0001 (38)
  326. 000204 Resume If Return Value Loop Met 0002 (04)
  327. 00CE017107 Play Sound - Metal grate footstep
  328. 000239 Resume If Return Value Loop Met 0002 (39)
  329. 0003 Sleep For One Frame
  330. 01742E Return value loop when button is pressed 0174 (2E)
  331. 00BD00021C04 Check if Cycle Counter > Value, Return Value Loop 00BD (00021C04)
  332. 000139 Go To Beginning, Then Return Value Loop 0001 (39)
  333. 000204 Resume If Return Value Loop Met 0002 (04)
  334. 006D10 Close 16-Object Door (Chicago Unopened fire door)
  335. 006D11 Close 16-Object Door (Chicago Unopened fire door)
  336. 00023A Resume If Return Value Loop Met 0002 (3A)
  337. 0003 Sleep For One Frame
  338. 01742E Return value loop when button is pressed 0174 (2E)
  339. 00BD00022104 Check if Cycle Counter > Value, Return Value Loop 00BD (00022104)
  340. 00013A Go To Beginning, Then Return Value Loop 0001 (3A)
  341. 000204 Resume If Return Value Loop Met 0002 (04)
  342. 00CE017107 Play Sound - Metal grate footstep
  343. 00023B Resume If Return Value Loop Met 0002 (3B)
  344. 0003 Sleep For One Frame
  345. 01742E Return value loop when button is pressed 0174 (2E)
  346. 00BD00024C04 Check if Cycle Counter > Value, Return Value Loop 00BD (00024C04)
  347. 00013B Go To Beginning, Then Return Value Loop 0001 (3B)
  348. 000204 Resume If Return Value Loop Met 0002 (04)
  349. 00CE017207 Play Sound - Metal grate footstep
  350. 000205 Resume If Return Value Loop Met 0002 (05)
  351. 0003 Sleep For One Frame
  352. 011303 If Prerecorded camera not finished, Return Value Loop 0113 (03)
  353. 00002E Return Value Loop 0000 (2E)
  354. 000203 Resume If Return Value Loop Met 0002 (03)
  355. 01742E Return value loop when button is pressed 0174 (2E)
  356. 000203 Resume If Return Value Loop Met 0002 (03)
  357. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  358. 00022E Resume If Return Value Loop Met 0002 (2E)
  359. 00D307 Turn off Sound in Slot 00D3 (07)
  360. 00D30A Turn off Sound in Slot 00D3 (0A)
  361. 000204 Resume If Return Value Loop Met 0002 (04)
  362. 00DC Exit Level
  363. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  364. 0004 Terminator
  365.  
  366.  
  367.  
  368. 040C:
  369. 00770103 If Difficulty < Value, Return Value Loop 0077 (0103)
  370. 0096FD86A0 Set Guard Health (Guard [whatever called it])
  371. 000004 Return Value Loop 0000 (04)
  372. 000203 Resume If Return Value Loop Met 0002 (03)
  373. 0096FDFFB0 Set Guard Health (Guard [whatever called it])
  374. 00D504 Hover Car begin path 00D5 (04)
  375. 00D600000000 Set Hover Car Speed 00D6 (00000000)
  376. 000204 Resume If Return Value Loop Met 0002 (04)
  377. 000205 Resume If Return Value Loop Met 0002 (05)
  378. 0003 Sleep For One Frame
  379. 00A3001000000104 Compare Objective Bits, Return Value Loop are True (00100000)
  380. 000203 Resume If Return Value Loop Met 0002 (03)
  381. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  382. 000204 Resume If Return Value Loop Met 0002 (04)
  383. 00620A03 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago Hovertaxi)
  384. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  385. 000203 Resume If Return Value Loop Met 0002 (03)
  386. 017C800000 Set Sound to Slot (Does not play) - Door open
  387. 016B000A000109600C80 Play Sound from 16-Object (Chicago Hovertaxi)
  388. 011201680A04FFFF 16-Object Does Animation (Chicago Hovertaxi)
  389. 00AD0A04000000 Set Tags 2 for 16-Object (Chicago Hovertaxi)
  390. 000206 Resume If Return Value Loop Met 0002 (06)
  391. 0003 Sleep For One Frame
  392. 00A3002000000104 Compare Objective Bits, Return Value Loop are True (00200000)
  393. 000106 Go To Beginning, Then Return Value Loop 0001 (06)
  394. 000204 Resume If Return Value Loop Met 0002 (04)
  395. 00620A03 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago Hovertaxi)
  396. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  397. 000203 Resume If Return Value Loop Met 0002 (03)
  398. 00A180000000 Set Objective Bits (80000000)
  399. 000207 Resume If Return Value Loop Met 0002 (07)
  400. 0003 Sleep For One Frame
  401. 00A3000000400104 Compare Objective Bits, Return Value Loop are True (00000040)
  402. 000107 Go To Beginning, Then Return Value Loop 0001 (07)
  403. 000204 Resume If Return Value Loop Met 0002 (04)
  404. 000238 Resume If Return Value Loop Met 0002 (38)
  405. B5474F20464F522043524153480A = GO FOR CRASH
  406. 00A100000020 Set Objective Bits (00000020)
  407. 0003 Sleep For One Frame
  408. 00D300 Turn off Sound in Slot 00D3 (00)
  409. 011201690A04FFFF 16-Object Does Animation (Chicago Hovertaxi)
  410. 00020A Resume If Return Value Loop Met 0002 (0A)
  411. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  412. 0004 Terminator
  413.  
  414.  
  415.  
  416. 040D:
  417. 00D502 Hover Car begin path 00D5 (02)
  418. 00D600000000 Set Hover Car Speed 00D6 (00000000)
  419. 00770103 If Difficulty < Value, Return Value Loop 0077 (0103)
  420. 0096FD86A0 Set Guard Health (Guard [whatever called it])
  421. 000004 Return Value Loop 0000 (04)
  422. 000203 Resume If Return Value Loop Met 0002 (03)
  423. 0096FDFFB0 Set Guard Health (Guard [whatever called it])
  424. 000204 Resume If Return Value Loop Met 0002 (04)
  425. 000205 Resume If Return Value Loop Met 0002 (05)
  426. 0003 Sleep For One Frame
  427. 00620C03 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago dataDyne limo)
  428. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  429. 000203 Resume If Return Value Loop Met 0002 (03)
  430. 00A3000400000104 Compare Objective Bits, Return Value Loop are True (00040000)
  431. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  432. 000204 Resume If Return Value Loop Met 0002 (04)
  433. 00022D Resume If Return Value Loop Met 0002 (2D)
  434. 0003 Sleep For One Frame
  435. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  436. 005BF200000203 If Stepped In Room/Preset, Return Value Loop (Player 1 and Player 2) (Room 0002)
  437. 005BF200001003 If Stepped In Room/Preset, Return Value Loop (Player 1 and Player 2) (Room 0010)
  438. 005BF200001203 If Stepped In Room/Preset, Return Value Loop (Player 1 and Player 2) (Room 0012)
  439. 000004 Return Value Loop 0000 (04)
  440. 000203 Resume If Return Value Loop Met 0002 (03)
  441. 00012D Go To Beginning, Then Return Value Loop 0001 (2D)
  442. 000204 Resume If Return Value Loop Met 0002 (04)
  443. 00AD0C04000000 Set Tags 2 for 16-Object (Chicago dataDyne limo)
  444. 01180C00000010 Set Tags 3 for 16-Object (Chicago dataDyne limo)
  445. 011202D60C04FFFF 16-Object Does Animation (Chicago dataDyne limo)
  446. 017C01B401 Set Sound to Slot (Does not play) - HoverBike Drive
  447. 016B010C000109600C80 Play Sound from 16-Object (Chicago dataDyne limo)
  448. 00A3000010000103 Compare Objective Bits, Return Value Loop are True (If True: Objective #2) (00001000)
  449. 00770203 If Difficulty < Value, Return Value Loop 0077 (0203)
  450. 00A104000000 Set Objective Bits (If False: Objective #2) (04000000)
  451. 00CBF8321C Display Text Preset Lower (Joanna [player 1]) - DataDyne limo has escaped.*
  452. 000203 Resume If Return Value Loop Met 0002 (03)
  453. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  454. 0004 Terminator
  455.  
  456.  
  457.  
  458. 040E:
  459. 01C6020A 01C6 (020A)
  460. 009A04 Set Character Accuracy 009A (04)
  461. 00981E Set Character Reaction Speed 0098 (1E)
  462. 0096FD0028 Set Guard Health (Guard [whatever called it])
  463. 00970000 Set Guard Armor Amount 0097 (0000)
  464. 009900 Set Character Injury Recovery Speed 0099 (00)
  465. 010E0000 Set Guard Shield Amount 010E (0000)
  466. 0005FD0006 Jump To Function (Guard [whatever called it]) (JAL TO: 0006) Seated Guard
  467. 0004 Terminator
  468.  
  469.  
  470.  
  471. 040F:
  472. 00770103 If Difficulty < Value, Return Value Loop 0077 (0103)
  473. 01C6020A 01C6 (020A)
  474. 009A14 Set Character Accuracy 009A (14)
  475. 00981E Set Character Reaction Speed 0098 (1E)
  476. 0096FD0028 Set Guard Health (Guard [whatever called it])
  477. 00970000 Set Guard Armor Amount 0097 (0000)
  478. 009900 Set Character Injury Recovery Speed 0099 (00)
  479. 010E0000 Set Guard Shield Amount 010E (0000)
  480. 0005FD0006 Jump To Function (Guard [whatever called it]) (JAL TO: 0006) Seated Guard
  481. 000203 Resume If Return Value Loop Met 0002 (03)
  482. 01C6020A 01C6 (020A)
  483. 009A04 Set Character Accuracy 009A (04)
  484. 00981E Set Character Reaction Speed 0098 (1E)
  485. 0096FD0028 Set Guard Health (Guard [whatever called it])
  486. 00970000 Set Guard Armor Amount 0097 (0000)
  487. 009900 Set Character Injury Recovery Speed 0099 (00)
  488. 010E0000 Set Guard Shield Amount 010E (0000)
  489. 0005FD0006 Jump To Function (Guard [whatever called it]) (JAL TO: 0006) Seated Guard
  490. 0004 Terminator
  491.  
  492.  
  493.  
  494. 0410:
  495. 01C6020A 01C6 (020A)
  496. 009A0E Set Character Accuracy 009A (0E)
  497. 009814 Set Character Reaction Speed 0098 (14)
  498. 0096FD0028 Set Guard Health (Guard [whatever called it])
  499. 00970000 Set Guard Armor Amount 0097 (0000)
  500. 009900 Set Character Injury Recovery Speed 0099 (00)
  501. 010E0000 Set Guard Shield Amount 010E (0000)
  502. 0005FD0006 Jump To Function (Guard [whatever called it]) (JAL TO: 0006) Seated Guard
  503. 0004 Terminator
  504.  
  505.  
  506.  
  507. 0411:
  508. 00A400020000 Set Guard Bits
  509. 01C6020A 01C6 (020A)
  510. 009A0E Set Character Accuracy 009A (0E)
  511. 009814 Set Character Reaction Speed 0098 (14)
  512. 0096FD0028 Set Guard Health (Guard [whatever called it])
  513. 00970000 Set Guard Armor Amount 0097 (0000)
  514. 009928 Set Character Injury Recovery Speed 0099 (28)
  515. 010E0000 Set Guard Shield Amount 010E (0000)
  516. 0005FD041D Jump To Function (Guard [whatever called it]) (JAL TO: 041D) TRACK PLAYERCREATED WEAPCREATED WEAP
  517. 0004 Terminator
  518.  
  519.  
  520.  
  521. 0412:
  522. 0006FD0412 Set Return Subroutine (for 0008 Command) (Guard [whatever called it]) (JAL TO: 0412) DURINGTALKNOT A PATROLLERPAT RETLIMO READY TO GO
  523. 00070412 Set Subroutine to Jump To, If Guard Shot/Hit (JAL TO: 0412) DURINGTALKNOT A PATROLLERPAT RETLIMO READY TO GO
  524. 0033FD04 If Guard ID Killed, Return Value Loop (Guard [whatever called it])
  525. 0034FD04 If Guard ID Finished Death Animation, Return Value Loop (Guard [whatever called it])
  526. 017BFD04 If Guard Body Disappeared, Return Value Loop (Guard [whatever called it])
  527. 000003 Return Value Loop 0000 (03)
  528. 000204 Resume If Return Value Loop Met 0002 (04)
  529. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  530. 000203 Resume If Return Value Loop Met 0002 (03)
  531. 000C43 If Guard Wasting Time (Yawning), Return Value Loop 000C (43)
  532. 007D0110 If Guard Shot < Amount, Return Value Loop 007D (0110)
  533. 00020D Resume If Return Value Loop Met 0002 (0D)
  534. 0003 Sleep For One Frame
  535. 003204 If Guard Not Moving, Return Value Loop 0032 (04)
  536. 00010D Go To Beginning, Then Return Value Loop 0001 (0D)
  537. 000204 Resume If Return Value Loop Met 0002 (04)
  538. 00000C Return Value Loop 0000 (0C)
  539. 00B6 Reset Cycle Counter And Enable It
  540. 000243 Resume If Return Value Loop Met 0002 (43)
  541. 0003 Sleep For One Frame
  542. 003E001D If You Kill Someone in Front of Guard, Return Value Loop 003E (001D)
  543. 003D001E If You Shoot Nearby Guard, Return Value Loop 003D (001E)
  544. B5445552494E4754414C4B0A = DURINGTALK
  545. 00BD0000B404 Check if Cycle Counter > Value, Return Value Loop 00BD (0000B404)
  546. 000143 Go To Beginning, Then Return Value Loop 0001 (43)
  547. 000204 Resume If Return Value Loop Met 0002 (04)
  548. 009D00004000010054 Check Guard Object Flags 009D (00004000010054)
  549. B54E4F54204120504154524F4C4C45520A = NOT A PATROLLER
  550. 0009 Reset Animation
  551. 000010 Return Value Loop 0000 (10)
  552. 000254 Resume If Return Value Loop Met 0002 (54)
  553. B5504154205245540A = PAT RET
  554. 0022 Start Patrol Path
  555. 000210 Resume If Return Value Loop Met 0002 (10)
  556. 0003 Sleep For One Frame
  557. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  558. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  559. 009D00004000010037 Check Guard Object Flags 009D (00004000010037)
  560. 0036 Seed Random Byte
  561. 00388037 If Random Byte > Value, Return Value Loop 0038 (8037)
  562. 00022D Resume If Return Value Loop Met 0002 (2D)
  563. 00B6 Reset Cycle Counter And Enable It
  564. 000208 Resume If Return Value Loop Met 0002 (08)
  565. 0009 Reset Animation
  566. 009D00800000010103 Check Guard Object Flags 009D (00800000010103)
  567. 0036 Seed Random Byte
  568. 00388003 If Random Byte > Value, Return Value Loop 0038 (8003)
  569. 0036 Seed Random Byte
  570. 00374050 If Random Byte < Value, Return Value Loop 0037 (4050)
  571. 00378051 If Random Byte < Value, Return Value Loop 0037 (8051)
  572. 0037C452 If Random Byte < Value, Return Value Loop 0037 (C452)
  573. 009B0080000001 Set Guard Object Flags 009B (0080000001)
  574. 000B02070000FFFF100AFD02 Guard Plays Animation (Guard [whatever called it]) Smoking a cigarette, drops and puts out with foot
  575. 000036 Return Value Loop 0000 (36)
  576. 000250 Resume If Return Value Loop Met 0002 (50)
  577. 000B009B0000FFFF100AFD02 Guard Plays Animation (Guard [whatever called it]) Tilt Right, head scratch
  578. 000036 Return Value Loop 0000 (36)
  579. 000251 Resume If Return Value Loop Met 0002 (51)
  580. 000B009A0000FFFF100AFD02 Guard Plays Animation (Guard [whatever called it]) Yawn
  581. 000036 Return Value Loop 0000 (36)
  582. 000252 Resume If Return Value Loop Met 0002 (52)
  583. 000B009D0000FFFF100AFD02 Guard Plays Animation (Guard [whatever called it]) Crotch Grab
  584. 000036 Return Value Loop 0000 (36)
  585. 000253 Resume If Return Value Loop Met 0002 (53)
  586. 000B000100000064100AFD02 Guard Plays Animation (Guard [whatever called it]) Two gun hold
  587. 000036 Return Value Loop 0000 (36)
  588. 000203 Resume If Return Value Loop Met 0002 (03)
  589. 009C0080000001 Unset Guard Object Flags 009C (0080000001)
  590. 0049003E04 If Room On Screen, Return Value Loop 0049 (003E04)
  591. 00B200BA Set Current Guard's 2328 Value To Preset (Pad: 00BA)
  592. 000003 Return Value Loop 0000 (03)
  593. 000204 Resume If Return Value Loop Met 0002 (04)
  594. 0036 Seed Random Byte
  595. 00374050 If Random Byte < Value, Return Value Loop 0037 (4050)
  596. 00378051 If Random Byte < Value, Return Value Loop 0037 (8051)
  597. 0037C452 If Random Byte < Value, Return Value Loop 0037 (C452)
  598. 00750803 Set Guards 2328 0075 (0803)
  599. 000250 Resume If Return Value Loop Met 0002 (50)
  600. 00750203 Set Guards 2328 0075 (0203)
  601. 000251 Resume If Return Value Loop Met 0002 (51)
  602. 00750403 Set Guards 2328 0075 (0403)
  603. 000252 Resume If Return Value Loop Met 0002 (52)
  604. 00750803 Set Guards 2328 0075 (0803)
  605. 000036 Return Value Loop 0000 (36)
  606. 000203 Resume If Return Value Loop Met 0002 (03)
  607. 001E00 Guard Moves To Predefined Preset (2328) 001E (00)
  608. 000236 Resume If Return Value Loop Met 0002 (36)
  609. 0003 Sleep For One Frame
  610. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  611. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  612. 003E001D If You Kill Someone in Front of Guard, Return Value Loop 003E (001D)
  613. 003D001E If You Shoot Nearby Guard, Return Value Loop 003D (001E)
  614. 003504 If Jo In Sight, Return Value Loop 0035 (04)
  615. 003235 If Guard Not Moving, Return Value Loop 0032 (35)
  616. 000136 Go To Beginning, Then Return Value Loop 0001 (36)
  617. 000235 Resume If Return Value Loop Met 0002 (35)
  618. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  619. 000237 Resume If Return Value Loop Met 0002 (37)
  620. 003E001D If You Kill Someone in Front of Guard, Return Value Loop 003E (001D)
  621. 003D001E If You Shoot Nearby Guard, Return Value Loop 003D (001E)
  622. 003504 If Jo In Sight, Return Value Loop 0035 (04)
  623. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  624. 000204 Resume If Return Value Loop Met 0002 (04)
  625. 00B6 Reset Cycle Counter And Enable It
  626. 000205 Resume If Return Value Loop Met 0002 (05)
  627. 0003 Sleep For One Frame
  628. 003E001D If You Kill Someone in Front of Guard, Return Value Loop 003E (001D)
  629. 003D001E If You Shoot Nearby Guard, Return Value Loop 003D (001E)
  630. 0060F20103 If Specified Weapon Out, Return Value Loop (Player 1 and Player 2) (01 Unarmed)
  631. 000004 Return Value Loop 0000 (04)
  632. 000203 Resume If Return Value Loop Met 0002 (03)
  633. 009D00002000010003 Check Guard Object Flags 009D (00002000010003)
  634. 0053002D03 If Guard ID not Within Units of Joanna, Return Value Loop 0053 (002D03)
  635. 009B0000200000 Set Guard Object Flags 009B (0000200000)
  636. 0006FD0412 Set Return Subroutine (for 0008 Command) (Guard [whatever called it]) (JAL TO: 0412) DURINGTALKNOT A PATROLLERPAT RETLIMO READY TO GO
  637. 0005FD0010 Jump To Function (Guard [whatever called it]) (JAL TO: 0010) Guard Greets Disguised Jo (Subroutine)
  638. 000203 Resume If Return Value Loop Met 0002 (03)
  639. 00BC00025803 Check if Cycle Counter < Value, Return Value Loop 00BC (00025803)
  640. 009C0000200000 Unset Guard Object Flags 009C (0000200000)
  641. 000203 Resume If Return Value Loop Met 0002 (03)
  642. B54C494D4F20524541445920544F20474F0A = LIMO READY TO GO
  643. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  644. 00021E Resume If Return Value Loop Met 0002 (1E)
  645. 00B6 Reset Cycle Counter And Enable It
  646. 00180200000009 Guard Constantly Angles To Face, Return Value Loop
  647. 000209 Resume If Return Value Loop Met 0002 (09)
  648. 0003 Sleep For One Frame
  649. 004D0A04 If Actor and Player CCW Angle < Value, Return Value Loop 004D (0A04)
  650. 00BD00002804 Check if Cycle Counter > Value, Return Value Loop 00BD (00002804)
  651. 000109 Go To Beginning, Then Return Value Loop 0001 (09)
  652. 00021D Resume If Return Value Loop Met 0002 (1D)
  653. 00B6 Reset Cycle Counter And Enable It
  654. 000B025F000000C11010FD02 Guard Plays Animation (Guard [whatever called it]) Frantic looking left, looking right
  655. 00021E Resume If Return Value Loop Met 0002 (1E)
  656. 0003 Sleep For One Frame
  657. 00BD00005A0C Check if Cycle Counter > Value, Return Value Loop 00BD (00005A0C)
  658. 00011E Go To Beginning, Then Return Value Loop 0001 (1E)
  659. 000204 Resume If Return Value Loop Met 0002 (04)
  660. 013164 Set Same Group Guards' Alertness to # 0131 (64)
  661. 000238 Resume If Return Value Loop Met 0002 (38)
  662. 0003 Sleep For One Frame
  663. 01371504 0137 (1504)
  664. 000003 Return Value Loop 0000 (03)
  665. 000204 Resume If Return Value Loop Met 0002 (04)
  666. 00B6 Reset Cycle Counter And Enable It
  667. 00023A Resume If Return Value Loop Met 0002 (3A)
  668. 0003 Sleep For One Frame
  669. 00BD00007804 Check if Cycle Counter > Value, Return Value Loop 00BD (00007804)
  670. 00013A Go To Beginning, Then Return Value Loop 0001 (3A)
  671. 000204 Resume If Return Value Loop Met 0002 (04)
  672. 009B0000008000 Set Guard Object Flags 009B (0000008000)
  673. 013B03 Add Current Guard to Group # 013B (03)
  674. 000138 Go To Beginning, Then Return Value Loop 0001 (38)
  675. 000203 Resume If Return Value Loop Met 0002 (03)
  676. 0145 Setup Guard/Simulant AI (Part 1)
  677. 0146 Setup Guard/Simulant AI (Part 2)
  678. 01321500 0132 (1500)
  679. 0130F818FF00FF810000 Random Sound Play From Set of 3 Sound 1) Oh my god! Sound 2) I don't want any trouble Sound 3) Here take the wallet
  680. 000B002E000000C11010FD02 Guard Plays Animation (Guard [whatever called it]) Arms up, surrender
  681. 00020A Resume If Return Value Loop Met 0002 (0A)
  682. 0003 Sleep For One Frame
  683. 00BD0000780C Check if Cycle Counter > Value, Return Value Loop 00BD (0000780C)
  684. 00010A Go To Beginning, Then Return Value Loop 0001 (0A)
  685. 00020C Resume If Return Value Loop Met 0002 (0C)
  686. 01320100 0132 (0100)
  687. 009D00000080000003 Check Guard Object Flags 009D (00000080000003)
  688. 013B04 Add Current Guard to Group # 013B (04)
  689. 0145 Setup Guard/Simulant AI (Part 1)
  690. 0146 Setup Guard/Simulant AI (Part 2)
  691. 000203 Resume If Return Value Loop Met 0002 (03)
  692. 010BFD10 Make Guard Ally (10)/Foe (02) (Guard [whatever called it])
  693. 0145 Setup Guard/Simulant AI (Part 1)
  694. 0146 Setup Guard/Simulant AI (Part 2)
  695. 013A000004 013A (000004)
  696. 00000B Return Value Loop 0000 (0B)
  697. 000203 Resume If Return Value Loop Met 0002 (03)
  698. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  699. 000204 Resume If Return Value Loop Met 0002 (04)
  700. 010BFD80 Make Guard Ally (10)/Foe (02) (Guard [whatever called it])
  701. 0145 Setup Guard/Simulant AI (Part 1)
  702. 0146 Setup Guard/Simulant AI (Part 2)
  703. 0031FC06 Run To Character Position, Return Value Loop On Arrival (Writable Actor ID Value)
  704. 000206 Resume If Return Value Loop Met 0002 (06)
  705. 0003 Sleep For One Frame
  706. 005600FC1E03 If Current Guard Within X Units of Guard ID, Return Value Loop (G5 Guard)
  707. 000106 Go To Beginning, Then Return Value Loop 0001 (06)
  708. 000203 Resume If Return Value Loop Met 0002 (03)
  709. 0045FC04 If Current Guard Has Line of Sight to Guard ID, Return Value Loop (Writable Actor ID Value)
  710. 000106 Go To Beginning, Then Return Value Loop 0001 (06)
  711. 000204 Resume If Return Value Loop Met 0002 (04)
  712. 013164 Set Same Group Guards' Alertness to # 0131 (64)
  713. 0130F819FF00FF810000 Random Sound Play From Set of 3 Sound 1) There's a maniac on the loose Sound 2) Quick down there, she's got a gun Sound 3) Help get me out of here
  714. 00020B Resume If Return Value Loop Met 0002 (0B)
  715. 010BFD80 Make Guard Ally (10)/Foe (02) (Guard [whatever called it])
  716. 0145 Setup Guard/Simulant AI (Part 1)
  717. 0146 Setup Guard/Simulant AI (Part 2)
  718. 009D0000200001002D Check Guard Object Flags 009D (0000200001002D)
  719. 009D0000400001002F Check Guard Object Flags 009D (0000400001002F)
  720. 002000C8 Guard Runs to Pad (Pad: 00C8)
  721. 000007 Return Value Loop 0000 (07)
  722. 00022D Resume If Return Value Loop Met 0002 (2D)
  723. 0020005A Guard Runs to Pad (Pad: 005A)
  724. 000007 Return Value Loop 0000 (07)
  725. 00022F Resume If Return Value Loop Met 0002 (2F)
  726. 00200026 Guard Runs to Pad (Pad: 0026)
  727. 000207 Resume If Return Value Loop Met 0002 (07)
  728. 0003 Sleep For One Frame
  729. 003204 If Guard Not Moving, Return Value Loop 0032 (04)
  730. 000203 Resume If Return Value Loop Met 0002 (03)
  731. 000107 Go To Beginning, Then Return Value Loop 0001 (07)
  732. 000204 Resume If Return Value Loop Met 0002 (04)
  733. 00020E Resume If Return Value Loop Met 0002 (0E)
  734. 000B0229FFFFFFFF100AFD02 Guard Plays Animation (Guard [whatever called it]) Head down praying/clutching chest
  735. 00020F Resume If Return Value Loop Met 0002 (0F)
  736. 0003 Sleep For One Frame
  737. 003203 If Guard Not Moving, Return Value Loop 0032 (03)
  738. 00010F Go To Beginning, Then Return Value Loop 0001 (0F)
  739. 000203 Resume If Return Value Loop Met 0002 (03)
  740. 00010E Go To Beginning, Then Return Value Loop 0001 (0E)
  741. 0004 Terminator
  742.  
  743.  
  744.  
  745. 0413:
  746. 008AFF Set Guard Alertness to value 008A (FF)
  747. 00070413 Set Subroutine to Jump To, If Guard Shot/Hit (JAL TO: 0413)
  748. 0033FD04 If Guard ID Killed, Return Value Loop (Guard [whatever called it])
  749. 0034FD04 If Guard ID Finished Death Animation, Return Value Loop (Guard [whatever called it])
  750. 017BFD04 If Guard Body Disappeared, Return Value Loop (Guard [whatever called it])
  751. 000003 Return Value Loop 0000 (03)
  752. 000204 Resume If Return Value Loop Met 0002 (04)
  753. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  754. 000203 Resume If Return Value Loop Met 0002 (03)
  755. 000210 Resume If Return Value Loop Met 0002 (10)
  756. 0003 Sleep For One Frame
  757. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  758. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  759. 003504 If Jo In Sight, Return Value Loop 0035 (04)
  760. 00A300040000010D Compare Objective Bits, Return Value Loop are True (00040000)
  761. 00A300001000010D Compare Objective Bits, Return Value Loop are True (If True: Objective #2) (00001000)
  762. 00A380000000010D Compare Objective Bits, Return Value Loop are True (80000000)
  763. 00620C03 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago dataDyne limo)
  764. 00000D Return Value Loop 0000 (0D)
  765. 000203 Resume If Return Value Loop Met 0002 (03)
  766. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  767. 000204 Resume If Return Value Loop Met 0002 (04)
  768. 00B6 Reset Cycle Counter And Enable It
  769. 00180200000004 Guard Constantly Angles To Face, Return Value Loop
  770. 000209 Resume If Return Value Loop Met 0002 (09)
  771. 0003 Sleep For One Frame
  772. 004D0A04 If Actor and Player CCW Angle < Value, Return Value Loop 004D (0A04)
  773. 00BD00002804 Check if Cycle Counter > Value, Return Value Loop 00BD (00002804)
  774. 000109 Go To Beginning, Then Return Value Loop 0001 (09)
  775. 000204 Resume If Return Value Loop Met 0002 (04)
  776. 0060F20103 If Specified Weapon Out, Return Value Loop (Player 1 and Player 2) (01 Unarmed)
  777. 0060F20003 If Specified Weapon Out, Return Value Loop (Player 1 and Player 2) (00 Nothing)
  778. 0130F81AFF0AFF810000 Random Sound Play From Set of 3 Sound 1) Guns don't scare me Sound 2) Keep away from this car Sound 3) Keep away from this car
  779. 000004 Return Value Loop 0000 (04)
  780. 000203 Resume If Return Value Loop Met 0002 (03)
  781. 0130F817FF0AFF810000 Random Sound Play From Set of 3 Sound 1) How's it going Sound 2) Whoa take it easy there lady Sound 3) [Whistle come on]
  782. 000204 Resume If Return Value Loop Met 0002 (04)
  783. 000B00A30000FFFF0010FD02 Guard Plays Animation (Guard [whatever called it]) Left arm forward, moving a bit (as if talking)
  784. 000208 Resume If Return Value Loop Met 0002 (08)
  785. 0003 Sleep For One Frame
  786. 00A300040000010D Compare Objective Bits, Return Value Loop are True (00040000)
  787. 00A380000000010D Compare Objective Bits, Return Value Loop are True (80000000)
  788. 00620C03 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago dataDyne limo)
  789. 00000D Return Value Loop 0000 (0D)
  790. 000203 Resume If Return Value Loop Met 0002 (03)
  791. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  792. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  793. 003503 If Jo In Sight, Return Value Loop 0035 (03)
  794. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  795. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  796. 003503 If Jo In Sight, Return Value Loop 0035 (03)
  797. 00000A Return Value Loop 0000 (0A)
  798. 000203 Resume If Return Value Loop Met 0002 (03)
  799. 00A300000080010A Compare Objective Bits, Return Value Loop are True (00000080)
  800. 00A3000010000104 Compare Objective Bits, Return Value Loop are True (If True: Objective #2) (00001000)
  801. 00020A Resume If Return Value Loop Met 0002 (0A)
  802. 00BD0001F403 Check if Cycle Counter > Value, Return Value Loop 00BD (0001F403)
  803. 000108 Go To Beginning, Then Return Value Loop 0001 (08)
  804. 000203 Resume If Return Value Loop Met 0002 (03)
  805. 00A300001000010D Compare Objective Bits, Return Value Loop are True (If True: Objective #2) (00001000)
  806. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  807. 000204 Resume If Return Value Loop Met 0002 (04)
  808. 000B00A30000FFFF0010FD02 Guard Plays Animation (Guard [whatever called it]) Left arm forward, moving a bit (as if talking)
  809. 017C044A06 Set Sound to Slot (Does not play) - Hey I saw that
  810. 017906FD00010BB8177001 Play sound in Slot (By Guard)? 0179 (06FD00010BB8177001)
  811. 00A100000008 Set Objective Bits (If False: Objective #2) (00000008)
  812. 00CBF83243 Display Text Preset Lower (Joanna [player 1]) - Tracer Bug has been spotted.*
  813. 000205 Resume If Return Value Loop Met 0002 (05)
  814. 0003 Sleep For One Frame
  815. 00A300040000010D Compare Objective Bits, Return Value Loop are True (00040000)
  816. 00A380000000010D Compare Objective Bits, Return Value Loop are True (80000000)
  817. 00620C03 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago dataDyne limo)
  818. 00000D Return Value Loop 0000 (0D)
  819. 000203 Resume If Return Value Loop Met 0002 (03)
  820. 003204 If Guard Not Moving, Return Value Loop 0032 (04)
  821. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  822. 000204 Resume If Return Value Loop Met 0002 (04)
  823. 013A000004 013A (000004)
  824. 00000B Return Value Loop 0000 (0B)
  825. 000204 Resume If Return Value Loop Met 0002 (04)
  826. 0031FC06 Run To Character Position, Return Value Loop On Arrival (Writable Actor ID Value)
  827. 000206 Resume If Return Value Loop Met 0002 (06)
  828. 0003 Sleep For One Frame
  829. 00A300040000010D Compare Objective Bits, Return Value Loop are True (00040000)
  830. 00A380000000010D Compare Objective Bits, Return Value Loop are True (80000000)
  831. 00620C03 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago dataDyne limo)
  832. 00000D Return Value Loop 0000 (0D)
  833. 000203 Resume If Return Value Loop Met 0002 (03)
  834. 0045FC04 If Current Guard Has Line of Sight to Guard ID, Return Value Loop (Writable Actor ID Value)
  835. 000106 Go To Beginning, Then Return Value Loop 0001 (06)
  836. 000204 Resume If Return Value Loop Met 0002 (04)
  837. 013164 Set Same Group Guards' Alertness to # 0131 (64)
  838. 017C046706 Set Sound to Slot (Does not play) - Security, security, she's over there
  839. 017906FD00010BB8177001 Play sound in Slot (By Guard)? 0179 (06FD00010BB8177001)
  840. 00020B Resume If Return Value Loop Met 0002 (0B)
  841. 01360202 Guard Moves to Edge of a Room 0136 (0202)
  842. 000207 Resume If Return Value Loop Met 0002 (07)
  843. 0003 Sleep For One Frame
  844. 00A300040000010D Compare Objective Bits, Return Value Loop are True (00040000)
  845. 00A380000000010D Compare Objective Bits, Return Value Loop are True (80000000)
  846. 00620C03 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago dataDyne limo)
  847. 00000D Return Value Loop 0000 (0D)
  848. 000203 Resume If Return Value Loop Met 0002 (03)
  849. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  850. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  851. 00410000001E03 If Jo Has Partial Visibility to Guard, Return Value Loop 0041 (0000001E03)
  852. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  853. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  854. 00410000001E03 If Jo Has Partial Visibility to Guard, Return Value Loop 0041 (0000001E03)
  855. 000004 Return Value Loop 0000 (04)
  856. 000203 Resume If Return Value Loop Met 0002 (03)
  857. 000107 Go To Beginning, Then Return Value Loop 0001 (07)
  858. 000204 Resume If Return Value Loop Met 0002 (04)
  859. 00B6 Reset Cycle Counter And Enable It
  860. 00020E Resume If Return Value Loop Met 0002 (0E)
  861. 0003 Sleep For One Frame
  862. 00BD00000A03 Check if Cycle Counter > Value, Return Value Loop 00BD (00000A03)
  863. 00010E Go To Beginning, Then Return Value Loop 0001 (0E)
  864. 000203 Resume If Return Value Loop Met 0002 (03)
  865. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  866. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  867. 00410000001E03 If Jo Has Partial Visibility to Guard, Return Value Loop 0041 (0000001E03)
  868. 000004 Return Value Loop 0000 (04)
  869. 000203 Resume If Return Value Loop Met 0002 (03)
  870. 000107 Go To Beginning, Then Return Value Loop 0001 (07)
  871. 000204 Resume If Return Value Loop Met 0002 (04)
  872. 00A500100000 Unset Guard Bits
  873. 009B0000200000 Set Guard Object Flags 009B (0000200000)
  874. 0003 Sleep For One Frame
  875. 0025 Guard Set To Move Fades And Disappear (Drops Gun)
  876. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  877. 00020D Resume If Return Value Loop Met 0002 (0D)
  878. 001D004F Guard Jogs to Pad (Pad: 004F)
  879. 00020E Resume If Return Value Loop Met 0002 (0E)
  880. 0003 Sleep For One Frame
  881. 003204 If Guard Not Moving, Return Value Loop 0032 (04)
  882. 00010E Go To Beginning, Then Return Value Loop 0001 (0E)
  883. 000204 Resume If Return Value Loop Met 0002 (04)
  884. 0009 Reset Animation
  885. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  886. 0004 Terminator
  887.  
  888.  
  889.  
  890. 0414:
  891. 01C6020A 01C6 (020A)
  892. 009A04 Set Character Accuracy 009A (04)
  893. 00981E Set Character Reaction Speed 0098 (1E)
  894. 0096FD0028 Set Guard Health (Guard [whatever called it])
  895. 00970000 Set Guard Armor Amount 0097 (0000)
  896. 009900 Set Character Injury Recovery Speed 0099 (00)
  897. 010E0000 Set Guard Shield Amount 010E (0000)
  898. 002107 Set Patrol Path 0021 (07)
  899. 0022 Start Patrol Path
  900. 0005FD0006 Jump To Function (Guard [whatever called it]) (JAL TO: 0006) Seated Guard
  901. 000204 Resume If Return Value Loop Met 0002 (04)
  902. 0003 Sleep For One Frame
  903. 000104 Go To Beginning, Then Return Value Loop 0001 (04)
  904. 0004 Terminator
  905.  
  906.  
  907.  
  908. 0415:
  909. 01C6020A 01C6 (020A)
  910. 009A04 Set Character Accuracy 009A (04)
  911. 00981E Set Character Reaction Speed 0098 (1E)
  912. 0096FD0028 Set Guard Health (Guard [whatever called it])
  913. 00970000 Set Guard Armor Amount 0097 (0000)
  914. 009900 Set Character Injury Recovery Speed 0099 (00)
  915. 010E0000 Set Guard Shield Amount 010E (0000)
  916. 002108 Set Patrol Path 0021 (08)
  917. 0022 Start Patrol Path
  918. 0005FD0006 Jump To Function (Guard [whatever called it]) (JAL TO: 0006) Seated Guard
  919. 000204 Resume If Return Value Loop Met 0002 (04)
  920. 0003 Sleep For One Frame
  921. 000104 Go To Beginning, Then Return Value Loop 0001 (04)
  922. 0004 Terminator
  923.  
  924.  
  925.  
  926. 0416:
  927. 01C6020A 01C6 (020A)
  928. 009A04 Set Character Accuracy 009A (04)
  929. 00981E Set Character Reaction Speed 0098 (1E)
  930. 0096FD0028 Set Guard Health (Guard [whatever called it])
  931. 00970000 Set Guard Armor Amount 0097 (0000)
  932. 009900 Set Character Injury Recovery Speed 0099 (00)
  933. 010E0000 Set Guard Shield Amount 010E (0000)
  934. 002109 Set Patrol Path 0021 (09)
  935. 0022 Start Patrol Path
  936. 0005FD0006 Jump To Function (Guard [whatever called it]) (JAL TO: 0006) Seated Guard
  937. 000204 Resume If Return Value Loop Met 0002 (04)
  938. 0003 Sleep For One Frame
  939. 000104 Go To Beginning, Then Return Value Loop 0001 (04)
  940. 0004 Terminator
  941.  
  942.  
  943.  
  944. 0417:
  945. 01C6020A 01C6 (020A)
  946. 009A04 Set Character Accuracy 009A (04)
  947. 00981E Set Character Reaction Speed 0098 (1E)
  948. 0096FD0028 Set Guard Health (Guard [whatever called it])
  949. 00970000 Set Guard Armor Amount 0097 (0000)
  950. 009900 Set Character Injury Recovery Speed 0099 (00)
  951. 010E0000 Set Guard Shield Amount 010E (0000)
  952. 00210A Set Patrol Path 0021 (0A)
  953. 0022 Start Patrol Path
  954. 0005FD0006 Jump To Function (Guard [whatever called it]) (JAL TO: 0006) Seated Guard
  955. 000204 Resume If Return Value Loop Met 0002 (04)
  956. 0003 Sleep For One Frame
  957. 000104 Go To Beginning, Then Return Value Loop 0001 (04)
  958. 0004 Terminator
  959.  
  960.  
  961.  
  962. 0418:
  963. 01C6020A 01C6 (020A)
  964. 009A04 Set Character Accuracy 009A (04)
  965. 00981E Set Character Reaction Speed 0098 (1E)
  966. 0096FD0028 Set Guard Health (Guard [whatever called it])
  967. 00970000 Set Guard Armor Amount 0097 (0000)
  968. 009900 Set Character Injury Recovery Speed 0099 (00)
  969. 010E0000 Set Guard Shield Amount 010E (0000)
  970. 00210B Set Patrol Path 0021 (0B)
  971. 0022 Start Patrol Path
  972. 0005FD0006 Jump To Function (Guard [whatever called it]) (JAL TO: 0006) Seated Guard
  973. 000204 Resume If Return Value Loop Met 0002 (04)
  974. 0003 Sleep For One Frame
  975. 000104 Go To Beginning, Then Return Value Loop 0001 (04)
  976. 0004 Terminator
  977.  
  978.  
  979.  
  980. 0419:
  981. 00B6 Reset Cycle Counter And Enable It
  982. 000205 Resume If Return Value Loop Met 0002 (05)
  983. 0003 Sleep For One Frame
  984. 00BD00007804 Check if Cycle Counter > Value, Return Value Loop 00BD (00007804)
  985. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  986. 000204 Resume If Return Value Loop Met 0002 (04)
  987. 00210C Set Patrol Path 0021 (0C)
  988. 0022 Start Patrol Path
  989. 0005FD0412 Jump To Function (Guard [whatever called it]) (JAL TO: 0412) DURINGTALKNOT A PATROLLERPAT RETLIMO READY TO GO
  990. 000204 Resume If Return Value Loop Met 0002 (04)
  991. 0003 Sleep For One Frame
  992. 000104 Go To Beginning, Then Return Value Loop 0001 (04)
  993. 0004 Terminator
  994.  
  995.  
  996.  
  997. 041D:
  998. 0007041D Set Subroutine to Jump To, If Guard Shot/Hit (JAL TO: 041D) TRACK PLAYERCREATED WEAPCREATED WEAP
  999. 0033FD04 If Guard ID Killed, Return Value Loop (Guard [whatever called it])
  1000. 0034FD04 If Guard ID Finished Death Animation, Return Value Loop (Guard [whatever called it])
  1001. 017BFD04 If Guard Body Disappeared, Return Value Loop (Guard [whatever called it])
  1002. 000003 Return Value Loop 0000 (03)
  1003. 000204 Resume If Return Value Loop Met 0002 (04)
  1004. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1005. 000203 Resume If Return Value Loop Met 0002 (03)
  1006. 007D0119 If Guard Shot < Amount, Return Value Loop 007D (0119)
  1007. 000205 Resume If Return Value Loop Met 0002 (05)
  1008. 0003 Sleep For One Frame
  1009. 003204 If Guard Not Moving, Return Value Loop 0032 (04)
  1010. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1011. 000204 Resume If Return Value Loop Met 0002 (04)
  1012. 000017 Return Value Loop 0000 (17)
  1013. 000204 Resume If Return Value Loop Met 0002 (04)
  1014. 0130F81BFF00FF810000 Random Sound Play From Set of 3 Sound 1) Base we have an intruder Sound 2) We have a code 2 situation Sound 3) Request backup immediately
  1015. 013164 Set Same Group Guards' Alertness to # 0131 (64)
  1016. 000016 Return Value Loop 0000 (16)
  1017. 000219 Resume If Return Value Loop Met 0002 (19)
  1018. 01320101 0132 (0101)
  1019. 0003 Sleep For One Frame
  1020. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  1021. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  1022. 008E640004 Compare Guard Alertness Value, Return Value Loop If So 008E (640004)
  1023. 000016 Return Value Loop 0000 (16)
  1024. 000204 Resume If Return Value Loop Met 0002 (04)
  1025. 003518 If Jo In Sight, Return Value Loop 0035 (18)
  1026. 004B18 If Fired a Bullet Near But Missed Guard, Return Value Loop 004B (18)
  1027. 007E0018 If Guard Shot > Amount, Return Value Loop 007E (0018)
  1028. 003C16 If Guard Heard Gunfire, Return Value Loop 003C (16)
  1029. 003D0016 If You Shoot Nearby Guard, Return Value Loop 003D (0016)
  1030. 003E0016 If You Kill Someone in Front of Guard, Return Value Loop 003E (0016)
  1031. 004C16 If Guard Is Dying, Return Value Loop 004C (16)
  1032. 000119 Go To Beginning, Then Return Value Loop 0001 (19)
  1033. 000216 Resume If Return Value Loop Met 0002 (16)
  1034. 00A3004000000004 Compare Objective Bits, Return Value Loop are False (00400000)
  1035. 000217 Resume If Return Value Loop Met 0002 (17)
  1036. 00C800F8081000000003 Spawn Weapon (DY357 Magnum) (08 DY357 Magnum)
  1037. 000203 Resume If Return Value Loop Met 0002 (03)
  1038. 0005FD0007 Jump To Function (Guard [whatever called it]) (JAL TO: 0007) Run to Jo and Attack
  1039. 000204 Resume If Return Value Loop Met 0002 (04)
  1040. B5545241434B20504C415945520A = TRACK PLAYER
  1041. 002B06 Jog To Jo, Return Loop When Reached Jo 002B (06)
  1042. 000206 Resume If Return Value Loop Met 0002 (06)
  1043. 0003 Sleep For One Frame
  1044. 0052003218 If Guard ID Within Units of Joanna, Return Value Loop 0052 (003218)
  1045. 003518 If Jo In Sight, Return Value Loop 0035 (18)
  1046. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  1047. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  1048. 003518 If Jo In Sight, Return Value Loop 0035 (18)
  1049. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  1050. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  1051. 000106 Go To Beginning, Then Return Value Loop 0001 (06)
  1052. 000218 Resume If Return Value Loop Met 0002 (18)
  1053. 00A3004000000004 Compare Objective Bits, Return Value Loop are False (00400000)
  1054. 00C800F8081000000003 Spawn Weapon (DY357 Magnum) (08 DY357 Magnum)
  1055. 000203 Resume If Return Value Loop Met 0002 (03)
  1056. 0005FD0007 Jump To Function (Guard [whatever called it]) (JAL TO: 0007) Run to Jo and Attack
  1057. 000204 Resume If Return Value Loop Met 0002 (04)
  1058. 00B6 Reset Cycle Counter And Enable It
  1059. 0018020000000D Guard Constantly Angles To Face, Return Value Loop
  1060. 00020D Resume If Return Value Loop Met 0002 (0D)
  1061. 0003 Sleep For One Frame
  1062. 004D0A04 If Actor and Player CCW Angle < Value, Return Value Loop 004D (0A04)
  1063. 00BD00002804 Check if Cycle Counter > Value, Return Value Loop 00BD (00002804)
  1064. 00010D Go To Beginning, Then Return Value Loop 0001 (0D)
  1065. 000204 Resume If Return Value Loop Met 0002 (04)
  1066. 0130F81BFF00FF810000 Random Sound Play From Set of 3 Sound 1) Base we have an intruder Sound 2) We have a code 2 situation Sound 3) Request backup immediately
  1067. 000B0266000000C10010FD02 Guard Plays Animation (Guard [whatever called it]) Covering mouth looking
  1068. 00020E Resume If Return Value Loop Met 0002 (0E)
  1069. 0003 Sleep For One Frame
  1070. 00770103 If Difficulty < Value, Return Value Loop 0077 (0103)
  1071. 01A7FD04 01A7 (FD04)
  1072. 000203 Resume If Return Value Loop Met 0002 (03)
  1073. 003204 If Guard Not Moving, Return Value Loop 0032 (04)
  1074. 00010E Go To Beginning, Then Return Value Loop 0001 (0E)
  1075. 000204 Resume If Return Value Loop Met 0002 (04)
  1076. B54352454154454420574541500A = CREATED WEAP
  1077. 00C800F8081000000004 Spawn Weapon (DY357 Magnum) (08 DY357 Magnum)
  1078. 000204 Resume If Return Value Loop Met 0002 (04)
  1079. 0003 Sleep For One Frame
  1080. 00A100400000 Set Objective Bits (00400000)
  1081. 0028 Activate Alarm
  1082. B54352454154454420574541500A = CREATED WEAP
  1083. 0005FD0007 Jump To Function (Guard [whatever called it]) (JAL TO: 0007) Run to Jo and Attack
  1084. 0004 Terminator
  1085.  
  1086.  
  1087.  
  1088. 041C:
  1089. 00A71E00000400 Set Tags for Guard ID# (G5 Guard) Hide Guard id (Show if Unset)
  1090. 00A71E00000010 Set Tags for Guard ID# (G5 Guard) Invincible
  1091. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1092. 0004 Terminator
  1093.  
  1094.  
  1095.  
  1096. 041E:
  1097. 01C6020A 01C6 (020A)
  1098. 009A04 Set Character Accuracy 009A (04)
  1099. 00981E Set Character Reaction Speed 0098 (1E)
  1100. 0096FD0028 Set Guard Health (Guard [whatever called it])
  1101. 00970000 Set Guard Armor Amount 0097 (0000)
  1102. 009900 Set Character Injury Recovery Speed 0099 (00)
  1103. 010E0000 Set Guard Shield Amount 010E (0000)
  1104. 00070000 Set Subroutine to Jump To, If Guard Shot/Hit (JAL TO: 0000) Do Nothing (Ends Routine)
  1105. 000219 Resume If Return Value Loop Met 0002 (19)
  1106. 0003 Sleep For One Frame
  1107. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  1108. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  1109. 00A3000000100103 Compare Objective Bits, Return Value Loop are True (00000010)
  1110. 008E640004 Compare Guard Alertness Value, Return Value Loop If So 008E (640004)
  1111. 000018 Return Value Loop 0000 (18)
  1112. 000204 Resume If Return Value Loop Met 0002 (04)
  1113. 003518 If Jo In Sight, Return Value Loop 0035 (18)
  1114. 004B18 If Fired a Bullet Near But Missed Guard, Return Value Loop 004B (18)
  1115. 007E0018 If Guard Shot > Amount, Return Value Loop 007E (0018)
  1116. 003C18 If Guard Heard Gunfire, Return Value Loop 003C (18)
  1117. 003D0018 If You Shoot Nearby Guard, Return Value Loop 003D (0018)
  1118. 003E0018 If You Kill Someone in Front of Guard, Return Value Loop 003E (0018)
  1119. 004C18 If Guard Is Dying, Return Value Loop 004C (18)
  1120. 000119 Go To Beginning, Then Return Value Loop 0001 (19)
  1121. 000203 Resume If Return Value Loop Met 0002 (03)
  1122. 011CFD00000400 Unset guard flag Tags 3 (Guard [whatever called it])
  1123. 001D00C4 Guard Jogs to Pad (Pad: 00C4)
  1124. 00050E0420 Jump To Function (G5 Guard) (JAL TO: 0420)
  1125. 00050F0420 Jump To Function (G5 Guard) (JAL TO: 0420)
  1126. 0005100420 Jump To Function (G5 Guard) (JAL TO: 0420)
  1127. 00020D Resume If Return Value Loop Met 0002 (0D)
  1128. 0003 Sleep For One Frame
  1129. 008E630103 Compare Guard Alertness Value, Return Value Loop If So 008E (630103)
  1130. 003204 If Guard Not Moving, Return Value Loop 0032 (04)
  1131. 00010D Go To Beginning, Then Return Value Loop 0001 (0D)
  1132. 000204 Resume If Return Value Loop Met 0002 (04)
  1133. 00B6 Reset Cycle Counter And Enable It
  1134. 00020C Resume If Return Value Loop Met 0002 (0C)
  1135. 0003 Sleep For One Frame
  1136. 008E630103 Compare Guard Alertness Value, Return Value Loop If So 008E (630103)
  1137. 00BD00007804 Check if Cycle Counter > Value, Return Value Loop 00BD (00007804)
  1138. 00010C Go To Beginning, Then Return Value Loop 0001 (0C)
  1139. 000203 Resume If Return Value Loop Met 0002 (03)
  1140. 0005FD0006 Jump To Function (Guard [whatever called it]) (JAL TO: 0006) Seated Guard
  1141. 000204 Resume If Return Value Loop Met 0002 (04)
  1142. 017C814B06 Set Sound to Slot (Does not play) - 'What the hell was that?'
  1143. 017906FD00010BB8177001 Play sound in Slot (By Guard)? 0179 (06FD00010BB8177001)
  1144. 000B0098FFFFFFFF0200FD02 Guard Plays Animation (Guard [whatever called it]) Left arm shake, head move
  1145. 00B6 Reset Cycle Counter And Enable It
  1146. 000207 Resume If Return Value Loop Met 0002 (07)
  1147. 0003 Sleep For One Frame
  1148. 008E630104 Compare Guard Alertness Value, Return Value Loop If So 008E (630104)
  1149. 00BD00007803 Check if Cycle Counter > Value, Return Value Loop 00BD (00007803)
  1150. 000107 Go To Beginning, Then Return Value Loop 0001 (07)
  1151. 000203 Resume If Return Value Loop Met 0002 (03)
  1152. 017C044F06 Set Sound to Slot (Does not play) - What a mess
  1153. 017906FD00010BB8177001 Play sound in Slot (By Guard)? 0179 (06FD00010BB8177001)
  1154. 000B0231FFFFFFFF02000D02 Guard Plays Animation (G5 Guard) Left arm up then down
  1155. 000B0001FFFFFFFF0200FD02 Guard Plays Animation (Guard [whatever called it]) Two gun hold
  1156. 000208 Resume If Return Value Loop Met 0002 (08)
  1157. 0003 Sleep For One Frame
  1158. 008E630104 Compare Guard Alertness Value, Return Value Loop If So 008E (630104)
  1159. 01380603 Return value loop when sound is finished 0138 (0603)
  1160. 000108 Go To Beginning, Then Return Value Loop 0001 (08)
  1161. 000203 Resume If Return Value Loop Met 0002 (03)
  1162. 017C045006 Set Sound to Slot (Does not play) - I never liked that robot anyways
  1163. 017906FD00010BB8177001 Play sound in Slot (By Guard)? 0179 (06FD00010BB8177001)
  1164. 000B0233FFFFFFFF02000F02 Guard Plays Animation (G5 Guard) Right arm move, head up and down (as if talking)
  1165. 000B0001FFFFFFFF02000D02 Guard Plays Animation (G5 Guard) Two gun hold
  1166. 00B6 Reset Cycle Counter And Enable It
  1167. 000209 Resume If Return Value Loop Met 0002 (09)
  1168. 0003 Sleep For One Frame
  1169. 008E630104 Compare Guard Alertness Value, Return Value Loop If So 008E (630104)
  1170. 00BD0000B403 Check if Cycle Counter > Value, Return Value Loop 00BD (0000B403)
  1171. 000109 Go To Beginning, Then Return Value Loop 0001 (09)
  1172. 000203 Resume If Return Value Loop Met 0002 (03)
  1173. 017C045106 Set Sound to Slot (Does not play) - The boss ain't gonna be pleased
  1174. 017906FD00010BB8177001 Play sound in Slot (By Guard)? 0179 (06FD00010BB8177001)
  1175. 000B0232FFFFFFFF02000D02 Guard Plays Animation (G5 Guard) Right arm forward (as if talking)
  1176. 000B0001FFFFFFFF02000F02 Guard Plays Animation (G5 Guard) Two gun hold
  1177. 00B6 Reset Cycle Counter And Enable It
  1178. 00020A Resume If Return Value Loop Met 0002 (0A)
  1179. 0003 Sleep For One Frame
  1180. 008E630104 Compare Guard Alertness Value, Return Value Loop If So 008E (630104)
  1181. 00BD00007803 Check if Cycle Counter > Value, Return Value Loop 00BD (00007803)
  1182. 00010A Go To Beginning, Then Return Value Loop 0001 (0A)
  1183. 000203 Resume If Return Value Loop Met 0002 (03)
  1184. 017C045206 Set Sound to Slot (Does not play) - We can always get another one
  1185. 017906FD00010BB8177001 Play sound in Slot (By Guard)? 0179 (06FD00010BB8177001)
  1186. 000B0234FFFFFFFF02000F02 Guard Plays Animation (G5 Guard) Both arms out, moving a little (as if talking)
  1187. 000B0001FFFFFFFF02000D02 Guard Plays Animation (G5 Guard) Two gun hold
  1188. 00020B Resume If Return Value Loop Met 0002 (0B)
  1189. 0003 Sleep For One Frame
  1190. 008E630104 Compare Guard Alertness Value, Return Value Loop If So 008E (630104)
  1191. 003D0004 If You Shoot Nearby Guard, Return Value Loop 003D (0004)
  1192. 01380604 Return value loop when sound is finished 0138 (0604)
  1193. 00010B Go To Beginning, Then Return Value Loop 0001 (0B)
  1194. 000204 Resume If Return Value Loop Met 0002 (04)
  1195. 0005FD0006 Jump To Function (Guard [whatever called it]) (JAL TO: 0006) Seated Guard
  1196. 000218 Resume If Return Value Loop Met 0002 (18)
  1197. 000204 Resume If Return Value Loop Met 0002 (04)
  1198. 006D10 Close 16-Object Door (Chicago Unopened fire door)
  1199. 006D11 Close 16-Object Door (Chicago Unopened fire door)
  1200. 00701002 Set Lock 16-Object Door (Chicago Unopened fire door)
  1201. 00701102 Set Lock 16-Object Door (Chicago Unopened fire door)
  1202. 00A110000000 Set Objective Bits (If False: Objective #5) (10000000)
  1203. 017C046906 Set Sound to Slot (Does not play) - The door's are closed
  1204. 017906FD00010BB8177001 Play sound in Slot (By Guard)? 0179 (06FD00010BB8177001)
  1205. 00CBF83221 Display Text Preset Lower (Joanna [player 1]) - Elevator access sealed.*
  1206. 000B00AF000000C11010FD02 Guard Plays Animation (Guard [whatever called it]) Low right arm, moving a little (as if talking)
  1207. 000206 Resume If Return Value Loop Met 0002 (06)
  1208. 0003 Sleep For One Frame
  1209. 003204 If Guard Not Moving, Return Value Loop 0032 (04)
  1210. 000106 Go To Beginning, Then Return Value Loop 0001 (06)
  1211. 000204 Resume If Return Value Loop Met 0002 (04)
  1212. 0005FD0007 Jump To Function (Guard [whatever called it]) (JAL TO: 0007) Run to Jo and Attack
  1213. 0004 Terminator
  1214.  
  1215.  
  1216.  
  1217. 041F:
  1218. 009B0008000001 Set Guard Object Flags 009B (0008000001)
  1219. 009B8000000000 Set Guard Object Flags 009B (8000000000)
  1220. 01C6020A 01C6 (020A)
  1221. 009A0E Set Character Accuracy 009A (0E)
  1222. 009814 Set Character Reaction Speed 0098 (14)
  1223. 0096FD0028 Set Guard Health (Guard [whatever called it])
  1224. 00970000 Set Guard Armor Amount 0097 (0000)
  1225. 009900 Set Character Injury Recovery Speed 0099 (00)
  1226. 010E0000 Set Guard Shield Amount 010E (0000)
  1227. 00C800F8080000000004 Spawn Weapon (DY357 Magnum) (08 DY357 Magnum)
  1228. 000204 Resume If Return Value Loop Met 0002 (04)
  1229. 010BFD20 Make Guard Ally (10)/Foe (02) (Guard [whatever called it])
  1230. 013B09 Add Current Guard to Group # 013B (09)
  1231. 009B0000200000 Set Guard Object Flags 009B (0000200000)
  1232. 009B0000800000 Set Guard Object Flags 009B (0000800000)
  1233. 008A5A Set Guard Alertness to value 008A (5A)
  1234. 00A400000200 Set Guard Bits
  1235. 0145 Setup Guard/Simulant AI (Part 1)
  1236. 0146 Setup Guard/Simulant AI (Part 2)
  1237. 0005FD001D Jump To Function (Guard [whatever called it]) (JAL TO: 001D) Guard Searches Around for Jo
  1238. 0004 Terminator
  1239.  
  1240.  
  1241.  
  1242. 0420:
  1243. 011CFD00000400 Unset guard flag Tags 3 (Guard [whatever called it])
  1244. 000203 Resume If Return Value Loop Met 0002 (03)
  1245. 001E01 Guard Moves To Predefined Preset (2328) 001E (01)
  1246. 00020D Resume If Return Value Loop Met 0002 (0D)
  1247. 0005FD0006 Jump To Function (Guard [whatever called it]) (JAL TO: 0006) Seated Guard
  1248. 0003 Sleep For One Frame
  1249. 003204 If Guard Not Moving, Return Value Loop 0032 (04)
  1250. 00010D Go To Beginning, Then Return Value Loop 0001 (0D)
  1251. 000204 Resume If Return Value Loop Met 0002 (04)
  1252. 0004 Terminator
  1253.  
  1254.  
  1255.  
  1256. 041A:
  1257. 00A400040000 Set Guard Bits
  1258. 0096FD0001 Set Guard Health (Guard [whatever called it])
  1259. 0033FD0C If Guard ID Killed, Return Value Loop (Guard [whatever called it])
  1260. 002100 Set Patrol Path 0021 (00)
  1261. 0022 Start Patrol Path
  1262. 000202 Resume If Return Value Loop Met 0002 (02)
  1263. 0003 Sleep For One Frame
  1264. 01061E0000 Set F6 Guard ID (Primary Player) to Guard ID (G5 Guard)
  1265. 012B03 012B (03)
  1266. 00A200800000 Unset Objective Bits (00800000)
  1267. 000004 Return Value Loop 0000 (04)
  1268. 000203 Resume If Return Value Loop Met 0002 (03)
  1269. 00A100800000 Set Objective Bits (00800000)
  1270. 000204 Resume If Return Value Loop Met 0002 (04)
  1271. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  1272. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  1273. 00A3000000200101 Compare Objective Bits, Return Value Loop are True (00000020)
  1274. 003508 If Jo In Sight, Return Value Loop 0035 (08)
  1275. 0036 Seed Random Byte
  1276. 00380503 If Random Byte > Value, Return Value Loop 0038 (0503)
  1277. 01380504 Return value loop when sound is finished 0138 (0504)
  1278. 000003 Return Value Loop 0000 (03)
  1279. 000204 Resume If Return Value Loop Met 0002 (04)
  1280. 0036 Seed Random Byte
  1281. 00375606 If Random Byte < Value, Return Value Loop 0037 (5606)
  1282. 0037AC07 If Random Byte < Value, Return Value Loop 0037 (AC07)
  1283. 017C046A05 Set Sound to Slot (Does not play) - Walkie talkie/robotic sound
  1284. 017905FD00010BB8177001 Play sound in Slot (By Guard)? 0179 (05FD00010BB8177001)
  1285. 000003 Return Value Loop 0000 (03)
  1286. 000206 Resume If Return Value Loop Met 0002 (06)
  1287. 017C046B05 Set Sound to Slot (Does not play) - Walkie talkie/robotic sound
  1288. 017905FD00010BB8177001 Play sound in Slot (By Guard)? 0179 (05FD00010BB8177001)
  1289. 000003 Return Value Loop 0000 (03)
  1290. 000207 Resume If Return Value Loop Met 0002 (07)
  1291. 017C046C05 Set Sound to Slot (Does not play) - Walkie talkie/robotic sound
  1292. 017905FD00010BB8177001 Play sound in Slot (By Guard)? 0179 (05FD00010BB8177001)
  1293. 000203 Resume If Return Value Loop Met 0002 (03)
  1294. 002303 If Guard Patrolling on Path, Return Value Loop 0023 (03)
  1295. 0022 Start Patrol Path
  1296. 000203 Resume If Return Value Loop Met 0002 (03)
  1297. 000102 Go To Beginning, Then Return Value Loop 0001 (02)
  1298. 000208 Resume If Return Value Loop Met 0002 (08)
  1299. 00B6 Reset Cycle Counter And Enable It
  1300. 0009 Reset Animation
  1301. 009D00002000010005 Check Guard Object Flags 009D (00002000010005)
  1302. 00CE1AEBFF Play Sound - Stop where you are (g5 bot)
  1303. 009B0000200000 Set Guard Object Flags 009B (0000200000)
  1304. 000205 Resume If Return Value Loop Met 0002 (05)
  1305. 0168FD03 (Guard [whatever called it])
  1306. 000005 Return Value Loop 0000 (05)
  1307. 000203 Resume If Return Value Loop Met 0002 (03)
  1308. 009D00004000010005 Check Guard Object Flags 009D (00004000010005)
  1309. 00CE1AECFF Play Sound - Alert, under attack (g5 bot)
  1310. 009B0000400000 Set Guard Object Flags 009B (0000400000)
  1311. 000205 Resume If Return Value Loop Met 0002 (05)
  1312. 0003 Sleep For One Frame
  1313. 01061E0000 Set F6 Guard ID (Primary Player) to Guard ID (G5 Guard)
  1314. 012B03 012B (03)
  1315. 00A200800000 Unset Objective Bits (00800000)
  1316. 000004 Return Value Loop 0000 (04)
  1317. 000203 Resume If Return Value Loop Met 0002 (03)
  1318. 00A100800000 Set Objective Bits (00800000)
  1319. 000204 Resume If Return Value Loop Met 0002 (04)
  1320. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  1321. 00A3000000200101 Compare Objective Bits, Return Value Loop are True (00000020)
  1322. 00BD00007804 Check if Cycle Counter > Value, Return Value Loop 00BD (00007804)
  1323. 009D0000200000002A Check Guard Object Flags 009D (0000200000002A)
  1324. 003503 If Jo In Sight, Return Value Loop 0035 (03)
  1325. 00022A Resume If Return Value Loop Met 0002 (2A)
  1326. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1327. 000203 Resume If Return Value Loop Met 0002 (03)
  1328. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  1329. 00B6 Reset Cycle Counter And Enable It
  1330. 00150200000009 Guard Targets Guard, Return Value Loop
  1331. 000102 Go To Beginning, Then Return Value Loop 0001 (02)
  1332. 000209 Resume If Return Value Loop Met 0002 (09)
  1333. 0003 Sleep For One Frame
  1334. 00A200800000 Unset Objective Bits (00800000)
  1335. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  1336. 00A3000000200101 Compare Objective Bits, Return Value Loop are True (00000020)
  1337. 00BD00003C04 Check if Cycle Counter > Value, Return Value Loop 00BD (00003C04)
  1338. 003204 If Guard Not Moving, Return Value Loop 0032 (04)
  1339. 000109 Go To Beginning, Then Return Value Loop 0001 (09)
  1340. 000204 Resume If Return Value Loop Met 0002 (04)
  1341. 009B0000200000 Set Guard Object Flags 009B (0000200000)
  1342. 0022 Start Patrol Path
  1343. 000102 Go To Beginning, Then Return Value Loop 0001 (02)
  1344. 00020C Resume If Return Value Loop Met 0002 (0C)
  1345. 017C1AEC06 Set Sound to Slot (Does not play) - Alert, under attack (g5 bot)
  1346. 017906FD00010BB8177001 Play sound in Slot (By Guard)? 0179 (06FD00010BB8177001)
  1347. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1348. 000201 Resume If Return Value Loop Met 0002 (01)
  1349. 000204 Resume If Return Value Loop Met 0002 (04)
  1350. 000238 Resume If Return Value Loop Met 0002 (38)
  1351. 00A71F00800000 Set Tags for Guard ID# (G5 Sentry Bot (Don't use as player))
  1352. 00A81F00000400 Unset Tags for Guard ID# (G5 Sentry Bot (Don't use as player)) Hide Guard id (Show if Unset)
  1353. 011B1F00020000 Set guard flag Tags 3 (G5 Sentry Bot (Don't use as player))
  1354. 00A400000010 Set Guard Bits Invincible
  1355. 011CFD10000000 Unset guard flag Tags 3 (Guard [whatever called it])
  1356. 00051F0000 Jump To Function (G5 Sentry Bot (Don't use as player)) (JAL TO: 0000) Do Nothing (Ends Routine)
  1357. 010E0000 Set Guard Shield Amount 010E (0000)
  1358. 000B016A0000FFFF0600FD04 Guard Plays Animation (Guard [whatever called it])
  1359. 00022D Resume If Return Value Loop Met 0002 (2D)
  1360. 0003 Sleep For One Frame
  1361. B55041525420340A = PART 4
  1362. 003204 If Guard Not Moving, Return Value Loop 0032 (04)
  1363. 00012D Go To Beginning, Then Return Value Loop 0001 (2D)
  1364. 000204 Resume If Return Value Loop Met 0002 (04)
  1365. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1366. 0004 Terminator
  1367.  
  1368.  
  1369.  
  1370. 041B:
  1371. 009A28 Set Character Accuracy 009A (28)
  1372. 010E0064 Set Guard Shield Amount 010E (0064)
  1373. 011BFD10000000 Set guard flag Tags 3 (Guard [whatever called it])
  1374. 0005FD041A Jump To Function (Guard [whatever called it]) (JAL TO: 041A) PART 4
  1375. 0004 Terminator
  1376.  
  1377.  
  1378.  
  1379. 0C00:
  1380. 0006FD0406 Set Return Subroutine (for 0008 Command) (Guard [whatever called it]) (JAL TO: 0406)
  1381. 0005FD0401 Jump To Function (Guard [whatever called it]) (JAL TO: 0401)
  1382. 0004 Terminator
  1383.  
  1384.  
  1385.  
  1386. 0C01:
  1387. 01110178 Prerecorded camera: movement, rotation, and special fx info Chicago Prerecorded Fx Outro
  1388. 017D2B Change Music To Track # (Chicago outro)
  1389. 00A7F400000400 Set Tags for Guard ID# (Counter-operative [player 2]) Hide Guard id (Show if Unset)
  1390. 00A7F100000400 Set Tags for Guard ID# (F1 Special Guard?) Hide Guard id (Show if Unset)
  1391. 0005F20000 Jump To Function (Player 1 and Player 2) (JAL TO: 0000) Do Nothing (Ends Routine)
  1392. 00E810 Immediately Open 16-Door Object (Chicago Unopened fire door)
  1393. 00E811 Immediately Open 16-Door Object (Chicago Unopened fire door)
  1394. 01170A Hide 16-Object (Chicago Hovertaxi)
  1395. 01170C Hide 16-Object (Chicago dataDyne limo)
  1396. 01150D Hide Guard ID (G5 Guard)
  1397. 01150E Hide Guard ID (G5 Guard)
  1398. 01150F Hide Guard ID (G5 Guard)
  1399. 011510 Hide Guard ID (G5 Guard)
  1400. 00A7F200800000 Set Tags for Guard ID# (Player 1 and Player 2)
  1401. 00A8F200000400 Unset Tags for Guard ID# (Player 1 and Player 2) Hide Guard id (Show if Unset)
  1402. 011BF200020000 Set guard flag Tags 3 (Player 1 and Player 2)
  1403. 000B0179FFFFFFFF0600F204 Guard Plays Animation (Player 1 and Player 2) Chicago Outro, Joanna (walks, spins)
  1404. 00B6 Reset Cycle Counter And Enable It
  1405. 01CAF2FFFF Set Guard's Weapon (cutscene) (Player 1 and Player 2) (Hold nothing right hand, nothing in cinema)
  1406. 0003 Sleep For One Frame
  1407. 01CAF2FF02 Set Guard's Weapon (cutscene) (Player 1 and Player 2) (Continue same gun right hand, 02 Falcon 2 in cinema)
  1408. 01D500 Hide/Show Non-Essential Actors 01D5 (00)
  1409. 00022D Resume If Return Value Loop Met 0002 (2D)
  1410. 0003 Sleep For One Frame
  1411. 01742E Return value loop when button is pressed 0174 (2E)
  1412. 00BD00001E04 Check if Cycle Counter > Value, Return Value Loop 00BD (00001E04)
  1413. 00012D Go To Beginning, Then Return Value Loop 0001 (2D)
  1414. 000204 Resume If Return Value Loop Met 0002 (04)
  1415. 00CE016107 Play Sound - Foot print on stone?
  1416. 00022F Resume If Return Value Loop Met 0002 (2F)
  1417. 0003 Sleep For One Frame
  1418. 01742E Return value loop when button is pressed 0174 (2E)
  1419. 00BD00004604 Check if Cycle Counter > Value, Return Value Loop 00BD (00004604)
  1420. 00012F Go To Beginning, Then Return Value Loop 0001 (2F)
  1421. 000204 Resume If Return Value Loop Met 0002 (04)
  1422. 00CE016207 Play Sound - Footstep
  1423. 000230 Resume If Return Value Loop Met 0002 (30)
  1424. 0003 Sleep For One Frame
  1425. 01742E Return value loop when button is pressed 0174 (2E)
  1426. 00BD00007804 Check if Cycle Counter > Value, Return Value Loop 00BD (00007804)
  1427. 000130 Go To Beginning, Then Return Value Loop 0001 (30)
  1428. 000204 Resume If Return Value Loop Met 0002 (04)
  1429. 00CE016307 Play Sound - Footstep
  1430. 000231 Resume If Return Value Loop Met 0002 (31)
  1431. 0003 Sleep For One Frame
  1432. 01742E Return value loop when button is pressed 0174 (2E)
  1433. 00BD0000AE04 Check if Cycle Counter > Value, Return Value Loop 00BD (0000AE04)
  1434. 000131 Go To Beginning, Then Return Value Loop 0001 (31)
  1435. 000204 Resume If Return Value Loop Met 0002 (04)
  1436. 00CE016407 Play Sound - Footstep
  1437. 000232 Resume If Return Value Loop Met 0002 (32)
  1438. 0003 Sleep For One Frame
  1439. 01742E Return value loop when button is pressed 0174 (2E)
  1440. 00BD0000D004 Check if Cycle Counter > Value, Return Value Loop 00BD (0000D004)
  1441. 000132 Go To Beginning, Then Return Value Loop 0001 (32)
  1442. 000204 Resume If Return Value Loop Met 0002 (04)
  1443. 00CE046D06 Play Sound - [empty 0-sized]
  1444. 000233 Resume If Return Value Loop Met 0002 (33)
  1445. 0003 Sleep For One Frame
  1446. 01742E Return value loop when button is pressed 0174 (2E)
  1447. 00BD0000D204 Check if Cycle Counter > Value, Return Value Loop 00BD (0000D204)
  1448. 000133 Go To Beginning, Then Return Value Loop 0001 (33)
  1449. 000204 Resume If Return Value Loop Met 0002 (04)
  1450. 00CE016107 Play Sound - Foot print on stone?
  1451. 000234 Resume If Return Value Loop Met 0002 (34)
  1452. 0003 Sleep For One Frame
  1453. 01742E Return value loop when button is pressed 0174 (2E)
  1454. 00BD0000EE04 Check if Cycle Counter > Value, Return Value Loop 00BD (0000EE04)
  1455. 000134 Go To Beginning, Then Return Value Loop 0001 (34)
  1456. 000204 Resume If Return Value Loop Met 0002 (04)
  1457. 00CE016207 Play Sound - Footstep
  1458. 000235 Resume If Return Value Loop Met 0002 (35)
  1459. 0003 Sleep For One Frame
  1460. 01742E Return value loop when button is pressed 0174 (2E)
  1461. 00BD00011804 Check if Cycle Counter > Value, Return Value Loop 00BD (00011804)
  1462. 000135 Go To Beginning, Then Return Value Loop 0001 (35)
  1463. 000204 Resume If Return Value Loop Met 0002 (04)
  1464. 00CE017107 Play Sound - Metal grate footstep
  1465. 000236 Resume If Return Value Loop Met 0002 (36)
  1466. 0003 Sleep For One Frame
  1467. 01742E Return value loop when button is pressed 0174 (2E)
  1468. 00BD00015E04 Check if Cycle Counter > Value, Return Value Loop 00BD (00015E04)
  1469. 000136 Go To Beginning, Then Return Value Loop 0001 (36)
  1470. 000204 Resume If Return Value Loop Met 0002 (04)
  1471. 00CE017307 Play Sound - Metal grate footstep
  1472. 000237 Resume If Return Value Loop Met 0002 (37)
  1473. 0003 Sleep For One Frame
  1474. 01742E Return value loop when button is pressed 0174 (2E)
  1475. 00BD0001CA04 Check if Cycle Counter > Value, Return Value Loop 00BD (0001CA04)
  1476. 000137 Go To Beginning, Then Return Value Loop 0001 (37)
  1477. 000204 Resume If Return Value Loop Met 0002 (04)
  1478. 00CE017207 Play Sound - Metal grate footstep
  1479. 000238 Resume If Return Value Loop Met 0002 (38)
  1480. 0003 Sleep For One Frame
  1481. 01742E Return value loop when button is pressed 0174 (2E)
  1482. 00BD0001FA04 Check if Cycle Counter > Value, Return Value Loop 00BD (0001FA04)
  1483. 000138 Go To Beginning, Then Return Value Loop 0001 (38)
  1484. 000204 Resume If Return Value Loop Met 0002 (04)
  1485. 00CE017107 Play Sound - Metal grate footstep
  1486. 000239 Resume If Return Value Loop Met 0002 (39)
  1487. 0003 Sleep For One Frame
  1488. 01742E Return value loop when button is pressed 0174 (2E)
  1489. 00BD00021C04 Check if Cycle Counter > Value, Return Value Loop 00BD (00021C04)
  1490. 000139 Go To Beginning, Then Return Value Loop 0001 (39)
  1491. 000204 Resume If Return Value Loop Met 0002 (04)
  1492. 006D10 Close 16-Object Door (Chicago Unopened fire door)
  1493. 006D11 Close 16-Object Door (Chicago Unopened fire door)
  1494. 00023A Resume If Return Value Loop Met 0002 (3A)
  1495. 0003 Sleep For One Frame
  1496. 01742E Return value loop when button is pressed 0174 (2E)
  1497. 00BD00022104 Check if Cycle Counter > Value, Return Value Loop 00BD (00022104)
  1498. 00013A Go To Beginning, Then Return Value Loop 0001 (3A)
  1499. 000204 Resume If Return Value Loop Met 0002 (04)
  1500. 00CE017107 Play Sound - Metal grate footstep
  1501. 00023B Resume If Return Value Loop Met 0002 (3B)
  1502. 0003 Sleep For One Frame
  1503. 01742E Return value loop when button is pressed 0174 (2E)
  1504. 00BD00024C04 Check if Cycle Counter > Value, Return Value Loop 00BD (00024C04)
  1505. 00013B Go To Beginning, Then Return Value Loop 0001 (3B)
  1506. 000204 Resume If Return Value Loop Met 0002 (04)
  1507. 00CE017207 Play Sound - Metal grate footstep
  1508. 000205 Resume If Return Value Loop Met 0002 (05)
  1509. 0003 Sleep For One Frame
  1510. 011303 If Prerecorded camera not finished, Return Value Loop 0113 (03)
  1511. 00002E Return Value Loop 0000 (2E)
  1512. 000203 Resume If Return Value Loop Met 0002 (03)
  1513. 01742E Return value loop when button is pressed 0174 (2E)
  1514. 000203 Resume If Return Value Loop Met 0002 (03)
  1515. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1516. 00022E Resume If Return Value Loop Met 0002 (2E)
  1517. 00D307 Turn off Sound in Slot 00D3 (07)
  1518. 00D30A Turn off Sound in Slot 00D3 (0A)
  1519. 000204 Resume If Return Value Loop Met 0002 (04)
  1520. 00DC Exit Level
  1521. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1522. 0004 Terminator
  1523.  
  1524.  
  1525.  
  1526. 1400:
  1527. 0003 Sleep For One Frame
  1528. 010BF420 Make Guard Ally (10)/Foe (02) (Counter-operative [player 2])
  1529. 00A70700004000 Set Tags for Guard ID# (G5 Guard)
  1530. 00A70700000020 Set Tags for Guard ID# (G5 Guard)
  1531. 00A70A00000020 Set Tags for Guard ID# (G5 Guard)
  1532. 00770203 If Difficulty < Value, Return Value Loop 0077 (0203)
  1533. 006A0FF8 Give Guard 16-Object (Joanna [player 1]) (Briefcase)
  1534. 000203 Resume If Return Value Loop Met 0002 (03)
  1535. 006A1BF8 Give Guard 16-Object (Joanna [player 1]) (Briefcase)
  1536. 0034F503 If Guard ID Finished Death Animation, Return Value Loop (Velvet Dark [player 2])
  1537. 00770204 If Difficulty < Value, Return Value Loop 0077 (0204)
  1538. 006A1DF5 Give Guard 16-Object (Velvet Dark [player 2]) (Briefcase)
  1539. 000204 Resume If Return Value Loop Met 0002 (04)
  1540. 006A1EF5 Give Guard 16-Object (Velvet Dark [player 2]) (Briefcase)
  1541. 0005FD0017 Jump To Function (Guard [whatever called it]) (JAL TO: 0017) Guard/Simulant Initialization (0145/0146), Then End
  1542. 000203 Resume If Return Value Loop Met 0002 (03)
  1543. 01170F Hide 16-Object (Briefcase)
  1544. 01171D Hide 16-Object (Briefcase)
  1545. 01171E Hide 16-Object (Briefcase)
  1546. 0005FD0017 Jump To Function (Guard [whatever called it]) (JAL TO: 0017) Guard/Simulant Initialization (0145/0146), Then End
  1547. 0004 Terminator
  1548.  
  1549.  
  1550.  
  1551. 1001:
  1552. 0003 Sleep For One Frame
  1553. 00A71A04000000 Set Tags for Guard ID# (CIA Agent)
  1554. 00A71B04000000 Set Tags for Guard ID# (CIA Agent)
  1555. 00A71C04000000 Set Tags for Guard ID# (CIA Agent)
  1556. 00A71D04000000 Set Tags for Guard ID# (CIA Agent)
  1557. 0005FD0016 Jump To Function (Guard [whatever called it]) (JAL TO: 0016) Periodically Show Objectives Failed Message
  1558. 0004 Terminator
  1559.  
  1560.  
  1561.  
  1562. 1002:
  1563. 0005FD0017 Jump To Function (Guard [whatever called it]) (JAL TO: 0017) Guard/Simulant Initialization (0145/0146), Then End
  1564. 0004 Terminator
  1565.  
  1566.  
  1567.  
  1568. 1003:
  1569. 0005FD040A Jump To Function (Guard [whatever called it]) (JAL TO: 040A)
  1570. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1571. 0004 Terminator
  1572.  
  1573.  
  1574.  
  1575. 1004:
  1576. 00B0F8 Sets To Guard ID FC Current Guard (Joanna [player 1])
  1577. 00770254 If Difficulty < Value, Return Value Loop 0077 (0254)
  1578. 000004 Return Value Loop 0000 (04)
  1579. 000254 Resume If Return Value Loop Met 0002 (54)
  1580. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1581. 000204 Resume If Return Value Loop Met 0002 (04)
  1582. 0003 Sleep For One Frame
  1583. 000211 Resume If Return Value Loop Met 0002 (11)
  1584. 0003 Sleep For One Frame
  1585. B54255472043310A = BUG C1
  1586. 0106F80000 Set F6 Guard ID (Primary Player) to Guard ID (Joanna [player 1])
  1587. 0034F82F If Guard ID Finished Death Animation, Return Value Loop (Joanna [player 1])
  1588. 0033F82F If Guard ID Killed, Return Value Loop (Joanna [player 1])
  1589. 017BF82F If Guard Body Disappeared, Return Value Loop (Joanna [player 1])
  1590. 00EBF8180103 If Player ID#'s Ammo Value In Type < Value, Return Value Loop (Joanna [player 1]) (Ammo: 18 - Target Amplifier)
  1591. 000204 Resume If Return Value Loop Met 0002 (04)
  1592. 000111 Go To Beginning, Then Return Value Loop 0001 (11)
  1593. 00022F Resume If Return Value Loop Met 0002 (2F)
  1594. 0003 Sleep For One Frame
  1595. B542554720444F0A = BUG DO
  1596. 0106F80000 Set F6 Guard ID (Primary Player) to Guard ID (Joanna [player 1])
  1597. 0034F830 If Guard ID Finished Death Animation, Return Value Loop (Joanna [player 1])
  1598. 0033F830 If Guard ID Killed, Return Value Loop (Joanna [player 1])
  1599. 017BF830 If Guard Body Disappeared, Return Value Loop (Joanna [player 1])
  1600. 000231 Resume If Return Value Loop Met 0002 (31)
  1601. 0003 Sleep For One Frame
  1602. 0003 Sleep For One Frame
  1603. 0003 Sleep For One Frame
  1604. 0003 Sleep For One Frame
  1605. 0003 Sleep For One Frame
  1606. 000111 Go To Beginning, Then Return Value Loop 0001 (11)
  1607. 000230 Resume If Return Value Loop Met 0002 (30)
  1608. 00012F Go To Beginning, Then Return Value Loop 0001 (2F)
  1609. 000203 Resume If Return Value Loop Met 0002 (03)
  1610. B54255472043320A = BUG C2
  1611. 0003 Sleep For One Frame
  1612. 005E3E04 If Specified Weapon Deposited, Return Value Loop (3E Tracer Bug)
  1613. 000103 Go To Beginning, Then Return Value Loop 0001 (03)
  1614. 000204 Resume If Return Value Loop Met 0002 (04)
  1615. 00620C04 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago dataDyne limo)
  1616. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1617. 000204 Resume If Return Value Loop Met 0002 (04)
  1618. 00B6 Reset Cycle Counter And Enable It
  1619. 000205 Resume If Return Value Loop Met 0002 (05)
  1620. 0003 Sleep For One Frame
  1621. B54255472043330A = BUG C3
  1622. 005F3E0C06 If Specified Weapon Deposited On 16-Object, Return Value Loop (3E Tracer Bug) (Chicago dataDyne limo)
  1623. 00BD00007807 Check if Cycle Counter > Value, Return Value Loop 00BD (00007807)
  1624. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1625. 000206 Resume If Return Value Loop Met 0002 (06)
  1626. 00A100001000 Set Objective Bits (If True: Objective #2) (00001000)
  1627. 00A200002000 Unset Objective Bits (If False: Objective #2) (00002000)
  1628. 00CBF83217 Display Text Preset Lower (Joanna [player 1]) - Tracer Bug placed correctly.*
  1629. 00B6 Reset Cycle Counter And Enable It
  1630. 000208 Resume If Return Value Loop Met 0002 (08)
  1631. 0003 Sleep For One Frame
  1632. B54255472043340A = BUG C4
  1633. 00BD00012C04 Check if Cycle Counter > Value, Return Value Loop 00BD (00012C04)
  1634. 000108 Go To Beginning, Then Return Value Loop 0001 (08)
  1635. 000204 Resume If Return Value Loop Met 0002 (04)
  1636. 00A100000080 Set Objective Bits (00000080)
  1637. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1638. 000207 Resume If Return Value Loop Met 0002 (07)
  1639. B557524F4E47310A = WRONG1
  1640. 00A3000001000103 Compare Objective Bits, Return Value Loop are True (00000100)
  1641. B557524F4E47320A = WRONG2
  1642. 00A100000100 Set Objective Bits (00000100)
  1643. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1644. 000203 Resume If Return Value Loop Met 0002 (03)
  1645. B557524F4E47330A = WRONG3
  1646. 00A100002000 Set Objective Bits (If False: Objective #2) (00002000)
  1647. 00CBF83218 Display Text Preset Lower (Joanna [player 1]) - Tracer Bug placed incorrectly.*
  1648. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1649. 0004 Terminator
  1650.  
  1651.  
  1652.  
  1653. 1005:
  1654. 000210 Resume If Return Value Loop Met 0002 (10)
  1655. 0003 Sleep For One Frame
  1656. 00A3000040000103 Compare Objective Bits, Return Value Loop are True (If False: Objective #2) (00004000)
  1657. 00620C03 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago dataDyne limo)
  1658. 00A100004000 Set Objective Bits (If False: Objective #2) (00004000)
  1659. 00D301 Turn off Sound in Slot 00D3 (01)
  1660. 00770103 If Difficulty < Value, Return Value Loop 0077 (0103)
  1661. 00CBF83219 Display Text Preset Lower (Joanna [player 1]) - Mission critical vehicle destroyed.*
  1662. 000203 Resume If Return Value Loop Met 0002 (03)
  1663. 00A3400000000103 Compare Objective Bits, Return Value Loop are True (If True: Objective #4) (40000000)
  1664. 00A3000080000103 Compare Objective Bits, Return Value Loop are True (If False: Objective #4) (00008000)
  1665. 00620A03 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago Hovertaxi)
  1666. 00D300 Turn off Sound in Slot 00D3 (00)
  1667. 00A100008000 Set Objective Bits (If False: Objective #4) (00008000)
  1668. 00CBF83219 Display Text Preset Lower (Joanna [player 1]) - Mission critical vehicle destroyed.*
  1669. 000203 Resume If Return Value Loop Met 0002 (03)
  1670. 00A3400000000103 Compare Objective Bits, Return Value Loop are True (If True: Objective #4) (40000000)
  1671. 00A3000100000103 Compare Objective Bits, Return Value Loop are True (If False: Objective #4) (00010000)
  1672. 00331F04 If Guard ID Killed, Return Value Loop (G5 Sentry Bot (Don't use as player))
  1673. 000003 Return Value Loop 0000 (03)
  1674. 000204 Resume If Return Value Loop Met 0002 (04)
  1675. 00B6 Reset Cycle Counter And Enable It
  1676. 000205 Resume If Return Value Loop Met 0002 (05)
  1677. 0003 Sleep For One Frame
  1678. 00BD00007804 Check if Cycle Counter > Value, Return Value Loop 00BD (00007804)
  1679. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1680. 000204 Resume If Return Value Loop Met 0002 (04)
  1681. 00A100010000 Set Objective Bits (If False: Objective #4) (00010000)
  1682. 00CBF83219 Display Text Preset Lower (Joanna [player 1]) - Mission critical vehicle destroyed.*
  1683. 000203 Resume If Return Value Loop Met 0002 (03)
  1684. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  1685. 0004 Terminator
  1686.  
  1687.  
  1688.  
  1689. 1006:
  1690. 000205 Resume If Return Value Loop Met 0002 (05)
  1691. 0003 Sleep For One Frame
  1692. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  1693. 00730003 If Objective Succeeded, Return Value Loop 0073 (0003)
  1694. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1695. 000203 Resume If Return Value Loop Met 0002 (03)
  1696. 00730303 If Objective Succeeded, Return Value Loop 0073 (0303)
  1697. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1698. 000203 Resume If Return Value Loop Met 0002 (03)
  1699. 0077010A If Difficulty < Value, Return Value Loop 0077 (010A)
  1700. 00730203 If Objective Succeeded, Return Value Loop 0073 (0203)
  1701. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1702. 000203 Resume If Return Value Loop Met 0002 (03)
  1703. 0077020A If Difficulty < Value, Return Value Loop 0077 (020A)
  1704. 0073010A If Objective Succeeded, Return Value Loop 0073 (010A)
  1705. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1706. 00020A Resume If Return Value Loop Met 0002 (0A)
  1707. B550414420434845434B0A = PAD CHECK
  1708. 0054F2002300A704 If Guard ID Within Units of Preset, Return Value Loop (Player 1 and Player 2)
  1709. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1710. 000204 Resume If Return Value Loop Met 0002 (04)
  1711. 00A100020000 Set Objective Bits (If True: Objective #5) (00020000)
  1712. B5494E2054484520454C455641544F520A = IN THE ELEVATOR
  1713. 0003 Sleep For One Frame
  1714. 0003 Sleep For One Frame
  1715. 00F3F8 Make Guard Invincible (F8 Jo) (Joanna [player 1])
  1716. 00E0F804 Lose Control/Movement of Player (ID F8) (Joanna [player 1])
  1717. 00BF Hide Timer
  1718. 00C1 Stop Timer
  1719. 00F705 If All Objectives Complete, Return Value Loop 00F7 (05)
  1720. 00CBF2321A Display Text Preset Lower (Player 1 and Player 2) - MISSION FAILED*
  1721. 000203 Resume If Return Value Loop Met 0002 (03)
  1722. 00B6 Reset Cycle Counter And Enable It
  1723. 000213 Resume If Return Value Loop Met 0002 (13)
  1724. 0003 Sleep For One Frame
  1725. 00BD00011812 Check if Cycle Counter > Value, Return Value Loop 00BD (00011812)
  1726. 000113 Go To Beginning, Then Return Value Loop 0001 (13)
  1727. 000212 Resume If Return Value Loop Met 0002 (12)
  1728. 00DC Exit Level
  1729. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1730. 000205 Resume If Return Value Loop Met 0002 (05)
  1731. 0034F803 If Guard ID Finished Death Animation, Return Value Loop (Joanna [player 1])
  1732. 0033F803 If Guard ID Killed, Return Value Loop (Joanna [player 1])
  1733. 017BF803 If Guard Body Disappeared, Return Value Loop (Joanna [player 1])
  1734. 000004 Return Value Loop 0000 (04)
  1735. 000203 Resume If Return Value Loop Met 0002 (03)
  1736. 0034F503 If Guard ID Finished Death Animation, Return Value Loop (Velvet Dark [player 2])
  1737. 0033F503 If Guard ID Killed, Return Value Loop (Velvet Dark [player 2])
  1738. 017BF503 If Guard Body Disappeared, Return Value Loop (Velvet Dark [player 2])
  1739. 000004 Return Value Loop 0000 (04)
  1740. 000203 Resume If Return Value Loop Met 0002 (03)
  1741. 00DC Exit Level
  1742. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1743. 000204 Resume If Return Value Loop Met 0002 (04)
  1744. 0005FD040B Jump To Function (Guard [whatever called it]) (JAL TO: 040B)
  1745. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1746. 0004 Terminator
  1747.  
  1748.  
  1749.  
  1750. 1007:
  1751. 00B6 Reset Cycle Counter And Enable It
  1752. 000205 Resume If Return Value Loop Met 0002 (05)
  1753. 0003 Sleep For One Frame
  1754. 00A3000008000104 Compare Objective Bits, Return Value Loop are True (00000800)
  1755. 00A3010000000103 Compare Objective Bits, Return Value Loop are True (01000000)
  1756. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1757. 000203 Resume If Return Value Loop Met 0002 (03)
  1758. 00A3000010000104 Compare Objective Bits, Return Value Loop are True (If True: Objective #2) (00001000)
  1759. 00780107 If Difficulty > Value, Return Value Loop 0078 (0107)
  1760. 00780006 If Difficulty > Value, Return Value Loop 0078 (0006)
  1761. 00BD002A3004 Check if Cycle Counter > Value, Return Value Loop 00BD (002A3004)
  1762. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1763. 000206 Resume If Return Value Loop Met 0002 (06)
  1764. 00BD001C2004 Check if Cycle Counter > Value, Return Value Loop 00BD (001C2004)
  1765. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1766. 000207 Resume If Return Value Loop Met 0002 (07)
  1767. 00BD001C2004 Check if Cycle Counter > Value, Return Value Loop 00BD (001C2004)
  1768. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1769. 000204 Resume If Return Value Loop Met 0002 (04)
  1770. 00A100040000 Set Objective Bits (00040000)
  1771. B54C494D4F20524541445920544F20474F0A = LIMO READY TO GO
  1772. 00B6 Reset Cycle Counter And Enable It
  1773. 00020A Resume If Return Value Loop Met 0002 (0A)
  1774. 0003 Sleep For One Frame
  1775. 00BD00038404 Check if Cycle Counter > Value, Return Value Loop 00BD (00038404)
  1776. 00010A Go To Beginning, Then Return Value Loop 0001 (0A)
  1777. 000204 Resume If Return Value Loop Met 0002 (04)
  1778. 00A100080000 Set Objective Bits (00080000)
  1779. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1780. 0004 Terminator
  1781.  
  1782.  
  1783.  
  1784. 1008:
  1785. 000207 Resume If Return Value Loop Met 0002 (07)
  1786. 0003 Sleep For One Frame
  1787. 00A3010000000103 Compare Objective Bits, Return Value Loop are True (01000000)
  1788. 000107 Go To Beginning, Then Return Value Loop 0001 (07)
  1789. 000203 Resume If Return Value Loop Met 0002 (03)
  1790. 00A3000008000103 Compare Objective Bits, Return Value Loop are True (00000800)
  1791. 000107 Go To Beginning, Then Return Value Loop 0001 (07)
  1792. 000203 Resume If Return Value Loop Met 0002 (03)
  1793. 00B6 Reset Cycle Counter And Enable It
  1794. 000205 Resume If Return Value Loop Met 0002 (05)
  1795. 0003 Sleep For One Frame
  1796. 00BD0000C804 Check if Cycle Counter > Value, Return Value Loop 00BD (0000C804)
  1797. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1798. 000204 Resume If Return Value Loop Met 0002 (04)
  1799. 00A100100000 Set Objective Bits (00100000)
  1800. 00B6 Reset Cycle Counter And Enable It
  1801. 000206 Resume If Return Value Loop Met 0002 (06)
  1802. 0003 Sleep For One Frame
  1803. 00BD00025804 Check if Cycle Counter > Value, Return Value Loop 00BD (00025804)
  1804. 000106 Go To Beginning, Then Return Value Loop 0001 (06)
  1805. 000204 Resume If Return Value Loop Met 0002 (04)
  1806. 00A100200000 Set Objective Bits (00200000)
  1807. 00AE0A04000000 Unset Tags 2 for 16-Object (Chicago Hovertaxi)
  1808. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1809. 0004 Terminator
  1810.  
  1811.  
  1812.  
  1813. 1009:
  1814. 000210 Resume If Return Value Loop Met 0002 (10)
  1815. 0003 Sleep For One Frame
  1816. 00331A05 If Guard ID Killed, Return Value Loop (CIA Agent)
  1817. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  1818. 000203 Resume If Return Value Loop Met 0002 (03)
  1819. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1820. 000205 Resume If Return Value Loop Met 0002 (05)
  1821. 00A108000000 Set Objective Bits (If False: Objective #5) (08000000)
  1822. 00CBF8321D Display Text Preset Lower (Joanna [player 1]) - Mission failed - unacceptable civilian casualties.*
  1823. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1824. 0004 Terminator
  1825.  
  1826.  
  1827.  
  1828. 100A:
  1829. 000210 Resume If Return Value Loop Met 0002 (10)
  1830. 0003 Sleep For One Frame
  1831. 00A01B000020000003 If Guard ID#'s Object Flags Match, Return Value Loop (CIA Agent)
  1832. 00331B05 If Guard ID Killed, Return Value Loop (CIA Agent)
  1833. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  1834. 000203 Resume If Return Value Loop Met 0002 (03)
  1835. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1836. 000205 Resume If Return Value Loop Met 0002 (05)
  1837. 00A108000000 Set Objective Bits (If False: Objective #5) (08000000)
  1838. 00CBF8321D Display Text Preset Lower (Joanna [player 1]) - Mission failed - unacceptable civilian casualties.*
  1839. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1840. 0004 Terminator
  1841.  
  1842.  
  1843.  
  1844. 100B:
  1845. 000210 Resume If Return Value Loop Met 0002 (10)
  1846. 0003 Sleep For One Frame
  1847. 00331C05 If Guard ID Killed, Return Value Loop (CIA Agent)
  1848. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  1849. 000203 Resume If Return Value Loop Met 0002 (03)
  1850. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1851. 000205 Resume If Return Value Loop Met 0002 (05)
  1852. 00A108000000 Set Objective Bits (If False: Objective #5) (08000000)
  1853. 00CBF8321D Display Text Preset Lower (Joanna [player 1]) - Mission failed - unacceptable civilian casualties.*
  1854. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1855. 0004 Terminator
  1856.  
  1857.  
  1858.  
  1859. 100C:
  1860. 000210 Resume If Return Value Loop Met 0002 (10)
  1861. 0003 Sleep For One Frame
  1862. 00331D05 If Guard ID Killed, Return Value Loop (CIA Agent)
  1863. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  1864. 000203 Resume If Return Value Loop Met 0002 (03)
  1865. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1866. 000205 Resume If Return Value Loop Met 0002 (05)
  1867. 00A108000000 Set Objective Bits (If False: Objective #5) (08000000)
  1868. 00CBF8321D Display Text Preset Lower (Joanna [player 1]) - Mission failed - unacceptable civilian casualties.*
  1869. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  1870. 0004 Terminator
  1871.  
  1872.  
  1873.  
  1874. 100D:
  1875. 00B6 Reset Cycle Counter And Enable It
  1876. 000205 Resume If Return Value Loop Met 0002 (05)
  1877. 0003 Sleep For One Frame
  1878. 00A3004000000103 Compare Objective Bits, Return Value Loop are True (00400000)
  1879. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  1880. 000203 Resume If Return Value Loop Met 0002 (03)
  1881. 00B6 Reset Cycle Counter And Enable It
  1882. 00CE7AF0FF Play Sound - Attention all personnel (echo)
  1883. 00021D Resume If Return Value Loop Met 0002 (1D)
  1884. 0003 Sleep For One Frame
  1885. 00BD0000C803 Check if Cycle Counter > Value, Return Value Loop 00BD (0000C803)
  1886. 00011D Go To Beginning, Then Return Value Loop 0001 (1D)
  1887. 000203 Resume If Return Value Loop Met 0002 (03)
  1888. 00B6 Reset Cycle Counter And Enable It
  1889. 00CE7AF1FF Play Sound - Locate and apprehend the fugitive (echo)
  1890. 00021E Resume If Return Value Loop Met 0002 (1E)
  1891. 0003 Sleep For One Frame
  1892. 00BD00007803 Check if Cycle Counter > Value, Return Value Loop 00BD (00007803)
  1893. 00011E Go To Beginning, Then Return Value Loop 0001 (1E)
  1894. 000203 Resume If Return Value Loop Met 0002 (03)
  1895. 00F9010A3C Plays x-theme slot# =0-3; play for x/y seconds 00F9 (010A3C)
  1896. 000004 Return Value Loop 0000 (04)
  1897. 000207 Resume If Return Value Loop Met 0002 (07)
  1898. 00711404 Unset Lock 16-Object Door (Chicago Metal shutter)
  1899. 00B6 Reset Cycle Counter And Enable It
  1900. 00A3000000010108 Compare Objective Bits, Return Value Loop are True (00000001)
  1901. 00C681FF0067041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1902. 000204 Resume If Return Value Loop Met 0002 (04)
  1903. 0003 Sleep For One Frame
  1904. 0003 Sleep For One Frame
  1905. 0003 Sleep For One Frame
  1906. 0003 Sleep For One Frame
  1907. 0003 Sleep For One Frame
  1908. 00C681FF0067041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1909. 000204 Resume If Return Value Loop Met 0002 (04)
  1910. 0003 Sleep For One Frame
  1911. 0003 Sleep For One Frame
  1912. 0003 Sleep For One Frame
  1913. 0003 Sleep For One Frame
  1914. 0003 Sleep For One Frame
  1915. 00C681FF0067041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1916. 000204 Resume If Return Value Loop Met 0002 (04)
  1917. 0003 Sleep For One Frame
  1918. 0003 Sleep For One Frame
  1919. 0003 Sleep For One Frame
  1920. 0003 Sleep For One Frame
  1921. 0003 Sleep For One Frame
  1922. 00C681FF0067041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1923. 000204 Resume If Return Value Loop Met 0002 (04)
  1924. 000006 Return Value Loop 0000 (06)
  1925. 000208 Resume If Return Value Loop Met 0002 (08)
  1926. 00711504 Unset Lock 16-Object Door (Chicago Metal shutter)
  1927. 00711604 Unset Lock 16-Object Door (Chicago Metal shutter)
  1928. 00A3000000020109 Compare Objective Bits, Return Value Loop are True (00000002)
  1929. 00C681FF00C2041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1930. 000204 Resume If Return Value Loop Met 0002 (04)
  1931. 0003 Sleep For One Frame
  1932. 0003 Sleep For One Frame
  1933. 0003 Sleep For One Frame
  1934. 0003 Sleep For One Frame
  1935. 0003 Sleep For One Frame
  1936. 00C681FF00C2041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1937. 000204 Resume If Return Value Loop Met 0002 (04)
  1938. 0003 Sleep For One Frame
  1939. 0003 Sleep For One Frame
  1940. 0003 Sleep For One Frame
  1941. 0003 Sleep For One Frame
  1942. 0003 Sleep For One Frame
  1943. 00C681FF00C2041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1944. 000204 Resume If Return Value Loop Met 0002 (04)
  1945. 0003 Sleep For One Frame
  1946. 0003 Sleep For One Frame
  1947. 0003 Sleep For One Frame
  1948. 0003 Sleep For One Frame
  1949. 0003 Sleep For One Frame
  1950. 00C681FF00C2041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1951. 000204 Resume If Return Value Loop Met 0002 (04)
  1952. 000006 Return Value Loop 0000 (06)
  1953. 000209 Resume If Return Value Loop Met 0002 (09)
  1954. 00711704 Unset Lock 16-Object Door (Chicago Metal shutter)
  1955. 00711804 Unset Lock 16-Object Door (Chicago Metal shutter)
  1956. 00A300000004010A Compare Objective Bits, Return Value Loop are True (00000004)
  1957. 00C681FF00C3041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1958. 000204 Resume If Return Value Loop Met 0002 (04)
  1959. 0003 Sleep For One Frame
  1960. 0003 Sleep For One Frame
  1961. 0003 Sleep For One Frame
  1962. 0003 Sleep For One Frame
  1963. 0003 Sleep For One Frame
  1964. 00C681FF00C3041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1965. 000204 Resume If Return Value Loop Met 0002 (04)
  1966. 0003 Sleep For One Frame
  1967. 0003 Sleep For One Frame
  1968. 0003 Sleep For One Frame
  1969. 0003 Sleep For One Frame
  1970. 0003 Sleep For One Frame
  1971. 00C681FF00C3041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1972. 000204 Resume If Return Value Loop Met 0002 (04)
  1973. 0003 Sleep For One Frame
  1974. 0003 Sleep For One Frame
  1975. 0003 Sleep For One Frame
  1976. 0003 Sleep For One Frame
  1977. 0003 Sleep For One Frame
  1978. 00C681FF00C3041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1979. 000204 Resume If Return Value Loop Met 0002 (04)
  1980. 000006 Return Value Loop 0000 (06)
  1981. 00020A Resume If Return Value Loop Met 0002 (0A)
  1982. 00711904 Unset Lock 16-Object Door (Chicago Metal shutter)
  1983. 00C681FF00C1041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1984. 000204 Resume If Return Value Loop Met 0002 (04)
  1985. 0003 Sleep For One Frame
  1986. 0003 Sleep For One Frame
  1987. 0003 Sleep For One Frame
  1988. 0003 Sleep For One Frame
  1989. 0003 Sleep For One Frame
  1990. 00C681FF00C1041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1991. 000204 Resume If Return Value Loop Met 0002 (04)
  1992. 0003 Sleep For One Frame
  1993. 0003 Sleep For One Frame
  1994. 0003 Sleep For One Frame
  1995. 0003 Sleep For One Frame
  1996. 0003 Sleep For One Frame
  1997. 00C681FF00C1041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  1998. 000204 Resume If Return Value Loop Met 0002 (04)
  1999. 0003 Sleep For One Frame
  2000. 0003 Sleep For One Frame
  2001. 0003 Sleep For One Frame
  2002. 0003 Sleep For One Frame
  2003. 0003 Sleep For One Frame
  2004. 00C681FF00C1041F0000020004 Spawn Guard (G5 SWAT Guard) (Random Head)
  2005. 000204 Resume If Return Value Loop Met 0002 (04)
  2006. 000006 Return Value Loop 0000 (06)
  2007. 000206 Resume If Return Value Loop Met 0002 (06)
  2008. 0003 Sleep For One Frame
  2009. 01470904 0147 (0904)
  2010. 000106 Go To Beginning, Then Return Value Loop 0001 (06)
  2011. 000204 Resume If Return Value Loop Met 0002 (04)
  2012. 00A3000000010104 Compare Objective Bits, Return Value Loop are True (00000001)
  2013. 00A100000001 Set Objective Bits (00000001)
  2014. 000003 Return Value Loop 0000 (03)
  2015. 000204 Resume If Return Value Loop Met 0002 (04)
  2016. 00A3000000020104 Compare Objective Bits, Return Value Loop are True (00000002)
  2017. 00A100000002 Set Objective Bits (00000002)
  2018. 000003 Return Value Loop 0000 (03)
  2019. 000204 Resume If Return Value Loop Met 0002 (04)
  2020. 00A3000000040104 Compare Objective Bits, Return Value Loop are True (00000004)
  2021. 00A100000004 Set Objective Bits (00000004)
  2022. 000003 Return Value Loop 0000 (03)
  2023. 000204 Resume If Return Value Loop Met 0002 (04)
  2024. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2025. 000203 Resume If Return Value Loop Met 0002 (03)
  2026. 00B6 Reset Cycle Counter And Enable It
  2027. 00022D Resume If Return Value Loop Met 0002 (2D)
  2028. 0003 Sleep For One Frame
  2029. 00BD00038404 Check if Cycle Counter > Value, Return Value Loop 00BD (00038404)
  2030. 00012D Go To Beginning, Then Return Value Loop 0001 (2D)
  2031. 000204 Resume If Return Value Loop Met 0002 (04)
  2032. 000107 Go To Beginning, Then Return Value Loop 0001 (07)
  2033. 0004 Terminator
  2034.  
  2035.  
  2036.  
  2037. 100F:
  2038. 0077010A If Difficulty < Value, Return Value Loop 0077 (010A)
  2039. 0003 Sleep For One Frame
  2040. 000208 Resume If Return Value Loop Met 0002 (08)
  2041. 0003 Sleep For One Frame
  2042. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  2043. 005DF20603 If 16-Object # Collected, Return Value Loop (Player 1 and Player 2) (Briefcase)
  2044. 000108 Go To Beginning, Then Return Value Loop 0001 (08)
  2045. 000203 Resume If Return Value Loop Met 0002 (03)
  2046. 0106F20000 Set F6 Guard ID (Primary Player) to Guard ID (Player 1 and Player 2)
  2047. 000211 Resume If Return Value Loop Met 0002 (11)
  2048. 0003 Sleep For One Frame
  2049. B54D41494E0A = MAIN
  2050. 0034F629 If Guard ID Finished Death Animation, Return Value Loop (Currently Active Player)
  2051. 0033F629 If Guard ID Killed, Return Value Loop (Currently Active Player)
  2052. 017BF629 If Guard Body Disappeared, Return Value Loop (Currently Active Player)
  2053. 00EBF60C0103 If Player ID#'s Ammo Value In Type < Value, Return Value Loop (Currently Active Player) (Ammo: 0C - Remote mines)
  2054. 000111 Go To Beginning, Then Return Value Loop 0001 (11)
  2055. 000229 Resume If Return Value Loop Met 0002 (29)
  2056. 000254 Resume If Return Value Loop Met 0002 (54)
  2057. 0003 Sleep For One Frame
  2058. B5444541440A = DEAD
  2059. 0034F628 If Guard ID Finished Death Animation, Return Value Loop (Currently Active Player)
  2060. 0033F628 If Guard ID Killed, Return Value Loop (Currently Active Player)
  2061. 017BF628 If Guard Body Disappeared, Return Value Loop (Currently Active Player)
  2062. 0003 Sleep For One Frame
  2063. B54E4F54444541440A = NOTDEAD
  2064. 00EBF80C0129 If Player ID#'s Ammo Value In Type < Value, Return Value Loop (Joanna [player 1]) (Ammo: 0C - Remote mines)
  2065. 000108 Go To Beginning, Then Return Value Loop 0001 (08)
  2066. 000229 Resume If Return Value Loop Met 0002 (29)
  2067. 00EBF50C0129 If Player ID#'s Ammo Value In Type < Value, Return Value Loop (Velvet Dark [player 2]) (Ammo: 0C - Remote mines)
  2068. 000108 Go To Beginning, Then Return Value Loop 0001 (08)
  2069. 000229 Resume If Return Value Loop Met 0002 (29)
  2070. B54E4F414D4D4F0A = NOAMMO
  2071. 000228 Resume If Return Value Loop Met 0002 (28)
  2072. B55354494C4C444541440A = STILLDEAD
  2073. 000154 Go To Beginning, Then Return Value Loop 0001 (54)
  2074. 000203 Resume If Return Value Loop Met 0002 (03)
  2075. B54641494C0A = FAIL
  2076. 0003 Sleep For One Frame
  2077. 0003 Sleep For One Frame
  2078. 0003 Sleep For One Frame
  2079. 0003 Sleep For One Frame
  2080. 0003 Sleep For One Frame
  2081. 005E2204 If Specified Weapon Deposited, Return Value Loop (22 Remote Mine)
  2082. 000111 Go To Beginning, Then Return Value Loop 0001 (11)
  2083. 000204 Resume If Return Value Loop Met 0002 (04)
  2084. 00B6 Reset Cycle Counter And Enable It
  2085. 000205 Resume If Return Value Loop Met 0002 (05)
  2086. 0003 Sleep For One Frame
  2087. 005F220806 If Specified Weapon Deposited On 16-Object, Return Value Loop (22 Remote Mine) (G5 Building Upper hole-in-wall unexploded)
  2088. 005F220908 If Specified Weapon Deposited On 16-Object, Return Value Loop (22 Remote Mine) (G5 Building Lower hole-in-wall unexploded)
  2089. 00BD00007807 Check if Cycle Counter > Value, Return Value Loop 00BD (00007807)
  2090. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  2091. 000208 Resume If Return Value Loop Met 0002 (08)
  2092. 01913F Unmask EEPROM Value 0191 (3F)
  2093. 000003 Return Value Loop 0000 (03)
  2094. 000206 Resume If Return Value Loop Met 0002 (06)
  2095. 01903F Mask EEPROM Value 0190 (3F)
  2096. 000203 Resume If Return Value Loop Met 0002 (03)
  2097. 00A100000200 Set Objective Bits (If True: Objective #3) (00000200)
  2098. 00CBF2320F Display Text Preset Lower (Player 1 and Player 2) - Mine placed correctly.*
  2099. 00022D Resume If Return Value Loop Met 0002 (2D)
  2100. 0003 Sleep For One Frame
  2101. 005F220803 If Specified Weapon Deposited On 16-Object, Return Value Loop (22 Remote Mine) (G5 Building Upper hole-in-wall unexploded)
  2102. 005F220903 If Specified Weapon Deposited On 16-Object, Return Value Loop (22 Remote Mine) (G5 Building Lower hole-in-wall unexploded)
  2103. 000004 Return Value Loop 0000 (04)
  2104. 000203 Resume If Return Value Loop Met 0002 (03)
  2105. 00012D Go To Beginning, Then Return Value Loop 0001 (2D)
  2106. 000204 Resume If Return Value Loop Met 0002 (04)
  2107. 00A100000400 Set Objective Bits (If False: Objective #3) (00000400)
  2108. 00CBF23248 Display Text Preset Lower (Player 1 and Player 2) - Remote Mine has been wasted.*
  2109. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2110. 000207 Resume If Return Value Loop Met 0002 (07)
  2111. 00A100000400 Set Objective Bits (If False: Objective #3) (00000400)
  2112. 00CBF23210 Display Text Preset Lower (Player 1 and Player 2) - Mine placed incorrectly.*
  2113. 00020A Resume If Return Value Loop Met 0002 (0A)
  2114. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2115. 0004 Terminator
  2116.  
  2117.  
  2118.  
  2119. 1010:
  2120. 0003 Sleep For One Frame
  2121. 006C10 Open 16-Object Door (Chicago Unopened fire door)
  2122. 006C11 Open 16-Object Door (Chicago Unopened fire door)
  2123. 0003 Sleep For One Frame
  2124. 000210 Resume If Return Value Loop Met 0002 (10)
  2125. 0003 Sleep For One Frame
  2126. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  2127. 0063F20E03 If Tagged 16-Object Activated, Return Value Loop (Player 1 and Player 2) (G5 Building Laser switch)
  2128. 00A3100000000104 Compare Objective Bits, Return Value Loop are True (If False: Objective #5) (10000000)
  2129. 000204 Resume If Return Value Loop Met 0002 (04)
  2130. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2131. 000203 Resume If Return Value Loop Met 0002 (03)
  2132. 006D10 Close 16-Object Door (Chicago Unopened fire door)
  2133. 006D11 Close 16-Object Door (Chicago Unopened fire door)
  2134. 00701002 Set Lock 16-Object Door (Chicago Unopened fire door)
  2135. 00701102 Set Lock 16-Object Door (Chicago Unopened fire door)
  2136. 00A3100000000104 Compare Objective Bits, Return Value Loop are True (If False: Objective #5) (10000000)
  2137. 00CBF23221 Display Text Preset Lower (Player 1 and Player 2) - Elevator access sealed.*
  2138. 00A110000000 Set Objective Bits (If False: Objective #5) (10000000)
  2139. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2140. 000204 Resume If Return Value Loop Met 0002 (04)
  2141. 00CBF23230 Display Text Preset Lower (Player 1 and Player 2) - Elevator door cannot be reopened.*
  2142. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2143. 0004 Terminator
  2144.  
  2145.  
  2146.  
  2147. 1011:
  2148. 0003 Sleep For One Frame
  2149. 0034F503 If Guard ID Finished Death Animation, Return Value Loop (Velvet Dark [player 2])
  2150. 000004 Return Value Loop 0000 (04)
  2151. 000203 Resume If Return Value Loop Met 0002 (03)
  2152. 00A100000100 Set Objective Bits (00000100)
  2153. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2154. 000204 Resume If Return Value Loop Met 0002 (04)
  2155. 00B0F5 Sets To Guard ID FC Current Guard (Velvet Dark [player 2])
  2156. 00770254 If Difficulty < Value, Return Value Loop 0077 (0254)
  2157. 000004 Return Value Loop 0000 (04)
  2158. 000254 Resume If Return Value Loop Met 0002 (54)
  2159. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2160. 000204 Resume If Return Value Loop Met 0002 (04)
  2161. 0003 Sleep For One Frame
  2162. 000211 Resume If Return Value Loop Met 0002 (11)
  2163. 0003 Sleep For One Frame
  2164. B54255472043310A = BUG C1
  2165. 0106FC0000 Set F6 Guard ID (Primary Player) to Guard ID (Writable Actor ID Value)
  2166. 0034F52F If Guard ID Finished Death Animation, Return Value Loop (Velvet Dark [player 2])
  2167. 0033F52F If Guard ID Killed, Return Value Loop (Velvet Dark [player 2])
  2168. 017BF52F If Guard Body Disappeared, Return Value Loop (Velvet Dark [player 2])
  2169. 00EBF5180103 If Player ID#'s Ammo Value In Type < Value, Return Value Loop (Velvet Dark [player 2]) (Ammo: 18 - Target Amplifier)
  2170. 000204 Resume If Return Value Loop Met 0002 (04)
  2171. 000111 Go To Beginning, Then Return Value Loop 0001 (11)
  2172. 00022F Resume If Return Value Loop Met 0002 (2F)
  2173. 0003 Sleep For One Frame
  2174. B542554720444F0A = BUG DO
  2175. 0106FC0000 Set F6 Guard ID (Primary Player) to Guard ID (Writable Actor ID Value)
  2176. 0034F530 If Guard ID Finished Death Animation, Return Value Loop (Velvet Dark [player 2])
  2177. 0033F530 If Guard ID Killed, Return Value Loop (Velvet Dark [player 2])
  2178. 017BF530 If Guard Body Disappeared, Return Value Loop (Velvet Dark [player 2])
  2179. 000231 Resume If Return Value Loop Met 0002 (31)
  2180. 0003 Sleep For One Frame
  2181. 0003 Sleep For One Frame
  2182. 0003 Sleep For One Frame
  2183. 0003 Sleep For One Frame
  2184. 0003 Sleep For One Frame
  2185. 000111 Go To Beginning, Then Return Value Loop 0001 (11)
  2186. 000230 Resume If Return Value Loop Met 0002 (30)
  2187. 00012F Go To Beginning, Then Return Value Loop 0001 (2F)
  2188. 000203 Resume If Return Value Loop Met 0002 (03)
  2189. B54255472043320A = BUG C2
  2190. 0003 Sleep For One Frame
  2191. 005E3E04 If Specified Weapon Deposited, Return Value Loop (3E Tracer Bug)
  2192. 000103 Go To Beginning, Then Return Value Loop 0001 (03)
  2193. 000204 Resume If Return Value Loop Met 0002 (04)
  2194. 00620C04 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago dataDyne limo)
  2195. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2196. 000204 Resume If Return Value Loop Met 0002 (04)
  2197. 00B6 Reset Cycle Counter And Enable It
  2198. 000205 Resume If Return Value Loop Met 0002 (05)
  2199. 0003 Sleep For One Frame
  2200. B54255472043330A = BUG C3
  2201. 005F3E0C06 If Specified Weapon Deposited On 16-Object, Return Value Loop (3E Tracer Bug) (Chicago dataDyne limo)
  2202. 00BD00007807 Check if Cycle Counter > Value, Return Value Loop 00BD (00007807)
  2203. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  2204. 000206 Resume If Return Value Loop Met 0002 (06)
  2205. 00A100001000 Set Objective Bits (If True: Objective #2) (00001000)
  2206. 00A200002000 Unset Objective Bits (If False: Objective #2) (00002000)
  2207. 00CBF53217 Display Text Preset Lower (Velvet Dark [player 2]) - Tracer Bug placed correctly.*
  2208. 00B6 Reset Cycle Counter And Enable It
  2209. 000208 Resume If Return Value Loop Met 0002 (08)
  2210. 0003 Sleep For One Frame
  2211. B54255472043340A = BUG C4
  2212. 00BD00012C04 Check if Cycle Counter > Value, Return Value Loop 00BD (00012C04)
  2213. 000108 Go To Beginning, Then Return Value Loop 0001 (08)
  2214. 000204 Resume If Return Value Loop Met 0002 (04)
  2215. 00A100000080 Set Objective Bits (00000080)
  2216. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2217. 000207 Resume If Return Value Loop Met 0002 (07)
  2218. B557524F4E47310A = WRONG1
  2219. 00A3000001000103 Compare Objective Bits, Return Value Loop are True (00000100)
  2220. B557524F4E47320A = WRONG2
  2221. 00A100000100 Set Objective Bits (00000100)
  2222. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2223. 000203 Resume If Return Value Loop Met 0002 (03)
  2224. B557524F4E47330A = WRONG3
  2225. 00A100002000 Set Objective Bits (If False: Objective #2) (00002000)
  2226. 00CBF53218 Display Text Preset Lower (Velvet Dark [player 2]) - Tracer Bug placed incorrectly.*
  2227. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2228. 0004 Terminator
  2229.  
  2230.  
  2231.  
  2232. 1012:
  2233. 000202 Resume If Return Value Loop Met 0002 (02)
  2234. 0003 Sleep For One Frame
  2235. 00A3008000000003 Compare Objective Bits, Return Value Loop are False (00800000)
  2236. 00541F001400D404 If Guard ID Within Units of Preset, Return Value Loop (G5 Sentry Bot (Don't use as player))
  2237. 000203 Resume If Return Value Loop Met 0002 (03)
  2238. 00A200000040 Unset Objective Bits (00000040)
  2239. 000003 Return Value Loop 0000 (03)
  2240. 000204 Resume If Return Value Loop Met 0002 (04)
  2241. 00A100000040 Set Objective Bits (00000040)
  2242. 000203 Resume If Return Value Loop Met 0002 (03)
  2243. 00551F00B400D904 If Guard ID not Within Units of Preset, Return Value Loop (G5 Sentry Bot (Don't use as player))
  2244. 00A201000000 Unset Objective Bits (01000000)
  2245. 000003 Return Value Loop 0000 (03)
  2246. 000204 Resume If Return Value Loop Met 0002 (04)
  2247. 00A101000000 Set Objective Bits (01000000)
  2248. 000203 Resume If Return Value Loop Met 0002 (03)
  2249. 000102 Go To Beginning, Then Return Value Loop 0001 (02)
  2250. 0004 Terminator
  2251.  
  2252.  
  2253.  
  2254. 1014:
  2255. 000202 Resume If Return Value Loop Met 0002 (02)
  2256. 0003 Sleep For One Frame
  2257. 00A3000000200104 Compare Objective Bits, Return Value Loop are True (00000020)
  2258. 000102 Go To Beginning, Then Return Value Loop 0001 (02)
  2259. 000204 Resume If Return Value Loop Met 0002 (04)
  2260. 00B6 Reset Cycle Counter And Enable It
  2261. 000209 Resume If Return Value Loop Met 0002 (09)
  2262. 0003 Sleep For One Frame
  2263. 00BD0000E604 Check if Cycle Counter > Value, Return Value Loop 00BD (0000E604)
  2264. 000109 Go To Beginning, Then Return Value Loop 0001 (09)
  2265. 000204 Resume If Return Value Loop Met 0002 (04)
  2266. 006B120029 Move 16-Object to Pad (Pad: 0029) (Remote Mine)
  2267. 006612 Explode 16-Object (Remote Mine)
  2268. 00A140000000 Set Objective Bits (If True: Objective #4) (40000000)
  2269. 00CBF83236 Display Text Preset Lower (Joanna [player 1]) - Diversion has been created.*
  2270. 00660A Explode 16-Object (Chicago Hovertaxi)
  2271. 00B6 Reset Cycle Counter And Enable It
  2272. 00020A Resume If Return Value Loop Met 0002 (0A)
  2273. 0003 Sleep For One Frame
  2274. 00BD0000B404 Check if Cycle Counter > Value, Return Value Loop 00BD (0000B404)
  2275. 00010A Go To Beginning, Then Return Value Loop 0001 (0A)
  2276. 000204 Resume If Return Value Loop Met 0002 (04)
  2277. 006B13001C Move 16-Object to Pad (Pad: 001C) (Remote Mine)
  2278. 006613 Explode 16-Object (Remote Mine)
  2279. 00A100000010 Set Objective Bits (00000010)
  2280. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2281. 0004 Terminator
  2282.  
  2283.  
  2284.  
  2285. 1415:
  2286. 00022B Resume If Return Value Loop Met 0002 (2B)
  2287. 00A302000000012C Compare Objective Bits, Return Value Loop are True (02000000)
  2288. 0003 Sleep For One Frame
  2289. 00012B Go To Beginning, Then Return Value Loop 0001 (2B)
  2290. 00022C Resume If Return Value Loop Met 0002 (2C)
  2291. 00A202000000 Unset Objective Bits (02000000)
  2292. 000210 Resume If Return Value Loop Met 0002 (10)
  2293. 0003 Sleep For One Frame
  2294. B54355545343454E4520535441525445440A = CUTSCENE STARTED
  2295. 000203 Resume If Return Value Loop Met 0002 (03)
  2296. 00B6 Reset Cycle Counter And Enable It
  2297. B54355545343454E4520535441525445440A = CUTSCENE STARTED
  2298. 000255 Resume If Return Value Loop Met 0002 (55)
  2299. 0003 Sleep For One Frame
  2300. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2301. 00BD00001E04 Check if Cycle Counter > Value, Return Value Loop 00BD (00001E04)
  2302. 000155 Go To Beginning, Then Return Value Loop 0001 (55)
  2303. 000204 Resume If Return Value Loop Met 0002 (04)
  2304. 00CDF8324474080705 Display Text Preset and Play Sound (Joanna [player 1]) - We suspect the G5 Corporation is just a *front for dataDyne and whoever else is *involved in this plot. I know Cassandra *de Vries is going to be here, but I need *to know who else is attending and what *they discuss. By the time you get out, *the help I requested should have arrived.* - We suspect the G5 Corporation is just a *front for dataDyne and whoever else is *involved in this plot. I know Cassandra *de Vries is going to be here but I need *to know who else is attending and what *they discuss. By the time you get out *the help I requested should have arrived. // Ap7_01_caM
  2305. 000256 Resume If Return Value Loop Met 0002 (56)
  2306. 0003 Sleep For One Frame
  2307. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2308. 00BD00042404 Check if Cycle Counter > Value, Return Value Loop 00BD (00042404)
  2309. 000156 Go To Beginning, Then Return Value Loop 0001 (56)
  2310. 000204 Resume If Return Value Loop Met 0002 (04)
  2311. 00CDF8324574090709 Display Text Preset and Play Sound (Joanna [player 1]) - Just who is this help you keep *referring to?* - Just who is this help you keep *referring to? // Ap7_02_joM
  2312. 000257 Resume If Return Value Loop Met 0002 (57)
  2313. 0003 Sleep For One Frame
  2314. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2315. 00BD0004EC04 Check if Cycle Counter > Value, Return Value Loop 00BD (0004EC04)
  2316. 000157 Go To Beginning, Then Return Value Loop 0001 (57)
  2317. 000204 Resume If Return Value Loop Met 0002 (04)
  2318. 00CDF83246740A0705 Display Text Preset and Play Sound (Joanna [player 1]) - Not now, Joanna. Time for radio silence. *Good luck!* - Not now Joanna. Time for radio silence. *Good luck! // Ap7_03_caM
  2319. 000258 Resume If Return Value Loop Met 0002 (58)
  2320. 0003 Sleep For One Frame
  2321. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2322. 00BD0005D004 Check if Cycle Counter > Value, Return Value Loop 00BD (0005D004)
  2323. 000158 Go To Beginning, Then Return Value Loop 0001 (58)
  2324. 000204 Resume If Return Value Loop Met 0002 (04)
  2325. 00CDF83247740B0709 Display Text Preset and Play Sound (Joanna [player 1]) - Thanks a lot.* - Thanks a lot. // Ap7_04_joM
  2326. 00022D Resume If Return Value Loop Met 0002 (2D)
  2327. 0003 Sleep For One Frame
  2328. 000203 Resume If Return Value Loop Met 0002 (03)
  2329. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2330. 00BD0005BC04 Check if Cycle Counter > Value, Return Value Loop 00BD (0005BC04)
  2331. 00012D Go To Beginning, Then Return Value Loop 0001 (2D)
  2332. 000204 Resume If Return Value Loop Met 0002 (04)
  2333. 00CE016103 Play Sound - Foot print on stone?
  2334. 00022F Resume If Return Value Loop Met 0002 (2F)
  2335. 0003 Sleep For One Frame
  2336. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2337. 00BD0005EF04 Check if Cycle Counter > Value, Return Value Loop 00BD (0005EF04)
  2338. 00012F Go To Beginning, Then Return Value Loop 0001 (2F)
  2339. 000204 Resume If Return Value Loop Met 0002 (04)
  2340. 00CE016203 Play Sound - Footstep
  2341. 000230 Resume If Return Value Loop Met 0002 (30)
  2342. 0003 Sleep For One Frame
  2343. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2344. 00BD00061E04 Check if Cycle Counter > Value, Return Value Loop 00BD (00061E04)
  2345. 000130 Go To Beginning, Then Return Value Loop 0001 (30)
  2346. 000204 Resume If Return Value Loop Met 0002 (04)
  2347. 00CE046D04 Play Sound - [empty 0-sized]
  2348. 000231 Resume If Return Value Loop Met 0002 (31)
  2349. 0003 Sleep For One Frame
  2350. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2351. 00BD00067104 Check if Cycle Counter > Value, Return Value Loop 00BD (00067104)
  2352. 000131 Go To Beginning, Then Return Value Loop 0001 (31)
  2353. 000204 Resume If Return Value Loop Met 0002 (04)
  2354. 00CE046D03 Play Sound - [empty 0-sized]
  2355. 000233 Resume If Return Value Loop Met 0002 (33)
  2356. 000234 Resume If Return Value Loop Met 0002 (34)
  2357. 0003 Sleep For One Frame
  2358. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2359. 00BD0006DE04 Check if Cycle Counter > Value, Return Value Loop 00BD (0006DE04)
  2360. 000134 Go To Beginning, Then Return Value Loop 0001 (34)
  2361. 000204 Resume If Return Value Loop Met 0002 (04)
  2362. 00CE016404 Play Sound - Footstep
  2363. 000235 Resume If Return Value Loop Met 0002 (35)
  2364. 0003 Sleep For One Frame
  2365. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2366. 00BD0006F804 Check if Cycle Counter > Value, Return Value Loop 00BD (0006F804)
  2367. 000135 Go To Beginning, Then Return Value Loop 0001 (35)
  2368. 000204 Resume If Return Value Loop Met 0002 (04)
  2369. 00CE016303 Play Sound - Footstep
  2370. 000236 Resume If Return Value Loop Met 0002 (36)
  2371. 0003 Sleep For One Frame
  2372. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2373. 00BD00071604 Check if Cycle Counter > Value, Return Value Loop 00BD (00071604)
  2374. 000136 Go To Beginning, Then Return Value Loop 0001 (36)
  2375. 000204 Resume If Return Value Loop Met 0002 (04)
  2376. 00CE016203 Play Sound - Footstep
  2377. 000237 Resume If Return Value Loop Met 0002 (37)
  2378. 0003 Sleep For One Frame
  2379. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2380. 00BD00073F04 Check if Cycle Counter > Value, Return Value Loop 00BD (00073F04)
  2381. 000137 Go To Beginning, Then Return Value Loop 0001 (37)
  2382. 000204 Resume If Return Value Loop Met 0002 (04)
  2383. 00CE016103 Play Sound - Foot print on stone?
  2384. 000238 Resume If Return Value Loop Met 0002 (38)
  2385. 0003 Sleep For One Frame
  2386. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2387. 00BD00076904 Check if Cycle Counter > Value, Return Value Loop 00BD (00076904)
  2388. 000138 Go To Beginning, Then Return Value Loop 0001 (38)
  2389. 000204 Resume If Return Value Loop Met 0002 (04)
  2390. 00CE047003 Play Sound - [empty 0-sized]
  2391. 00023A Resume If Return Value Loop Met 0002 (3A)
  2392. 0003 Sleep For One Frame
  2393. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2394. 00BD0007E104 Check if Cycle Counter > Value, Return Value Loop 00BD (0007E104)
  2395. 00013A Go To Beginning, Then Return Value Loop 0001 (3A)
  2396. 000204 Resume If Return Value Loop Met 0002 (04)
  2397. 00CE016503 Play Sound - Footstep
  2398. 00023B Resume If Return Value Loop Met 0002 (3B)
  2399. 0003 Sleep For One Frame
  2400. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2401. 00BD0007EC04 Check if Cycle Counter > Value, Return Value Loop 00BD (0007EC04)
  2402. 00013B Go To Beginning, Then Return Value Loop 0001 (3B)
  2403. 000204 Resume If Return Value Loop Met 0002 (04)
  2404. 00CE046E04 Play Sound - Grunt
  2405. 00023C Resume If Return Value Loop Met 0002 (3C)
  2406. 0003 Sleep For One Frame
  2407. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2408. 00BD00080204 Check if Cycle Counter > Value, Return Value Loop 00BD (00080204)
  2409. 00013C Go To Beginning, Then Return Value Loop 0001 (3C)
  2410. 000204 Resume If Return Value Loop Met 0002 (04)
  2411. 00CE047203 Play Sound - Mechanical sliding
  2412. 00023D Resume If Return Value Loop Met 0002 (3D)
  2413. 0003 Sleep For One Frame
  2414. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2415. 00BD00087F04 Check if Cycle Counter > Value, Return Value Loop 00BD (00087F04)
  2416. 00013D Go To Beginning, Then Return Value Loop 0001 (3D)
  2417. 000204 Resume If Return Value Loop Met 0002 (04)
  2418. 00CE047304 Play Sound - Mechanical sliding
  2419. 00023E Resume If Return Value Loop Met 0002 (3E)
  2420. 0003 Sleep For One Frame
  2421. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2422. 00BD0008BF04 Check if Cycle Counter > Value, Return Value Loop 00BD (0008BF04)
  2423. 00013E Go To Beginning, Then Return Value Loop 0001 (3E)
  2424. 000204 Resume If Return Value Loop Met 0002 (04)
  2425. 00CE047403 Play Sound - Mechanical sliding
  2426. 00023F Resume If Return Value Loop Met 0002 (3F)
  2427. 0003 Sleep For One Frame
  2428. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2429. 00BD0008DD04 Check if Cycle Counter > Value, Return Value Loop 00BD (0008DD04)
  2430. 00013F Go To Beginning, Then Return Value Loop 0001 (3F)
  2431. 000204 Resume If Return Value Loop Met 0002 (04)
  2432. 00CE047504 Play Sound - Mechanical sliding
  2433. 000241 Resume If Return Value Loop Met 0002 (41)
  2434. 0003 Sleep For One Frame
  2435. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2436. 00BD0008E604 Check if Cycle Counter > Value, Return Value Loop 00BD (0008E604)
  2437. 000141 Go To Beginning, Then Return Value Loop 0001 (41)
  2438. 000204 Resume If Return Value Loop Met 0002 (04)
  2439. 00CE016603 Play Sound - Footstep
  2440. 000240 Resume If Return Value Loop Met 0002 (40)
  2441. 0003 Sleep For One Frame
  2442. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2443. 00BD0008E804 Check if Cycle Counter > Value, Return Value Loop 00BD (0008E804)
  2444. 000140 Go To Beginning, Then Return Value Loop 0001 (40)
  2445. 000204 Resume If Return Value Loop Met 0002 (04)
  2446. 00CE046F04 Play Sound - Grunt
  2447. 000242 Resume If Return Value Loop Met 0002 (42)
  2448. 0003 Sleep For One Frame
  2449. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2450. 00BD00091304 Check if Cycle Counter > Value, Return Value Loop 00BD (00091304)
  2451. 000142 Go To Beginning, Then Return Value Loop 0001 (42)
  2452. 000204 Resume If Return Value Loop Met 0002 (04)
  2453. 00CE016503 Play Sound - Footstep
  2454. 000243 Resume If Return Value Loop Met 0002 (43)
  2455. 0003 Sleep For One Frame
  2456. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2457. 00BD00092304 Check if Cycle Counter > Value, Return Value Loop 00BD (00092304)
  2458. 000143 Go To Beginning, Then Return Value Loop 0001 (43)
  2459. 000204 Resume If Return Value Loop Met 0002 (04)
  2460. 00CE016603 Play Sound - Footstep
  2461. 000244 Resume If Return Value Loop Met 0002 (44)
  2462. 0003 Sleep For One Frame
  2463. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2464. 00BD00093404 Check if Cycle Counter > Value, Return Value Loop 00BD (00093404)
  2465. 000144 Go To Beginning, Then Return Value Loop 0001 (44)
  2466. 000204 Resume If Return Value Loop Met 0002 (04)
  2467. 00CE016703 Play Sound - Footstep
  2468. 000245 Resume If Return Value Loop Met 0002 (45)
  2469. 0003 Sleep For One Frame
  2470. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2471. 00BD00094504 Check if Cycle Counter > Value, Return Value Loop 00BD (00094504)
  2472. 000145 Go To Beginning, Then Return Value Loop 0001 (45)
  2473. 000204 Resume If Return Value Loop Met 0002 (04)
  2474. 00CE016803 Play Sound - Footstep
  2475. 000246 Resume If Return Value Loop Met 0002 (46)
  2476. 0003 Sleep For One Frame
  2477. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2478. 00BD00095204 Check if Cycle Counter > Value, Return Value Loop 00BD (00095204)
  2479. 000146 Go To Beginning, Then Return Value Loop 0001 (46)
  2480. 000204 Resume If Return Value Loop Met 0002 (04)
  2481. 00CE016503 Play Sound - Footstep
  2482. 000247 Resume If Return Value Loop Met 0002 (47)
  2483. 0003 Sleep For One Frame
  2484. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2485. 00BD00095404 Check if Cycle Counter > Value, Return Value Loop 00BD (00095404)
  2486. 000147 Go To Beginning, Then Return Value Loop 0001 (47)
  2487. 000204 Resume If Return Value Loop Met 0002 (04)
  2488. 000248 Resume If Return Value Loop Met 0002 (48)
  2489. 0003 Sleep For One Frame
  2490. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2491. 00BD00096204 Check if Cycle Counter > Value, Return Value Loop 00BD (00096204)
  2492. 000148 Go To Beginning, Then Return Value Loop 0001 (48)
  2493. 000204 Resume If Return Value Loop Met 0002 (04)
  2494. 00D304 Turn off Sound in Slot 00D3 (04)
  2495. 00CE016603 Play Sound - Footstep
  2496. 00024A Resume If Return Value Loop Met 0002 (4A)
  2497. 0003 Sleep For One Frame
  2498. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2499. 00BD00096404 Check if Cycle Counter > Value, Return Value Loop 00BD (00096404)
  2500. 00014A Go To Beginning, Then Return Value Loop 0001 (4A)
  2501. 000204 Resume If Return Value Loop Met 0002 (04)
  2502. 00CE008004 Play Sound - Shot
  2503. 000249 Resume If Return Value Loop Met 0002 (49)
  2504. 0003 Sleep For One Frame
  2505. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2506. 00BD00097804 Check if Cycle Counter > Value, Return Value Loop 00BD (00097804)
  2507. 000149 Go To Beginning, Then Return Value Loop 0001 (49)
  2508. 000204 Resume If Return Value Loop Met 0002 (04)
  2509. 00CE016703 Play Sound - Footstep
  2510. 00024C Resume If Return Value Loop Met 0002 (4C)
  2511. 0003 Sleep For One Frame
  2512. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2513. 00BD00098204 Check if Cycle Counter > Value, Return Value Loop 00BD (00098204)
  2514. 00014C Go To Beginning, Then Return Value Loop 0001 (4C)
  2515. 000204 Resume If Return Value Loop Met 0002 (04)
  2516. 00CE047603 Play Sound - Mr. Blonde breathing
  2517. 00024B Resume If Return Value Loop Met 0002 (4B)
  2518. 0003 Sleep For One Frame
  2519. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2520. 00BD000A1804 Check if Cycle Counter > Value, Return Value Loop 00BD (000A1804)
  2521. 00014B Go To Beginning, Then Return Value Loop 0001 (4B)
  2522. 000204 Resume If Return Value Loop Met 0002 (04)
  2523. 00CE016105 Play Sound - Foot print on stone?
  2524. 00024D Resume If Return Value Loop Met 0002 (4D)
  2525. 0003 Sleep For One Frame
  2526. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2527. 00BD000A3E04 Check if Cycle Counter > Value, Return Value Loop 00BD (000A3E04)
  2528. 00014D Go To Beginning, Then Return Value Loop 0001 (4D)
  2529. 000204 Resume If Return Value Loop Met 0002 (04)
  2530. 00D305 Turn off Sound in Slot 00D3 (05)
  2531. 00CE016204 Play Sound - Footstep
  2532. 00024E Resume If Return Value Loop Met 0002 (4E)
  2533. 0003 Sleep For One Frame
  2534. 00A320000000012E Compare Objective Bits, Return Value Loop are True (20000000)
  2535. 00BD000A6404 Check if Cycle Counter > Value, Return Value Loop 00BD (000A6404)
  2536. 00014E Go To Beginning, Then Return Value Loop 0001 (4E)
  2537. 000204 Resume If Return Value Loop Met 0002 (04)
  2538. 00D305 Turn off Sound in Slot 00D3 (05)
  2539. 00CE016306 Play Sound - Footstep
  2540. 00022E Resume If Return Value Loop Met 0002 (2E)
  2541. 00D305 Turn off Sound in Slot 00D3 (05)
  2542. 00D307 Turn off Sound in Slot 00D3 (07)
  2543. 00012B Go To Beginning, Then Return Value Loop 0001 (2B)
  2544. 0004 Terminator
  2545.  
  2546.  
  2547.  
  2548. 1416:
  2549. 0003 Sleep For One Frame
  2550. 0003 Sleep For One Frame
  2551. 0003 Sleep For One Frame
  2552. 018B02 Trigger Rain Effect 018B (02)
  2553. 000205 Resume If Return Value Loop Met 0002 (05)
  2554. 00B6 Reset Cycle Counter And Enable It
  2555. 000206 Resume If Return Value Loop Met 0002 (06)
  2556. 0003 Sleep For One Frame
  2557. 00BD00003C03 Check if Cycle Counter > Value, Return Value Loop 00BD (00003C03)
  2558. 000106 Go To Beginning, Then Return Value Loop 0001 (06)
  2559. 000203 Resume If Return Value Loop Met 0002 (03)
  2560. 0036 Seed Random Byte
  2561. 00370C03 If Random Byte < Value, Return Value Loop 0037 (0C03)
  2562. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  2563. 000203 Resume If Return Value Loop Met 0002 (03)
  2564. 0036 Seed Random Byte
  2565. 0038C00A If Random Byte > Value, Return Value Loop 0038 (C00A)
  2566. 00388009 If Random Byte > Value, Return Value Loop 0038 (8009)
  2567. 00384008 If Random Byte > Value, Return Value Loop 0038 (4008)
  2568. 018B02 Trigger Rain Effect 018B (02)
  2569. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  2570. 000208 Resume If Return Value Loop Met 0002 (08)
  2571. 018B01 Trigger Rain Effect 018B (01)
  2572. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  2573. 000209 Resume If Return Value Loop Met 0002 (09)
  2574. 018B02 Trigger Rain Effect 018B (02)
  2575. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  2576. 00020A Resume If Return Value Loop Met 0002 (0A)
  2577. 018B03 Trigger Rain Effect 018B (03)
  2578. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  2579. 0004 Terminator
  2580.  
  2581.  
  2582.  
  2583. 1017:
  2584. 00A71100000400 Set Tags for Guard ID# (G5 Guard) Hide Guard id (Show if Unset)
  2585. 00A71200000400 Set Tags for Guard ID# (G5 Guard) Hide Guard id (Show if Unset)
  2586. 000205 Resume If Return Value Loop Met 0002 (05)
  2587. 0003 Sleep For One Frame
  2588. 00730003 If Objective Succeeded, Return Value Loop 0073 (0003)
  2589. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  2590. 000203 Resume If Return Value Loop Met 0002 (03)
  2591. 00A81100000400 Unset Tags for Guard ID# (G5 Guard) Hide Guard id (Show if Unset)
  2592. 00A81200000400 Unset Tags for Guard ID# (G5 Guard) Hide Guard id (Show if Unset)
  2593. 011B1100400000 Set guard flag Tags 3 (G5 Guard)
  2594. 011B1200400000 Set guard flag Tags 3 (G5 Guard)
  2595. 0005110007 Jump To Function (G5 Guard) (JAL TO: 0007) Run to Jo and Attack
  2596. 0005120007 Jump To Function (G5 Guard) (JAL TO: 0007) Run to Jo and Attack
  2597. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2598. 0004 Terminator
  2599.  
  2600.  
  2601.  
  2602. 1018:
  2603. 000210 Resume If Return Value Loop Met 0002 (10)
  2604. 0003 Sleep For One Frame
  2605. 006E1A0503 Check 16-Object Door State, Return Value Loop if Match (Chicago Metal shutter)
  2606. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2607. 000203 Resume If Return Value Loop Met 0002 (03)
  2608. 006C1A Open 16-Object Door (Chicago Metal shutter)
  2609. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2610. 0004 Terminator
  2611.  
  2612.  
  2613.  
  2614. 1019:
  2615. 01A00705 Set Special Death Animation (G5 Guard)
  2616. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2617. 0004 Terminator
  2618.  
  2619.  
  2620.  
  2621. 101A:
  2622. 000210 Resume If Return Value Loop Met 0002 (10)
  2623. 0003 Sleep For One Frame
  2624. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  2625. 005BF200001403 If Stepped In Room/Preset, Return Value Loop (Player 1 and Player 2) (Room 0014)
  2626. 005BF200002603 If Stepped In Room/Preset, Return Value Loop (Player 1 and Player 2) (Room 0026)
  2627. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2628. 000203 Resume If Return Value Loop Met 0002 (03)
  2629. 00CDF2323C81790609 Display Text Preset and Play Sound (Player 1 and Player 2) - The only place we could secure the *equipment was a storm drain.* - Female Bodyguards, withdraw
  2630. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2631. 0004 Terminator
  2632.  
  2633.  
  2634.  
  2635. 101B:
  2636. 0077010A If Difficulty < Value, Return Value Loop 0077 (010A)
  2637. 00B6 Reset Cycle Counter And Enable It
  2638. 000210 Resume If Return Value Loop Met 0002 (10)
  2639. 0003 Sleep For One Frame
  2640. 00730005 If Objective Succeeded, Return Value Loop 0073 (0005)
  2641. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2642. 000205 Resume If Return Value Loop Met 0002 (05)
  2643. 0003 Sleep For One Frame
  2644. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  2645. 005BF200003A03 If Stepped In Room/Preset, Return Value Loop (Player 1 and Player 2) (Room 003A)
  2646. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  2647. 000203 Resume If Return Value Loop Met 0002 (03)
  2648. 00CDF2323D73B10609 Display Text Preset and Play Sound (Player 1 and Player 2) - Either of those blocked-up doors will *do as an escape route.* - Either of those blocked-up doors will *do as an escape route. // Am3_l1_bM
  2649. 00020A Resume If Return Value Loop Met 0002 (0A)
  2650. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2651. 0004 Terminator
  2652.  
  2653.  
  2654.  
  2655. 101C:
  2656. 000210 Resume If Return Value Loop Met 0002 (10)
  2657. 0003 Sleep For One Frame
  2658. 00730005 If Objective Succeeded, Return Value Loop 0073 (0005)
  2659. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2660. 000205 Resume If Return Value Loop Met 0002 (05)
  2661. 0003 Sleep For One Frame
  2662. 00620A03 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago Hovertaxi)
  2663. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  2664. 000203 Resume If Return Value Loop Met 0002 (03)
  2665. 00A300000800010A Compare Objective Bits, Return Value Loop are True (00000800)
  2666. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  2667. 005BF200004A03 If Stepped In Room/Preset, Return Value Loop (Player 1 and Player 2) (Room 004A)
  2668. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  2669. 000203 Resume If Return Value Loop Met 0002 (03)
  2670. 00CDF2323E817A0609 Display Text Preset and Play Sound (Player 1 and Player 2) - Reprogram that taxi - it's a Mark 2 *and should be compatible.* - [empty 0-sized]
  2671. 00020A Resume If Return Value Loop Met 0002 (0A)
  2672. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2673. 0004 Terminator
  2674.  
  2675.  
  2676.  
  2677. 101D:
  2678. 000210 Resume If Return Value Loop Met 0002 (10)
  2679. 0003 Sleep For One Frame
  2680. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  2681. 005BF200005903 If Stepped In Room/Preset, Return Value Loop (Player 1 and Player 2) (Room 0059)
  2682. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2683. 000203 Resume If Return Value Loop Met 0002 (03)
  2684. 00CDF2323F817B0609 Display Text Preset and Play Sound (Player 1 and Player 2) - That car park lift is your only *point of ingress.* - Female Bodyguards, spread out
  2685. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2686. 0004 Terminator
  2687.  
  2688.  
  2689.  
  2690. 101E:
  2691. 000210 Resume If Return Value Loop Met 0002 (10)
  2692. 0003 Sleep For One Frame
  2693. 00A3100000000106 Compare Objective Bits, Return Value Loop are True (If False: Objective #5) (10000000)
  2694. 00330D03 If Guard ID Killed, Return Value Loop (G5 Guard)
  2695. 00340D03 If Guard ID Finished Death Animation, Return Value Loop (G5 Guard)
  2696. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2697. 000203 Resume If Return Value Loop Met 0002 (03)
  2698. 00330E03 If Guard ID Killed, Return Value Loop (G5 Guard)
  2699. 00340E03 If Guard ID Finished Death Animation, Return Value Loop (G5 Guard)
  2700. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2701. 000203 Resume If Return Value Loop Met 0002 (03)
  2702. 00330F03 If Guard ID Killed, Return Value Loop (G5 Guard)
  2703. 00340F03 If Guard ID Finished Death Animation, Return Value Loop (G5 Guard)
  2704. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2705. 000203 Resume If Return Value Loop Met 0002 (03)
  2706. 00331003 If Guard ID Killed, Return Value Loop (G5 Guard)
  2707. 00341003 If Guard ID Finished Death Animation, Return Value Loop (G5 Guard)
  2708. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2709. 000203 Resume If Return Value Loop Met 0002 (03)
  2710. 00A3400000000103 Compare Objective Bits, Return Value Loop are True (If True: Objective #4) (40000000)
  2711. 00CBF83242 Display Text Preset Lower (Joanna [player 1]) - An alternative diversion has been created!*
  2712. 00A200008000 Unset Objective Bits (If False: Objective #4) (00008000)
  2713. 00A200010000 Unset Objective Bits (If False: Objective #4) (00010000)
  2714. 00A140000000 Set Objective Bits (If True: Objective #4) (40000000)
  2715. 000203 Resume If Return Value Loop Met 0002 (03)
  2716. 000206 Resume If Return Value Loop Met 0002 (06)
  2717. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2718. 0004 Terminator
  2719.  
  2720.  
  2721.  
  2722. 101F:
  2723. 01D9021F80B9FFFF000002 Play Sound from 16-Object (Briefcase)
  2724. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2725. 0004 Terminator
  2726.  
  2727.  
  2728.  
  2729. 1020:
  2730. 000210 Resume If Return Value Loop Met 0002 (10)
  2731. 0003 Sleep For One Frame
  2732. 00A3100000000103 Compare Objective Bits, Return Value Loop are True (If False: Objective #5) (10000000)
  2733. 006E100504 Check 16-Object Door State, Return Value Loop if Match (Chicago Unopened fire door)
  2734. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2735. 000204 Resume If Return Value Loop Met 0002 (04)
  2736. 006C10 Open 16-Object Door (Chicago Unopened fire door)
  2737. 006C11 Open 16-Object Door (Chicago Unopened fire door)
  2738. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2739. 000203 Resume If Return Value Loop Met 0002 (03)
  2740. 006D10 Close 16-Object Door (Chicago Unopened fire door)
  2741. 006D11 Close 16-Object Door (Chicago Unopened fire door)
  2742. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2743. 0004 Terminator
  2744.  
  2745.  
  2746.  
  2747. 1021:
  2748. 000210 Resume If Return Value Loop Met 0002 (10)
  2749. 0003 Sleep For One Frame
  2750. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  2751. 016AF201F40003 Compare Guard POV Height Elevation, Return Value Loop If So (Player 1 and Player 2) < 500 (01F4)
  2752. 000004 Return Value Loop 0000 (04)
  2753. 000203 Resume If Return Value Loop Met 0002 (03)
  2754. 005507001900B504 If Guard ID not Within Units of Preset, Return Value Loop (G5 Guard)
  2755. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2756. 000204 Resume If Return Value Loop Met 0002 (04)
  2757. 01A00700 Set Special Death Animation (G5 Guard)
  2758. 00A80700004000 Unset Tags for Guard ID# (G5 Guard)
  2759. 009F070000100001 Unset Guard ID#'s Object Flags (G5 Guard)
  2760. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2761. 0004 Terminator
  2762.  
  2763.  
  2764.  
  2765. 1022:
  2766. 000210 Resume If Return Value Loop Met 0002 (10)
  2767. 0003 Sleep For One Frame
  2768. 00A300040000012F Compare Objective Bits, Return Value Loop are True (00040000)
  2769. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2770. 00022F Resume If Return Value Loop Met 0002 (2F)
  2771. 0003 Sleep For One Frame
  2772. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  2773. 005BF200000203 If Stepped In Room/Preset, Return Value Loop (Player 1 and Player 2) (Room 0002)
  2774. 005BF200001003 If Stepped In Room/Preset, Return Value Loop (Player 1 and Player 2) (Room 0010)
  2775. 005BF200001203 If Stepped In Room/Preset, Return Value Loop (Player 1 and Player 2) (Room 0012)
  2776. 000004 Return Value Loop 0000 (04)
  2777. 000203 Resume If Return Value Loop Met 0002 (03)
  2778. 00012F Go To Beginning, Then Return Value Loop 0001 (2F)
  2779. 000204 Resume If Return Value Loop Met 0002 (04)
  2780. 00B6 Reset Cycle Counter And Enable It
  2781. 00022D Resume If Return Value Loop Met 0002 (2D)
  2782. 0003 Sleep For One Frame
  2783. 00620C03 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago dataDyne limo)
  2784. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2785. 000203 Resume If Return Value Loop Met 0002 (03)
  2786. 00BD00025403 Check if Cycle Counter > Value, Return Value Loop 00BD (00025403)
  2787. 00012D Go To Beginning, Then Return Value Loop 0001 (2D)
  2788. 000203 Resume If Return Value Loop Met 0002 (03)
  2789. 01170C Hide 16-Object (Chicago dataDyne limo)
  2790. 00AA0C00020000 Set Tags for 16-Object (Chicago dataDyne limo) Immune to Explosives
  2791. 00AD0C00080000 Set Tags 2 for 16-Object (Chicago dataDyne limo)
  2792. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2793. 0004 Terminator
  2794.  
  2795.  
  2796.  
  2797. 1423:
  2798. 0003 Sleep For One Frame
  2799. 01D600000000 Affect Room Lighting (Sets 00 to 8006AE18)
  2800. 01D600000100 Affect Room Lighting (Sets 00 to 8006AE1C)
  2801. 01D600000200 Affect Room Lighting (Sets 00 to 8006AE20)
  2802. 01D600000300 Affect Room Lighting (Sets 00 to 8006AE24)
  2803. 01D600000400 Affect Room Lighting (Sets 00 to 8006AE28)
  2804. 01D600020501 Affect Room Lighting (Enables Ambient Background Track in Room 0002)
  2805. 01D600030501 Affect Room Lighting (Enables Ambient Background Track in Room 0003)
  2806. 01D6000F0501 Affect Room Lighting (Enables Ambient Background Track in Room 000F)
  2807. 01D600100501 Affect Room Lighting (Enables Ambient Background Track in Room 0010)
  2808. 01D600110501 Affect Room Lighting (Enables Ambient Background Track in Room 0011)
  2809. 01D600120501 Affect Room Lighting (Enables Ambient Background Track in Room 0012)
  2810. 01D600130501 Affect Room Lighting (Enables Ambient Background Track in Room 0013)
  2811. 01D600140501 Affect Room Lighting (Enables Ambient Background Track in Room 0014)
  2812. 01D600150501 Affect Room Lighting (Enables Ambient Background Track in Room 0015)
  2813. 01D600170501 Affect Room Lighting (Enables Ambient Background Track in Room 0017)
  2814. 01D600180501 Affect Room Lighting (Enables Ambient Background Track in Room 0018)
  2815. 01D600190501 Affect Room Lighting (Enables Ambient Background Track in Room 0019)
  2816. 01D6001A0501 Affect Room Lighting (Enables Ambient Background Track in Room 001A)
  2817. 01D6001C0501 Affect Room Lighting (Enables Ambient Background Track in Room 001C)
  2818. 01D6001D0501 Affect Room Lighting (Enables Ambient Background Track in Room 001D)
  2819. 01D6001F0501 Affect Room Lighting (Enables Ambient Background Track in Room 001F)
  2820. 01D600210501 Affect Room Lighting (Enables Ambient Background Track in Room 0021)
  2821. 01D600220501 Affect Room Lighting (Enables Ambient Background Track in Room 0022)
  2822. 01D600250501 Affect Room Lighting (Enables Ambient Background Track in Room 0025)
  2823. 01D600260501 Affect Room Lighting (Enables Ambient Background Track in Room 0026)
  2824. 01D600270501 Affect Room Lighting (Enables Ambient Background Track in Room 0027)
  2825. 01D600280501 Affect Room Lighting (Enables Ambient Background Track in Room 0028)
  2826. 01D6002C0501 Affect Room Lighting (Enables Ambient Background Track in Room 002C)
  2827. 01D6002D0501 Affect Room Lighting (Enables Ambient Background Track in Room 002D)
  2828. 01D6002E0501 Affect Room Lighting (Enables Ambient Background Track in Room 002E)
  2829. 01D600310501 Affect Room Lighting (Enables Ambient Background Track in Room 0031)
  2830. 01D600320501 Affect Room Lighting (Enables Ambient Background Track in Room 0032)
  2831. 01D600370501 Affect Room Lighting (Enables Ambient Background Track in Room 0037)
  2832. 01D600380501 Affect Room Lighting (Enables Ambient Background Track in Room 0038)
  2833. 01D600390501 Affect Room Lighting (Enables Ambient Background Track in Room 0039)
  2834. 01D6003A0501 Affect Room Lighting (Enables Ambient Background Track in Room 003A)
  2835. 01D6003D0501 Affect Room Lighting (Enables Ambient Background Track in Room 003D)
  2836. 01D6003E0501 Affect Room Lighting (Enables Ambient Background Track in Room 003E)
  2837. 01D6003F0501 Affect Room Lighting (Enables Ambient Background Track in Room 003F)
  2838. 01D600430501 Affect Room Lighting (Enables Ambient Background Track in Room 0043)
  2839. 01D600440501 Affect Room Lighting (Enables Ambient Background Track in Room 0044)
  2840. 01D600450501 Affect Room Lighting (Enables Ambient Background Track in Room 0045)
  2841. 01D6004A0501 Affect Room Lighting (Enables Ambient Background Track in Room 004A)
  2842. 01D6004B0501 Affect Room Lighting (Enables Ambient Background Track in Room 004B)
  2843. 01D6004C0501 Affect Room Lighting (Enables Ambient Background Track in Room 004C)
  2844. 01D6004E0501 Affect Room Lighting (Enables Ambient Background Track in Room 004E)
  2845. 01D600500501 Affect Room Lighting (Enables Ambient Background Track in Room 0050)
  2846. 01D600510501 Affect Room Lighting (Enables Ambient Background Track in Room 0051)
  2847. 01D600520501 Affect Room Lighting (Enables Ambient Background Track in Room 0052)
  2848. 01D600590501 Affect Room Lighting (Enables Ambient Background Track in Room 0059)
  2849. 01D6005A0501 Affect Room Lighting (Enables Ambient Background Track in Room 005A)
  2850. 01D6005B0501 Affect Room Lighting (Enables Ambient Background Track in Room 005B)
  2851. 01D6005C0501 Affect Room Lighting (Enables Ambient Background Track in Room 005C)
  2852. 01D6005D0501 Affect Room Lighting (Enables Ambient Background Track in Room 005D)
  2853. 01D6005F0501 Affect Room Lighting (Enables Ambient Background Track in Room 005F)
  2854. 01D600600501 Affect Room Lighting (Enables Ambient Background Track in Room 0060)
  2855. 01D600610501 Affect Room Lighting (Enables Ambient Background Track in Room 0061)
  2856. 01D600620501 Affect Room Lighting (Enables Ambient Background Track in Room 0062)
  2857. 01D600640501 Affect Room Lighting (Enables Ambient Background Track in Room 0064)
  2858. 01D600660501 Affect Room Lighting (Enables Ambient Background Track in Room 0066)
  2859. 01D600670501 Affect Room Lighting (Enables Ambient Background Track in Room 0067)
  2860. 01D600680501 Affect Room Lighting (Enables Ambient Background Track in Room 0068)
  2861. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2862. 0004 Terminator
  2863.  
  2864.  
  2865.  
  2866. 1024:
  2867. 000210 Resume If Return Value Loop Met 0002 (10)
  2868. 0003 Sleep For One Frame
  2869. 00A3001000000103 Compare Objective Bits, Return Value Loop are True (00100000)
  2870. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2871. 000203 Resume If Return Value Loop Met 0002 (03)
  2872. 00A71A00000010 Set Tags for Guard ID# (CIA Agent) Invincible
  2873. 00A71B00000010 Set Tags for Guard ID# (CIA Agent) Invincible
  2874. 00A71C00000010 Set Tags for Guard ID# (CIA Agent) Invincible
  2875. 00A71D00000010 Set Tags for Guard ID# (CIA Agent) Invincible
  2876. 00022D Resume If Return Value Loop Met 0002 (2D)
  2877. 0003 Sleep For One Frame
  2878. 00A3400000000103 Compare Objective Bits, Return Value Loop are True (If True: Objective #4) (40000000)
  2879. 00012D Go To Beginning, Then Return Value Loop 0001 (2D)
  2880. 000203 Resume If Return Value Loop Met 0002 (03)
  2881. 00B6 Reset Cycle Counter And Enable It
  2882. 00022F Resume If Return Value Loop Met 0002 (2F)
  2883. 0003 Sleep For One Frame
  2884. 00BD00012C03 Check if Cycle Counter > Value, Return Value Loop 00BD (00012C03)
  2885. 00012F Go To Beginning, Then Return Value Loop 0001 (2F)
  2886. 000203 Resume If Return Value Loop Met 0002 (03)
  2887. 00A81A00000010 Unset Tags for Guard ID# (CIA Agent) Invincible
  2888. 00A81B00000010 Unset Tags for Guard ID# (CIA Agent) Invincible
  2889. 00A81C00000010 Unset Tags for Guard ID# (CIA Agent) Invincible
  2890. 00A81D00000010 Unset Tags for Guard ID# (CIA Agent) Invincible
  2891. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2892. 0004 Terminator
  2893.  
  2894.  
  2895.  
  2896. 1025:
  2897. 0003 Sleep For One Frame
  2898. 01182200000800 Set Tags 3 for 16-Object (Falcon 2) R-Tracked Blue
  2899. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2900. 0004 Terminator
  2901.  
  2902.  
  2903.  
  2904. 1026:
  2905. 000210 Resume If Return Value Loop Met 0002 (10)
  2906. 0003 Sleep For One Frame
  2907. 01B3FD Player 2 (Co-op) Can Activate (Guard [whatever called it])
  2908. 0063F20A03 If Tagged 16-Object Activated, Return Value Loop (Player 1 and Player 2) (Chicago Hovertaxi)
  2909. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2910. 000203 Resume If Return Value Loop Met 0002 (03)
  2911. 00A3000008000004 Compare Objective Bits, Return Value Loop are False (00000800)
  2912. 00CBF23211 Display Text Preset Lower (Player 1 and Player 2) - Virus already downloaded into NavComp.*
  2913. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2914. 000204 Resume If Return Value Loop Met 0002 (04)
  2915. 0060F23603 If Specified Weapon Out, Return Value Loop (Player 1 and Player 2) (36 Data Uplink)
  2916. 00CBF23212 Display Text Preset Lower (Player 1 and Player 2) - Hovcab is unresponsive - need Reprogrammer.*
  2917. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2918. 000203 Resume If Return Value Loop Met 0002 (03)
  2919. 00CBF23213 Display Text Preset Lower (Player 1 and Player 2) - Accessing hovercab navigation systems.*
  2920. 017C045607 Set Sound to Slot (Does not play) - Phone ring
  2921. 00CF070A0001 Play Sound in Slot from 16-Object (Chicago Hovertaxi)
  2922. 00B6 Reset Cycle Counter And Enable It
  2923. 000205 Resume If Return Value Loop Met 0002 (05)
  2924. 0003 Sleep For One Frame
  2925. 00BD00012C04 Check if Cycle Counter > Value, Return Value Loop 00BD (00012C04)
  2926. 0055F2002300A306 If Guard ID not Within Units of Preset, Return Value Loop (Player 1 and Player 2)
  2927. 000105 Go To Beginning, Then Return Value Loop 0001 (05)
  2928. 000204 Resume If Return Value Loop Met 0002 (04)
  2929. 00CBF23214 Display Text Preset Lower (Player 1 and Player 2) - Virus downloaded successfully.*
  2930. 0003 Sleep For One Frame
  2931. 00CBF23215 Display Text Preset Lower (Player 1 and Player 2) - Hovercab navigation systems reprogrammed.*
  2932. 00D307 Turn off Sound in Slot 00D3 (07)
  2933. 017C01C107 Set Sound to Slot (Does not play) - Data Uplink Lost Connection
  2934. 00CF070A0001 Play Sound in Slot from 16-Object (Chicago Hovertaxi)
  2935. 0003 Sleep For One Frame
  2936. 00A100000800 Set Objective Bits (00000800)
  2937. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2938. 000206 Resume If Return Value Loop Met 0002 (06)
  2939. 00CBF23216 Display Text Preset Lower (Player 1 and Player 2) - Connection to hovercab broken.*
  2940. 00D307 Turn off Sound in Slot 00D3 (07)
  2941. 0003 Sleep For One Frame
  2942. 0003 Sleep For One Frame
  2943. 0003 Sleep For One Frame
  2944. 017C045704 Set Sound to Slot (Does not play) - Phone button
  2945. 016B040A0001012C0190 Play Sound from 16-Object (Chicago Hovertaxi)
  2946. 00B6 Reset Cycle Counter And Enable It
  2947. 00021D Resume If Return Value Loop Met 0002 (1D)
  2948. 0003 Sleep For One Frame
  2949. 00BD00007804 Check if Cycle Counter > Value, Return Value Loop 00BD (00007804)
  2950. 00011D Go To Beginning, Then Return Value Loop 0001 (1D)
  2951. 000204 Resume If Return Value Loop Met 0002 (04)
  2952. 00D304 Turn off Sound in Slot 00D3 (04)
  2953. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2954. 0004 Terminator
  2955.  
  2956.  
  2957.  
  2958. 1027:
  2959. 0003 Sleep For One Frame
  2960. 000210 Resume If Return Value Loop Met 0002 (10)
  2961. 0003 Sleep For One Frame
  2962. 00622504 If Specified 16-Object Not Destroyed, Return Value Loop (Chicago Dumpster)
  2963. 000003 Return Value Loop 0000 (03)
  2964. 000204 Resume If Return Value Loop Met 0002 (04)
  2965. 000110 Go To Beginning, Then Return Value Loop 0001 (10)
  2966. 000203 Resume If Return Value Loop Met 0002 (03)
  2967. 01192500000800 Unset Tags 3 for 16-Object (Chicago Dumpster) R-Tracked Blue
  2968. 0005FD0000 Jump To Function (Guard [whatever called it]) (JAL TO: 0000) Do Nothing (Ends Routine)
  2969. 0004 Terminator
  2970.  
  2971.  
  2972.  
  2973.  
  2974.  
  2975.  
  2976.  
  2977. Listing of Commands:
  2978.  
  2979. 00 Return Value Loop [3]
  2980. 01 Go To Beginning, Then Return Value Loop [3]
  2981. 02 Resume If Return Value Loop Met [3]
  2982. 03 Sleep For One Frame [2]
  2983. 04 Terminator [2]
  2984. 05 Jump To Function [5]
  2985. 06 Set Return Subroutine (for 0008 Command) [5]
  2986. 07 Set Subroutine to Jump To, If Guard Shot/Hit [4]
  2987. 08 Jump to Return Subroutine [2]
  2988. 09 Reset Animation [2]
  2989. 0A Guard Kneels [2]
  2990. 0B Guard Plays Animation [C]
  2991. 0C If Guard Wasting Time (Yawning), Return Value Loop [3]
  2992. 0D Guard Points [2]
  2993. 0E Guard Moves Head Side-to-Side [2]
  2994. 0F Guard Steps Sideways, Return Value Loop [3]
  2995. 10 Guard Hops Sideways, Return Value Loop [3]
  2996. 11 Guard Runs Sideways, Return Value Loop [3]
  2997. 12 Guard Walks Firing, Return Value Loop [3]
  2998. 13 Guard Runs Firing, Return Value Loop [3]
  2999. 14 Guard Rolls Firing, Return Value Loop [3]
  3000. 15 Guard Targets Guard, Return Value Loop [7]
  3001. 16 Guard Kneels Targets Guard Fires, Return Value Loop [7]
  3002. 17 Guard Shoots Guard, Return Value Loop [7]
  3003. 18 Guard Constantly Angles To Face, Return Value Loop [7]
  3004. 19 Damage Guard in Part by Weapon [8]
  3005. 1A Guard ID1 Shoots Guard ID2 In Style [5]
  3006. 1B Throw Grenade (If Random Number < Action 0094 value) [7]
  3007. 1C Drop Weapon Inventory [6]
  3008. 1D Guard Jogs to Pad [4]
  3009. 1E Guard Moves To Predefined Preset (2328) [3]
  3010. 1F Guard Walks to Pad [4]
  3011. 20 Guard Runs to Pad [4]
  3012. 21 Set Patrol Path [3]
  3013. 22 Start Patrol Path [2]
  3014. 23 If Guard Patrolling on Path, Return Value Loop [3]
  3015. 24 Guard Surrenders [2]
  3016. 25 Guard Set To Move Fades And Disappear (Drops Gun) [2]
  3017. 26 Remove Guard ID [3]
  3018. 27 Activate Object At Pad, Return Value Loop If Successful [5]
  3019. 28 Activate Alarm [2]
  3020. 29 Deactivate Alarm [2]
  3021. 2A Guard Moves a Little Randomly, Return Value Loop [3]
  3022. 2B Jog To Jo, Return Loop When Reached Jo [3]
  3023. 2C Walk To Jo, Return Loop When Reached Jo [3]
  3024. 2D Run To Jo, Return Loop When Reached Jo [3]
  3025. 2E [3]
  3026. 2F Jog To Character Position, Return Loop On Arrival [4]
  3027. 30 Walk To Character Position, Return Value Loop On Arrival [4]
  3028. 31 Run To Character Position, Return Value Loop On Arrival [4]
  3029. 32 If Guard Not Moving, Return Value Loop [3]
  3030. 33 If Guard ID Killed, Return Value Loop [4]
  3031. 34 If Guard ID Finished Death Animation, Return Value Loop [4]
  3032. 35 If Jo In Sight, Return Value Loop [3]
  3033. 36 Seed Random Byte [2]
  3034. 37 If Random Byte < Value, Return Value Loop [4]
  3035. 38 If Random Byte > Value, Return Value Loop [4]
  3036. 39 If Alarm Activated, Return Value Loop (Plus Stack) [3]
  3037. 3A If Alarm Activated, Return Value Loop [3]
  3038. 3B If Toxic Gas Released, Return Value Loop [3]
  3039. 3C If Guard Heard Gunfire, Return Value Loop [3]
  3040. 3D If You Shoot Nearby Guard, Return Value Loop [4]
  3041. 3E If You Kill Someone in Front of Guard, Return Value Loop [4]
  3042. 3F If Joanna in Line of Sight, Return Value Loop [3]
  3043. 40 If Guard Has Partial Visibility to Jo, Return Value Loop [7]
  3044. 41 If Jo Has Partial Visibility to Guard, Return Value Loop [7]
  3045. 42 If Joanna Not in Line of Sight, Return Value Loop [3]
  3046. 43 If Guard Shot and Done Recoiling, Return Value Loop [3]
  3047. 44 If Shot Guard at Point Blank Range, Return Value Loop [3]
  3048. 45 If Current Guard Has Line of Sight to Guard ID, Return Value Loop [4]
  3049. 46 If Current Guard Has Not Been Loaded, Return Value Loop [3]
  3050. 47 If Guard On Screen, Return Value Loop [3]
  3051. 48 If Guard ID is in a Loaded Room, Return Value Loop [4]
  3052. 49 If Room On Screen, Return Value Loop [5]
  3053. 4A If Jo is Aiming at Guard, Return Value Loop [3]
  3054. 4B If Fired a Bullet Near But Missed Guard, Return Value Loop [3]
  3055. 4C If Guard Is Dying, Return Value Loop [3]
  3056. 4D If Actor and Player CCW Angle < Value, Return Value Loop [4]
  3057. 4E [6]
  3058. 4F If Actor and Player CCW Angle > Value, Return Value Loop [4]
  3059. 50 If Jo within angle [X] of guard, Return Value Loop [4]
  3060. 51 If Jo not within angle [X] of guard, Return Value Loop [4]
  3061. 52 If Guard ID Within Units of Joanna, Return Value Loop [5]
  3062. 53 If Guard ID not Within Units of Joanna, Return Value Loop [5]
  3063. 54 If Guard ID Within Units of Preset, Return Value Loop [8]
  3064. 55 If Guard ID not Within Units of Preset, Return Value Loop [8]
  3065. 56 If Current Guard Within X Units of Guard ID, Return Value Loop [6]
  3066. 57 If Current Guard Not Within X Units of Guard ID, Return Value Loop [6]
  3067. 58 Set Closest Guard Within Units as Guard ID FC, Return Value Loop If Successful [5]
  3068. 59 If Jo Within X Units of Pad, Return Value Loop [7]
  3069. 5A If Not Within X Units of Pad, Return Value Loop [7]
  3070. 5B If Stepped In Room/Preset, Return Value Loop [7]
  3071. 5C If Jo Steps In Room, Return Value Loop [5]
  3072. 5D If 16-Object # Collected, Return Value Loop [5]
  3073. 5E If Specified Weapon Deposited, Return Value Loop [4]
  3074. 5F If Specified Weapon Deposited On 16-Object, Return Value Loop [5]
  3075. 60 If Specified Weapon Out, Return Value Loop [5]
  3076. 61 If 16-Object Loaded, Return Value Loop [5]
  3077. 62 If Specified 16-Object Not Destroyed, Return Value Loop [4]
  3078. 63 If Tagged 16-Object Activated, Return Value Loop [5]
  3079. 64 [1]
  3080. 65 Activate 16-Object [3]
  3081. 66 Explode 16-Object [3]
  3082. 67 Guard Drops 16-Object [3]
  3083. 68 Guard Drops Concealed Items [3]
  3084. 69 Guard Drops Held Items/Weapons [3]
  3085. 6A Give Guard 16-Object [4]
  3086. 6B Move 16-Object to Pad [5]
  3087. 6C Open 16-Object Door [3]
  3088. 6D Close 16-Object Door [3]
  3089. 6E Check 16-Object Door State, Return Value Loop if Match [5]
  3090. 6F If 16-Object Door Transitioned From Fully Closed, Return Value Loop [4]
  3091. 70 Set Lock 16-Object Door [4]
  3092. 71 Unset Lock 16-Object Door [4]
  3093. 72 If Tagged Locked Door 16 Objects Toggled, Return Value Loop [5]
  3094. 73 If Objective Succeeded, Return Value Loop [4]
  3095. 74 If Objective Failed, Return Value Loop [4]
  3096. 75 Set Guards 2328 [4]
  3097. 76 Set Guards 2328 [4]
  3098. 77 If Difficulty < Value, Return Value Loop [4]
  3099. 78 If Difficulty > Value, Return Value Loop [4]
  3100. 79 If Time < Value, Return Value Loop [5]
  3101. 7A If Time > Value, Return Value Loop [5]
  3102. 7B If Stage ID < Value, Return Value Loop [4]
  3103. 7C If Stage ID > Value, Return Value Loop [4]
  3104. 7D If Guard Shot < Amount, Return Value Loop [4]
  3105. 7E If Guard Shot > Amount, Return Value Loop [4]
  3106. 7F If Number Near-Miss Gunshots < Value, Return Value Loop [4]
  3107. 80 If Number Near-Miss Gunshots > Value, Return Value Loop [4]
  3108. 81 If Guard Health < Value, Return Value Loop [5]
  3109. 82 If Guard Health > Value, Return Value Loop [5]
  3110. 83 If Guard Shot (while recoiling), Return Value Loop [4]
  3111. 84 Set Action Block Variable To Value [3]
  3112. 85 Add Value To Block Variable [3]
  3113. 86 Add Value To GuardID#'s Block Variable. [4]
  3114. 87 Subtract Action Value from Block Variable [3]
  3115. 88 If Action Block Variable < Value, Return Value Loop [4]
  3116. 89 If Action Block Variable < Random Byte, Return Value Loop [3]
  3117. 8A Set Guard Alertness to value [3]
  3118. 8B Add value to Guard Alertness [3]
  3119. 8C Add Value to GuardID#'s Alertness. [4]
  3120. 8D Subtract value from Guard Alertness [3]
  3121. 8E Compare Guard Alertness Value, Return Value Loop If So [5]
  3122. 8F If Guard ID's Alertness < Value, Return Value Loop If So [5]
  3123. 90 If Guard Alertness < Random Byte, Return Value Loop [3]
  3124. 91 [2]
  3125. 92 Set Guard Hearing Distance [4]
  3126. 93 Set Guard Visible Distance [3]
  3127. 94 Set Grenade Probability [3]
  3128. 95 Set Guard ID [3]
  3129. 96 Set Guard Health [5]
  3130. 97 Set Guard Armor Amount [4]
  3131. 98 Set Character Reaction Speed [3]
  3132. 99 Set Character Injury Recovery Speed [3]
  3133. 9A Set Character Accuracy [3]
  3134. 9B Set Guard Object Flags [7]
  3135. 9C Unset Guard Object Flags [7]
  3136. 9D Check Guard Object Flags [9]
  3137. 9E Set Guard ID#'s Object Flags [8]
  3138. 9F Unset Guard ID#'s Object Flags [8]
  3139. A0 If Guard ID#'s Object Flags Match, Return Value Loop [9]
  3140. A1 Set Objective Bits [6]
  3141. A2 Unset Objective Bits [6]
  3142. A3 Compare Objective Bits, Return Value Loop [8]
  3143. A4 Set Guard Bits [6]
  3144. A5 Unset Guard Bits [6]
  3145. A6 Check if Guard Bits Same, Return Value Loop [7]
  3146. A7 Set Tags for Guard ID# [7]
  3147. A8 Unset Tags for Guard ID# [7]
  3148. A9 If Tags for Guard ID#, Return Value Loop [8]
  3149. AA Set Tags for 16-Object [7]
  3150. AB Unset Tags for 16-Object [7]
  3151. AC Check Tags for 16-Object, Return Value Loop if Same [8]
  3152. AD Set Tags 2 for 16-Object [7]
  3153. AE Unset Tags 2 for 16-Object [7]
  3154. AF Check Tags 2 for 16-Object, Return Value Loop if Same [8]
  3155. B0 Sets To Guard ID FC Current Guard [3]
  3156. B1 Sets FC Value For Guard ID To Guard ID [4]
  3157. B2 Set Current Guard's 2328 Value To Preset [4]
  3158. B3 Set Guard ID #'S 2328 Value To Preset [5]
  3159. B4 [4]
  3160. B5 Debug Comment [0]
  3161. B6 Reset Cycle Counter And Enable It [2]
  3162. B7 Reset Cycle Counter [2]
  3163. B8 Disable Cycle Counter [2]
  3164. B9 Enable Cycle Counter [2]
  3165. BA Check Cycle Counter Disabled [3]
  3166. BB Check Cycle Counter Enabled [3]
  3167. BC Check if Cycle Counter < Value, Return Value Loop [6]
  3168. BD Check if Cycle Counter > Value, Return Value Loop [6]
  3169. BE Show Timer [2]
  3170. BF Hide Timer [2]
  3171. C0 Set Timer X Seconds (Doesn't Show Timer Yet) [4]
  3172. C1 Stop Timer [2]
  3173. C2 Start Timer [2]
  3174. C3 If Timer Stopped, Return Value Loop [3]
  3175. C4 If Timer < Value, Return Value Loop [5]
  3176. C5 If Timer > Value, Return Value Loop [5]
  3177. C6 Spawn Guard [D]
  3178. C7 Spawn Guard Near Guard ID [C]
  3179. C8 Spawn Weapon [A]
  3180. C9 Spawn Hat [9]
  3181. CA Spawn Clone of Guard ID [A]
  3182. CB Display Text Preset Lower [5]
  3183. CC Display Text Top Middle [6]
  3184. CD Display Text Preset and Play Sound [9]
  3185. CE Play Sound [5]
  3186. CF Play Sound in Slot from 16-Object [6]
  3187. D0 Play Sound at Preset [7]
  3188. D1 Set Sound Slot's Distance Interpolation Time to X [7]
  3189. D2 [7]
  3190. D3 Turn off Sound in Slot [3]
  3191. D4 If Sound Slot's Volume < X, Return Value Loop [6]
  3192. D5 Hover Car begin path [3]
  3193. D6 Set Hover Car Speed [6]
  3194. D7 (Remnant of Set Speed Aircraft Rotor from GE?) [6]
  3195. D8 [3]
  3196. D9 [3]
  3197. DA Change screen [5]
  3198. DB [3]
  3199. DC Exit Level [2]
  3200. DD Switch Control to Joanna, Return from Camera [2]
  3201. DE Switch Control to Camera, Move Camera to Preset [4]
  3202. DF Switch Control to Camera, Move Camera to 16 Object (2E) [7]
  3203. E0 Lose Control/Movement of Player (ID F8) [4]
  3204. E1 Give Control/Movement back to Player (ID F8) [3]
  3205. E2 Move Guard ID to Pad, Return Value Loop if Successful [7]
  3206. E3 Fade Guard ID#'s Screen to Black [3]
  3207. E4 Fade in All Players' Screens From Black [3]
  3208. E5 If Fade Complete for Guard ID#, Return Value Loop [4]
  3209. E6 [1]
  3210. E7 [1]
  3211. E8 Immediately Open 16-Door Object [3]
  3212. E9 Remove Guard ID#'s Weapon [4]
  3213. EA If Number of Players < Value, Return Value Loop [4]
  3214. EB If Player ID#'s Ammo Value In Type < Value, Return Value Loop [6]
  3215. EC Force Player to Equip Weapon (1st person) [4]
  3216. ED Force Player to Equip Weapon (3rd person) [4]
  3217. EE Set Player ID#'s Speed Offset [5]
  3218. EF If 16-Object in Room #, Return Value Loop [6]
  3219. F0 [3]
  3220. F1 If Guard in Standing/Kneeling Firing Anim, Return Value Loop [3]
  3221. F2 Switch To Alternate Sky [2]
  3222. F3 Make Guard Invincible (F8 Jo) [3]
  3223. F4 Cuba Circular Camera (leftover from GE) [E]
  3224. F5 [2]
  3225. F6 [3]
  3226. F7 If All Objectives Complete, Return Value Loop [3]
  3227. F8 If Player ID # Invincible, Return Value Loop [4]
  3228. F9 Plays x-theme slot# =0-3; play for x/y seconds [5]
  3229. FA Turn Off Music In Slot # (0-3) [3]
  3230. FB Explosions surround/kill player (ID F8) [3]
  3231. FC If Civilians Killed > Value, Return Value Loop [4]
  3232. FD If GuardID 00200000 Flag Set, Unset & Return [4]
  3233. FE Cause player death swirl [2]
  3234. FF Guard raises then lowers arms [2]
  3235. 100 [3]
  3236. 101 [3]
  3237. 102 Turn on/off lights at Room # [B]
  3238. 103 [3]
  3239. 104 [2]
  3240. 105 [5]
  3241. 106 Set F6 Guard ID (Primary Player) to Guard ID [5]
  3242. 107 [3]
  3243. 108 [6]
  3244. 109 [6]
  3245. 10A [8]
  3246. 10B Make Guard Ally (10)/Foe (02) [4]
  3247. 10C Check Current Guard's Team in Relation to Jo (01 Ally/02 Foe), Return If Match [4]
  3248. 10D [2]
  3249. 10E Set Guard Shield Amount [4]
  3250. 10F If Guard ID's Shield < Value, Return Value Loop [6]
  3251. 110 If Guard ID's Shield > Value, Return Value Loop [6]
  3252. 111 Prerecorded camera: movement, rotation, and special fx info [4]
  3253. 112 16-Object Does Animation [8]
  3254. 113 If Prerecorded camera not finished, Return Value Loop [3]
  3255. 114 Show Guard ID [3]
  3256. 115 Hide Guard ID [3]
  3257. 116 Show 16-Object [3]
  3258. 117 Hide 16-Object [3]
  3259. 118 Set Tags 3 for 16-Object [7]
  3260. 119 Unset Tags 3 for 16-Object [7]
  3261. 11A Check Tags 3 for 16-Object, Return Value Loop if Same [8]
  3262. 11B Set guard flag Tags 3 [7]
  3263. 11C Unset guard flag Tags 3 [7]
  3264. 11D Return value loop if guard flag set Tags 3 [8]
  3265. 11E If Guard ID is Human Body, Return Value Loop [4]
  3266. 11F If Guard ID is Skedar Body, Return Value Loop [4]
  3267. 120 [4]
  3268. 121 Guard Scans for Cover Pad, Return and Apply If Success [5]
  3269. 122 [9]
  3270. 123 [9]
  3271. 124 Guard Moves to Active Cover Pad [3]
  3272. 125 [3]
  3273. 126 [3]
  3274. 127 [3]
  3275. 128 If Guard In Proximity of Jo and Line of Sight, Return Value Loop [4]
  3276. 129 [4]
  3277. 12A [4]
  3278. 12B [3]
  3279. 12C [3]
  3280. 12D [1]
  3281. 12E [1]
  3282. 12F [2]
  3283. 130 Random Sound Play From Set of 3 [A]
  3284. 131 Set Same Group Guards' Alertness to # [3]
  3285. 132 [4]
  3286. 133 [4]
  3287. 134 [5]
  3288. 135 [3]
  3289. 136 Guard Moves to Edge of a Room [4]
  3290. 137 [4]
  3291. 138 Return value loop when sound is finished [4]
  3292. 139 [8]
  3293. 13A [5]
  3294. 13B Add Current Guard to Group # [3]
  3295. 13C [3]
  3296. 13D [4]
  3297. 13E [2]
  3298. 13F [3]
  3299. 140 Compare Hover Vehicle's Point in Patrol, Return Value Loop If So [5]
  3300. 141 Remap First 2 16-objects from next 4 [9]
  3301. 142 [4]
  3302. 143 [2]
  3303. 144 [2]
  3304. 145 Setup Guard/Simulant AI (Part 1) [2]
  3305. 146 Setup Guard/Simulant AI (Part 2) [2]
  3306. 147 [4]
  3307. 148 [4]
  3308. 149 [6]
  3309. 14A [6]
  3310. 14B [3]
  3311. 14C [1]
  3312. 14D [1]
  3313. 14E [1]
  3314. 14F [1]
  3315. 150 [1]
  3316. 151 [1]
  3317. 152 If Group Y Has Greater Than X Members, Return Value Loop [5]
  3318. 153 [1]
  3319. 154 [1]
  3320. 155 [1]
  3321. 156 [1]
  3322. 157 Tint All Tinted Glass [3]
  3323. 158 [1]
  3324. 159 [1]
  3325. 15A [1]
  3326. 15B Play Music Track [3]
  3327. 15C Restart Current Music, Play from Beginning [2]
  3328. 15D [1]
  3329. 15E [1]
  3330. 15F [1]
  3331. 160 [1]
  3332. 161 [1]
  3333. 162 [1]
  3334. 163 [1]
  3335. 164 [1]
  3336. 165 If Guard ID's Shot Hit Target, Return Value Loop [4]
  3337. 166 [4]
  3338. 167 Hovercopter Rocket Fire [3]
  3339. 168 [4]
  3340. 169 [4]
  3341. 16A Compare Guard POV Height Elevation, Return Value Loop If So [7]
  3342. 16B Play Sound from 16-Object [A]
  3343. 16C [Unused - Skipped] [2]
  3344. 16D Blur Guard's Vision [5]
  3345. 16E Damage Guard [5]
  3346. 16F If Guard ID Not Disarmed, Return Value Loop [5]
  3347. 170 Current Guard Runs to/Checks Dropped Weapon, Return Value If Success [4]
  3348. 171 If Distance to Dropped Weapon < X, Return Value Loop [5]
  3349. 172 Guard's Dropped Weapon is Added Back to Hand, Return Value Loop [4]
  3350. 173 Inherit properties from Guard ID [4]
  3351. 174 Return value loop when button is pressed [3]
  3352. 175 Set Frames to Move Camera to Jo's head [3]
  3353. 176 [3]
  3354. 177 Guard ID (Human) forcibly walks in straight line [9]
  3355. 178 Don't Attack Player Who Is Not in Control, Return Value Loop [4]
  3356. 179 Play sound in Slot (By Guard)? [B]
  3357. 17A If Joanna in Disarm Range, Return Value Loop [3]
  3358. 17B If Guard Body Disappeared, Return Value Loop [4]
  3359. 17C Set Sound to Slot (Does not play) [5]
  3360. 17D Change Music To Track # [3]
  3361. 17E Restart Default Music, Play from Beginning [2]
  3362. 17F Change Ambiance To Track # [3]
  3363. 180 Restart Default Ambiance [2]
  3364. 181 If Player Stares at 16-Object, Return Value Loop [5]
  3365. 182 Guard punches/kicks, Return Value Loop if Can (Guard alive) [4]
  3366. 183 [3]
  3367. 184 [4]
  3368. 185 Initialize Simulants [2]
  3369. 186 [6]
  3370. 187 If Guard Saw Camspy (any type), Return Value Loop [3]
  3371. 188 If 16-Tagged Elevator Lift is Not Moving, Return Value Loop [4]
  3372. 189 16-Tagged Elevator Lift Goes to Stop X [4]
  3373. 18A [5]
  3374. 18B Trigger Rain Effect [3]
  3375. 18C Remove Cassandra's necklace [4]
  3376. 18D Activate Lift [4]
  3377. 18E [7]
  3378. 18F If 16-Object Within Units of Pad, Return Value Loop [8]
  3379. 190 Mask EEPROM Value [3]
  3380. 191 Unmask EEPROM Value [3]
  3381. 192 Check EEPROM Value Set, Return Value Loop if Met [4]
  3382. 193 Check EEPROM Value Not Set, Return Value Loop if Met [4]
  3383. 194 [1]
  3384. 195 [1]
  3385. 196 [1]
  3386. 197 [1]
  3387. 198 [1]
  3388. 199 [1]
  3389. 19A [1]
  3390. 19B [1]
  3391. 19C [1]
  3392. 19D [1]
  3393. 19E If 16-Object Damage, Return Value Loop [6]
  3394. 19F [5]
  3395. 1A0 Set Special Death Animation [4]
  3396. 1A1 [2]
  3397. 1A2 Play Carrington Sound [4]
  3398. 1A3 Character Moves Hands (Talking) [3]
  3399. 1A4 Display Text Preset Top Middle [6]
  3400. 1A5 [3]
  3401. 1A6 [4]
  3402. 1A7 [4]
  3403. 1A8 [1]
  3404. 1A9 [1]
  3405. 1AA [3]
  3406. 1AB Check if Guard Subdued [5]
  3407. 1AC [1]
  3408. 1AD Player Lets Go of Hover Attached Object [3]
  3409. 1AE Remove All Items From Inventory [3]
  3410. 1AF Player Holds Onto Hover Object [4]
  3411. 1B0 [1]
  3412. 1B1 Remap 3 16-objects randomly from Set 1 and 2 [12]
  3413. 1B2 Set Cloud Movement Speed [3]
  3414. 1B3 Player 2 (Co-op) Can Activate [3]
  3415. 1B4 [3]
  3416. 1B5 [4]
  3417. 1B6 Toggle Snow Effect [3]
  3418. 1B7 Set Guard ID's Cloak State [5]
  3419. 1B8 Set Autogun Target [4]
  3420. 1B9 Remap 16-Objects for Pelagic II Screens [2]
  3421. 1BA [7]
  3422. 1BB [4]
  3423. 1BC [4]
  3424. 1BD If Holograph Objective 16-Object is Holographed, Return Value Loop [3]
  3425. 1BE If Guard Using Weapon's Digit (ex X-Ray 2F), Return Value Loop [5]
  3426. 1BF Trigger Warp Effect/End Warp Effect [5]
  3427. 1C0 If Warp Effect Complete, Return Value Loop [4]
  3428. 1C1 [4]
  3429. 1C2 [4]
  3430. 1C3 [4]
  3431. 1C4 [4]
  3432. 1C5 Current Guard Dodges in Surprise [2]
  3433. 1C6 [4]
  3434. 1C7 [3]
  3435. 1C8 [3]
  3436. 1C9 [3]
  3437. 1CA Set Guard's Weapon (cutscene) [5]
  3438. 1CB Fade In/Out [8]
  3439. 1CC If Fade Complete, Return Value Loop [3]
  3440. 1CD Toggle Joanna's HUD model [4]
  3441. 1CE Disable ability to fight [3]
  3442. 1CF Guard Fires Weapon in Cinema [4]
  3443. 1D0 Set Portal Flag [5]
  3444. 1D1 Show/Hide 16-Object Part [5]
  3445. 1D2 Emit Sparks from Guard [3]
  3446. 1D3 Change Dr. Caroll's Screen Images [5]
  3447. 1D4 Improve Misalignment Portals in Room # [6]
  3448. 1D5 Hide/Show Non-Essential Actors [3]
  3449. 1D6 Affect Room Lighting [6]
  3450. 1D7 [5]
  3451. 1D8 [5]
  3452. 1D9 Play Sound from 16-Object [B]
  3453. 1DA [3]
  3454. 1DB Kill Guard ID [3]
  3455. 1DC Remove Weapon ID from Inventory [3]
  3456. 1DD [4]
  3457. 1DE If in Cooperative Mode, Return Value Loop [3]
  3458. 1DF If Guard ID Within Units of Pad, Return Value Loop [8]
  3459. 1E0 [2]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement