Skip to content

alpaka-gaming/openmod

 
 

Repository files navigation

OpenMod Discord

OpenMod is a plugin framework for .NET.

It supports authorization, plugin configurations, internalization, command handling and much more. OpenMod can be used for games, bot frameworks, web servers or anything else and has official implementations for Unturned and a standalone console. An implementation for a discord bot framework is also considered.

For a list of available plugins, visit openmod-plugins.

Features

OpenMod is based on modern C# code and best practices.

  • Modern API for plugin development with C# and Unity best practices
  • Plugin installation with NuGet
  • Can self update with NuGet
  • Based on .NET Generic Host
  • IoC and Dependency Injection using Autofac
  • UniTask integration for Unity based games
  • Configure OpenMod and plugins with yaml configurations, environment variables, commandline arguments, etc.
  • Serilog for logging, including rich configuration options via logging.yml
  • Scripting (todo)
  • RCON (todo)

Getting Started

To get started, visit the OpenMod Documentation.

If you would like to install OpenMod, installation guides for the following platforms are available:

If you want to make plugins for OpenMod, you can get started by reading the Making your first plugin page.

Supported Games

Currently Unturned is the only supported game. More games might follow in the future.

A RocketMod 4 bridge has been made, which allows to run legacy RM4 plugins. The configs for RM4 are yet to be decided to be separate, or to be proxied.

Build Status

framework standalone unityengine unturned
OpenMod.Bootstrapper OpenMod.Standalone OpenMod.UnityEngine OpenMod.Unturned
OpenMod.API OpenMod.Unturned.Module
OpenMod.Core OpenMod.Rocket.API
OpenMod.NuGet OpenMod.Rocket.Core
OpenMod.Runtime OpenMod.Rocket.Unturned