jumpy icon indicating copy to clipboard operation
jumpy copied to clipboard

Invalid Network Asset CID (possible cross platform issue)

Open MaxCWhitehead opened this issue 1 year ago • 1 comments

Description

I tried to play a game between my apple laptop and windows machine, and reliably got a invalid network CID error. I also get this with steam deck + windows. ~~The mostly likely cause is my local copies of game are not the same (different assets), but I did not have local changes and was at same commit. (Though maybe something else is wrong / I did not validate correctly).~~

Crash combinations:

  • macOS + Windows crashes
  • Steam deck + Windows crashes (tested on 0.12.1 steam build)

Verified working combinations:

  • Windows + Windows (same host, 0.12.1 steam) does not crash
  • macOS + steam deck does not crash

To Reproduce

  1. Join an online match
  2. Ready up
  3. Select Map

(Seems platform specific, see above)

Expected Behavior

No response

Additional Context

Don't have stack trace handy but will update with it later.

Log Messages

No response

MaxCWhitehead avatar May 18 '24 00:05 MaxCWhitehead

Updated issue - can repro on steam builds, not local workspace issue. Seems CID may be getting computed differently on windows? Or maybe some difference in files that impacts how they are hashed? Line endings...? 🤔

MaxCWhitehead avatar Jun 02 '24 23:06 MaxCWhitehead

Have not managed to get my windows box setup yet, but adding a feature flag to bones to trace + log Cid updates from asset meta + contents + dependencies, which should illuminate the source of discrepancy for this issue + future network cid mismatches.

MaxCWhitehead avatar Jul 10 '24 23:07 MaxCWhitehead

Appears to be difference in map, the content cid is different:

MacOS commit: 3f314774ec7d09fb22f53915ce40e298f0d109e2

2024-08-03T20:19:57.525559Z  INFO bones_asset::server: Cid trace schema: u!("jumpy::core::metadata::map::MapMeta") file path: "/map/levels/level_1.map.yaml"
Trace is in order of updates, which impacts result
[Intermediate] Cid from schema fullname: u!("jumpy::core::metadata::map::MapMeta") cid: 6ChD3qNmk3Ar1ceG5B5eoTtHgSfurhSVJw7K2ToV1f2E
[Intermediate] Cid from contents: cid: HFmhzdKgRyVZs1S4vM5K9Z5LHxpoxT7kqwQnVRWFzCyM

Windows commit: 3f314774ec7d09fb22f53915ce40e298f0d109e2

2024-08-03T20:21:47.796207Z  INFO bones_asset::server: Cid trace schema: u!("jumpy::core::metadata::map::MapMeta") file path: "\\map\\levels\\level_1.map.yaml"
Trace is in order of updates, which impacts result
[Intermediate] Cid from schema fullname: u!("jumpy::core::metadata::map::MapMeta") cid: 6ChD3qNmk3Ar1ceG5B5eoTtHgSfurhSVJw7K2ToV1f2E
[Intermediate] Cid from contents: cid: 9oszkpmYbjCBxCwwW9bsjmtBV25jKMx1udUhxGGdiUdw

There are different line endings, guessing this is probably the culprit.

MaxCWhitehead avatar Aug 03 '24 20:08 MaxCWhitehead