Enemy AI
From Chrono Compendium
Notes on Enemy AI are currently incomplete; eventually, data will be decoded and added into Temporal Flux for functionality. Enemy AI information will be updated as new stuff comes.
Directly from Geiger's Offsets.txt ___________________________________________________________________ 0C8B08 0C8D07 PTR No No Pointers to Enemy AI (local) 6/21/2004 0C8D08 0CCBC8 AI No No Enemy AI 7/14/2003 ___________________________________________________________________ WaddlerD's conversation to me: ___________________________________________________________________ WaddlerD 85: The AI tactics is quite interesting. WaddlerD 85: All the monsters has 2 main patterns. WaddlerD 85: A "normal", move on will pattern and a "counter, move with the response of an attack or action, pattern. WaddlerD 85: It's always seperated by FE FF WaddlerD 85: The stuff between the FE FF is simple and complicated in a way. WaddlerD 85: The first 4 bytes are ALWAYS to going to be a precondition. WaddlerD 85: followed by a FE WaddlerD 85: to seperate the precondition from the actual actions. WaddlerD 85: I haven't found out all the preconditions yet, as there are quite a few, but usually 00 00 00 00 is the default. WaddlerD 85: As it means, "If the monster is alive" probaby. WaddlerD 85: probably* WaddlerD 85: You can put more than one precondition in a pattern, though. WaddlerD 85: Like for instance. WaddlerD 85: FE FF 00 00 00 00 FE Blah blah blah FE 00 00 00 00 FE Blah Blah FE FF <--- Normal attack pattern WaddlerD 85: The four bytes. WaddlerD 85: Though it's also good to know that the precondition can be expanded into some big "and" precondition. WaddlerD 85: Like for instance 01 03 00 00 15 40 00 00 = "When HP is at 50% AND Monster is hit with Shadow based elemental attack. WaddlerD 85: There is quite a few interesting preconditions that I found out so far. WaddlerD 85: Somewhat sloppy, but it should be good enough WaddlerD 85: Byte #1: 00 = No Attack 01 = Attack Byte #2: 00 = Normal Attack 01 = Secondary Attack Byte #3: (Target?) Byte #4: Animation that is done before attack 01 = Up Close 04 = Stand Still Action 0A = Circle around 0E = Going Astray 02 XX 05 XX XX XX Byte #1: 02 = Techs/Magic Byte #2: XX = Attack Type Byte #3: Targeting style? Byte #4: Double Tech targeting? Byte #5: Triple Tech targeting? Byte #6: Message 0A XX XX Byte #1: 0A = Disables Enemy XX = Special Attack XX = Message 0B XX XX 00 XX Byte #1: 0B = Setting Stat Byte #2: XX = Stat Type Byte #3: XX = Stat set Byte #4: 00 = ? Byte #5: XX = Message 0C 3D XX XX Byte #1: 0C = Adding Stat Byte #2: 3D = Offense 39 = Magic 3B = Evade 38 = Speed 3E = Defense 3F = Lightning Defense 40 = Shadow Defense 41 = Water Defense 42 = Fire Defense Byte #3: Increment Byte #4: Message 0D XX 0F XX Byte #1: 0F = Message Enable Byte #2: XX = Message Attack/Counterattack Preconditions 15 XX = Counters with Type of Attack 20 00 00 00 = Final Attack 17 XX 00 00 = Chances Pattern will be used 1F 04 XX 00 = Distance 07 01 00 00 = Custom Pattern is active 11 00 00 00 = Physical Attack 12 XX 01 = Magic Attack 01 03 = HP is at 50% 05 XX = Number of Monsters in battle WaddlerD 85: Here's the first bit of attacks that I have found out. WaddlerD 85: 00 = Flash 01 = Enemy Cure (Target problems, they cure YOU...) 02 = Lock 03 = Bird Screech 04 = Slow Gas Attack 05 = Nagaette's Slow Spell 06 = Mune Attack 07 = Jump n' Land Strike 08 = Sleep Wave 09 = Dust Breath Attack 0A = Fire Breath Attack 0B = Grinder Plowing Attack 0C = Dragon Tank Missile Salvo 0D = Bubble 0E = Yakra's Needlespin 0F = Sleep Bomb 10 = Cybot Singing 11 = Spewing Volcano 12 = Rasp 13 = Venomous Gas 14 = Laser Beam 15 = Laser Beam Again 16 = Missile Salvo 17 = Orb Bomb 18 = Area Bomb 19 = Amplifire 1A = Delta Attack 1B = Ink Blast 1C = Harmful Gas 1D = Attack, Attack, Attack/Bugged 1E = Chaos Bell 1F = Azala Break 20 = Yes Indeed! 21 = Whirlwind Dance/Bugged Alone 22 = X-Strike/Bugged Alone 23 = Whirlwind Blast 24 = Less Hitting Poison Gas 25 = Fire Trail or Enemy Fire 1 26 = Pushback Attack 27 = Static Shock (ALL) 28 = Static Shock (ONE) 29 = Shower 2A = Enemy Ice 1 2B = Enemy Lightning 1 2C = Self-Destruct 2D = Nuke 2E = Bugged? 2F = Point Flare WaddlerD 85: Found out another precondition. WaddlerD 85: I think 40 00 XX 01 points out "When Monster XX is dead" WaddlerD 85: So if you put 40 00 CF 01 in there, it says "When Monster "Bit" is dead", do this. WaddlerD 85: Ok, should be simple enough. WaddlerD 85: You know though... WaddlerD 85: There may be something more than what I put down for 1F 04 XX XX WaddlerD 85: A lot more... WaddlerD 85: Because Gato has 1F 06 00 00 for his counter attack precondition... WaddlerD 85: Well, 1F usually deals with distance WaddlerD 85: So I guess the three bytes after it have to do with something...
From: Offsets (Chrono Trigger)