;;; General ;;; { Spike platform top. Falls and rises Spike platform bottom. Has no effect Enemy ID: $DFFF: Spike platform top $E03F: Spike platform bottom Bank: $A6 Enemy projectiles: None Parameter 0: Unused Parameter 1 low: Speed table index. Range 0..40h. Speed = v * 0.1000h px/frame Parameter 2 low: Wait timer Parameter 2 high: Max travel distance. Unit px Properties must have process instructions bit set There's no reason to place spike platform bottom, but if placed, if must follow spike platform top } ;;; Behaviour ;;; { } ;;; WRAM ;;; { $0FA8: Function { $8BB4: Waiting to fall $8BDC: Falling $8C4A: Waiting to rise $8C5D: Rising } $0FAA: Fall wait timer $0FAC: Rising target Y position $0FAE: Falling target Y position $0FB0: Initial falling Y subspeed $0FB2: Initial falling Y speed $7E:7800: Fall wait timer reset value $7E:7802: Previous Y position $7E:7804: Falling Y speed table index $7E:7806: Rise wait timer } ;;; Enemy population ;;; { ________________________________________ Enemy ID | __________________________________ X position | | _____________________________ Y position | | | _______________________ Initialisation parameter | | | | _________________ Properties. 8000h = solid enemy, 2000h = process instructions, 800h = process whilst off-screen, 100h = invisible | | | | | ____________ Extra properties | | | | | | ______ Parameter 1 | | | | | | | _ Parameter 2 | | | | | | | | ; Debug DFFF, 0480,0400, 0000, A000,0000, 0030,A070 ; Spike platform top E03F, 0480,0408, 0000, 0100,0000, 0000,0000 ; Spike platform bottom ; Room $B5D5. Lower Norfair spike platform room DFFF, 0180,025C, 0000, A000,0000, 0040,5070 ; Spike platform top E03F, 0180,0264, 0000, 0100,0000, 0000,0000 ; Spike platform bottom DFFF, 0180,015C, 0000, A000,0000, 0040,8070 ; Spike platform top E03F, 0180,0164, 0000, 0100,0000, 0000,0000 ; Spike platform bottom ; Room $CAF6, state $CB08. Wrecked Ship mainstreet - default DFFF, 0260,0558, 0000, A000,0000, 0000,0000 ; Spike platform top E03F, 0260,0560, 0000, 0100,0000, 0000,0000 ; Spike platform bottom DFFF, 01C0,0558, 0000, A000,0000, 0000,0000 ; Spike platform top E03F, 01C0,0560, 0000, 0100,0000, 0000,0000 ; Spike platform bottom DFFF, 0120,0558, 0000, A000,0000, 0000,0000 ; Spike platform top E03F, 0120,0560, 0000, 0100,0000, 0000,0000 ; Spike platform bottom DFFF, 0080,0558, 0000, A000,0000, 0000,0000 ; Spike platform top E03F, 0080,0560, 0000, 0100,0000, 0000,0000 ; Spike platform bottom ; Room $CB8B, state $CBB7. Wrecked Ship spike platform hall - main area boss is dead DFFF, 0050,0060, 0000, A800,0000, 0040,6810 ; Spike platform top E03F, 0050,0068, 0000, 0100,0000, 0000,0000 ; Spike platform bottom DFFF, 00A0,0060, 0000, A000,0000, 0040,680C ; Spike platform top E03F, 00A0,0068, 0000, 0100,0000, 0000,0000 ; Spike platform bottom DFFF, 0100,0060, 0000, A800,0000, 0040,6811 ; Spike platform top E03F, 0100,0068, 0000, 0100,0000, 0000,0000 ; Spike platform bottom DFFF, 0160,0060, 0000, A000,0000, 0040,680A ; Spike platform top E03F, 0160,0068, 0000, 0100,0000, 0000,0000 ; Spike platform bottom DFFF, 01B0,0060, 0000, A800,0000, 0040,6814 ; Spike platform top E03F, 01B0,0068, 0000, 0100,0000, 0000,0000 ; Spike platform bottom ; Room $CAF6, state $CB22. Wrecked Ship mainstreet - main area boss is dead DFFF, 0260,0558, 0000, A000,0000, 0020,5030 ; Spike platform top E03F, 0260,0560, 0000, 0100,0000, 0000,0000 ; Spike platform bottom DFFF, 01C0,0558, 0000, A000,0000, 0020,5030 ; Spike platform top E03F, 01C0,0560, 0000, 0100,0000, 0000,0000 ; Spike platform bottom DFFF, 0120,0558, 0000, A000,0000, 0020,5030 ; Spike platform top E03F, 0120,0560, 0000, 0100,0000, 0000,0000 ; Spike platform bottom DFFF, 0080,0558, 0000, A000,0000, 0020,5030 ; Spike platform top E03F, 0080,0560, 0000, 0100,0000, 0000,0000 ; Spike platform bottom } ;;; Enemy header ;;; { __________ Spike platform top | ___ Spike platform bottom | | 0400 0200 ; 0: Tile data size 8B09 8B09 ; 2: Palette 01F4 01F4 ; 4: Health 00C8 00C8 ; 6: Damage 0010 0010 ; 8: Width 000C 0002 ; Ah: Height A6 A6 ; Ch: Bank 00 00 ; Dh: Hurt AI time 0000 0000 ; Eh: Cry 0000 0000 ; 10h: Boss ID 8B2F 8B85 ; 12h: Initialisation AI 0002 0001 ; 14h: Number of parts 8BAD 8B99 ; 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 804C 804C ; 32h: Enemy shot AB9800 AB9800 ; 36h: Tile data 05 05 ; 39h: Layer F470 F470 ; 3Ah: Drop chances ($B4) EEC6 EEC6 ; 3Ch: Vulnerabilities ($B4) DF49 0000 ; 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 }