
BepInEx Valheim Full
BepInEx pack for Valheim.BepInEx for Valheim, Full Pack
This pack is for Valheim modding. It includes
- the unstripped Unity libraries,
- Mono libraries from Unity for .NET 4.5,
- the System.Buffers library,
- Windows and Unix versions of BepInEx and UnityDoorstop,
- a BepInEx config with the console enabled by default,
- and a bash script to start the server on Linux via cli.
It runs both on clients and servers.
Table of Contents
- Table of Contents
- Links
- Building the pack yourself
- FAQ
- Are you open to pull requests?
- Will this package be maintained?
- Can I submit <some-random-name>.dll to the pack?
- I'm getting a weird audio-related error when I start Valheim.
- How do I configure my server on Linux with the bash script?
- What's my Linux server's password if I use the bash script?
- UNSAFE_ROOT_EXECUTION
- There are DLLs that aren't really necessary in the pack
- There's a .NET/mono/Unity DLL missing from the pack
- SHA-256 File Checkums
Links
Building the pack yourself
Notes:
- Before you start, create an empty folder to put everything in. Start clean and don't mix.
- We use
C:\with the standard Unity install directory as an example. Replace it with your own paths.
Requirements
- Get Mono 6.12.0 Stable (6.12.0.122) 64-bit
- Get Unity 2019.4.20f1
- Note: You can extract the installer to get access to the DLLs if you don't want to install Unity
- Get BepInEx for Windows x64 5.4.8
- Get BepInEx for Unix 5.4.8
- Get UnityDoorstop for Windows x64 3.3.0.0
- Get UnityDoorstop.Unix for Linux 1.5.0.0
DLLs
- From
C:\Program Files\Mono\lib\mono\4.5- Copy all DLLs
- Copy the whole folder
C:\Program Files\Mono\lib\mono\4.5\Facades(not just the DLLs inside, the folderFacades)- Keep the DLLs in that subfolder
- From
C:\Program Files\Unity\Hub\Editor\2019.4.20f1\Editor\Data\MonoBleedingEdge\lib\mono\4.5- Copy all DLLs (overwrite when prompted)
- Copy the whole folder
C:\Program Files\Unity\Hub\Editor\2019.4.20f1\Editor\Data\MonoBleedingEdge\lib\mono\4.5\Facades(not just the DLLs inside, the folderFacades)- Keep the DLLs in that folder, overwrite when prompted
- From
C:\Program Files\Unity\Hub\Editor\2019.4.20f1\Editor\Data\Managed\UnityEngine- Copy all DLLs (overwrite when prompted)
- From
C:\Program Files\Unity\Hub\Editor\2019.4.20f1\Editor\Data\PlaybackEngines\windowsstandalonesupport\Variations\mono\Managed- Copy all DLLs (overwrite when prompted)
- Get a copy of System.Buffers (target .NET 4.5) and add the DLL: https://www.nuget.org/packages/System.Buffers/
- From the DLLs you've collected, delete
UnityEngine.AudioModule.dll
Extras
- Copy our
doorstop_config.ini - Copy our custom
valheim.shbash script for Linux servers - Put the pack into your Valheim client or server, run it once to generate the
config/directory with defaultBepInEx/config/BepInEx.cfg. Then setEnabled = truein the category[Logging.Console]ofBepInEx/config/BepInEx.cfgto enable the console, and copy the config folder to your pack - Run the checksums (bash command):
find . -type f -exec sha256sum {} \;
FAQ
Are you open to pull requests?
Yes.
Will this package be maintained?
Yes. Both the GitHub and the packages on the mod websites are maintained by a team. If any one person becomes unavailable, the others can continue to maintain it. Should the whole team want to stop, we're open to considering new volunteers.
Can I submit <some-random-name>.dll to the pack?
This pack is only meant for .NET/Mono/Unity DLLs. If it's part of that, sure. Make sure to include where you got it from and why you need it.
I'm getting a weird audio-related error when I start Valheim.
Did you remove UnityEngine.AudioModule.dll (see Building the pack yourself) when building the pack yourself?
How do I configure my server on Linux with the bash script?
Open the bash script in your favorite text editor, look at the very top.
What's my Linux server's password if I use the bash script?
If you didn't configure the bash script to set your own password, it'll autogenerate a random password and show it in your terminal on startup.
UNSAFE_ROOT_EXECUTION
When you try to run the Linux server via the bash script, you may encounter a similar error:
ERROR: Running as root exposes your machine to malware and is unnecessary in a large majority of cases.
For environments that require running the bash script as root, you can start it with:
./valheim.sh UNSAFE_ROOT_EXECUTION
or with the environment variable
UNSAFE_ROOT_EXECUTION=true ./valheim.sh
There are DLLs that aren't really necessary in the pack
We're aware. If you've got a good reason to delete them (e.g. some are already loaded by the game or by BepInEx) and you want to improve the pack, submit a pull request with the change.
There's a .NET/mono/Unity DLL missing from the pack
Submit a pull request with the details and we'll get it added.
SHA-256 File Checkums
Checksums are in the file checksums.sha256.
Checksums are sorted alphabetically so they can easily be compared even in simple text editors.