I just got a thought on something that could help explain the context.
Do you know EVE Online? Recently they got this gigantic battle.
The programmers of EVE are very smart as they made sure when a server (a solar system) have a lot of people in,
the time slow down for this system.
Classic architecture of (big) games allow this kind of thing (but not always used) because in games you can't rely
on real time to measure progress of the game state. You can rely on it for example to get fluid animations,
but game-state time is different. Most of the time it's cut in a very specific way called "lock-steps".
Which mean, you can map each cycle of the game update to real time, slower than RT, or faster, or if you recorded each cycle,
do the replay of a game session.
My game is mostly built like this, however I have several independent game state running separately.
Each game state have ("will have" actually) a script VM which is executed in sync with the game state update (that might happen at an arbitrary time depending on what you're
doing, replay, normal game, paused, editor mode etc.)
Note that in my specific case (which is not common), bot AI isn't run by this VM, it's a separate subject (which might imply a script too or not).
So I'm not talking about AI in this specific case. It's mostly about scenarisation of the game session.
Now, I have two strategies:
1. just run the scripts associated with the game state update cycle : 1 cycle <=> 1 full script execution
2. run a specific amount of script for a game state update cycle: 1 cycle <=> N script "instructions" executed (looping)
The first one is the simplest and is straightforward I guess.
What I'm asking is if the second one is possible.
But as I said, I'll take a look at the code and see what is possible to do from there.
Joel Lamotte