Skip to content

Glossary

This page contains definitions for terminology used throughout the OxideMod documentation. Terms across the documentation are automatically linked to their definitions here.

Core Concepts

Oxide

Oxide is a modding platform that extends game servers with plugin support. It provides a framework for developers to create plugins that modify game behavior without changing the game's source code.

Covalence

Covalence is a cross-game compatibility layer in Oxide that provides unified APIs for common functions across different games. It allows plugin developers to write code that works across multiple games without game-specific implementations. Covalence handles differences in command systems, permissions, and player management across supported games.

Extensions

Extensions are generally large projects which add functionality to Oxide or make substantial changes to a server. Unlike plugins, extensions typically modify core functionality or add significant features to the Oxide framework itself.

Plugins

Plugins are self-contained bits of code written in C# which modify game server behavior. Plugins hook into game events, add commands, and can make a wide range of changes to how a game server functions.

Plugin Development

CovalencePlugin

A base class for plugins that are designed to work across multiple games. CovalencePlugin uses the Covalence compatibility layer to provide game-agnostic functionality.

RustPlugin

A base class for plugins specific to the Rust game. RustPlugin provides access to Rust-specific hooks and functionality that may not be available through the Covalence layer.

Internal Hooks

Internal hooks are hooks that are used by Oxide itself, internal hooks are not called in plugins. Most internal hooks will have a public counterpart that is called in plugins. All internal hooks call to the RustHooks file which can be found here. Internal hooks always start with the I prefix eg. IOnServerShutdown.

Hooks

Hooks are events that plugins can subscribe to in order to execute code when specific game events occur. For example, a plugin might hook into the OnPlayerConnected event to perform actions when a player joins the server.

Data & Configuration

JSON

JavaScript Object Notation (JSON) is a lightweight data-interchange format that is easy for humans to read and write and easy for machines to parse and generate. In Oxide, JSON is used for plugin configurations, data files, and other structured data storage.

Config Files

Configuration files (config files) are JSON files that store plugin settings. These files are typically located in the oxide/config directory and allow server administrators to customize plugin behavior without editing code.

Data Files

Data files are JSON files that plugins use to store persistent data between server restarts. They are typically located in the oxide/data directory.

Security & Management

Permissions

Permissions in Oxide are a system that allows server owners to grant specific abilities and commands to players or groups. Permissions are defined by plugins and controlled using Oxide's permission commands.

Groups

Groups in Oxide are collections of players that share the same permissions. The default groups are "admin" and "default", but server owners can create additional groups as needed.

Released under the MIT License.