News:

Want to praise Simutrans?
Your feedback is important for us ;D.

CItyrules on client and server seems compiler dependent

Started by prissi, September 11, 2010, 10:19:59 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

prissi

City growth will lead almost immediately to a desync, if client and server did not use the same compiler and platform. The random counter is ok, so somehow in the implementation of the city rules rdwr a client/server different settings appears.

Client MSVC/server Mingw is easy to reproduce this.

EDIT: rules are identcally, but growth is compiler/backend dependent.

Dwachs

Could not reproduce this with executable from the nightly-page (compiled with mingw?) and my own compilation with MSVS.
Parsley, sage, rosemary, and maggikraut.

prissi

Did you use the "found new city" or "increase city population" tool? Both start with exactly the same random counter but get different results.

EDIT: It seems undefine debug or define optimize will do the difference. Therefore in some asserting or DBG_MESSAGE the random generator is called or an assert is changing the game state. I will start looking for it :(