KeybindLib depends on several proprietary assemblies that are part of Slime Rancher, some of which need to be publicized. This makes the build process a little complicated.
If you just want a bleeding-edge version of KeybindLib, you can download one from GitHub Actions. Otherwise, follow the steps below.
-
Download the repository.
-
Open
configure
and follow the instructions in theDIY INSTRUCTIONS
section. -
Open the
src
folder, then openKeybindLib.sln
in Visual Studio or another C# IDE. -
Switch the build configuration to
Release
and build the solution. -
Open
build\target
and enjoy your homemade copy of KeybindLib!
Warning: because SRML only supports the Windows build of Slime Rancher, this mod will likely only function if you have that build. The Linux build won't work.
First, make sure you have Mono, MonoDevelop, git, and NuGet installed.
Then, clone the repo:
git clone https://github.com/Esper89/SlimeRancher-KeybindLib.git
cd SlimeRancher-KeybindLib
Run the configuration script.
./configure
Run make. The result will be in build/target
.
make
If you'd like to install it, use the install
target.
make install
If you would like to, you can also build KeybindLib by opening src/KeybindLib.sln
in MonoDevelop. Unfortunately, MonoDevelop doesn't support C# 8, so the error highlighting will not be correct. For an IDE that does support C# 8, you can use DotDevelop.
KeybindLib has three configurations:
-
Debug
: KeybindLib and ExampleMod are both compiled, and are automatically copied to your Slime Rancher install directory. Debugging symbols are embedded. -
Release
: KeybindLib is compiled, ExampleMod isn't. KeybindLib's output is placed inbuild/target
, along with it's XML/markdown documentation and a zip of ExampleMod's source tree. Warnings are errors, optimizations are enabled, and debugging symbols are not included. -
Testing
: Same asRelease
, but ExampleMod is compiled, and no output is placed inbuild/target
. No actual testing is performed.
Running the Clean
task will delete the files that were generated by the corresponding Build
task.
These are equivalent to make's debug
, build
and test
targets respectively. The clean
target cleans all three. See Makefile
for the full list of targets.
To test the Release
version, use the install
make target.
make debug
make test
make install
When building in Release
mode, XML and markdown documentation are generated. The markdown documentation is copied to src/KeybindLib/README.md
and committed by the GitHub Actions workflow.
If you have any questions, feel free to message me on Discord (Esper#8989
) or matrix (@esper89:matrix.org
).