It is definitely much faster now! Before, each move would mean a 5 second pause, and each monster made 2 or 3 moves per turn. Now, choices are made without any noticeable lag (<200ms? I should measure it.. but it's so fast I don't care!) and the AI behavior sticks (mostly, perhaps there are some bugs) to what I expect.
The new strategy is a pretty simple tree, it looks like this:
I'm sure that doesn't make sense but basically it means, for each character, try to attack an enemy this turn by getting in range and using an ability. Once you can't use any more abilities this turn, prepare for next turn by moving towards or away from your enemies. (it's bad to be too close to your enemy because they can surround you, but you want to be close enough to attack them next turn if possible.) Once every team member has moved, end the turn.
More complicated abilities will probably have to modify this just a bit, but I think this should model most of the basic behavior we want from our AI. The great thing about the behavior tree model is how scalable it is. I can easily add more strategies as sub-trees, and then randomly select into them rather than the default, or even select into them based on other high-level criteria. I'm feeling good about the model and the performance.
Nothing particularly relevant here..
Onward to fun combat! I have some ideas for integrating character back stories into combat. The problem is that we want to have tons of interesting aspects that are applicable in certain contexts, without overwhelming the player with a vast ability menu. The idea I have in mind is a combination of the FATE spin/boost system and the stunt system from the Dragon Age table top RPG (I have not played but I watched this episode of TableTop. The idea is that when you attack, if you roll doubles (on 3d6) then you get to apply a bonus effect or two from the stunt table.
So the way I'm adapting that for Legacy is that instead of a crit chance and crit damage, you have a stunt chance that scales with the number of applicable aspects (and the situation), and when you stunt you apply a generic disadvantage on the target, along with some flavor text from the relevant aspect. (That's the part that is like FATE.) The temporary disadvantage is consumed in the next relevant interaction with that monster (when your ally attacks it, for example, or when it attacks on its turn) or at the end of your next turn.
The result, hopefully, will be to bring a character's background into the foreground in a way that is fun but not distracting or annoying. No huge menu full of situational abilities. Just a good chance that your background will have a positive (or negative!) effect during combat. With supporting flavor text.
So to that end I'm going to do some work on the character histories -- tying them to aspects, and revamping the combat roll. I may also revisit the longer-form histories that we used to have, since I think they are better suited to use as aspects.

