How many characters are left?
Which characters can kill you?
Which characters can you kill in one attack?
Etc
It may sound like a lot when you type it in text, but I don't think it is very advanced AI scripting, nor do I think it would be something that difficult to actually implement.
I believe simpler AI was a conscious decision on the part of the devs to have the game be more accessible, in the same realm as why there is no evasion/accuracy, limits on ability/attack usage, etc.
I don't think you understand what I'm saying. The conditions are only one element in the AI logic. What you do with the conditions is what matters.
"How many characters are left?" -> how do you use this result alone to calculate an action? You can't, it's worthless without context. For this to be worthwhile tracking at all, you would need to be prepared to design the logic flow for a bunch of outcomes involving what to do depending whether there are:
a) multiple player characters alive, multiple enemy characters alive
d) multiple player characters alive, only 1 enemy character alive
c) only 1 player character left alive, multiple enemy characters alive
d) only 1 player character left alive, only 1 enemy character alive
This is the most basic series of condition sets. That quadruples all possible decisions at any given time. The same is true for all additional conditions being tracked. The more you track, the more logic is involved. This isn't really hard to do or super advanced AI, but it gets exponentially more complicated to a point where it is just not worth it unless you want to create a hardcore experience. And honestly, if we're talking about a hardcore experience, before any AI tuning, the first thing I would change are fundamental game design elements like death penalty which changes the way the player approaches the game rather than how the game reacts to the player. Which is what I suggested to begin with!