Please login or register.

Login with username, password and session length
Dokurider's Custom AoEs  (Read 7214 times)
Pages: 1 2 3 [4]
nitwit [Posts: 154]
  • View Profile
  • share
  • [March 11, 2017, 09:19:39 AM]
Re: Dokurider's Custom AoEs
« Reply #60 on: March 11, 2017, 09:19:39 AM »
Effective AI would make vanilla absurdly difficult.  Great job!
Internet Cool
Dokurider [Posts: 2801]
  • View Profile
  • http://steamcommunity.com/profiles/76561198023738783/
  • share
  • [April 10, 2017, 07:37:24 PM]
Re: Dokurider's Custom AoEs
« Reply #61 on: April 10, 2017, 07:37:24 PM »
Today I have some very basic AI fixes. I tested some of them, but they're such simplistic one line changes, they really shouldn't fail. Be sure to look at the descriptions of each hack because some of them will conflict if you aren't paying attention, but it should be pretty obvious which ones do.

I also recommend against implementing some of these hacks into your patch because they may end up making the AI overall worse rather than better. I only added them just so that people can mess around with it and at the end of the day, it's your call.

These changes are:

  • Correctly informs the AI that Throw Item range is 4 and not Move Range
  • Correctly informs the AI that Jump's CT is 50/SPD. I still have no idea what the original code was trying to do.
  • Correctly informs the AI about the existence of Weapon Elemental skills and that one can use them to heal themselves.
  • Correctly uses the correct flags for Short Charge and Non Charge (0x08 and 04 respectively, the original code was using 0x80 and 0x40, Monster Skill and Defend, a typo?) AND correctly calculates the new CT for short charge
  • AI will no longer wake up sleeping units with Jump.
  • AI will no longer add Protect/Shell/Wall/Reflect/Faith/Float while in critical
  • AI will now add Protect/Shell/Wall when at 50% HP. You may also use the hack that makes the AI use those status at any HP level (except critical), which is not recommended.
  • The AI will now use stat effecting skills 100% of the time. Previously, the AI would give itself a 50/50 chance of using stat skills. That being said, the AI has a very low priority on stat boosting skills to begin with, so usage rates will only increase slightly.
  • Optional hack: The AI will now use Reraise at any HP level. This is not a recommended hack.
  • Optional hack: The AI will now use Regen at any HP level. This is not a recommended hack.

EDIT: Oh and I threw in my AI Two Swords fix as well.
« Last Edit: April 11, 2017, 02:20:37 AM by Dokurider »
French Maid
Xifanie (Webmistress) [Posts: 4173]
  • View Profile
  • Final Fantasy Hacktics
  • http://steamcommunity.com/id/Xifanie
  • share
  • [April 10, 2017, 08:43:32 PM]
Re: Dokurider's Custom AoEs
« Reply #62 on: April 10, 2017, 08:43:32 PM »
Someone is actually using my spreadsheet.
I... so happy...

    • Modding version: PSX
  • <R999> My target market is not FFT mod players
    <Raijinili> remember that? it was awful
    May I kill him?
    Pride [Posts: 790]
    • View Profile
    • share
    • [April 10, 2017, 09:51:22 PM]
    Re: Dokurider's Custom AoEs
    « Reply #63 on: April 10, 2017, 09:51:22 PM »
     I'm using it too : )
    Internet Cool
    Dokurider [Posts: 2801]
    • View Profile
    • http://steamcommunity.com/profiles/76561198023738783/
    • share
    • [April 11, 2017, 07:43:46 AM]
    Re: Dokurider's Custom AoEs
    « Reply #64 on: April 11, 2017, 07:43:46 AM »
    Oh here's a late one I just made tonight, but it's too interesting to hold onto.

    These hacks allow the AI to see it's own procs. Yes you heard that right. What's more, I have two versions for the community to use because I wasn't sure which method to use.

    Version 1 makes the AI assume procs work 100% of the time.


    Version 2 makes the AI factor in proc rates. So in Vanilla, it will check it's own proc 0x0013% of the time.


    Both have their disadvantages and advantages and I will let the users decide which one they want to use.

    I don't have video proof, but I can offer how I determined with certainty that these hacks work:

    I set up a Thief with Punch Arts and Martial Arts with a modified Dagger that procs Wave Fist that is also flagged for all elements. I did same for all offensive Punch Arts except for Secret Fist. Secret Fist and Steal Heart I unflagged their Add Status property and flagged them for Target Ally use, ensuring they will never get used.

    So versus a Woodsman, under normal circumstances, the AI will only ever consider using Attack on the the target. Indeed, this was the case, with the only setbacks coming from when the proc triggered and healed the tree.

    When I activated Version 1, the AI refused to attack the target at all, finally seeing the proc and not wanting to attack at all. It spent the rest of the battle running away. When I deactivated the hack, the AI immediately resumed attacking the tree.

    When I activated Version 2, the AI attacked the target, but sometimes it would randomly run away, as I predicted it would. When I increased the proc rate, this behavior intensified, constantly running away like the Version 1 hack, but occasionally attacking.


    In either case, this hack leaves much to be desired. I would lean more towards Version 1, but I offer both. In the future, I would like to reduce the amount of damage/status priority that the procs cause by proc rate%. Something along those lines.
    nitwit [Posts: 154]
    • View Profile
    • share
    • [April 14, 2017, 05:02:19 AM]
    Re: Dokurider's Custom AoEs
    « Reply #65 on: April 14, 2017, 05:02:19 AM »
    So the AI needs to take into account how much healing would be done and how often it could happen in order for it to act intelligently?  If the amount of healing over say 8 attacks is less than the damage you'd deal (both at a given proc rate), there's no reason not to attack.

    Does the AI set attacks that have any possibility of healing as least priority?  Given that you won't often have a situation where the AI has so few options, it might be acceptable to have sub-optimal behavior.

    Or the AI can be maximally conservative and never take that risk, in which case elemental defenses becomes a way of removing options for enemies or herding them towards PCs with vulnerability or weaknesses to their strongest abilities... it's something else to consider.  How could you exploit a maximally conservative AI?
    « Last Edit: April 14, 2017, 11:52:24 AM by nitwit »
    • Modding version: PSX
  • Internet Cool
    Dokurider [Posts: 2801]
    • View Profile
    • http://steamcommunity.com/profiles/76561198023738783/
    • share
    • [April 14, 2017, 02:37:40 PM]
    Re: Dokurider's Custom AoEs
    « Reply #66 on: April 14, 2017, 02:37:40 PM »
    So the AI needs to take into account how much healing would be done and how often it could happen in order for it to act intelligently?  If the amount of healing over say 8 attacks is less than the damage you'd deal (both at a given proc rate), there's no reason not to attack.

    Does the AI set attacks that have any possibility of healing as least priority?  Given that you won't often have a situation where the AI has so few options, it might be acceptable to have sub-optimal behavior.

    Or the AI can be maximally conservative and never take that risk, in which case elemental defenses becomes a way of removing options for enemies or herding them towards PCs with vulnerability or weaknesses to their strongest abilities... it's something else to consider.  How could you exploit a maximally conservative AI?

    I should have mentioned that the sheer amount of damage (healing) this proc did was absurd: 400+ damage vs 100 damage just with the weapon alone. So the only conclusion you should be drawing from this is how the AI reacts to being able to see their own procs.

    I would really just recommend messing around with it yourselves. Even if I recorded a video, it's not an easy concept to understand or explain in a few sentences.
    Internet Cool
    Dokurider [Posts: 2801]
    • View Profile
    • http://steamcommunity.com/profiles/76561198023738783/
    • share
    • [May 01, 2017, 02:52:34 AM]
    Re: Dokurider's Custom AoEs
    « Reply #67 on: May 01, 2017, 02:52:34 AM »
    Today, I have a couple of new hacks and one update for everyone, but I don't have enough to detail how they work today.

    The first and main feature hack now reverses the Critical AI's distance feature. Instead of moving away from allies healers, the AI will instead move closer to them. Yes, in fact, this was in the game this whole time, I just turned in one with one line of code. For a better explanation, check the hack description or wait until I post an in-depth explanation.

    The second hack is actually an update. It's a much more efficient fix for the Stat Usage hack. It's still has little appreciable effect on actual usage unless paired with the next and last hack.

    Lastly, this Low Priority Hack allows for abilities that have no real AI handling to be used by the AI in place of doing nothing. This mostly applies to Stat Boosting abilities, such as Accumulate. In Vanilla, the AI will only use Accumulate with this hack because it, Yell and Scream have the same priority, but Accumulate is the first added to the data bank, so it only uses Accumulate unless not learned.

    Shoot me any questions, and I'll answer them a little later on in the week.

    EDIT: Attached the correct file...
    Sinners Needs No Mercy Or Symphaty!
    LohikaarmeX [Posts: 16]
    • View Profile
    • share
    • [May 08, 2017, 01:50:36 AM]
    Re: Dokurider's Custom AoEs
    « Reply #68 on: May 08, 2017, 01:50:36 AM »
    Really amazing work here. I can see that the AI fixes gonna make the game more enjoyable.

    But i got a question about the Cone AoE

    Let's say that i want to make a skill, like a sword slash that goes all horizontal range (Not like Holy Explosion).

    Something like this

    P T T T P               P= Panel
         P                    T= Target
         P                    C= Caster
         P
         C



    Can i make it with this hack?
    Internet Cool
    Dokurider [Posts: 2801]
    • View Profile
    • http://steamcommunity.com/profiles/76561198023738783/
    • share
    • [May 08, 2017, 02:49:36 AM]
    Re: Dokurider's Custom AoEs
    « Reply #69 on: May 08, 2017, 02:49:36 AM »
    The Cone AoE hack only makes Cone AoE.
    I have no issues with you modifying it, in which case then yes, it can be (heavily) modified to become what you described.
    Internet Cool
    Dokurider [Posts: 2801]
    • View Profile
    • http://steamcommunity.com/profiles/76561198023738783/
    • share
    • [May 09, 2017, 06:53:34 PM]
    Re: Dokurider's Custom AoEs
    « Reply #70 on: May 09, 2017, 06:53:34 PM »
    Today I have some more AI Movement hacks.

    The first hack changes the AI's primary tendency from move away from their targets during Post Action, to remaining close to the target.

    The second hack changes the way the Post Movement Decision Routine processes panels. That way, both the Pre and Post Action Movement Routines are more likely to arrive at the same conclusion. This means that the AI is more likely to stay in place and less likely to move around unnecessarily.

    Combine the two hacks and you have an AI that moves around less. I find the results surprisingly underwhelming. The AI just end up smashed together in the middle of the map. Then again, the end results are probably more impactful vs human players.
    « Last Edit: May 09, 2017, 11:18:57 PM by Dokurider »
    Internet Cool
    Dokurider [Posts: 2801]
    • View Profile
    • http://steamcommunity.com/profiles/76561198023738783/
    • share
    • [May 12, 2017, 02:40:12 PM]
    Re: Dokurider's Custom AoEs
    « Reply #71 on: May 12, 2017, 02:40:12 PM »
    http://www.youtube.com/watch?v=b6ZNr6_OaOk


    Okay lemme explain now.

    The game has three modes of simulation. The first mode is the real one. What it uses to do actual damage and statuses to actual units. The second mode is the AI simulation, and the third is for the damage display billboard (before you make an attack). The two non real modes often manipulates anything that is based on chance to either auto succeed or auto fail. In the case of AI mode, the manipulation goes further than that, at least, when it comes to Reactions.

    The AI mode denies access to even starting reactions to begin with, with one major exception, which I'll get to in a minute. Fortunately, this is a one line check and is easily disabled to allows the AI to see and take into account Reactions.

    However, there is a few caveats. For one, which caught me offguard, is that the Reaction routine doesn't inherently check if the target is dead. What ends up happening, is that dead targets can react. I haven't observed them being able to damage their killers, but they can add Reraise to themselves at least, which is very annoying. So I had to replace the mode check with a dead check.

    Why was this originally allowed, you ask? Because Dead units can and do react. How? Reflect. Reflect is coded as a reaction. It is the only reaction in the game that the AI is allowed to see and think about, and it is the only Reaction that dead units are allowed to perform. They allowed this so that Reflecting off of Dead units was possible.

    Secondly, the AI is pretty strict about reactions. If it's a result that they can quantify, like Auto Potion, they will abide by it by sheer arithmetic. If they cannot deal enough damage to overcome Auto Potion, then they will not attack that target with damage at all, unless it's fatal damage. Which, for the most part, is good. However, the same principal applies to other Reactions like Counter. If they cannot outdeal the damage they will take back, they will not attack a Counter unit.

    Even Dragon Spirit can make a target untargetable by anything that can't overcome the priority value that Reraise provides. Of course, once it's triggered, it's open season on the Dragon Spirit unit. And mind you, Priority Value is proportional to the target's HP, so the more HP the target has, the more damage a unit has to have to be allowed to attack a target. So you might end up with a nightmare scenario with a single unit that's considered untargetable by any single AI enemy unit in play.

    And yes, the AI does take into consideration taking fatal damage. In fact, it'll avoid taking damage that would push it into critical or near critical.

    There are many more reaction interactions that this hack opens up. I will leave finding them up to the community. In the mean time, I will note that it's not perfect, but most of the issue lies with the AI's priority system, which needs an overhaul. Unlike most of the hacks I've published on the AI so far, this will not be a one line change. The priority system is the core of the AI. It is the base of which the AI functions off of. And it must be rewritten extensively. As a result, I will be saving that rewrite for last. Until then, I'll will be fixing and exploring other AI issues.

    As always, try it out and let me know of any bugs. Thank you.
    « Last Edit: May 13, 2017, 03:59:23 PM by Dokurider »
    Pages: 1 2 3 [4]