I’ve sent a new version of the toolkit to Epic. The major change in this version is a modification to the ActionQueue system that allows you to insert new actions into the action queue while it is being animated. This is very useful for actions that interrupt other actions, such as overwatch shots, spike traps and the like. It seems to work pretty well, but I have one remaining concern. Early in testing I encountered a bug that prevented the action system from continuing during combat. I have not been able to replicate this issue, but neither do I feel that any of the changes I later made should be sufficient to prevent such a bug from occurring. As such I’ve included abilities and actions that use the new ActionQueue options in the experimental folder for now.
Now I’ve begun refactoring the Turn Manager, which is well overdue. If the bug I observed still remains I expect it is tied to the Turn Manager somehow, so refactoring this would also likely resolve this issue.
I’ve first tried to make the Turn Manager more flexible by trying to take into account several kinds of initiative systems in a single blueprint. It quickly became apparent that this would be messy, however. I’ve instead opted for creating child blueprint options that override various turn order functionality as needed. I’m a bit uncertain what I want to have as the default, though. The original toolkit had a very D&D-style initiative system where everyone goes in order without switching between units, and where units act in an order determined solely by their initiative value regardless of their faction. As I kept modifying the toolkit I bent this into more of an XCOM-style, with code for switching between units, keeping units separate in initiative based on their faction etc.
From seeing what people make with my toolkit I get the feeling that most people use a faction-based turn system where the player can choose freely between units and chooses when to end the turn, at which point the entire next faction gets to act. As this seems so popular I’m considering making this the default. I’m interested in what you guys think. The developers who choose to follow this thread might of course not be a representative sample, but I’d still like to know what sort of initiative system each of you are using. Feel free to post below and tell me about any quirks of your current system/how your ideal turn order system would work. As I’m in the middle of refactoring, now is the best time to influence how I’ll modify the toolkit going forward.