;;; General ;;; { Roach. Flies away from Samus Broken roach. Unused copy of roach that loads its graphics to page 0 (MSb of its enemy header tile data size is set). It's broken because its initialisation AI doesn't zero its VRAM tiles index and its spritemaps aren't written to index page 0 Enemy ID: $D87F: Roach $D8BF: Broken roach Bank: $A3 Enemy projectiles: None Parameter 0: Unused Parameter 1 low: Speed. Unit px/frame Parameter 1 high: Intial angle. Unit pi/80h radians. 0 = right, positive = anticlockwise Parameter 2 low: X/Y proximity. Unit px Parameter 2 high: Movement index 0: Move forwards 1: Move forwards in a zigzag 2: Move towards Samus 3: Move randomly and wait for Samus if hit block 4: Move in a random direction then reverse until 6 blocks away from Samus 5: Move forwards then wait for Samus 6: Move away from Samus Properties must have process instructions bit set } ;;; Behaviour ;;; { } ;;; WRAM ;;; { $0FA8: Straight movement timer $0FAA: Function { $A2D7: Roach function - wait for Samus to get near $A301: Activate - index 0 (move forwards) $A30B: Activate - index 1 (move forwards in a zigzag) $A315: Activate - index 3 (move randomly and wait for Samus if hit block) $A325: Activate - index 4 (move in a random direction then reverse until 6 blocks away from Samus) $A33B: Activate - index 5 (move forwards then wait for Samus) $A34B: Activate - index 2 (move towards Samus) $A380: Activate - index 6 (move away from Samus) $A407: Activated - index 0 (move forwards) $A40E: Activated - index 1 (move forwards in a zigzag) $A440: Activated - index 2 (move towards Samus) $A447: Activated - index 6 (move away from Samus) $A44E: Activated - index 5 (move forwards then wait for Samus) $A462: Move along custom angle and wait for Samus if hit block $A476: Move straight along custom angle then reverse until 6 blocks away from Samus $A4B6: Activated - index 4 (move in a random direction then reverse until 6 blocks away from Samus) $A4F0: Activated - index 3 (move randomly and wait for Samus if hit block) } $0FAC: Custom angle. Unit pi/80h radians. 0 = right, positive = anticlockwise $0FB2: Movement timer $7E:7800: Moving forward X subspeed $7E:7802: Moving forward X speed $7E:7804: Moving forward Y subspeed $7E:7806: Moving forward Y speed $7E:7808: Moving left X subvelocity $7E:780A: Moving left X velocity $7E:780C: Moving left Y subvelocity $7E:780E: Moving left Y velocity $7E:7810: Moving right X subvelocity $7E:7812: Moving right X velocity $7E:7814: Moving right Y subvelocity $7E:7816: Moving right Y velocity $7E:7818: Custom X subvelocity $7E:781A: Custom X velocity $7E:781C: Custom Y subvelocity $7E:781E: Custom Y velocity $7E:8000: Moving forward instruction list index { 0: Facing up 2: Facing up-left 4: Facing left 6: Facing down-left 8: Facing down Ah: Facing down-right Ch: Facing right Eh: Facing up-right } $7E:8002: Moving left instruction list index { 0: Facing up 2: Facing up-left 4: Facing left 6: Facing down-left 8: Facing down Ah: Facing down-right Ch: Facing right Eh: Facing up-right } $7E:8004: Moving right instruction list index { 0: Facing up 2: Facing up-left 4: Facing left 6: Facing down-left 8: Facing down Ah: Facing down-right Ch: Facing right Eh: Facing up-right } $7E:8006: Custom instruction list index { 0: Facing up 2: Facing up-left 4: Facing left 6: Facing down-left 8: Facing down Ah: Facing down-right Ch: Facing right Eh: Facing up-right } $7E:8008: New instruction list { $A071: Facing up $A085: Facing up-left $A099: Facing left $A0AD: Facing down-left $A0C1: Facing down $A0D5: Facing down-right $A0E9: Facing right $A0FD: Facing up-right } $7E:800A: Instruction list { $A071: Facing up $A085: Facing up-left $A099: Facing left $A0AD: Facing down-left $A0C1: Facing down $A0D5: Facing down-right $A0E9: Facing right $A0FD: Facing up-right } } ;;; Enemy population ;;; { ________________________________________ Enemy ID | __________________________________ X position | | _____________________________ Y position | | | _______________________ Initialisation parameter | | | | _________________ Properties. 2000h = process instructions, 400h = intangible | | | | | ____________ Extra properties | | | | | | ______ Parameter 1 | | | | | | | _ Parameter 2 | | | | | | | | ; Debug D87F, 01AD,04E8, 0000, 2400,0000, E804,0020 ; Room $96BA, state $96D1. Old Tourian escape shaft - default D87F, 0114,004C, 0000, 2400,0000, 5003,0050 D87F, 0110,0058, 0000, 2400,0000, 9002,0050 D87F, 010D,0072, 0000, 2400,0000, AC03,0050 D87F, 01EB,0096, 0000, 2400,0000, C804,0050 D87F, 01F3,009A, 0000, 2400,0000, C303,0050 D87F, 0115,0126, 0000, 2400,0000, 9203,0050 D87F, 0114,0123, 0000, 2400,0000, 6003,0050 D87F, 0111,0128, 0000, 2400,0000, 9C02,0050 D87F, 01EE,0217, 0000, 2400,0000, F004,0050 D87F, 0116,06B9, 0000, 2400,0000, BC02,0050 ; Room $92FD, state $9314. Crateria mainstreet - default D87F, 04BE,00C0, 0000, 2400,0000, AA02,0050 D87F, 04A4,00C9, 0000, 2400,0000, B502,0050 D87F, 04BB,00CF, 0000, 2400,0000, D003,0050 D87F, 04E4,0041, 0000, 2400,0000, 4804,0080 D87F, 0455,002A, 0000, 2400,0000, 6003,00A0 D87F, 043F,002E, 0000, 2400,0000, 6C03,00A0 D87F, 046F,0027, 0000, 2400,0000, 7802,00A0 D87F, 03D8,00C3, 0000, 2400,0000, CA03,0050 D87F, 03D2,00C9, 0000, 2400,0000, C803,0050 D87F, 03DB,00CE, 0000, 2400,0000, E202,0050 D87F, 011B,00BC, 0000, 2400,0000, A002,0050 D87F, 0112,00C4, 0000, 2400,0000, AB02,0050 D87F, 012C,0229, 0000, 2400,0000, 7C03,0080 D87F, 0124,022D, 0000, 2400,0000, 9403,0080 D87F, 0143,023F, 0000, 2400,0000, 8402,0080 D87F, 013F,02BF, 0000, 2400,0000, A102,0040 D87F, 0145,02BA, 0000, 2400,0000, 9103,0040 D87F, 013D,02C3, 0000, 2400,0000, 8C02,0040 D87F, 010D,02DB, 0000, 2400,0000, AC03,0080 D87F, 01A5,04E0, 0000, 2400,0000, E804,0020 ; Room $975C, state $976D. Old Mother Brain room - default D87F, 006B,0038, 0000, 2400,0000, 2802,0050 D87F, 0070,0034, 0000, 2400,0000, 7803,0050 D87F, 005A,002D, 0000, 2400,0000, 7C02,0050 D87F, 0073,00AD, 0000, 2400,0000, 9402,0050 D87F, 007A,00B7, 0000, 2400,0000, C403,0050 D87F, 006C,00C3, 0000, 2400,0000, 7C03,0050 D87F, 007F,00B2, 0000, 2400,0000, C203,0050 D87F, 00BD,00CA, 0000, 2400,0000, C103,0050 D87F, 02C9,00A6, 0000, 2400,0000, F002,0050 D87F, 02CC,00AB, 0000, 2400,0000, EC04,0050 ; Room $9F11, state $9F23. Old Kraid entrance - default D87F, 002E,00C0, 0000, 2400,0000, 8A03,0050 D87F, 00DE,00B3, 0000, 2400,0000, C803,0050 D87F, 00DB,00B7, 0000, 2400,0000, F802,0050 D87F, 00D9,00B1, 0000, 2400,0000, EC02,0050 D87F, 00D7,00C1, 0000, 2400,0000, F403,0050 D87F, 00B3,01D3, 0000, 2400,0000, C402,0050 D87F, 00B9,01DB, 0000, 2400,0000, D003,0050 D87F, 00BB,01EA, 0000, 2400,0000, DC03,0050 D87F, 00AE,01DC, 0000, 2400,0000, BB02,0050 D87F, 00D5,01F0, 0000, 2400,0000, 0303,0080 ; Room $A56B. Pre Kraid room D87F, 0136,019D, 0000, 2400,0000, C803,0030 D87F, 0137,01A4, 0000, 2400,0000, BA03,0030 D87F, 013D,01AB, 0000, 2400,0000, A802,0030 D87F, 0133,01AC, 0000, 2400,0000, B403,0030 D87F, 013B,019E, 0000, 2400,0000, CA02,0030 D87F, 0142,01A4, 0000, 2400,0000, C903,0030 D87F, 0145,01A7, 0000, 2400,0000, BE02,0030 D87F, 0143,01AF, 0000, 2400,0000, C203,0030 D87F, 0137,01B0, 0000, 2400,0000, 9003,0030 D87F, 014E,01AC, 0000, 2400,0000, C802,0020 ; Room $CAF6, state $CB08. Wrecked Ship mainstreet - default D87F, 0442,034A, 0000, 2400,0000, 7002,0050 D87F, 044D,0351, 0000, 2400,0000, 7C02,0050 D87F, 04C8,03CC, 0000, 2400,0000, CC03,0050 D87F, 04C5,03D3, 0000, 2400,0000, D804,0080 D87F, 04CE,03D9, 0000, 2400,0000, D003,00A0 D87F, 04CB,04CB, 0000, 2400,0000, 2003,00A0 D87F, 04CC,04D6, 0000, 2400,0000, FF02,00A0 D87F, 04C4,04D1, 0000, 2400,0000, 0A03,0050 D87F, 04DE,04BE, 0000, 2400,0000, D003,0050 D87F, 03A7,0521, 0000, 2400,0000, 7A02,0050 D87F, 03B9,052C, 0000, 2400,0000, 7E02,0050 D87F, 04C4,027D, 0000, 2400,0000, FC02,0050 D87F, 04CA,028A, 0000, 2400,0000, 0803,0080 D87F, 04DB,0278, 0000, 2400,0000, E003,0080 D87F, 0425,0210, 0000, 2400,0000, 8402,0080 D87F, 0424,0206, 0000, 2400,0000, 7802,0040 D87F, 0145,02BA, 0000, 2400,0000, 9103,0040 D87F, 013D,02C3, 0000, 2400,0000, 8C02,0040 D87F, 010D,02DB, 0000, 2400,0000, AC03,0080 D87F, 01AD,04E8, 0000, 2400,0000, E804,0020 ; Room $C98E, state $C9A0. Wrecked Ship chozo room - default D87F, 04CB,0189, 0000, 2400,0000, C203,0080 D87F, 04CC,017C, 0000, 2400,0000, DC04,0080 D87F, 04C5,0184, 0000, 2400,0000, DE03,0080 D87F, 04D1,0191, 0000, 2400,0000, C402,0080 D87F, 04CC,019D, 0000, 2400,0000, D803,0080 D87F, 0026,01D2, 0000, 2400,0000, 8802,0080 D87F, 009D,01EA, 0000, 2400,0000, 8C03,0080 D87F, 00CE,01D2, 0000, 2400,0000, 9802,0080 D87F, 00D3,01CF, 0000, 2400,0000, 9004,0080 D87F, 0025,01B0, 0000, 2400,0000, 8802,0080 D87F, 002D,01B9, 0000, 2400,0000, 9802,0080 D87F, 0030,01BF, 0000, 2400,0000, 9202,0080 D87F, 01E2,01DA, 0000, 2400,0000, B802,0080 D87F, 01DD,01E3, 0000, 2400,0000, 8803,0080 D87F, 01F8,01E3, 0000, 2400,0000, E003,0080 D87F, 0275,01E1, 0000, 2400,0000, D003,0080 D87F, 035D,01D2, 0000, 2400,0000, C802,0080 D87F, 0332,01E7, 0000, 2400,0000, D002,0080 D87F, 035F,01D9, 0000, 2400,0000, C804,0080 D87F, 0324,01E2, 0000, 2400,0000, C402,0080 ; Room $CCCB, state $CCDD. Wrecked Ship map station - default D87F, 0058,00B8, 0000, 2400,0000, B802,0050 D87F, 0050,00A8, 0000, 2400,0000, C402,0050 D87F, 004D,00CF, 0000, 2400,0000, FA03,0050 D87F, 00CD,00B8, 0000, 2400,0000, B004,0080 D87F, 00C8,00B0, 0000, 2400,0000, B803,00A0 D87F, 00D0,00B8, 0000, 2400,0000, D003,00A0 D87F, 008B,0027, 0000, 2400,0000, 7802,00A0 D87F, 008D,0008, 0000, 2400,0000, 8A02,0050 ; Room $CC6F, state $CC81. Pre Phantoon hall - default D87F, 036B,00BB, 0000, 2400,0000, C203,0080 D87F, 0370,00B8, 0000, 2400,0000, DC04,0080 D87F, 0370,00BC, 0000, 2400,0000, DE03,0080 D87F, 0368,00C3, 0000, 2400,0000, C402,0080 D87F, 0372,00C9, 0000, 2400,0000, D803,0080 D87F, 004E,00AA, 0000, 2400,0000, 8802,0080 D87F, 0051,00AD, 0000, 2400,0000, 8C03,0080 D87F, 0048,00C8, 0000, 2400,0000, 7002,0080 D87F, 0052,00C2, 0000, 2400,0000, 9004,0080 D87F, 0029,00AA, 0000, 2400,0000, 8802,0080 D87F, 002D,00B9, 0000, 2400,0000, 9802,0080 D87F, 0030,00BF, 0000, 2400,0000, 9202,0080 D87F, 01E2,00DA, 0000, 2400,0000, B802,0080 D87F, 01DD,00E3, 0000, 2400,0000, 8803,0080 D87F, 01F8,00E3, 0000, 2400,0000, E003,0080 D87F, 03F3,00AF, 0000, 2400,0000, D003,0080 D87F, 03EF,00B3, 0000, 2400,0000, C802,0080 D87F, 03EA,00CB, 0000, 2400,0000, D002,0080 D87F, 03CC,00DE, 0000, 2400,0000, C804,0080 D87F, 03CE,00DE, 0000, 2400,0000, C402,0080 ; Room $CA08, state $CA1A. Wrecked Ship entrance treadmill - default D87F, 0074,0040, 0000, 2400,0000, 1802,0050 D87F, 007C,00BD, 0000, 2400,0000, E002,0050 D87F, 0096,00C5, 0000, 2400,0000, B803,0050 D87F, 0073,004A, 0000, 2400,0000, 7804,0080 D87F, 00BA,0042, 0000, 2400,0000, 3003,00A0 D87F, 00B4,00C8, 0000, 2400,0000, 9803,00A0 D87F, 0041,0049, 0000, 2400,0000, 7802,00A0 D87F, 0082,00BC, 0000, 2400,0000, D803,0050 D87F, 0044,004B, 0000, 2400,0000, 5803,0050 D87F, 0257,0041, 0000, 2400,0000, 1802,0050 D87F, 011B,00BC, 0000, 2400,0000, E802,0050 D87F, 0112,00C4, 0000, 2400,0000, F802,0050 D87F, 012D,021E, 0000, 2400,0000, 7C03,0080 D87F, 0125,0226, 0000, 2400,0000, 9403,0080 D87F, 0143,023F, 0000, 2400,0000, 8402,0080 D87F, 013F,02BF, 0000, 2400,0000, A102,0040 D87F, 0145,02BA, 0000, 2400,0000, 9103,0040 D87F, 013D,02C3, 0000, 2400,0000, 8C02,0040 D87F, 010D,02DB, 0000, 2400,0000, AC03,0080 D87F, 01AD,04E8, 0000, 2400,0000, E804,0020 D87F, 0261,0042, 0000, 2400,0000, 5002,0050 D87F, 0293,0037, 0000, 2400,0000, 4802,0050 D87F, 027A,00B5, 0000, 2400,0000, CC02,0050 D87F, 028B,00BE, 0000, 2400,0000, DD02,0050 D87F, 0261,00CB, 0000, 2400,0000, 8802,0050 D87F, 03E9,00B3, 0000, 2400,0000, D802,0050 D87F, 03D9,00C0, 0000, 2400,0000, D802,0050 D87F, 03EB,00C4, 0000, 2400,0000, D802,0050 D87F, 03DE,0051, 0000, 2400,0000, 7D02,0050 D87F, 03EF,004C, 0000, 2400,0000, 3C02,0050 D87F, 036B,004B, 0000, 2400,0000, 7002,0050 D87F, 0317,00B0, 0000, 2400,0000, F802,0050 ; Room $CA52, state $CA64. Wrecked Ship attic - default D87F, 06A9,00BA, 0000, 2400,0000, AA02,0050 D87F, 06AF,00BD, 0000, 2400,0000, D403,0550 D87F, 06AD,00C5, 0000, 2400,0000, D002,0050 D87F, 06B9,00B2, 0000, 2400,0000, F002,0080 D87F, 0028,00B9, 0000, 2400,0000, 7403,00A0 D87F, 0025,00BE, 0000, 2400,0000, 8803,05A0 D87F, 001B,00C6, 0000, 2400,0000, A002,00A0 D87F, 0033,0052, 0000, 2400,0000, 7803,0050 D87F, 0028,0043, 0000, 2400,0000, 5002,0550 D87F, 040E,00E6, 0000, 2400,0000, 8203,0050 D87F, 011E,00EA, 0000, 2400,0000, 8402,0050 D87F, 0114,00E6, 0000, 2400,0000, 8203,0050 D87F, 001A,0049, 0000, 2400,0000, 9803,0580 D87F, 0431,00E9, 0000, 2400,0000, B802,0080 D87F, 043D,00ED, 0000, 2400,0000, BA04,0580 D87F, 05C3,00E3, 0000, 2400,0000, C401,0540 D87F, 05D2,00D7, 0000, 2400,0000, B802,0040 D87F, 01A7,0094, 0000, 2400,0000, 4003,0540 D87F, 06D5,00C5, 0000, 2400,0000, E002,0080 ; Room $CDF1, state $CE03. Wrecked Ship east super missile hall - default D87F, 034F,009A, 0000, 2400,0000, C203,0080 D87F, 00FF,00E9, 0000, 2400,0000, FC04,0080 D87F, 0354,00A6, 0000, 2400,0000, DE02,0080 D87F, 0354,00A4, 0000, 2400,0000, C402,0080 D87F, 0347,00A6, 0000, 2400,0000, D802,0080 D87F, 0175,00D1, 0000, 2400,0000, 8802,0080 D87F, 0051,00AD, 0000, 2400,0000, 8C03,0080 D87F, 0048,00C8, 0000, 2400,0000, 7002,0080 D87F, 02DE,0099, 0000, 2400,0000, 3003,0080 D87F, 02CB,008F, 0000, 2400,0000, B802,0080 D87F, 002D,00B9, 0000, 2400,0000, 9803,0080 D87F, 0030,00BF, 0000, 2400,0000, 9202,0080 D87F, 02C9,008A, 0000, 2400,0000, B802,0080 D87F, 02E3,0073, 0000, 2400,0000, A804,0080 D87F, 02E7,00AA, 0000, 2400,0000, E002,0080 D87F, 03F3,00AF, 0000, 2400,0000, D004,0080 D87F, 03EF,00B3, 0000, 2400,0000, C802,0080 D87F, 03EA,00CB, 0000, 2400,0000, D002,0080 D87F, 0184,00D8, 0000, 2400,0000, C802,0080 D87F, 00F0,00E5, 0000, 2400,0000, 8202,0080 ; Room $CE8A, state $CE9C. Wrecked Ship save station - default D87F, 0083,00BA, 0000, 2400,0000, B002,0030 D87F, 007B,00B5, 0000, 2400,0000, CA02,0030 D87F, 008E,00C0, 0000, 2400,0000, FA02,0030 D87F, 0074,00C4, 0000, 2400,0000, 8302,0030 D87F, 00B9,002E, 0000, 2400,0000, 7B02,0050 D87F, 00C1,0035, 0000, 2400,0000, E002,0050 D87F, 00BA,0036, 0000, 2400,0000, F802,0050 D87F, 00CB,0040, 0000, 2400,0000, 1802,0050 D87F, 00C5,0046, 0000, 2400,0000, FD02,0050 D87F, 0033,00AB, 0000, 2400,0000, 8802,0130 D87F, 0038,00AC, 0000, 2400,0000, 9002,0030 } ;;; Enemy header ;;; { __________ Roach | ___ Broken roach | | 0200 8200 ; 0: Tile data size A051 A051 ; 2: Palette 0014 0014 ; 4: Health 0028 0028 ; 6: Damage 0004 0004 ; 8: Width 0004 0004 ; Ah: Height A3 A3 ; Ch: Bank 00 00 ; Dh: Hurt AI time 0000 0000 ; Eh: Cry 0000 0000 ; 10h: Boss ID A14D A14D ; 12h: Initialisation AI 0001 0001 ; 14h: Number of parts A2D0 A2D0 ; 18h: Main AI 800F 800F ; 1Ah: Grapple AI 804C 804C ; 1Ch: Hurt AI 8041 8041 ; 1Eh: Frozen AI 0000 0000 ; 20h: Time is frozen AI 0000 0000 ; 22h: Death animation 0000 0000 ; 28h: Power bomb reaction 0000 0000 ; 2Ah: Sidehopper variant index 8023 8023 ; 30h: Enemy touch 802D 802D ; 32h: Enemy shot AC8000 AC8000 ; 36h: Tile data 05 05 ; 39h: Layer F47C F47C ; 3Ah: Drop chances ($B4) EEC6 EEC6 ; 3Ch: Vulnerabilities ($B4) E0D1 E0D1 ; 3Eh: Enemy name ($B4) } ;;; Enemy vulnerabilities ;;; { ; Indestructible } ;;; Enemy drop chances ;;; { 00 ; Small health 00 ; Big health 00 ; Missiles FF ; 100.0% Nothing 00 ; Super missiles 00 ; Power bombs }