-
-
Notifications
You must be signed in to change notification settings - Fork 123
Setting up a development environment
- Fork the repository to your own Github account.
- Pull git repository locally (pass
--recursive
togit clone
to init and clone submodules)git clone https://github.com/your-github-name/nebula.git --recursive
- Initialize git submodule(s) by running the following command:
-
git submodule update --init --recursive
This command can also be used to fetch and update changes.
-
- Get the most up-to-date version of Dyson Sphere Program from Steam.
- Install BepInEx inside the Dyson Sphere Program Steam installation folder.
- Download
BepInEx_x64_<version>.zip
- Unzip the content to
C:\Program Files (x86)\Steam\steamapps\common\Dyson Sphere Program\BepInEx
- Download
- Run the game once to activate BepInEx (new subfolders should appears in the BepInEx folder)
- Add a
Nebula
folder inside theBepInEx\Plugins
folder - Load
Nebula.sln
inside Visual Studio - Add NuGet to Visual Studio package sources.
- In the toolbar open Tools -> Options, then find NuGet Package Manager -> Package Sources
- Create a new source with name NuGet and url https://api.nuget.org/v3/index.json
- If your game installation is not at the default location
C:\Program Files (x86)\Steam\steamapps\common\Dyson Sphere Program
aDevEnv.targets
file should have been generated at the root of your copy of the Nebula repo. You can change the path to your game installation location. - Build entire solution to generate binaries.
- Nebula uses Visual Studio build events to automatically copy the mod binaries to the
BepInEx\Plugins\Nebula
folder.
- Nebula uses Visual Studio build events to automatically copy the mod binaries to the
- Make sure that you have built the entire solution without errors
- Start the game using
Steam
- From the game main menu, you should now see a
Multiplayer
button
Compared to the Release build, the Debug build configuration will have the following difference:
- Show Log.Debug(string message) and some extra logs
- SimulateLatency and show packet sent and packet received
-
MonoMod Dump that dump all of the patched libs in
mmdump
folder in the game folder - Some cheat functions for convenient
There are two options for running multiple instances:
Edit Dyson Sphere Program\DSPGAME_Data\boot.config
, removing the single-instance=
line from the file.
If you would like to keep the instances' settings separate then Sandboxie might be preferred.
In order to run the game from the exe you must create a steam_appid.txt
file in the root of the game directory (next to DSPGame.exe
) with the text 1366540
- Install Sandboxie Plus
- Launch Sandboxie Plus
- Right Click on
DefaultBox
and chooseRun -> Run Program
- In the popup window browse to select the
Steam.exe
from your Steam installation location. - Make sure to check the
Run As UAC Administrator
and clickOK
- Also start steam normally
- You should now have 2 Steam apps running at once.
- Start
Dyson Sphere Program
on both of them. - You should now have 2 Dyson Sphere Program running at once.
I highly recommend you to use the very useful plugin UnityExplorer. Once installed, you only need to press F7
while in-game to toggle it and you will be able to inspect any Unity GameObjects, Components and it has a runtime console to run some code at runtime.