;;; General ;;; { Cacatac, spike shooting plant. Moves left and right, shoots spikes in five directions sometimes Enemy ID: $CFFF Bank: $A2 Enemy projectiles: $DAFE: Cacatac spike Parameter 0: Unused Parameter 1 low: Direction { 0: Left 1: Right 2: None } Parameter 1 high: Upside up flag { 0: Upside down 1: Upside up } Parameter 2 low: Max travel distance table index { 0: 10h 2: 40h 4: 50h 6: 60h 8: 70h Ah: 80h } Parameter 2 high: Speed table index. Range 0..40h. Speed = v * 0.1000h px/frame Properties must have process instructions bit set } ;;; Behaviour ;;; { } ;;; WRAM ;;; { $0FA8: Right subvelocity $0FAA: Right velocity $0FAC: Left subvelocity $0FAE: Left velocity $0FB0: Direction { 0: Left 1: Right 2: None } $0FB2: Function { $9FBA: Moving left $9FEC: Moving right $A01B: RTS } $7E:7800: Minimum X position $7E:7802: Maximum X position } ;;; Enemy population ;;; { ________________________________________ Enemy ID | __________________________________ X position | | _____________________________ Y position | | | _______________________ Initialisation parameter | | | | _________________ Properties. 2000h = process instructions | | | | | ____________ Extra properties | | | | | | ______ Parameter 1 | | | | | | | _ Parameter 2 | | | | | | | | ; Debug CFFF, 03D0,00B3, 0000, 2000,0000, 0100,0F01 ; Room $9FBA. n00b bridge CFFF, 00C0,00B3, 0000, 2000,0000, 0100,0301 CFFF, 01B0,00B3, 0000, 2000,0000, 0100,0301 CFFF, 0570,00B3, 0000, 2000,0000, 0101,0301 CFFF, 03D0,00B3, 0000, 2000,0000, 0100,0301 ; Room $A408. Pre spazer room CFFF, 0108,0193, 0000, 2000,0000, 0100,0200 ; Room $A322. Red Brinstar -> Crateria elevator CFFF, 0071,0473, 0000, 2000,0000, 0101,0300 CFFF, 00C0,0503, 0000, 2000,0000, 0100,0300 ; Room $A923. Norfair slope CFFF, 0C58,01E3, 0000, 2000,0000, 0100,0000 CFFF, 0CA8,01E3, 0000, 2000,0000, 0100,0000 ; Room $ACB3. Bubble Norfair mainstreet CFFF, 010C,0095, 0000, 2000,0000, 0100,0000 ; Room $D9FE. Maridia cacatac room west CFFF, 0048,00B4, 0000, 2000,0000, 0101,0000 CFFF, 00B0,0134, 0000, 2000,0000, 0101,0000 CFFF, 0068,01B4, 0000, 2000,0000, 0100,0000 CFFF, 00A0,004A, 0000, 2000,0000, 0000,0000 ; Room $DA2B. Maridia cacatac room east CFFF, 0180,0094, 0000, 2000,0000, 0101,0000 CFFF, 0290,00A4, 0000, 2000,0000, 0100,0000 CFFF, 0390,0104, 0000, 2000,0000, 0101,0000 CFFF, 02D0,01B4, 0000, 2000,0000, 0100,0000 CFFF, 00F0,015A, 0000, 2000,0000, 0001,0000 CFFF, 02D0,016A, 0000, 2000,0000, 0000,0201 } ;;; Enemy header ;;; { 0400 ; 0: Tile data size 9E6A ; 2: Palette 003C ; 4: Health 0014 ; 6: Damage 0008 ; 8: Width 0008 ; Ah: Height A2 ; Ch: Bank 00 ; Dh: Hurt AI time 0000 ; Eh: Cry 0000 ; 10h: Boss ID 9F48 ; 12h: Initialisation AI 0001 ; 14h: Number of parts 9FB3 ; 18h: Main AI 800A ; 1Ah: Grapple AI 804C ; 1Ch: Hurt AI 8041 ; 1Eh: Frozen AI 0000 ; 20h: Time is frozen AI 0002 ; 22h: Death animation 0000 ; 28h: Power bomb reaction 0000 ; 2Ah: Sidehopper variant index 8023 ; 30h: Enemy touch 802D ; 32h: Enemy shot ACE600 ; 36h: Tile data 05 ; 39h: Layer F2BA ; 3Ah: Drop chances ($B4) EC1C ; 3Ch: Vulnerabilities ($B4) E0C3 ; 3Eh: Enemy name ($B4) } ;;; Enemy vulnerabilities ;;; { ; Default } ;;; Enemy drop chances ;;; { 00 ; Small health 01 ; 0.4% Big health 00 ; Missiles 00 ; Nothing FE ; 99.6% Super missiles 00 ; Power bombs }