UnifiedSteamworks

v1.0.0·Updated 2021-07-25

Steamworks types forwarded to the other identity.

Screenshots 4 screenshots

About this mod Author’s original text

What is this?

This is a package that contains assemblies with the same identities as both versions of Facepunch.Steamworks, forwarding all the types from the opposite version

Why?

This allows developers to build against their own version of Facepunch.Steamworks, and users on the opposite platform to use that mod without any changes

English pls

This package allows mods that use Facepunch.Steamworks to work on all platforms without extra effort by the developer

Installation

  • Copy libs/ to your game's directory. Right next to `Muck.exe/Muck.x86_64 and Muck_Data`. Not inside any other folder
  • Delete the dll that matches your platform
  • If you're on Windows, delete `Facepunch.Steamworks.Win64.dll and keep Facepunch.Steamworks.Posix.dll`
  • If you're not on Windows, delete `Facepunch.Steamworks.Posix.dll and keep Facepunch.Steamworks.Win64.dll`
  • If you did this incorrectly, you can tell by the constant repeated `TypeLoadException`s in the output log
  • Add `libs/` to your dll search path

(Windows) Adding the search path

In `doorstop_config.ini near the bottom, uncomment the line that starts with dllSearchPathOverride`

Then, set its value to `"libs" to let it load Facepunch.Steamworks from libs/`

(Posix) Adding the search path

You're supposed to be able to pass the argument `--doorstop-dll-search-override "libs" just before %command% in your steam launch args, but a bug in the launcher script makes it think "libs"` is also the game executable

Instead of doing that, in `start_game_bepinex.sh find the line that defines DOORSTOP_CORLIB_OVERRIDE_PATH`

Then, set its value to `"libs" to let it load Facepunch.Steamworks from libs/`

Install & use Install: BepInEx plugin

  1. The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
  2. Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
  3. Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
  4. Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.

Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.

File & checksum

Filename
UnifiedSteamworks-1.0.0.zip
File size
21.6 KiB