-
Notifications
You must be signed in to change notification settings - Fork 9
01 ‐ Setup development environment
First of all, follow lethal.wiki to have a working development environment.
Note
.NET 7 SDK is recommended to build the project.
If you need to set the dotnet version, you can use the following command:
- Command to list the installed SDKs:
dotnet --list-sdks- Command to set the dotnet version:
dotnet new globaljson --sdk-version <version>
# Example
dotnet new globaljson --sdk-version 7.0.405A new global.json file is created to set the SDK version to use.
You need to install the following tools to use the project:
-
Netcode Patcher:
dotnet tool install -g evaisa.netcodepatcher.cli
The build configuration properties are findable in the PropertyGroup section of the files.
The common build configuration is defined in the Common.props file. It's applied to Template and Test projects.
| Property | Description |
|---|---|
| GameDir | The directory where the game is installed |
| PluginGameDir | The directory where the plugins are installed |
| AssemblyGameDir | The directory where the assemblies are installed |
| GameExe | The name of the game executable |
Note
The configuration inherits from the common configuration.
The plugin build configuration is defined in the Template.csproj file. It's applied only to Template projects.
| Property | Description |
|---|---|
| NumberOfClients | The number of clients to launch when the project is built |
| DelayBetweenClientsInSeconds | The delay between the start of each client. This is recommended to be between 5 and 10 seconds to avoid problem with BepInEx terminal and auto-start mods |
| StartGame | If true, the clients will be started when the project is built |
| BuildThunderstorePackage | If true, the Thunderstore package is built when the project is built |
To start the game automatically when a client is launched, you can install an auto-start mod like AutoStart.