Sync Error when activating Unit: Visible on Screen condition in multiplayer

  • Game Version: 100.17.31993.0

  • Build Number: 490745

  • Platform: Steam

  • Operating System: Windows 11 (build number 22631)

Issue:

When a custom scenario trigger has the condition ‘Unit: Visible On Screen’ and the effect ‘Unit: Convert’ or ‘Fake Player: De-Fakify’ targeting the same unit, the game desyncs as soon as either player can see the unit.
I have been able to consistently reproduce this in a scenario with a single trigger.

SyncError

Trigger Event:

Move the camera so the unit referenced in the condition is on the screen.

Repro Steps:

Wasn’t able to attach the scenario file here, but steps are:

  1. Create a new scenario
  2. Place an object on the map (e.g. a Sentry Tower, but any type of object will do)
  3. Select the Sentry Tower, then go Scenario > Fake Player Data > Fakify
  4. Create a new trigger (tick the Active and Run Immediately checkboxes)
  5. Add a condition to the trigger of type ‘Unit: Visible on Screen’, selecting ‘Source Units’ with the Sentry Tower selected
  6. Add an effect to the trigger of type ‘Fake Player: De-Fakify’, selecting ‘Units’ with the Sentry Tower selected
  7. Save the scenario
  8. Host the scenario in a multiplayer game
  9. As any player, move your camera until the Sentry Tower is visible

Hi @Benderman8879, thank you for the report. Please could you attach a recorded game from when this happens and the custom scenario too? Cheers :slight_smile:

sounds like a logical problem to me.
Same like when using sth like “currentplayer” or how ever it is called.

The current player and also the “screen” is different for each local player (human). And when a unit is visible on one screen, but not at the other, the effect triggers only for one player, making a sync error, since its not triggered for the other.

Of course it would be nice if this still could be synced, but all games I know would throw a desync when doing this, because scripts are executed locally. So you have to find another condition.

Hi,
Unfortunately, neither player gets any .mythrec files created in C:/Users/<user>/Games/Age of Mythology Retold/<id>/replays, despite having recordings enabled in-game.
I had to replace the .mythcsn extension with .txt so the forum would allow me to upload the custom scenario.
01-test.txt (20.2 KB)

Since we aren’t getting any replays, is there any more information that would be helpful (e.g. sync logs)?

Thanks :slight_smile:

Yeah, I completely understand why this would cause a desync from a technical standpoint.

However, plenty of other effects that I would expect to work similarly don’t cause a desync. For example, I had no desyncs when using the Unit: Visible on Screen condition with the Unit: Move to Point or Unit: Teleport to Unit effects.

So, the following desyncs every time:
Trigger with condition Unit: Visible on Screen and effect Unit: Convert.

But the following works fine:
One trigger with the condition Unit: Visible on Screen and effect Unit: Teleport to Unit (e.g. to teleport a cinematic block to another cinematic block) and a second trigger with the condition Unit: Distance to Unit (that triggers when the distance between the two blocks is less than 1) and the Unit: Convert effect.

That’s at least a pretty simple and unobtrusive workaround and it looks the same to the players, but it would be nice if this worked without the extra step.

Hi @Benderman8879, thanks for that. This is a known issue and is tracked :slight_smile:

1 Like