;;; General ;;; { Alcoon, walking dragon. Emerges from the ground when Samus gets near, walks and shoots fireballs, hides if Samus gets far Enemy ID: $E9BF Bank: $A8 Enemy projectiles: $9E90: Alcoon fireball Parameter 0: Unused Parameter 1: Unused Parameter 2: Unused } ;;; Behaviour ;;; { } ;;; WRAM ;;; { $0FA8: Function { $DD71: Wait for Samus to get near $DDC6: Emerging - rising $DE05: Emerging - falling $DE4B: Emerged $DECC: RTL $DECD: Hiding - rising $DEEC: Hiding - falling } $0FAA: Y velocity $0FAC: Y subvelocity $0FAE: X velocity $0FB2: Spawn Y position $7E:7800: Y acceleration $7E:7802: Y subacceleration $7E:7804: Spawn X position $7E:7806: Landing Y position $7E:7808: Step counter } ;;; Enemy population ;;; { ________________________________________ Enemy ID | __________________________________ X position | | _____________________________ Y position | | | _______________________ Initialisation parameter | | | | _________________ Properties. 2000h = process instructions, 800h = process whilst off-screen | | | | | ____________ Extra properties | | | | | | ______ Parameter 1 | | | | | | | _ Parameter 2 | | | | | | | | ; Debug E9BF, 0100,0100, 0000, 2800,0000, 0000,0000 ; Room $93AA. Landing site power bombs cave E9BF, 0088,00D8, 0000, 2800,0000, 0000,0000 E9BF, 0108,00D8, 0000, 2800,0000, 0000,0000 E9BF, 0178,00D8, 0000, 2800,0000, 0000,0000 ; Room $B510. Lower Norfair spring ball maze room E9BF, 0100,0200, 0000, 2800,0000, 0000,0000 E9BF, 0151,0200, 0000, 2800,0000, 0000,0000 E9BF, 0060,0200, 0000, 2800,0000, 0000,0000 E9BF, 0198,00D8, 0000, 2800,0000, 0000,0000 E9BF, 03FB,04C9, 0000, 2800,0000, 0000,0000 ; Room $AD5E. Alcoon shaft E9BF, 0080,0338, 0000, 2800,0000, 0000,0000 E9BF, 0080,0238, 0000, 2800,0000, 0000,0000 E9BF, 00D8,0138, 0000, 2800,0000, 0000,0000 E9BF, 0088,0138, 0000, 2800,0000, 0000,0000 } ;;; Enemy header ;;; { 0800 ; 0: Tile data size DBC7 ; 2: Palette 00C8 ; 4: Health 0032 ; 6: Damage 0008 ; 8: Width 0018 ; Ah: Height A8 ; Ch: Bank 00 ; Dh: Hurt AI time 005F ; Eh: Cry 0000 ; 10h: Boss ID DCCD ; 12h: Initialisation AI 0001 ; 14h: Number of parts DD6B ; 18h: Main AI 800F ; 1Ah: Grapple AI 804C ; 1Ch: Hurt AI 8041 ; 1Eh: Frozen AI 0000 ; 20h: Time is frozen AI 0004 ; 22h: Death animation 0000 ; 28h: Power bomb reaction 0000 ; 2Ah: Sidehopper variant index 8023 ; 30h: Enemy touch 802D ; 32h: Enemy shot B1E200 ; 36h: Tile data 05 ; 39h: Layer F2EA ; 3Ah: Drop chances ($B4) EE2C ; 3Ch: Vulnerabilities ($B4) DFD5 ; 3Eh: Enemy name ($B4) } ;;; Enemy vulnerabilities ;;; { ; Vulnerability format: ; v = fddddddd ; If v = FFh: ; Freeze, no damage ; Else: ; d: Damage multiplier * 2 ; f: Does not freeze 02 ; Power 02 ; Wave 02 ; Ice 02 ; Ice + wave 02 ; Spazer 02 ; Spazer + wave 02 ; Spazer + ice 02 ; Spazer + ice + wave 02 ; Plasma 02 ; Plasma + wave 02 ; Plasma + ice 02 ; Plasma + ice + wave 04 ; Missile 04 ; Super missile 02 ; Bomb 02 ; Power bomb 02 ; Speed booster 02 ; Shinespark 02 ; Screw attack 02 ; Charged beam 02 ; Pseudo screw attack 02 ; Unused } ;;; Enemy drop chances ;;; { 01 ; 0.4% Small health 00 ; Big health 00 ; Missiles 00 ; Nothing 00 ; Super missiles FE ; 99.6% Power bombs }