FF6 Hacking
Monster AI Upgrade patch - Printable Version

+- FF6 Hacking (https://www.ff6hacking.com/forums)
+-- Forum: Hacks, Resources and Tutorials (https://www.ff6hacking.com/forums/forum-1.html)
+--- Forum: Jidoor Auction House (https://www.ff6hacking.com/forums/forum-4.html)
+---- Forum: Patches, Bugfixes, Tweaks (https://www.ff6hacking.com/forums/forum-15.html)
+---- Thread: Monster AI Upgrade patch (/thread-2673.html)

Pages: 1 2 3


RE: Monster AI Upgrade patch - Gi Nattak - 05-10-2016

These FC command ideas from this thread at Slick Productions, by CurlyLover (reply #5) are pretty good as well:
http://slickproductions.org/forum/index.php?topic=1414.0

Some of those would be awesome to have included with this (Edrin's) AI Upgrade patch, should it ever get another large update.


RE: Monster AI Upgrade patch - dn - 05-10-2016

Keep in mind there's only so much space in C2. PB actually has a completely rewritten C2 bank, which is why they have more space to work with.


RE: Monster AI Upgrade patch - seibaby - 05-10-2016

Well, there are always long jumps, right?

Here are some of the ideas in that thread that I thought made sense.

Code:
FB    Misc
      Modify Own Data        08    (Stat)    (Value)
      Gain/Lose status       09    (00/01)   (Status)
      
      (Stat) is the same as the monster data byte in RAM
      
      (which means you can set/remove status protections,
       change elemental reactions, set LV, HP, MP, Def,
       Mdef, Evade, Mblock, Batpwr, Speed, Hit Rate, EXP,
       GP, Control attacks, Sketch attacks, Attack graphic,
       !Special attack, !Special attack graphic,
       Metamorph chance/items, on the fly!)
            
      This one is so incredibly powerful. With this, you
      can make monsters that level up, change modes,
      even monsters that empty out their Steal slots
      or their money by Throwing weapons/using Items
      or using GP Rain.
      I especially like the potential for Sketch: you
      could have a monster react to Sketch by
      changing their own Sketch commands.
      
      Or you could make monsters that give bonus EXP
      and GP if you defeat them in a certain way or
      within a certain time. The possibilities are huge.

      (Status) isn't the same as FB 0C/OD ["Gain/Lose
      status"]. That one normally sets both Status and
      Immunity, meaning it's "Gain unremovable status".
      While gaining removable statuses is normally done
      via spells, it might be useful to be able to do it
      silently.)

FC    If...                        
      Steal slot is empty    30    (Slot)     00
      Target is controlled   31    (Target)   00  
      Formation pack zoning  32    (Zone)     00
      Target Level >         33    (Target)   (Level)
      Target Level <         34    (Target)   (Level)
      
      * 00 = higher than, 01 = lower than
      (I think it only makes sense to check Self for
       Steal, so it doesn't need a Target byte)

      The pack zoning one is interesting but can be
       achieved with the normal "If monster is in
       formation #". It might be a way to have the
       same monsters behave differently in different
       areas without using up formation slots though.



RE: Monster AI Upgrade patch - B-Run - 05-12-2016

There's plenty of room for growth, I left space at the end of the expanded pointer lists for additions, by all means, dive in! figure some stuff out! if it all works I could roll it into the next release and label you a contributor!

One thing I think I will definitely put in the next revision is basically a "do anything" command that the parameters basically give the code an address to run in the ROM, you could put any code any where, and if you needed parameters for THAT code, just set it up ahead of time with battle variables... or put the address in battle variables and the parameters you put in the operator would be the parameters read by the code you make... either way, its basically a way to do any random specific thing without adding a bajillion bonus pointers in the table.


RE: Monster AI Upgrade patch - seibaby - 05-12-2016

Oh, yeah, I didn't mean to imply that I'm listing all these things only as requests. If I find the time to contribute to the patch (thanks for the invitation!) I'd like to have the ideas put down on paper somewhere. Smile


RE: Monster AI Upgrade patch - Tenkarider - 05-12-2016

Quote:One thing I think I will definitely put in the next revision is basically a "do anything" command that the parameters basically give the code an address to run in the ROM, you could put any code any where, and if you needed parameters for THAT code, just set it up ahead of time with battle variables... or put the address in battle variables and the parameters you put in the operator would be the parameters read by the code you make... either way, its basically a way to do any random specific thing without adding a bajillion bonus pointers in the table.
Hey, this one looks similar to one custom command i already implemented in CotG... so it would also be able to jump in an already existent function of the game without risking to crush the game due to a failed attempt to jump back after that function is executed?


RE: Monster AI Upgrade patch - Imzogelmo - 05-24-2016

Idea:

Fx YY ZZ ZZ - Run command script for monster ZZZZ for YY loops.
This would require usurping one of the battle variables (#36, which is independent for each monster, works) and every time you get to command FF, decrease it by one (with a floor of 0).

Also note that there's no reason there can't be more scripts than monsters... Just my 2 cents.


RE: Monster AI Upgrade patch - B-Run - 05-24-2016

(05-12-2016, 01:58 PM)B-Run Wrote: One thing I think I will definitely put in the next revision is basically a "do anything" command that the parameters basically give the code an address to run in the ROM, you could put any code any where, and if you needed parameters for THAT code, just set it up ahead of time with battle variables... or put the address in battle variables and the parameters you put in the operator would be the parameters read by the code you make... either way, its basically a way to do any random specific thing without adding a bajillion bonus pointers in the table.

Oooo... quoting myself here cause I just thought of an idea. using this kind of thing I could set some standard event bits which could increase the possible branching paths after battle... so depending on your performance or what triggers you get during the battle, it could significantly change your game after the battle.

...just think of a fight where if you don't keep an optional character alive, you lose them in your party FOR REAL. or even have it cause things like forgetting magic (maybe the monster seals your magic), or maybe it keeps score for a boss rush kind of deal...

Imzogelmo Wrote:Fx YY ZZ ZZ - Run command script for monster ZZZZ for YY loops.
This would require usurping one of the battle variables (#36, which is independent for each monster, works) and every time you get to command FF, decrease it by one (with a floor of 0).

Also note that there's no reason there can't be more scripts than monsters... Just my 2 cents.

I'll have to look into this.

Man, i need to set aside time to do some non-stream hacking so i can get some updates done on this.


RE: Monster AI Upgrade patch - Lord Envoy - 01-25-2017

This is amazing.. however, the one command I'm still yearning for is the command to change the monsters sprite. Perhaps in different ways, such as fading in and out, flashing, or alternating between the two sprites for a few seconds until the new sprite takes affect. To me that is a gold mine of new monster AI designs. Using "call to formation" can sort of work, but it isn't seamless and the main sprite disappears before the new one takes it's place.

[Image: 8noRfZi.gif]


RE: Monster AI Upgrade patch - B-Run - 02-04-2017

I'm sure its possible... tho I don't know about fading in and out... but some sort of visual sprite change that doesn't feel totally blunt or abrupt... It would probably take a lot of research, but I'll look into it if I pick this up again...

...In the meantime, if you use any of the medium sprite sizes, you can put them in the same formation and hide one then have them alternate to create the same effect.