Release 3.3.0 beta 1

The projects speaking tube.
Add your two cents if you want to.
Cyp
Evitcani
Evitcani
Posts: 755
Joined: 17 Jan 2010, 23:35

Re: Release 3.3.0 beta 1

Post by Cyp » 18 Mar 2019, 20:08

In the first log, it says that one client called gameRand() somewhere, while the other client didn't. If it's reproducible, it's possible to add a syncDebugBacktrace call to log where it was called from (might slow the game down, not sure).

In the second log, it says the clients disagreed on the checksumDangerMap, which means they were using different danger maps for pathfinding for some reason. Not sure what can cause that, but it's a bad thing (especially in games with AI players which actually use the danger maps).

The "Invalid signature" probably just means a lot of lag. Researching impossible topic is probably just a side-effect of having gone out of synch some time ago. Bad droid ID usually means a droid was killed while trying to give it to another player.

User avatar
Berserk Cyborg
Code contributor
Code contributor
Posts: 825
Joined: 26 Sep 2016, 19:56

Re: Release 3.3.0 beta 1

Post by Berserk Cyborg » 18 Mar 2019, 21:59

Cyp wrote:
18 Mar 2019, 20:08
... (especially in games with AI players which actually use the danger maps).
These danger maps seem to be underwhelming in their ability to document dangerous areas. A simple enumRange() has proven to be far more accurate at telling if some location is safe or not from immediately dangerous stuff (weapon droids, defenses, etc).

I just now looked at this a little bit more and tiles are supposed to be blocked if they are not safe... but, come to think of it, I've never seen any AI units path to avoid these tiles.

pastdue
Warzone 2100 Team Member
Warzone 2100 Team Member
Posts: 217
Joined: 13 Aug 2017, 17:44

Re: Release 3.3.0 beta 1

Post by pastdue » 18 Mar 2019, 23:30

I'm wondering if these are cases where a player has played more than one match in a row (while keeping the application open). I may have once come across a case where it seemed like a later match did not load data properly? (Or loaded data was corrupted?) Closing the game entirely and re-opening it to start a fresh match fixed the issue, of course. And I haven't yet been able to reproduce it deliberately.

(But that may also be something different, or just a weird unlucky bit flip. It was a while ago.)

User avatar
Prot
Trained
Trained
Posts: 199
Joined: 29 Nov 2010, 12:41

Re: Release 3.3.0 beta 1

Post by Prot » 19 Mar 2019, 05:33

Berserk Cyborg wrote:
18 Mar 2019, 21:59
I've never seen any AI units path to avoid these tiles.
The construction units of any AI avoid danger tiles by him self, it's work automaticly, like the army of any AI shot to garbage by him self, without JS-order to do that. It's not AI JS code, but wz-engine rule this behavior.

User avatar
Berserk Cyborg
Code contributor
Code contributor
Posts: 825
Joined: 26 Sep 2016, 19:56

Re: Release 3.3.0 beta 1

Post by Berserk Cyborg » 19 Mar 2019, 17:08

Prot wrote:
19 Mar 2019, 05:33
The construction units of any AI avoid danger tiles by him self, it's work automaticly, like the army of any AI shot to garbage by him self, without JS-order to do that. It's not AI JS code, but wz-engine rule this behavior.
:augh: I never noticed that before. I know it's not part of the JS side, it's just my past attempts of using safeDest() made me think the danger maps didn't work right.

User avatar
vexed
Inactive
Inactive
Posts: 2538
Joined: 27 Jul 2010, 02:07

Re: Release 3.3.0 beta 1

Post by vexed » 25 Mar 2019, 00:22

Berserk Cyborg wrote:
15 Mar 2019, 03:06
visGetBlockingWall() needs to be reimplemented to fix that issue.
D'oh. Pretty much makes walls useless. Sounds like a blocker.

f965d77200f1caf57a9be5deb284683792c1280c
/facepalm ...Grinch stole Warzone🙈🙉🙊 contra principia negantem non est disputandum
Super busy, don't expect a timely reply back.

User avatar
Prot
Trained
Trained
Posts: 199
Joined: 29 Nov 2010, 12:41

Re: Release 3.3.0 beta 1

Post by Prot » 25 Mar 2019, 07:18

Cyp wrote:
18 Mar 2019, 20:08
In the second log, it says the clients disagreed on the checksumDangerMap, which means they were using different danger maps for pathfinding for some reason. Not sure what can cause that, but it's a bad thing (especially in games with AI players which actually use the danger maps).
I have more and more reports about desync "[fpathSetBlockingMap] blockingMap(6702,0,2,0) = 9D019DA8 2F2D5AE5" on some map playing with bots, can somehow paste bunch of code for more verbose debug output, to find out what a reson of this ?
Also i notice this map have some errors:

Code: Select all

error   |07:55:34: [loadSaveStructure:4984] Structure ECM1PylonMk1, x coord too near the edge of the map. id - 17
error   |07:55:34: [loadSaveStructure:4990] Structure ECM1PylonMk1, y coord too near the edge of the map. id - 288
error   |07:55:34: [loadSaveStructure:4990] Structure ECM1PylonMk1, y coord too near the edge of the map. id - 63
error   |07:55:34: [loadSaveStructure:4984] Structure ECM1PylonMk1, x coord too near the edge of the map. id - 480
but i don't think that this is a reason of desync, or is it?

pastdue
Warzone 2100 Team Member
Warzone 2100 Team Member
Posts: 217
Joined: 13 Aug 2017, 17:44

Re: Release 3.3.0 beta 1

Post by pastdue » 25 Mar 2019, 17:23

Prot wrote:
25 Mar 2019, 07:18
I have more and more reports about desync "[fpathSetBlockingMap] blockingMap(6702,0,2,0) = 9D019DA8 2F2D5AE5" on some map playing with bots, can somehow paste bunch of code for more verbose debug output, to find out what a reson of this ?
Are there particular maps on which this seems to happen? (Are there any maps on which you *can't* reproduce this?)

What bots / AIs are you using?

(I'm particularly curious if you can provide game settings - map, number of players, slots in which there are humans / bots, which bots, difficulty, etc - that can be used to reproduce this.)

User avatar
andrvaut
Trained
Trained
Posts: 164
Joined: 02 Jan 2016, 12:44

Re: Release 3.3.0 beta 1

Post by andrvaut » 25 Mar 2019, 18:27

pastdue wrote:
25 Mar 2019, 17:23
Prot wrote:
25 Mar 2019, 07:18
I have more and more reports about desync "[fpathSetBlockingMap] blockingMap(6702,0,2,0) = 9D019DA8 2F2D5AE5" on some map playing with bots, can somehow paste bunch of code for more verbose debug output, to find out what a reson of this ?
Are there particular maps on which this seems to happen? (Are there any maps on which you *can't* reproduce this?)

What bots / AIs are you using?

(I'm particularly curious if you can provide game settings - map, number of players, slots in which there are humans / bots, which bots, difficulty, etc - that can be used to reproduce this.)
map 8c-Stone-Jungle-2x2-3.3.0.wz
0,1 -- human
2,3 -- AI bonecrasher
max base, shared research, max power. human vs AI
Attachments
8c-Stone-Jungle-2x2-3_3_0.wz
(125.64 KiB) Downloaded 126 times
vaut ΣΑ [GN], ru streamer.
Tournaments channel: https://www.youtube.com/channel/UCzusNa-54ydodtSz2TdHFww

User avatar
Prot
Trained
Trained
Posts: 199
Joined: 29 Nov 2010, 12:41

Re: Release 3.3.0 beta 1

Post by Prot » 25 Mar 2019, 19:02

This attached map contain uncompatible with 3.3.0 version rules.js, but i have reports of desync playing on clean version of this map, without rules.js inside (without mapmod).
I'm still investigating this desync.

User avatar
vexed
Inactive
Inactive
Posts: 2538
Joined: 27 Jul 2010, 02:07

Re: Release 3.3.0 beta 1

Post by vexed » 26 Mar 2019, 03:50

Prot wrote:
25 Mar 2019, 07:18
I have more and more reports about desync "[fpathSetBlockingMap] blockingMap(6702,0,2,0) = 9D019DA8 2F2D5AE5" on some map playing with bots, can somehow paste bunch of code for more verbose debug output, to find out what a reson of this ?
Can you also say, was this linux vs linux or linux vs windows or what combination it was?

It could be a compiler issue, gcc vs MSVC, but, unsure yet, need more info.
/facepalm ...Grinch stole Warzone🙈🙉🙊 contra principia negantem non est disputandum
Super busy, don't expect a timely reply back.

User avatar
Prot
Trained
Trained
Posts: 199
Joined: 29 Nov 2010, 12:41

Re: Release 3.3.0 beta 1

Post by Prot » 26 Mar 2019, 04:30

vexed wrote:
26 Mar 2019, 03:50

Can you also say, was this linux vs linux or linux vs windows or what combination it was?

It could be a compiler issue, gcc vs MSVC, but, unsure yet, need more info.
i testing on local machine, running 2 copy of game and connect to localhost, just put in slot any AI standart nullbot or bonecrusher - it causes desync. im testing on linux.
For now this issue only for one custom map. Little later i test this map on 3.2.3 version to see what happen.

User avatar
Berg
Regular
Regular
Posts: 2202
Joined: 02 Sep 2007, 23:25
Location: Australia

Re: Release 3.3.0 beta 1

Post by Berg » 26 Mar 2019, 05:42

The real problem is not the game but the mapmods

User avatar
Prot
Trained
Trained
Posts: 199
Joined: 29 Nov 2010, 12:41

Re: Release 3.3.0 beta 1

Post by Prot » 26 Mar 2019, 07:45

Berg wrote:
26 Mar 2019, 05:42
The real problem is not the game but the mapmods
There is no mapmods, just clean map.
I think problem somewhere in map objects, like trees and other debris, but not sure for now.
Also, desync appear in 3.2.3 too.
This is definitely not a 3.3.0 issue, but the map itself. But now I'm just curious what in the map can cause this.

User avatar
Berg
Regular
Regular
Posts: 2202
Joined: 02 Sep 2007, 23:25
Location: Australia

Re: Release 3.3.0 beta 1

Post by Berg » 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.

Post Reply