After sitting down with Marlo, Kale, Kazbek and a few others we managed to get the hit of the sim speed at around 6 ms for 150 t3 engineers when building, instead of 10 - 11. If we go with the idea that higher tech engineers have bigger drones (and therefore less drones) we can even get faster than UEF / Seraphim drones, cutting it down to about 3 ms when they start building.
You can see in the previous post how it looks like with 150 engineers and each engineer having 3 drones.
This is how it looks like for 150 engineers, when they have 'bigger' drones:
What we did is:
- Rewrite the Cybran build functions from scratch - ensuring that the best practices performance-wise are applied.
- Dumb down the Cybran bot unit - originally it still called all the logic that any unit would call. As an example, all the table allocations done for a typical unit are done even though we don't use any of it.
- Move a lot of the logic from the drone to the builder (engineer / commander / hive). This allowed us to cut down a lot on the logic performed on each drone.
In the long run the number of table allocations per drone is reduced drastically, the drones execute far less logic overall and the number of effects are reduced without impacting the overall aesthetics too much (in my / our opinion).
Tomorrow I'm going to try and finish it up.
An important disclaimer: the 6 vs 10/11 ms is the situation where the t3 engineer spawns the same number of drones as it did before. Meaning - we made them faster, and almost by a factor of 2. Let alone that the garbage collector is better off too causing less stutters.