andyoneal / DSPMac

Mod for Dyson Sphere Program for better compatibility with macOS
GNU General Public License v3.0
29 stars 0 forks source link

DSPMac

Mod for Dyson Sphere Program for better compatibility with macOS

WARNING: This mod permanently (persists after exit) modifies DSP's globalgamemanagers file, which is pretty far outside the bounds of a normal mod. A backup of the original (ends in .bak) is created in case you need to manually restore it.

Why?

DSP runs very well in Crossover Mac 21.0+ with the notable exception of the player mecha not being visible. This is a result of Unity using geometry shaders and stream-output (aka transform feedback) for gpu skinning on this model, but Crossover/MoltenVK does not yet support geometry shaders, which is because Apple's Metal does not support them, which is because they were a bad idea that won't die. Luckily, gpu skinning is a toggle in PlayerSettings. This mod simply turns gpu skinning off.

Installation

Required Step (Crossover/Wine only)

Wine/Crossover will prevent BepInEx (mod loader) from running correctly, regardless of the method you use to install this. To fix this, we need to add an override for winhttp.dll.

Easy Way

This mod is on Thunderstore, so the easiest way is probably using their mod manager or another like r2modman. Apparently r2modman does not work in Wine/Crossover, so there is no easy way. You will still need to do the required step above.

Manual Install

  1. Open the directory for Dyson Sphere Program within the bottle. On macOS with Crossover, this buried deep in something like ~/Library/Application Support/CrossOver/Bottles/BOTTLENAME/drive_c/Program Files (x86)/Steam/steamapps/common/Dyson Sphere Program/
  2. BepInEx 5.4.17 is required. Download the x64 zip. Versions of BepInEx other than 5.4.17 may or may not work.
  3. Extract the zip into the game directory you found in step 1.
  4. Make sure you have done the required step above or BepInEx will not run.
  5. Run Dyson Sphere Program and exit once you get to the title screen. This causes BepInEx to initialize and generate the folders we'll need to use.
  6. Inside the Dyson Sphere Program directory, open the BepInEx folder, then the patchers folder. (It will be empty)
  7. Download the latest DSPMod from Releases.
  8. Extract the zip into the patchers folder. You should now see AssetTools.NET.dll and DSPMac_patcher.dll in the directory.
  9. Run Dyson Sphere Program again and the player mecha should now be visible.

Tips

Thanks

This mod borrows heavily from Faeryn's OutwardVisibleInBackground mod.

Changelog