Downloading and configuring the C# IDE for the example template is the fourth step Overall Goals.
Install C# IDE
Download Rider or Visual Studio. If you prefer, you can also use a text editor, or a lightweight environment like Visual Studio Code.
Initial configuration of the project
Now, Open the project in your IDE or text editor. Do not worry if your IDE shows a lot of errors. They will disappear at the end of this section. There are a few steps to follow:
In Rider, right click on the project and go under
Edit > Edit .csproj. Note that the image below is a sample image, and some information, particularly the name of the project, will not match with our Example mod project.
In Visual Studio Code, open up the
.csprojfile from the explorer view.
You can also navigate to the directory in which you cloned the git repository, and open the .csproj with a text editor.
If you can't find the
.csproj file, make sure you are in the right directory.
The project is organized in a nested structure. Here is an example directory
structure. Note that the exact name of the
.csproj file depends on what you
passed as the name to
dotnet new reactor -n when you created the project.
│ ├── ModExperiment.csproj
│ └── TemplatePlugin.cs
Inside the project file
.csproj file, there are few important properties:
GameVersiondefines which version of the game that the Reactor framework will download.
Descriptionshould be a description of your mod.
Authorsshould be the name of the author(s) of the mod.
<Description>Mod generated using Reactor Template</Description>
<!-- <Authors>your name</Authors> -->
<GamePlatform Condition="'$(GamePlatform)' == ''">Steam</GamePlatform>
<GameVersion Condition="'$(GamePlatform)' == 'Steam'">2021.6.30</GameVersion>
<GameVersion Condition="'$(GamePlatform)' == 'Itch'">2021.6.30</GameVersion>
<PackageReference Include="Reactor" Version="2.0.0" />
<PackageReference Include="BepInEx.Unity.IL2CPP" Version="6.0.0-be.662" Private="false" ExcludeAssets="runtime;native" />
<PackageReference Include="AmongUs.GameLibs.Steam" Version="2022.10.25" PrivateAssets="all" />
<PackageReference Include="BepInEx.AutoPlugin" Version="1.1.0" PrivateAssets="all" />
<PackageReference Include="BepInEx.IL2CPP.MSBuild" Version="2.0.1" PrivateAssets="all" ExcludeAssets="runtime" />
<Target Name="Copy" AfterTargets="Build" Condition="'$(AmongUs)' != ''">
<Copy SourceFiles="$(TargetPath)" DestinationFolder="$(AmongUs)/BepInEx/plugins/" UseSymboliclinksIfPossible="true" />
If you still have any errors, you should refresh your IDE, and IDE should do this automatically. Otherwise, restart the IDE, and it will pick up the proper information from the project.