Unity-Technologies / multiplayer-community-contributions

Community contributions to Unity Multiplayer Networking products and services.
MIT License
415 stars 160 forks source link

fix: Facepunch.Steamworks assembly reference couldn't be found #215

Closed viktorchernikovold closed 1 year ago

viktorchernikovold commented 1 year ago

Facepunch Steamworks assembly reference couldn't be found when I tried to use Facepunch transport on Fedora 38 with Unity 2021.3.23f1 installed. I fixed it by modifying the assembly's info and changing its platform settings (changed target OS from OSX to Any OS).

unity-cla-assistant commented 1 year ago

CLA assistant check
All committers have signed the CLA.

WaGi-Coding commented 1 year ago

Since this change, on new projects it's just broken grafik

Undoing this change removes all errors

viktorchernikovold commented 1 year ago

Since this change, on new projects it's just broken grafik

Undoing this change removes all errors

Is this happening on Windows? Have you tried importing it using package manager?

WaGi-Coding commented 1 year ago

Since this change, on new projects it's just broken grafik Undoing this change removes all errors

Is this happening on Windows? Have you tried importing it using package manager?

Yes Windows. No i manually dragged in the Files with the editor closed. I can try using the package manager if needed, but not sure what difference it should make.

Greetings

simon-lemay-unity commented 1 year ago

I've submitted PR #218 with a potential fix. @WaGi-Coding could you verify that this addresses your issue? @viktorchernikov could you verify that your original issue is still addressed with the fix in place? Thanks in advance!

WaGi-Coding commented 1 year ago

I've submitted PR #218 with a potential fix. @WaGi-Coding could you verify that this addresses your issue? @viktorchernikov could you verify that your original issue is still addressed with the fix in place? Thanks in advance!

Hey i tried on a fresh project and it seems to be fine on my end. But i wonder how you got the MacOS.dll? (Edit: ohh i guess it's just a copy?)

Many thanks!

Btw., any chance we could update the runtime and redist from latest masterbranch from facepunch.steamworks? The release version is from 2020 and has a really frustrating issue: https://github.com/Unity-Technologies/multiplayer-community-contributions/issues/217

Greetings from Vienna

simon-lemay-unity commented 1 year ago

Hey i tried on a fresh project and it seems to be fine on my end. But i wonder how you got the MacOS.dll?

It's just a duplicate of the old POSIX one. Originally the POSIX DLL was set to only work on MacOS, but that prevented it from being used on Linux (hence this PR). But changing it to be available on any OS conflicted with the Windows DLLs. Unfortunately you can't specify that a DLL works on both MacOS and Linux (at least not for the editor), so the next best solution is to duplicate it.

Btw., any chance we could update the runtime and redist from latest masterbranch from facepunch.steamworks? The release version is from 2020 and has a really frustrating issue: #217

I'm not sure how this is distributed by Facepunch, and under which terms, so I'd rather not update them myself. But this is a community contributions repository, so feel free to submit your own contributions. 😃

WaGi-Coding commented 1 year ago

Oof, i have to revert what i said. I forgot to actually build to get that errors. As soon as i build, i get this errors again. I am so sorry, i thought it will throw them without actually building already.

It still mentions some Posix files? But they should not be called Posix anymore, or no? o.O

/Edit: Opening the raw .dll in notepad++ and searching for "Posix" still gives 3 results, i guess thats how it gets that in build?

grafik

simon-lemay-unity commented 1 year ago

Could you try pulling from the branch again? I committed a fix roughly an hour ago that addressed an issue where two DLLs would have been used for player builds, which would explain the error you're observing when building.

WaGi-Coding commented 1 year ago

If you mean this https://github.com/Unity-Technologies/multiplayer-community-contributions/tree/68c72902e0f2e45d6022cbdcc1501f06f164b88c (second commit), i used that now.

Just for checking what happens if i swap Posix in the .dll itself with MacOS/Linux, intrestingly, it now does not mention Posix anymore in the error, but what i've put in them: grafik

WaGi-Coding commented 1 year ago

When i uncheck "Validate References" on the MacOS meta, i can successfully build grafik

Or when i Exlude Standalone: grafik

simon-lemay-unity commented 1 year ago

I just pushed a new commit. Can you test that one? Thanks!

WaGi-Coding commented 1 year ago

Yes, with the latest, 3rd commit i can build, hopefully that works on @viktorchernikov 's end now as well. Again, many thanks

viktorchernikovold commented 1 year ago

Tested on Fedora, MacOS and Windows - everything works fine :-)

simon-lemay-unity commented 1 year ago

Alright, merged the PR. Thank you both for your help!