Just an 'I'm not dead' update. I'll change the topic title to reflect continued work in future.
Regarding the program that I'm coding to help me run this game, I've mostly been working on getting it to read and write files which I think is working properly so far (I haven't tested to see if it can read its output properly, I'll cover that while working on the simulation code). The simulation code has only had some basic components implemented (match time seems to be updating properly, each action's time_till_completion seems to be updating properly, each action's delay also seems to be decreasing properly, each action's AP_accumulated... thought I was missing something).
To speed up the completion of the program I'm taking some shortcuts (action types being hard-coded into the program instead of read from the file as an example) so I will be reworking it sometime during the first few matches.
For anyone who is interested, here is the current input/output file pair (don't worry, you won't need to understand it to play):
[StartSession]
[TU]
[StartCharacter]
[Name:Red]
[Hitpoints:100:100]
[Stamina:80:100]
[Intensity:90:100]
[Speed:100:100]
[ID]
[StartAction]
[Name:Pick Nose]
[assignedIntensity:100]
[currentPower:1000]
[accumulatedAP:64]
[TUs_remaining:0.36]
[Delay:50]
[ID]
[EndAction]
[StartAction]
[Name:Hold Weapon]
[assignedIntensity:10]
[currentPower:0]
[accumulatedAP:999]
[TUs_remaining:999]
[Delay:0]
[ID]
[EndAction]
[EndCharacter]
[StartCharacter]
[Name:Blue]
[Hitpoints:100:100]
[Stamina:80:100]
[Intensity:90:100]
[Speed:100:100]
[ID]
[StartAction]
[Name:Pick Nose]
[assignedIntensity:100]
[currentPower:1000]
[accumulatedAP:64]
[TUs_remaining:0.36]
[Delay:0]
[ID]
[EndAction]
[StartAction]
[Name:Scratch Bum]
[assignedIntensity:40]
[currentPower:2]
[accumulatedAP:13]
[TUs_remaining:0.17]
[Delay:10]
[ID]
[EndAction]
[StartAction]
[Name:Hold Weapon]
[assignedIntensity:10]
[currentPower:0]
[accumulatedAP:999]
[TUs_remaining:999]
[Delay:0]
[ID]
[EndAction]
[EndCharacter]
[EndSession]
[StartSession]
[TU:0.27]
[StartCharacter]
[Name:Red]
[HP:100]
[maxHP:100]
[Stamina:80]
[maxStamina:100]
[Intensity:90]
[maxIntensity:100]
[Speed:100]
[maxSpeed:100]
[ID:C:0]
[StartAction]
[Name: Pick Nose]
[assignedIntensity: 100]
[currentPower: 1000]
[accumulatedAP: 64]
[TUs_remaining: 0.09]
[Delay: 25.7]
[ID:A:0]
[EndAction]
[StartAction]
[Name: Hold Weapon]
[assignedIntensity: 10]
[currentPower: 0]
[accumulatedAP: 999]
[TUs_remaining: 998.73]
[Delay: 0]
[ID:A:1]
[EndAction]
[EndCharacter]
[StartCharacter]
[Name:Blue]
[HP:100]
[maxHP:100]
[Stamina:80]
[maxStamina:100]
[Intensity:90]
[maxIntensity:100]
[Speed:100]
[maxSpeed:100]
[ID:C:1]
[StartAction]
[Name: Pick Nose]
[assignedIntensity: 100]
[currentPower: 1000]
[accumulatedAP: 64]
[TUs_remaining: 0.09]
[Delay: 0]
[ID:A:2]
[EndAction]
[StartAction]
[Name: Scratch Bum]
[assignedIntensity: 40]
[currentPower: 2]
[accumulatedAP: 13]
[TUs_remaining: 0]
[Delay: 0]
[ID:A:3]
[EndAction]
[StartAction]
[Name: Hold Weapon]
[assignedIntensity: 10]
[currentPower: 0]
[accumulatedAP: 999]
[TUs_remaining: 998.73]
[Delay: 0]
[ID:A:4]
[EndAction]
[EndCharacter]
[EndSession]