In a nomad game I played as the Macedonians, I started building my CC almost as soon as I spawned—just after walking a short distance to an apple tree.
My Persian opponent didn’t start building their Town Center until about 30 seconds after I did, yet they finished earlier than I did. I checked the civilization overview and saw that Persians get a 20% reduction in build time for Barracks and Stables—but not for the CC. He had athenians team bonus, but again athenians bonus should give only tech upgrades bonuses, not building according to civ overview.
Additionally, during local testing, I noticed that the construction bonus is implemented by speeding up the countdown timer—meaning that when construction starts, the initial build time in seconds is the same as for other civilizations, but the timer ticks faster.
This is misleading. It would be clearer if the game instead recalculated the build time in seconds at the moment construction begins (applying the civilization bonus upfront) and then applied any additional bonuses.
Trigger-scripts are executed in the simulation js-interface.
I took a look at the tutorial and saw that it uses
Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface).PushNotification(...);
to send a message to the gui.
The gui receives the messages in "session/messages.js".
Hi Vantha,
thanks for detailed explanation. All is clear now.
What I wanted to achieve is to programmatically speed up the game in the beginning to the value of~ x20 (just temporarily) to override default Map Setup setting. Reason is to perform some JS asynchronous calculations much faster eliminating internal tick bottleneck. Then go back to the default speed value few moments after.
What you described as a workaround sounds very promising! Can you please explain little more how to communicate between different contexts to register SetSimRate?
Thank you!
Hello, you mentioned that you don't know how to compile, but that may be the only option if you want Linux native older 0 A. D. And it's not too hard to do.
First, get the a23b tar source and data archives from this link:
https://releases.wildfiregames.com/
Then, follow the build instructions for Linux on this page:
https://gitea.wildfiregames.com/0ad/0ad/wiki/BuildInstructions
Obviously, instead of the latest source and data archives, you would use the a23b ones.
Good backup practices apply before compiling any large software from source.