Installation
The OblivionMP server is distributed in the following formats:
- Binary package
- Docker image (available later)
1.0.1 offers improved stability, with bug fixes on top of 1.0.0. OblivionMP is still a work in progress, so expect rough edges, and report them on Discord.
Requirements
The server binary itself is self-contained, but server-side mods run on CoreCLR, which the server starts at launch. That means the .NET 10 runtime has to be installed on the machine, even if you do not intend to install any mods of your own. The dotnet-runtime-10.0 package is enough, you do not need the SDK.
- Windows
- Linux
The official installer puts the runtime where the server expects it, so there is nothing else to do.
Install it with your package manager, or with Microsoft's install script. The server looks for the runtime in the usual locations, in this order:
/usr/lib/dotnet(Debian and Ubuntu packages)/usr/lib64/dotnet(Fedora and RHEL)/usr/share/dotnet(Microsoft packages and the install script)~/.dotnet
A directory only counts if it actually contains host/fxr, so a leftover from an uninstalled version does not get in the way. If your runtime lives somewhere else, point DOTNET_ROOT at it:
DOTNET_ROOT=/opt/dotnet ./server
Check where yours is with dotnet --info | grep 'Base Path'.
If the runtime is missing, the server exits at startup with Cannot locate a .NET installation containing host/fxr and lists the directories it checked.
Downloads
| Platform | Architecture | Download |
|---|---|---|
| Linux | x64 | Download for Linux (1.0.1) |
| Windows | x64 | Download for Windows (1.0.1) |
1.0.1 ships as these binary packages only. The Docker image will be available later.
Installation
Extract the binary package to a location of your choice.
After extraction, the directory structure should look like this:
- Windows
- Linux
server/
├── server.exe # Main server binary
├── config.json # Configuration file
├── e_sqlite3.dll # Dependency
├── aspnetcorev2_inprocess.dll # Dependency
├── *.dll # Managed runtime dependencies
├── modloader/ # The client mod loader, handed out to connecting players
├── mods/ # Installed mods, one folder each
| ├── OblivionMp.Sdk/ # SDK mod
| | ├── manifest.json # Mod manifest, shared by both halves
| | ├── client/ # Handed out to connecting players
| | └── server/ # Stays on the server
| ├── OblivionMP.Chat/ # Chat
| ├── OblivionMp.MarkerMod/ # Name tags over other players
| ├── OblivionMp.Quests/ # Quests
| └── OblivionMp.SeedLoader/ # Fills a fresh world with the game's furniture, containers and items
├── saves/ # Directory for game saves (empty by default)
└── wwwroot/ # Admin panel assets
server/
├── server # Main server binary
├── config.json # Configuration file
├── libe_sqlite3.so # Dependency
├── *.dll # Managed runtime dependencies
├── modloader/ # The client mod loader, handed out to connecting players
├── mods/ # Installed mods, one folder each
| ├── OblivionMp.Sdk/ # SDK mod
| | ├── manifest.json # Mod manifest, shared by both halves
| | ├── client/ # Handed out to connecting players
| | └── server/ # Stays on the server
| ├── OblivionMP.Chat/ # Chat
| ├── OblivionMp.MarkerMod/ # Name tags over other players
| ├── OblivionMp.Quests/ # Quests
| └── OblivionMp.SeedLoader/ # Fills a fresh world with the game's furniture, containers and items
├── saves/ # Directory for game saves (empty by default)
└── wwwroot/ # Admin panel assets
The package ships the SDK and the mods above, so there is nothing else to install.
Configuration
You can adjust server settings by editing the config.json file. In the following table, the : notation is used to represent nested settings.
| Setting | Type | Purpose |
|---|---|---|
Server:Port | number | The port on which the server listens for incoming connections |
Server:Password | string | Optional. When set, players must enter this password in the Launcher to join. Leave empty or omit for an open server. |
Telemetry:OptOut | boolean | Set to true to opt out of sending anonymous telemetry to ReadyM. Defaults to false. |
Server:Password gates every player, including admins and whitelisted users. Password-protected servers are shown with a lock on the public server list.
The OblivionMP server runs on the same binaries as WukongMP, so the hosting features are identical: the same admin panel and the same public server listing.
First launch
Start the server by running the server.exe binary.
On first launch, the server creates a data/ directory inside the server folder.
This directory contains the web.db database file, where persistent data is stored.
Unless changed in config.json, the server listens on the following ports:
| Port | Protocol | Purpose |
|---|---|---|
| 9050 | UDP | Game traffic (player connections, game state synchronization, etc.) |
| 9050 | HTTP | Admin panel |
Docker
A Linux-based x64 Docker image will be available later. Until then, use the binary package.