• Add Review
  • Subscribe
  • Nominate
  • Submit Media
  • RSS

Excuse the vent

  • Marrend
  • 07/03/2016 03:00 PM
  • 866 views
What, exactly, can I do, or for, to this game? I'm not sure I can do a heck of a lot in regards to the AI doing hit-and-run tactics. That's been a fairly consistent point against this game, and the only answer I can think of is to reduce the enemy's movement by one? I'm aware that GubiD's script does allow for some customization of AI behavior, and I'm almost sure I played around with it during various tests. I might need to re-visit this possibility. My initial tweaks/tests might not have been enough to make a difference, which might be why I chose not to bother with customizing the AI.

As for making abilities interesting, my hands are tied there as well. I've never seen enemies target themselves with ally-targeting abilities and what self-only abilities I've attempted to make for them have never been seen either. This propensity was mentioned in my first blog, and I've done my best to plan around it. However, it's still exceptionally frustrating when I see an Engineer, or Scout, use an armor-restoration skill on something else, when that Engineer, or Scout, is at critical damage. It's not that the unit that it's targeting might not need it, but, the logic of "never target self ever" just... URRRRRRRGGGGGH!



Anyway, this is the only game I've got on my palette now. I'm not sure what the second mission will consist of, or what kinds of things I should give players in regards to a set of programs that would unlock after the first mission succeeds. Those two factors will be the bare minimum for a new release to come out. The other factors I mentioned here? I've done some pretty crazy things, and some solutions I enjoyed doing/implementing less than others. Maybe whatever I come up will fall into the "solutions I dislike" category. Maybe it won't. I suppose we'll just see, when a solution comes, even if whatever I come up with boils down to "Welp, I guess I'll just have to work around this pile of jank!"

Posts

Pages: 1
Marrend
Guardian of the Description Thread
21781
I've an interesting find to report in regards to customizing the AI. So, let me show you a small portion of a function.

class Game_Action
  def tbs_tactic_rate
    tactic = GTBS_Tactics::All_AI_Tactics[  (battler.ai_tactic or 'default') ]
    # There is more to this function, but, this is the most relevant part.

What this is supposed to do is, if the battler's AI tactic is left undefined in the note-box, it reverts to the default AI. However, when I did define it, the program throws an exception. This is what I'm seeing happening when I set the Trooper's AI to the 'attack' tactic in it's note-box:

msgbox(battler.ai_tactic)
# This displays 'attack', as it should.
msgbox(GTBS_Tactics::All_AI_Tactics[battler.ai_tactic])
# This displays nil, and thus, throws an exception later on in the function.
msgbox(GTBS_Tactics::All_AI_Tactics['attack'])
# This displays an indication that the result is an instance of the GTBS_Tactics module.

Even performing the ".to_s" operator on battler.ai_tactic still seems to return nil. So, like, the only way I can see this working is if there is some kind of case-statement based on the value of battler.ai_tactic, and doing something like tactic = "GTBS_Tactics::All_AI_Tactics['attack']", or what-have-you, for each possible value? Am I missing something? Is the way this is written actually supposed to work, and my version of VX Ace doesn't support it, despite the fact that it's only a year or two old? I dunno. It just doesn't seem worth my while to fight with this.
Pages: 1