This solution should enforce timing rules correctly against client bots, while allowing module bots to take some excess time if they distribute work across multiple event handlers, eg. if a module bot takes 10ms for every onUnitShow and six units show up, they will only be marked down for 10ms and go unpenalized.
Have not tested this. Happy to help with testing. PurpleWave writes its own detailed performance metrics to a log file at the end of each game.
Attempts to provide a reasonable solution for https://github.com/davechurchill/StarcraftAITournamentManager/issues/42
This solution should enforce timing rules correctly against client bots, while allowing module bots to take some excess time if they distribute work across multiple event handlers, eg. if a module bot takes 10ms for every onUnitShow and six units show up, they will only be marked down for 10ms and go unpenalized.
Have not tested this. Happy to help with testing. PurpleWave writes its own detailed performance metrics to a log file at the end of each game.