Page 6 of 6

Re: Release 3.3.0 beta 1

Posted: 26 Mar 2019, 09:06
by Prot
Berg wrote: 26 Mar 2019, 08:18 error |05:12:45: [loadSaveStructure:4984] Structure ECM1PylonMk1, x coord too near the edge of the map. id - 17
error |05:12:45: [loadSaveStructure:4990] Structure ECM1PylonMk1, y coord too near the edge of the map. id - 288
error |05:12:45: [loadSaveStructure:4990] Structure ECM1PylonMk1, y coord too near the edge of the map. id - 63
error |05:12:45: [loadSaveStructure:4984] Structure ECM1PylonMk1, x coord too near the edge of the map. id - 480

And its a mapmod the map is badly made.
I think editing rules.js is a mod
Prot wrote: 26 Mar 2019, 07:45 There is no mapmods, just clean map.
all this mods and bad maps.
No, there is not a mod causes this desync.
Here a clean map
8c-test.wz
(119.74 KiB) Downloaded 531 times
I clear every error i see, even

Code: Select all

error   |05:12:45: [loadSaveStructure:4984] Structure ECM1PylonMk1, x coord too near the edge of the map. id - 17

which is not an error from mapmod, It's just a structure placed close to the edge, not a mapmod.
Also i realign every object to the surface. And still map causes desync.

For now i 'm looking to code astar.cpp:631

Code: Select all

        uint32_t checksumMap = 0, checksumDangerMap = 0, factor = 0;
        for (int y = 0; y < mapHeight; ++y)
            for (int x = 0; x < mapWidth; ++x)
            {
                map[x + y * mapWidth] = fpathBaseBlockingTile(x, y, type.propulsion, type.owner, type.moveType);
                checksumMap ^= map[x + y * mapWidth] * (factor = 3 * factor + 1);
            }
        if (!isHumanPlayer(type.owner) && type.moveType == FMT_MOVE)
        {
            std::vector<bool> &dangerMap = blockMap->dangerMap;
            dangerMap.resize(mapWidth * mapHeight);
            for (int y = 0; y < mapHeight; ++y)
                for (int x = 0; x < mapWidth; ++x)
                {
                    dangerMap[x + y * mapWidth] = auxTile(x, y, type.owner) & AUXBITS_THREAT;
                    checksumDangerMap ^= dangerMap[x + y * mapWidth] * (factor = 3 * factor + 1);
                }
        }
        syncDebug("blockingMap(%d,%d,%d,%d) = %08X %08X", gameTime, psJob->propulsion, psJob->owner, psJob->moveType, checksumMap, checksumDangerMap);
Someone can tell me what is the "factor" variable do?
And how can i dump both version of array of two players "dangerMap" when desync is appear? I want to see diff of coordinates and auxbits that take something wrong.

Re: Release 3.3.0 beta 1

Posted: 26 Mar 2019, 12:23
by Cyp
Maybe dump every danger map, with the hash as the filename (and hope it doesn't fill up the drive before it desynchs).

The factor is just a pseudorandom number, so each cell has a different factor contributing to the hash.

Re: Release 3.3.0 beta 1

Posted: 27 Mar 2019, 06:03
by Berg
This is the map listed on this thread download/file.php?id=18152
It has a modified rules.js to me thats a mod

Re: Release 3.3.0 beta 1

Posted: 28 Mar 2019, 02:17
by Berg
Well after a game on the fire map i was shooting the enemy through my walls with mg's on 3.3.0beta1 and also any other structure you care to mention
THe structures only block movement not bullets

Re: Release 3.3.0 beta 1

Posted: 28 Mar 2019, 03:18
by moltengear
Berg wrote: 28 Mar 2019, 02:17 Well after a game on the fire map i was shooting the enemy through my walls with mg's on 3.3.0beta1 and also any other structure you care to mention
THe structures only block movement not bullets
So even better! "We managed to improve the performance of the game. There will be less CPU load." :lecture: :good: :focus:

Re: Release 3.3.0 beta 1

Posted: 28 Mar 2019, 03:25
by moltengear
1) It happens that my menu disappears for a while. I can't even write a message.
But I can control the army with the mouse.

2) Seldom. Also, when updating the plant, I look and there is no one plant at all!

Re: Release 3.3.0 beta 1

Posted: 04 Apr 2019, 02:40
by Bethrezen
I take it XP support still hasn't been sorted out ? because i just tried to run this but I'm just getting the this is not a valid win 32 application error.

unfortunate :(

Re: Release 3.3.0 beta 1

Posted: 04 Apr 2019, 18:58
by pastdue
Bethrezen wrote: 04 Apr 2019, 02:40 I take it XP support still hasn't been sorted out ? because i just tried to run this but I'm just getting the this is not a valid win 32 application error.
Nope. We're still waiting on that vcpkg PR (that doesn't look like it's moving at the moment).

Ultimately, it's looking unlikely to arrive anytime soon.

Not to restate what several people have stated before, but: It isn't even remotely safe to be using Windows XP anymore, regardless of what measures you take. If you aren't interested in upgrading to a more modern (supported / security-patched) version of Windows, Linux will likely run quite well on your system. Various Linux distros have "Live" Boot DVDs so you can try it without installing it to your hard drive - here's a link to Ubuntu's tutorial on how to do it (just burn a DVD, or copy it to a USB drive - super simple to try): https://tutorials.ubuntu.com/tutorial/t ... ou-install

You could also dual-boot Windows XP and a modern version of Linux, and run Warzone in Linux that way. (Which would also give you the chance to experiment and gain familiarity with Linux.)

Re: Release 3.3.0 beta 1

Posted: 09 Apr 2019, 20:21
by moltengear
Not every player can create a host. Guys, is it possible for the server to take on the responsibility of the host when starting the game, and after that the transfer of messages is already only between players.
I think it would be good if there will be the ability to lock the player also on his ip and not only by his nickname.

Re: Release 3.3.0 beta 1

Posted: 25 Apr 2019, 08:08
by moltengear
Maybe use rapidjson? It is the fastest and has only a header file.
http://rapidjson.org/

Re: Release 3.3.0 beta 1

Posted: 02 May 2019, 23:27
by Berserk Cyborg
I was able to reliably reproduce this desync on this map.

I used shared-research, advanced bases, and a local multiplayer connection with 6 Nullbots. It is important to note this seems to be only reproducible when a few bots are on this map since it causes a huge amount of lag.

First cheat in a transporter and fill it with units. Then position and disembark units rapidly as close to one of the many pits filled with water. Sometimes the desync happens in a few seconds after doing this but it can take a few minutes also.

If positioned close enough you will see the units momentarily fly across the screen when disembarking them. Included is a screenshot of how the transporter should be positioned.

desync.zip
(417.47 KiB) Downloaded 513 times

Re: Release 3.3.0 beta 1

Posted: 03 May 2019, 05:14
by Iluvalar
Does modders have ability to set the accuracy nowaday ? Or is it still buggy out of pure lazyness ?