Join the Game4Freak Discord Get exclusive plugin sneak peeks, talk directly with VisEntities, never miss important updates, and unlock special discount codes!
Gamemode Core

Gamemode Core 1.11.0

The central hub that powers all your competitive content. One lobby connecting to every arena through a unified system
orig (1).jpg



Setting up competitive minigames on your Rust server can quickly become a mess. You install one arena plugin, then another, and suddenly you're managing five different systems that all handle spawning differently, conflict with each other, cause compatibility issues, and scatter your configuration across dozens of files.

Gamemode Core fixes this by providing a single foundation that all minigames share. Instead of five different arena plugins each doing their own thing, you have one core system handling the common work while individual arenas focus only on their unique gameplay:
  • Built-in zone system designed specifically for arenas, removing the need for Zone Manager and providing only what's needed without the overhead of a general-purpose zone plugin
  • Centralized hook handling that processes damage, respawn, and pickup events once at the core level instead of every plugin listening individually, improving overall performance
  • Shared UI components including scoreboard, round timer, and kill feed
  • Automatic inventory backup when entering the lobby and restoration when leaving
  • Spawn point system with configurable randomization radius for varied player placement
  • Round lifecycle management handling waiting, warmup, active, and finished phases
  • Configurable rules per zone like no PvP, no building, no item dropping, and more
Players walk into a teleporter, get transported to that arena, play, and return to lobby when done. The experience is consistent regardless of which minigame is running. Drop in a new gamemode plugin and it automatically integrates with your existing lobby, uses the same UI, follows the same rules, and shares the same player protections.

Available Gamemode Plugins

Gamemode Core provides the foundation—to actually run playable modes, you install the minigame plugins that interest you. Each is sold separately and integrates automatically with your lobby and systems once installed.
  • Gamemode FFA
    Classic free-for-all deathmatch. Players spawn, fight, and respawn until the round ends. Highest kills wins. Simple, fast-paced action with no teams or objectives to worry about.

  • Gamemode Gun Game
    Start with a basic weapon and progress through a series of increasingly powerful guns with each kill. First player to get a kill with every weapon wins. A race to adapt and dominate.

  • Gamemode Battle Royale
    Last player standing wins. Players board a cargo plane, parachute into the arena, scavenge for gear, and fight as a deadly zone closes in around them.

  • Gamemode Aim Train
    Solo practice environment for improving your aim, spray control, and reflexes. Spawns training bots that you can customize to match your training goals.

  • Gamemode Honey Drop
    A survival platformer inspired by Fall Guys' Hex-A-Gone. Players spawn on layers of hexagon tiles that break when stepped on. Keep moving, outlast your opponents, and be the last one standing.

  • Gamemode Raid Simulator
    Team-based attack vs defend. One team raids a base while the other defends. Uses Copy Paste integration to load base designs. Prep phase for defenders, then attackers push to destroy the TC.

  • Gamemode Scrim
    Competitive team matches. Blue vs Red with team leaders controlling their roster through a UI panel. Ready-up system ensures fair starts. Built for organized competitive play.

  • Gamemodeless
    A blank canvas arena with no predefined game rules. You configure everything yourself: death behavior (auto-respawn, elimination, or nothing), scoreboard visibility, kill feed, gear loadouts, and more. Ideal for custom events or when existing gamemodes don't fit your needs.

Lobby Setup

The lobby is the central hub where players spawn and access arenas. Before installing any gamemode plugins, you need to create the lobby first. This section walks you through setting one up from scratch.

Create the Lobby Zone

First, stand where you want the center of your lobby to be and run:
Code:
gm.lobby create here 50
This creates a lobby zone with a 50 meter radius centered on your position. You'll see a sphere visual marking the boundary. Adjust the radius to fit your space.

Add Spawn Points

Players need somewhere to spawn when entering the lobby. Stand at a good spawn location inside the lobby zone and run:
Code:
gm.lobby spawn add here 3
The 3 is the randomization radius. Players spawning at this point will appear within 3 meters of the exact position, adding some variety. Add multiple spawn points to spread players out:
Code:
gm.lobby spawn add here 2
gm.lobby spawn add here 5
Each spawn point gets an auto-assigned ID (001, 002, 003, etc.). To remove a spawn point, either specify its ID or just stand near it:
Code:
gm.lobby spawn remove 002
gm.lobby spawn remove

Apply Rules

Rules control what players can do in the lobby. A typical lobby setup prevents PvP and building:
Code:
gm.lobby rule add NoPvPDamage NoBuilding NoItemDropping
See the Zone Rules section for all available rules.

Block Commands

Prevent players from using teleport or other commands that would let them escape the lobby:
Code:
gm.lobby blockcmd add tpr
gm.lobby blockcmd add home

Verify Your Setup

Run gm.lobby draw to visualize the lobby zone and all spawn points for 20 seconds. This helps confirm everything is positioned correctly.

Next Steps

With the lobby created, install gamemode plugins to add arenas. Each gamemode plugin has its own commands for creating arenas and teleporters that connect back to your lobby.

Permissions

  • gamemodecore.admin -- Required for all lobby and arena management commands.
  • gamemodecore.bypass -- Exempts staff from lobby enforcement entirely. Players with this permission won't be force-teleported to the lobby on connect (when lobby-only mode is enabled), won't have their inventory stripped or locked when entering the lobby zone, and can walk out of the lobby freely without being teleported back. Also bypasses spawn leashing in Gamemode Scrim.

Commands

Player Commands

  • /join-- Teleport to the lobby (command name configurable)
    • If inventory backup is enabled in config, saves your current position and inventory before teleporting
  • /leave-- Leave arena or lobby (command name configurable)
    • When used inside an arena, returns you to the lobby
    • When used inside the lobby (and lobby only mode is disabled), exits the lobby entirely and restores your saved position and inventory

Admin Commands

All admin commands use the gm.lobby console command with subcommands.

Lobby Management:
  • gm.lobby create <position|here> <radius>-- Create a new lobby zone
  • gm.lobby remove -- Delete the lobby
  • gm.lobby radius <newRadius>-- Change the lobby zone radius
  • gm.lobby position <position|here> -- Move the lobby center point
  • gm.lobby draw-- Visualize lobby and all arena zones for 20 seconds
    • Shows spheres for zones and spawn points with labels
Spawn Point Management:
  • gm.lobby spawn add <position|here> <radius>-- Add a spawn point to the lobby
    • Radius determines the spawn randomization area
  • gm.lobby spawn remove [spawnPointId]-- Remove a spawn point
    • If no ID specified, removes the nearest spawn point to you
Rule Management:
  • gm.lobby rule add <rule1> [rule2] ... -- Add one or more rules to the lobby (see Zone Rules for available options)
  • gm.lobby rule remove <rule1> [rule2] ... -- Remove rules from the lobby
Blocked Commands:
  • gm.lobby blockcmd add <command>-- Block a command in the lobby
  • gm.lobby blockcmd remove <command> -- Unblock a command
  • gm.lobby blockcmd list -- List all blocked commands

Configuration

JSON:
{
  "Version": "1.10.2",
  "Lobby": {
    "Enable Lobby Only Mode": true,
    "Respawn Gear Set": "",
    "Join Chat Command": "join",
    "Zone Opacity": 1,
    "Locked Inventory Containers": [
      "all"
    ],
    "Backup And Restore Inventory On Lobby Entry And Exit": true,
    "Hours Before Saved Player Data Expires": 24
  },
  "Arena": {
    "Leave Chat Command": "leave",
    "Send Join Leave Messages": true,
    "Zone Opacity": 1
  }
}

Lobby Settings

  • Enable Lobby Only Mode -- Controls whether players are confined to the lobby until they join an arena. Enable this for dedicated minigame servers where the entire server revolves around competitive play. Disable this for hybrid servers where players can also farm, build, and explore outside of arenas.
  • Respawn Gear Set -- Name of a Gear Core gear set to equip when players enter or respawn in the lobby. Leave empty to give players no items. Requires the Gear Core plugin.
  • Join Chat Command -- Chat command players use to teleport to the lobby. For example, setting this to "lobby" means players type /lobby to join.
  • Zone Opacity -- Number of sphere overlays for the lobby zone visual. Set to 0 for an invisible zone, up to 5 for a very visible/dark zone.
  • Locked Inventory Containers -- Which inventory containers to lock while in lobby. Options: "main", "belt", "wear", or "all". Prevents players from dropping or moving items while in the lobby.
  • Backup And Restore Inventory On Lobby Entry And Exit -- When enabled, the player's position, rotation, health, and full inventory are saved when joining the lobby and restored when leaving. This lets players jump into arenas without losing their normal gameplay progress. Only applies when "Enable Lobby Only Mode" is disabled.
  • Hours Before Saved Player Data Expires -- When a player joins the lobby, their position and inventory are saved. If they don't return to reclaim it within this many hours, the saved data is deleted. Set to 0 to keep saved data forever.

Arena Settings

  • Leave Chat Command -- Chat command players use to leave an arena. For example, setting this to "quit" means players type /quit to leave.
  • Send Join Leave Messages -- Whether to broadcast messages when players join or leave arenas. Messages are only sent to players in the same arena.
  • Zone Opacity -- Number of sphere overlays for arena zone visuals. Same behavior as lobby zone opacity.

Zone Rules

Rules control what actions are allowed within lobby and arena zones. Apply rules using gm.lobby rule add <ruleName> or configure them per-arena in gamemode-specific plugins.

RuleEffect
NoBuildingPrevents players from placing structures
NoKillSelfPrevents the /kill suicide command
NoCraftingDisables crafting
NoSleepingKills sleepers when players disconnect
NoItemDroppingPrevents dropping items on the ground
NoNPCSpawnPrevents NPC spawning (scientists, etc.)
NoWoundingPlayers die instantly instead of going wounded
NoLootSpawnPrevents loot containers from spawning
NoSignEditingPrevents editing signs/photos
NoCorpseSpawnPlayer corpses are removed immediately on death
NoPvPDamagePlayers cannot damage other players
NoEnvironmentDamagePlayers take no fall, heat, cold, or other environmental damage
NoArmoryBoxAccessPrevents opening Armory plugin boxes
NoItemContainerSpawnRemoves dropped item containers (backpacks)
NoItemWearItems don't lose condition/durability
NoBleedingDisables bleeding
NoHungerKeeps food at maximum
NoThirstKeeps hydration at maximum
NoHeldGunDropWeapons are destroyed instead of dropped on death
NoDecayDisables decay damage for structures in the zone
NoEntityDamagePrevents players from damaging structures and deployables
NoChatVisibilityHides player chat messages from other players in the arena (useful for solo-focus modes like aim train)
TruePvEBypassAllows PvP damage inside arenas on servers running True PVE without disabling it globally

Teleporters

Teleporters are entry points that transport players from the lobby into arenas. Each arena can have one teleporter, which appears as a defined zone that players walk into to join that arena.

When a player approaches a teleporter, floating text displays information about the arena. This shows real-time details like player count and game status. The information displayed is controlled by an Information Template setting in each gamemode's arena configuration.

Information Placeholders

The information template supports these placeholders that get replaced with live data. Gamemode plugins can add their own additional placeholders beyond these core ones.
PlaceholderDescription
{Title}The arena's display name
{Gamemode}The type of gamemode (FFA, Gun Game, etc.)
{Status}Current game state (Waiting For Players, Warmup, Started, Finished)
{TimeLeft}Time remaining in the current phase, or "Indefinite" for untimed rounds
{PlayerCount}Number of players currently in the arena
{PlayerCapacity}Maximum players allowed, or "Unlimited" if no limit
{PlayerList}Newline-separated list of player names in the arena

Teleporter Data Structure

Teleporters are configured per-arena in each gamemode's data file. The teleporter section looks like this:
JSON:
"Teleporter": {
  "Radius": 3.0,
  "Position": { "x": 100.0, "y": 10.0, "z": 50.0 },
  "Information Text Visibility Range": 15.0,
  "Visible Zone": true
}
  • Radius -- Size of the teleporter zone. Players entering this radius are transported to the arena.
  • Position -- World coordinates of the teleporter center.
  • Information Text Visibility Range -- How close players must be to see the floating information text (in meters).
  • Visible Zone -- Whether to display a visual sphere around the teleporter area.

Chat Isolation

Chat in Gamemode Core is isolated by location. Players in the lobby only see messages from other lobby players, and players in an arena only see messages from others in that same arena. This keeps communication relevant and prevents spam from bleeding across different areas of the server.

Players outside both the lobby and any arena (when lobby only mode is disabled) chat normally with global chat. Compatible with Better Chat.

Stored Data

JSON:
{
  "Lobby": {
    "Radius": 50.0,
    "Position": {
      "x": 0.0,
      "y": 10.0,
      "z": 0.0
    },
    "Rules": [
      "NoPvPDamage",
      "NoBuilding"
    ],
    "Spawn Points": [
      {
        "Id": "001",
        "Position": { "x": 5.0, "y": 10.0, "z": 5.0 },
        "Rotation": { "x": 0.0, "y": 0.0, "z": 0.0 },
        "Radius": 3.0,
        "Leash Radius": 0.0
      }
    ],
    "Blocked Commands": [
      "tpr",
      "home"
    ]
  }
}
  • Radius -- Zone radius in meters
  • Position -- World coordinates of zone center
  • Rules -- Active rules for this zone
  • Spawn Points-- List of spawn point configurations
    • Id -- Unique identifier for the spawn point
    • Position -- World coordinates
    • Rotation -- Euler angles for player facing direction
    • Radius -- Randomization radius for spawn position
    • Leash Radius -- If > 0, creates a visible zone players cannot leave
    • Leash Opacity -- Visual intensity of the spawn leash zone. Higher values increase visibility, 0 hides it completely. Default is 1
  • Blocked Commands -- Commands that are disabled in this zone

Localization

JSON:
{
  "Error.NoPermission": "You do not have permission to use this command.",
  "Timer.WaitingForPlayers": "Waiting for players",
  "Timer.WarmingUp": "Warming up",
  "Timer.CompleteObjective": "Complete objective",
  "Timer.RoundEndsIn": "Round ends in",
  "Timer.NextRoundStartsIn": "Next round starts in",
  "Kill.YouKilled": "You killed <color=#55AAFF>{0}</color> with a <color=#CACF52>{1}</color> from <color=#75A838>{2}</color>.",
  "Kill.KilledYou": "<color=#55AAFF>{0}</color> killed you with a <color=#CACF52>{1}</color> from <color=#75A838>{2}</color>.",
  "Kill.KilledPlayer": "<color=#55AAFF>{0}</color> killed <color=#55AAFF>{1}</color> with a <color=#CACF52>{2}</color> from <color=#75A838>{3}</color>.",
  "Lobby.CannotLeave": "You cannot leave the lobby.",
  "Lobby.LeaveArenaFirst": "You must leave the arena first before joining the lobby.",
  "Lobby.AlreadyInLobby": "You are already in the lobby.",
  "Lobby.StateSaved": "Your position and inventory have been saved.",
  "Lobby.StateRestored": "Your position and inventory have been restored.",
  "Player.Joined": "<color=#55AAFF>{0}</color> joined.",
  "Player.Left": "<color=#55AAFF>{0}</color> left.",
  "Button.Leave": "L E A V E",
  "Command.Blocked": "This command is blocked in this area."
}
Author
VisEntities
License duration
Unlimited
Price
14.99 USD
First release
Last update

Ratings

5.00 star(s) 2 reviews

Child plugins

  • Gamemode Gun Game
    Gamemode Gun Game
    Kill to unlock the next weapon in a fast-paced progression battle
  • Gamemode FFA
    Gamemode FFA
    Everyone is your target. Get the most kills to win
  • Gamemode Battle Royale
    Gamemode Battle Royale
    Fight to be the last player standing in an ever-shrinking safe zone
  • Gamemode Aim Train
    Gamemode Aim Train
    Train your aim and master weapon recoil patterns with fully customizable AI training bots that move, crouch, and adapt to your practice needs
  • Gamemode Scrim
    Gamemode Scrim
    Competitive team-based mode where two sides fight in short, round-based matches
  • Gamemodeless
    Gamemodeless
    A flexible, generic arena system with no predefined game rules
  • Gamemode Honey Drop
    Gamemode Honey Drop
    Race across breaking hexagon tiles as layers collapse beneath you. Outlast all opponents to win
  • Gamemode Raid Simulator
    Gamemode Raid Simulator
    Practice and compete in realistic raid scenarios

Also by VisEntities

Latest updates

  1. 1.11.0

    Improvements Scoreboard is now event-driven for real-time accuracy. Kills, deaths, joins, and...
  2. 1.10.3

    Fixed lobby only mode not working on player connect. Players now correctly spawn at lobby...
  3. 1.10.2

    New gamemode: Gamemode Raid Simulator (two teams battle to destroy or protect the tool...

Latest reviews

This plugin is an excellent foundation for creating robust and well-structured minigame arenas and servers. Configuring zones and rules is intuitive, quick to set up, and requires no unnecessary tweaking. For players, the experience is intentionally streamlined: a single command to access the lobby, and everything else is completely seamless and automated.

The developer is exceptionally responsive, with a genuine commitment to support and continuous improvement. A reliable, efficient plugin clearly designed for production use. Highly recommended.
This is the core magic behind visentities arena's gamemodes.
it allowed us to setup our own dust 2 map prefab and use it as an arena like never before. gone are the days of spawning in small pre built prefabs high in the sky.
there are no limits to this plugin, from the integration of each game mode to the fine tuning of arena boundaries, teleportation and even the ability to use monuments and areas on custom and procedural maps for arena pvp is just insanely easy to do, everything is visual just like volcano you can set areas, spawns lobby's all in the game without the use of config files the attention to detail is fantastic.
I had an issue with gungame leaving guns and body's on death but vis spent the time to educate an idiot and within 5 minutes of reading over the "rules integration" for the plugins I was able to change so much of the core arena mechanics and my admins and I are absolutely buzzing... we now have a fully functional dust 2 prefab built into our custom map and its working a dream, I have tears in my eyes, its an emotional day for us veteran counterstrike gamers... take a bow vis take a bow!
Back
Top
Chat commands start with a /, while console commands can be entered directly in the F1 console or server console. Use find <keyword> in console to search for available commands related to the plugin. Parameters in < > are required, while [ ] are optional.
This plugin uses Oxide's permission system. Grant or revoke permissions using oxide.grant and oxide.revoke. You can assign them to individual players or groups using their Steam id or group name.
Settings are stored in the config file found under the config/ directory. You can edit this file manually, then reload the plugin to apply your changes.
Persistent data is saved in the data/ directory. This includes things like saved settings, usage stats, or player progress depending on the plugin. Deleting a data file will reset stored progress or customizations.
Language files are located in the lang/ folder. To translate messages, copy the en.json file into your target language folder (e.g. fr, de) and edit the values. Reload the plugin after changes to apply new messages.
This section lists public methods exposed by the plugin for use in other plugins. You can call these via the CallHook method. Ensure the plugin is loaded before calling its API to avoid null reference errors.
These are custom hooks that other plugins can listen for. Simply define a method with the same name and expected parameters in your plugin to handle the event. Hooks are triggered at key moments and are useful for extending or reacting to plugin behavior.
These hooks are injected into the game's code using Harmony. They let the plugin run code at key points in the game's internal logic. You can return values to block or modify behavior. Use with caution — these are powerful and can affect core mechanics.
Cart