Arena

Arena 2.0.38

A multi-arena plugin capable of running many instances of various events at the same time.


Features
- Run multiple events of various types at the same time
- Run events as single or round based games
- Event statistics and leader boards
- Optional event access from a lobby area, or anywhere on the map
- Restores player back to their prior state when leaving a event
- Customizable UI colors and images

Events
Free for All
Team Deathmatch
Survival
Team Survival
Gun Game
One in the Chamber
Capture the Flag
NPC Survival
Slasher
Infected

About the plugin
This plugin collection contains into 3 core pieces, and individual plugins for each event
Arena.cs - This is the backbone of the plugin that manages the events
ArenaUI.cs - This is for the UI side of things and manages everything UI related
ArenaStatistics.cs - This manages the database of player scores and event statistics for leader boards and such


eventmenu.jpg


The first thing players see when opening the menu is the event mode selection screen. Here they can select which event mode they would like to player.

In this screenshot all the available events are shown, however you can hide unused event types in this menu via the ArenaUI configuration file.

eventselection.jpg


eventdetails.jpg

eventdetails.jpg

Inside the event menu players will be able to see all the events for the selected mode that are currently running. When they view a individual event additional details about the event and the current game scores will be shown. If a player wishes to join an event they simply click the "Enter Event" button.

Upon entering an event the player will be able to move around freely until the minimum amount of players needed to start the event has been reached. Once that happens a UI countdown will begin.
When the countdown expires players will be respawned with gear and the event will begin.

There is a small UI scoreboard in the top right hand corner and a message notifying players they can access the in-game menu by typing /menu. This menu contains 2-3 buttons (depending on the game type) and a small logo
scoreboard.png


leavemenu.png




When a player dies they will be presented with a death screen which has a respawn button (with the amount of time left before they can respawn), a toggle button to allow them to auto-respawn when they die, and if enabled a class selection section for them to pick a new class.

deathscreen.jpg


There are options in the config to drop the ammunition from the players held weapon, or the weapon itself upon death. This will be useful for enemy players to re-stock their ammo during an event.
This is also tied into the RotatingPickups plugin (if you have it) to make those items hover and allow collision pickup, without enabling all items on the server or in that zone to hover

Once the event has ended the players be teleported back to either the lobby (if enabled) or back to the position they were when they joined the event and they can view the scoreboard via the menu

Event Lobby
You can create a lobby area and enforce players use the lobby to access events. This is a optional feature.
To create a lobby you will need to create a zone around the lobby area, and create a spawnfile for the lobby spawn points.

In the Arena configuration file there is a section for the lobby, in here you can enable/disable the lobby feature and set the zone and spawn file.
Players can also teleport to the lobby using the command /lobby

JSON:
"Lobby Options": {
    "Force event access from a physical lobby": false,
    "Lobby spawnfile": "",
    "Lobby zone ID": "",
    "Lobby kit (only applies if event only server)": "",
    "Lobby teleportation options": {
      "Allow teleportation to the lobby (Requires a lobby spawn file)": false,
      "Allow teleportation if Raid Blocked (NoEscape)": false,
      "Allow teleportation if Combat Blocked (NoEscape)": false,
      "Allow teleportation if bleeding": false,
      "Allow teleportation if building blocked": false,
      "Allow teleportation if on the CargoShip": false,
      "Allow teleportation if in a HotAirBalloon": false,
      "Allow teleportation if on the OilRig": false,
      "Allow teleportation if mounted": false,
      "Teleportation countdown timer": 10,
      "Teleportation cooldown timer": 60
    }
  },

Creating Events
Creating events is a simple. Prior to opening the event creation menu you first must create your zone, kits, and spawn file(s).

Once you have the necessary pieces ready to go you can create the event by typing /menu and opening the "Admin" section.
This will open the event creation menu where you can select your event type, set a name and basically fill out all the fields needed to create an event.

create1.jpg

create2.jpg


There are 3 types of entries in the creation menu;
Text input fields - Click on the field to start editing, when you are done hit the enter key on your keyboard. To clear the field click the "X" button on the end
Selection fields - Opens another panel and presents you with options to select from a list of values
Toggle fields - Simple on/off toggle

When creating a event some of these values are required and others are not. If you have not filled out all the required information you will be prompted to do so when you attempt to save the event.

The fields shown will vary between each event type.

A couple of notable fields are;
"Event Name" - This is the name of the event players will see
"Permission" - If you assign a permission to this field players will require said permission to be able to enter the event. Event permissions should be prefixed with "arena."
"Event Icon" - This should be a URL to a image. By setting a value in this field you will display a custom event icon in the event selection menu.

* Be aware that any background plugins that have UI that is refreshing (such as LustyMap or InfoPanel) cause the input fields to reset. To stop this simply disable any refreshing UI before entering the creation menu!

Creating GunGame Events
GunGame is a little different then the other events. It uses one kit that will be the players clothing and gear (with no weapons). It also requires that you create a "weapon set".
A Weapon Set is a list of weapons that correlate to the ranks of GunGame.
To create a weapon set you use the command "/aggset" for usage instructions


Event Statistics
The statistic menu provides an abundance of score related information. It is broken into 3 categories.

Personal - These are statistics related to the player only. It shows counts for their total kills, deaths, assists, head shots, melee kills, wins, losses, and games played. It also shows how many times they have played each available game mode.

Global - These are global statistics, exactly the same as the personal section how ever its a total count from every player who has played an event

Leaderboard - This is the leaderboard for every player who has played an event. Each player is assigned a ranked score based on the combination of all their score counts. They are then moved into order and the player is assigned a rank. On this page you can view stats for every player who has played in the events and their current rank.
You can sort the leader boards by clicking on any score title
statistics.jpg



Arena Teleporters
You can setup teleporter triggers that players can simply walk in to to join an event.
These triggers can be placed anywhere on the map.
arenatp.jpg

These triggers are event specific, and show information about the event as the player approaches it. When the player walks into the trigger it enters them in to that event.

To setup a arena teleporter for a event simply use the command "/teleporter add "Event Name"'. This will create a teleporter on your current position and is saved to that event.
Every time that event loads it will automatically restore the teleporter.

To remove a arena teleporter use the command "/teleporter remove "Event Name""

Commands
/menu - Open the event menu

/teleporter add "Event Name" - Create an arena teleporter for the specified event on your position
/teleporter remove "Event Name" - Remove the arena teleporter for the specified event

/lobby - Allows players to teleport to the event lobby (if setup)
/lobbyc - Cancel a pending lobby TP request

Weapon Set Commands
/aggset- Show help creating weapon sets
/aggset new - Start creating a new weapon set
/aggset edit <name> - Edits the specified weapon set
/aggset delete <name> - Deletes the specified weapon set
/aggset list - Lists all available weapon sets

/aggset add <opt:rank> - Adds the weapon you are holding to the weapon set. If you specify a rank the weapon will be inserted at that position
/aggset remove <number> - Removes the specified rank from the weapon set
/aggset ranks - List the weapons and ranks in the weapon set
/aggset save <name> - Saves the weapon set you are currently editing

Permissions
Arena uses Oxides permission system
To assign a user permission use oxide.grant user "username|steam id" "permission" in console.
To assign a group permission use oxide.grant group "groupname" "permission" in console.
You can read more about how to use the permission system here : uMod - Permissions
arena.admin - Required to access the event creation menu

Arena Config
JSON:
{
  "Server Settings": {
    "Restore players when they leave an event": true,
    "Disable server events (Patrol Helicopter, Cargo Ship, Airdrops etc)": false,
    "Use inbuilt chat manager": false
  },
  "Event Options": {
    "Create and add players to Rusts team system for team based events": true,
    "Drop on death (Nothing, Ammo, Backpack, Corpse, Weapon)": 2,
    "Add rotator to dropped items (Requires RotatingPickups)": false,
    "Invincibility time after respawn (seconds)": 3.0,
    "Blacklisted commands for event players": [
      "s",
      "tp"
    ],
    "Restart the event when it finishes": false,
    "Automatic Health Restore Options": {
      "Enable automatic health restoration": false,
      "Start restoring if no damage taken for x seconds": 5.0,
      "Amount of health to restore every second": 2.5
    }
  },
  "Lobby Options": {
    "Force event access from a physical lobby": false,
    "Lobby spawnfile": "",
    "Lobby zone ID": "",
    "Lobby kit (only applies if event only server)": "",
    "Lobby teleportation options": {
      "Allow teleportation to the lobby (Requires a lobby spawn file)": false,
      "Allow teleportation if Raid Blocked (NoEscape)": false,
      "Allow teleportation if Combat Blocked (NoEscape)": false,
      "Allow teleportation if bleeding": false,
      "Allow teleportation if building blocked": false,
      "Allow teleportation if on the CargoShip": false,
      "Allow teleportation if in a HotAirBalloon": false,
      "Allow teleportation if on the OilRig": false,
      "Allow teleportation if mounted": false,
      "Teleportation countdown timer": 10,
      "Teleportation cooldown timer": 60
    }
  },
  "Timer Options": {
    "Match pre-start timer (seconds)": 10,
    "Round interval timer (seconds)": 10,
    "Backpack/corpse despawn timer (seconds)": 30
  },
  "Message Options": {
    "Broadcast when a player joins an event to event players": true,
    "Broadcast when a player leaves an event to event players": true,
    "Broadcast the name(s) of the winning player(s) to chat": true,
    "Broadcast kills to event players": true,
    "Chat icon Steam ID": 76561198403299915
  },
  "Version": {
    "Major": 2,
    "Minor": 0,
    "Patch": 0
  }
}

ArenaUI Config
JSON:
{
  "Commands": {
    "Chat command to open the event menu": "menu",
    "Chat command to open the statistics menu": "stats",
    "Chat command to open the admin menu": "menu.admin"
  },
  "Images": {
    "Death screen background image": "https://www.rustedit.io/images/arena/arena_death_screen.png",
    "Default event icon image": "https://www.rustedit.io/images/arena/arena_event_placeholder.png",
    "Server banner image": "https://www.rustedit.io/images/arena/arena_server_banner.png",
    "Server logo image": "https://www.rustedit.io/images/arena/arena_logo_small.png",
    "Exit icon": "https://www.rustedit.io/images/arena/arena_exit.png",
    "Return icon": "https://www.rustedit.io/images/arena/arena_return.png",
    "Respawn icon": "https://www.rustedit.io/images/arena/arena_respawn.png",
    "Statistics icon": "https://www.rustedit.io/images/arena/arena_statistics.png",
    "Events icon": "https://www.rustedit.io/images/arena/arena_events.png",
    "Admin icon": "https://www.rustedit.io/images/arena/arena_admin.png"
  },
  "Hide unused event types": false,
  "Menu Colors": {
    "Background Color": {
      "Hex": "#000000",
      "Alpha": 0.9
    },
    "Panel Color": {
      "Hex": "#2c2c2c",
      "Alpha": 1.0
    },
    "Button Color": {
      "Hex": "#222222",
      "Alpha": 1.0
    },
    "Highlight Color": {
      "Hex": "#9b2021",
      "Alpha": 1.0
    }
  },
  "Scoreboard Colors": {
    "Background Color": {
      "Hex": "#000000",
      "Alpha": 0.9
    },
    "Foreground Color": {
      "Hex": "#252526",
      "Alpha": 0.8
    },
    "Panel Color": {
      "Hex": "#2d2d30",
      "Alpha": 0.8
    },
    "Highlight Color": {
      "Hex": "#9c2021",
      "Alpha": 0.8
    },
    "Screen Position": {
      "Center Position X (0.0 - 1.0)": 0.9325,
      "Center Position Y (0.0 - 1.0)": 0.98,
      "Panel Width": 0.125,
      "Panel Height": 0.02,
      "UI4": {
        "xMin": 0.87,
        "yMin": 0.97,
        "xMax": 0.995,
        "yMax": 0.99
      }
    }
  },
  "Version": {
    "Major": 2,
    "Minor": 0,
    "Patch": 0
  }
}

Information

Author
k1lly0u
First release
Last update
Rating
4.61 star(s) 38 ratings

Latest Release v2.0.38

Released
Oct 5, 2024 at 12:34 AM
Rating
0.00 star(s) 0 ratings


More resources from k1lly0u

  • PilotEject
    PilotEject
    A mini event where a helicopter malfunctions and the pilot has to eject
  • HeliRefuel
    HeliRefuel
    A mini-event where a helicopter populated with NPCs needs to land to refuel
  • ZombieHorde
    ZombieHorde
    Create hordes of zombies that roam around your server looking for brains
  • Admin Menu
    Admin Menu
    Manage groups, permissions, commands and convars from a GUI menu
  • TeleportGUI
    TeleportGUI
    Teleport, home and warp with a easy to use UI

Arena by k1lly0u
© chaoscode.io Jul 16, 2017

Latest reviews

Everything works great except the npc survival. They will spawn outside of the spawns set even outside of the event zone where players can't find or shoot them to continue to the next level rendering this 100% useless for that game mode. I've made request to discord for support for about a month now with no reply back for support. Please fix the issues and hire more staff to respond to support request.


I will happily change this to 5 stars when its fixed
sexy ui. straightforward setup, infinite options. look, we can all want more, sayin that the grass over there looks greener, but realistically.... what it comes with is absolutely gamechanging for Rust. i have npc survival in 4 COD maps now!
Hello k1lly0u, first of all big praise for this cool plugin, my community loves it! The configuration is super simple and easy to understand.
A clear recommendation !!!

p.s. What I would still wish for would be a game mode similar to Counter Strike -> Bomb Defuse?
With 2 bomb spots. and 2 teams one plants the bomb and one has to defuse it.

Best regards
Amazing plugin that is very easy to use. My players really enjoy it
Amazing Plugin, a must have !
I really like this plugin.
Nice work k1lly0u :)
I miss the chopper survival event a bit.
They were loved by the players on the PVE server
seems to be working fine for me although im only using it for PVP so no npc's.
Needs updates. Notifications wont display when events start and has some bugs!..
The issue of the respawn loop was fixed. Thanks a lot!
Huge bugs like backpacks still being openable in arena so you can take out weapons... & npcs not attacking.
Plugin blocks npc killing and destroying things in some modes.
Mod really needs an update not worth the price point at this stage unless you know c# and can fix the code for yourself.