Closed Parexy closed 5 years ago
@Parexy What mods where being used when this issue appeared?
@MilanDierick "Expanded Prosthetics and Organ Engineering" was the mod that caused the problem for the most recent group people which this happend to. The windows users could connect without a problem but the mac user couldn't.
@Parexy I'll ask around tomorrow if someone has a mac that we can test this with.
If anyone's interested, here's a workaround that I came up with some time ago to crossplay with a friend. I never encountered issues with this approach, but it can potentially require additional restrictions on mod order, etc. UPD: It's worth noting that this workaround is not backwards compatible.
The issue indeed runs deeper as Zetrith said.
Since your solution fixes the hash problem by sorting lists with defs, it means that there's a difference in order in defsList
of DefDatabase
. Which would mean it can actually affect more things than just that hash as IEnumerable AllDefs
(which points at defsList) is used in many places of RimWorld's code, including random selection. So there's a probability the issue will cause desyncs in other mods.
I have traced a possible cause, but I have to do some tests first.
I can do testing with a mac as well if needed.
The issue appears on Linux as well (as long as you use the ext* filesystem), so you don't need a Mac specifically. Might be easier for the devs to test that way.
The issue appears on Linux as well (as long as you use the ext* filesystem), so you don't need a Mac specifically. Might be easier for the devs to test that way.
Can confirm for linux (arch) with btrfs as a host and windows as a client. I know that for RimWorld 1.0.2150
there was this fork/release that fixed the issue (however i did not investigate which commit was fixing it specifically).
I would also be ready to test stuff if you need some helping hands.
EDIT: Sorry, I just saw that you @vasilevp are here also. So I guess there are new problems for the new RimWorld version...
Please try https://github.com/notfood/RimWorld-Multiplayer/commit/099db82ae903231753b5eb9597d2970f0348cb9b
This needs testing, both host and client need it. Here is a compiled dll with the feature: Multiplayer.zip
I can confirm that the changes of @notfood do work for arch linux 5.1.4
with btrfs
as a host and Windows 10 as a client when applied to the current release (0.4.7.1
).
Thanks for the fix!
Fixed via #83 which includes notfood's patch.
Some mods cause hash_diff when connecting if you are doing cross os play.
From what i understand this is caused by the case sensitivity of linux and mac os (Could be something else), but it makes a hash_diff appear even though their files technically are identical.