Skip to content

Commit 4114194

Browse files
committed
Update development environment for Mod Manager
1 parent 37244f2 commit 4114194

File tree

3 files changed

+73
-60
lines changed

3 files changed

+73
-60
lines changed

QSB/QSB.csproj

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
<HintPath>..\packages\Lib.Harmony.1.2.0.1\lib\net35\0Harmony.dll</HintPath>
3636
</Reference>
3737
<Reference Include="Assembly-CSharp">
38-
<HintPath>$(StartWorkingDirectory)\..\OuterWilds_Data\Managed\Assembly-CSharp.dll</HintPath>
38+
<HintPath>$(GameDir)\OuterWilds_Data\Managed\Assembly-CSharp.dll</HintPath>
3939
</Reference>
4040
<Reference Include="NAudio-Unity, Version=2.0.0.0, Culture=neutral, processorArchitecture=MSIL">
4141
<HintPath>..\packages\OWML.0.3.40\lib\net35\NAudio-Unity.dll</HintPath>
@@ -68,36 +68,36 @@
6868
<Reference Include="System.Data" />
6969
<Reference Include="System.Xml" />
7070
<Reference Include="UnityEngine">
71-
<HintPath>$(StartWorkingDirectory)\..\OuterWilds_Data\Managed\UnityEngine.dll</HintPath>
71+
<HintPath>$(GameDir)\OuterWilds_Data\Managed\UnityEngine.dll</HintPath>
7272
</Reference>
7373
<Reference Include="UnityEngine.AnimationModule, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
7474
<SpecificVersion>False</SpecificVersion>
75-
<HintPath>$(StartWorkingDirectory)\..\OuterWilds_Data\Managed\UnityEngine.AnimationModule.dll</HintPath>
75+
<HintPath>$(GameDir)\OuterWilds_Data\Managed\UnityEngine.AnimationModule.dll</HintPath>
7676
</Reference>
7777
<Reference Include="UnityEngine.CoreModule">
78-
<HintPath>$(StartWorkingDirectory)\..\OuterWilds_Data\Managed\UnityEngine.CoreModule.dll</HintPath>
78+
<HintPath>$(GameDir)\OuterWilds_Data\Managed\UnityEngine.CoreModule.dll</HintPath>
7979
</Reference>
8080
<Reference Include="UnityEngine.IMGUIModule, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
8181
<SpecificVersion>False</SpecificVersion>
82-
<HintPath>$(StartWorkingDirectory)\..\OuterWilds_Data\Managed\UnityEngine.IMGUIModule.dll</HintPath>
82+
<HintPath>$(GameDir)\OuterWilds_Data\Managed\UnityEngine.IMGUIModule.dll</HintPath>
8383
</Reference>
8484
<Reference Include="UnityEngine.Networking">
85-
<HintPath>$(StartWorkingDirectory)\..\OuterWilds_Data\Managed\UnityEngine.Networking.dll</HintPath>
85+
<HintPath>$(GameDir)\OuterWilds_Data\Managed\UnityEngine.Networking.dll</HintPath>
8686
</Reference>
8787
<Reference Include="UnityEngine.PhysicsModule, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
8888
<SpecificVersion>False</SpecificVersion>
89-
<HintPath>$(StartWorkingDirectory)\..\OuterWilds_Data\Managed\UnityEngine.PhysicsModule.dll</HintPath>
89+
<HintPath>$(GameDir)\OuterWilds_Data\Managed\UnityEngine.PhysicsModule.dll</HintPath>
9090
</Reference>
9191
<Reference Include="UnityEngine.UI, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
9292
<SpecificVersion>False</SpecificVersion>
93-
<HintPath>$(StartWorkingDirectory)\..\OuterWilds_Data\Managed\UnityEngine.UI.dll</HintPath>
93+
<HintPath>$(GameDir)\OuterWilds_Data\Managed\UnityEngine.UI.dll</HintPath>
9494
</Reference>
9595
<Reference Include="UnityEngine.UIModule, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
9696
<SpecificVersion>False</SpecificVersion>
97-
<HintPath>$(StartWorkingDirectory)\..\OuterWilds_Data\Managed\UnityEngine.UIModule.dll</HintPath>
97+
<HintPath>$(GameDir)\OuterWilds_Data\Managed\UnityEngine.UIModule.dll</HintPath>
9898
</Reference>
9999
<Reference Include="UnityEngine.UNETModule">
100-
<HintPath>$(StartWorkingDirectory)\..\OuterWilds_Data\Managed\UnityEngine.UNETModule.dll</HintPath>
100+
<HintPath>$(GameDir)\OuterWilds_Data\Managed\UnityEngine.UNETModule.dll</HintPath>
101101
</Reference>
102102
</ItemGroup>
103103
<ItemGroup>
@@ -143,16 +143,16 @@
143143
</ItemGroup>
144144
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
145145
<PropertyGroup>
146-
<PostBuildEvent>md "$(StartWorkingDirectory)\Mods\$(ProjectName)"
147-
md "$(StartWorkingDirectory)\Mods\$(ProjectName)\assets"
148-
del "$(StartWorkingDirectory)\Mods\$(ProjectName)\config.json"
146+
<PostBuildEvent>md "$(OwmlDir)\Mods\$(ProjectName)"
147+
md "$(OwmlDir)\Mods\$(ProjectName)\assets"
148+
del "$(OwmlDir)\Mods\$(ProjectName)\config.json"
149149

150-
copy /y "$(TargetPath)" "$(StartWorkingDirectory)\Mods\$(ProjectName)"
150+
copy /y "$(TargetPath)" "$(OwmlDir)\Mods\$(ProjectName)"
151151

152-
copy /y "$(ProjectDir)\default-config.json" "$(StartWorkingDirectory)\Mods\$(ProjectName)"
152+
copy /y "$(ProjectDir)\default-config.json" "$(OwmlDir)\Mods\$(ProjectName)"
153153

154-
copy /y "$(ProjectDir)\manifest.json" "$(StartWorkingDirectory)\Mods\$(ProjectName)"
154+
copy /y "$(ProjectDir)\manifest.json" "$(OwmlDir)\Mods\$(ProjectName)"
155155

156-
copy /y "$(SolutionDir)\AssetBundles" "$(StartWorkingDirectory)\Mods\$(ProjectName)\assets"</PostBuildEvent>
156+
copy /y "$(SolutionDir)\AssetBundles" "$(OwmlDir)\Mods\$(ProjectName)\assets"</PostBuildEvent>
157157
</PropertyGroup>
158-
</Project>
158+
</Project>

QSB/QSB.csproj.user

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3-
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'">
4-
<StartWorkingDirectory>C:\Program Files\Epic Games\OuterWilds\OWML</StartWorkingDirectory>
5-
</PropertyGroup>
63
<PropertyGroup>
7-
<ProjectView>ProjectFiles</ProjectView>
8-
</PropertyGroup>
9-
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'">
10-
<StartWorkingDirectory>C:\Program Files\Epic Games\OuterWilds\OWML</StartWorkingDirectory>
4+
<GameDir>C:\Program Files\Epic Games\OuterWilds</GameDir>
5+
<OwmlDir>C:\Users\ricar\Repos\mod-installer\out\Outer Wilds Mod Manager-win32-x64\OWML</OwmlDir>
116
</PropertyGroup>
12-
</Project>
7+
</Project>

README.md

Lines changed: 52 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,78 @@
11
# Quantum Space Buddies - Outer Wilds Online Multiplayer Mod
22

3+
<!-- TOC -->
4+
5+
- [Installation](#installation)
6+
- [Easy installation (recommended)](#easy-installation-recommended)
7+
- [Manual installation](#manual-installation)
8+
- [Playing as a client](#playing-as-a-client)
9+
- [Playing as a host](#playing-as-a-host)
10+
- [Development Setup](#development-setup)
11+
- [Authors](#authors)
12+
- [Special thanks](#special-thanks)
13+
- [Help / Discuss development / Whatever](#help--discuss-development--whatever)
14+
15+
<!-- /TOC -->
16+
317
## Installation
418

5-
* [Download OWML](https://github.com/amazingalek/owml/releases);
6-
* [Follow OWML's instalation instructions](https://github.com/amazingalek/owml#installation);
7-
* [Download the latest QSB release](https://github.com/Raicuparta/quantum-space-buddies/releases/latest);
8-
* Extract the `QSB` directory to the `OWML/Mods` directory;
9-
* Run `OWML.Launcher.exe` to start the game.
19+
### Easy installation (recommended)
20+
21+
- [Install the Outer Wilds Mod Manager](https://github.com/Raicuparta/ow-mod-manager#how-do-i-use-this);
22+
- Install Quantum Space Buddies from the mod list displayed in the application;
23+
- If you can't get the mod manager to work, follow the instructions for manual installation.
24+
25+
### Manual installation
26+
27+
- [Install OWML](https://github.com/amazingalek/owml#installation);
28+
- [Download the latest Quantum Space Buddies release](https://github.com/Raicuparta/quantum-space-buddies/releases/latest);
29+
- Extract the `QSB` directory to the `OWML/Mods` directory;
30+
- Run `OWML.Launcher.exe` to start the game.
1031

1132
## Playing as a client
1233

13-
* Run `OWML.Launcher.exe` to start the game;
14-
* You'll see some new buttons on the top left;
15-
* Replace `localhost` with the server's IP address;
16-
* Press "LAN Client(C)";
17-
* If you see "Stop (X)", you are connected.
34+
- Run `OWML.Launcher.exe` to start the game;
35+
- You'll see some new buttons on the top left;
36+
- Replace `localhost` with the server's IP address;
37+
- Press "LAN Client(C)";
38+
- If you see "Stop (X)", you are connected.
1839

1940
## Playing as a host
2041

21-
* Open port `7777` on your router;
22-
* Run `OWML.Launcher.exe` to start the game;
23-
* You'll see some new buttons on the top left;
24-
* Don't start the game (expedition) before starting the server;
25-
* Press "LAN Host(H)";
26-
* If you now see the "Stop (X)" button, you are serving;
27-
* Give your external IPv4 address to your clients ([like what you see here](http://whatismyip.host/)).
42+
- Open port `7777` on your router;
43+
- Run `OWML.Launcher.exe` to start the game;
44+
- You'll see some new buttons on the top left;
45+
- Don't start the game (expedition) before starting the server;
46+
- Press "LAN Host(H)";
47+
- If you now see the "Stop (X)" button, you are serving;
48+
- Give your external IPv4 address to your clients ([like what you see here](http://whatismyip.host/)).
2849

2950
## Development Setup
3051

31-
To get the project to run on Visual Studio and build correctly, you need to set this all up so the project can find its dependencies:
32-
33-
* [Install OWML](https://github.com/amazingalek/owml#installation) in the game's directory (should be something like `C:\Program Files\Epic Games\OuterWilds\OWML`);
34-
* If you already have QSB installed, remove it from the `OWML/Mods` directory;
35-
* Clone QSB's source;
36-
* Open the project solution file `QSB.sln` in Visual Studio;
37-
* On the Solution Explorer (usually the right side panel), under the project-name (NomaiVR), double click "Properties";
38-
* Go to "Debug" and change "Working Directory" to **OWML's directory**;
39-
* Do the same thing for all the other projects in the QSB solution;
40-
* If needed, right click `References` in the Solution Explorer > Manage NuGet Packages > Update OWML to fix missing references;
41-
* In the top menu go to "Project" > "Unload Project", and then "Project" > "Reload Project".
52+
- [Download the Outer Wilds Mod Manager](https://github.com/Raicuparta/ow*mod*manager) and install it anywhere you like;
53+
- Install OWML using the Mod Manager;
54+
- Clone QSB's source;
55+
- Open the file `QSB/QSB.csproj.user` in your favorite text editor;
56+
- Edit the entry `<GameDir>` to point to the directory where Outer Wilds is installed;
57+
- Edit the entry `<OwmlDir>` to point to your OWML directory (it is installed inside the Mod Manager directory);
58+
- Open the project solution file `QSB.sln` in Visual Studio;
59+
- If needed, right click `References` in the Solution Explorer > Manage NuGet Packages > Update OWML to fix missing references;
4260

43-
After doing this, the project references should be working. When you build the solution, the dll and json files will be copied to `OWML/Mods/QSB`, so you can start the game through OWML and test right away.
61+
After doing this, the project references should be working. When you build the solution, the dll and json files will be copied to `[Mod Manager directory]/OWML/QSB`. If this process is successful, you should see the mod show up in the Mod Manager.
4462

4563
If for some reason none of this is working, you might have to set everything manually:
4664

47-
* To fix the build paths and automatically copy the files to OWML, edit the "Build Events" in the properties menu.
48-
* To fix the references, right-click "References" in the Solution Explorer > "Add Reference", and add all the missing DLLs (references with yellow warning icon). You can find these DLLs in the game's directory (`OuterWilds\OuterWilds_Data\Managed`).
65+
- To fix the references, right*click "References" in the Solution Explorer > "Add Reference", and add all the missing DLLs (references with yellow warning icon). You can find these DLLs in the game's directory (`OuterWilds\OuterWilds_Data\Managed`);
66+
- If Visual Studio isn't able to automatically copy the files, you'll have to copy the built dlls manually to OWML.
4967

5068
## Authors
5169

52-
* [AmazingAlek](https://github.com/amazingalek)
53-
* [Raicuparta](https://github.com/Raicuparta)
70+
- [AmazingAlek](https://github.com/amazingalek)
71+
- [Raicuparta](https://github.com/Raicuparta)
5472

5573
## Special thanks
5674

57-
* [Mister_Nebula](https://github.com/misternebula), for research
75+
- [Mister_Nebula](https://github.com/misternebula), for research
5876

5977
## Help / Discuss development / Whatever
6078

0 commit comments

Comments
 (0)