⭐ hArenas ⭐ [1.16.X-26.X] | PAPI, Vault, Discord Webhook and more support! icon

⭐ hArenas ⭐ [1.16.X-26.X] | PAPI, Vault, Discord Webhook and more support! -----

Private arena access manager with timed access, player limits, warnings, temporary blocks, and etc



hArenas_cover.png

hArenas

Private Arena Access Manager for Minecraft Servers
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
hArenas is a flexible arena access manager for Minecraft servers.
Create private arenas, give players timed access, control how long they can stay inside, limit the number of players, manage warnings and blocks, restrict commands during arena sessions, and log important events to Discord.
The plugin is useful for paid arenas, duel rooms, private PvP zones, event areas, training arenas, staff-controlled arenas, donor locations and any server feature where access must be limited and controlled.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Main Features
Multiple arenas
Each arena is configured through a separate YAML file.
Code (Text):
plugins/hArenas/arenas/test.yml
The arena ID is taken from the file name:
Code (Text):
test.yml -> test
You can create multiple arenas with different settings, limits, access time, teleport points, messages, actions and Discord webhook settings.
────────────────────────────────────────
Timed arena access
Players can enter an arena only if they have active access.
Administrators can give access for a custom amount of time:
Code (Text):
/harenas access <player> <arena> give [seconds]
If seconds are not specified, the default value from the arena config is used.
Access can also be removed manually:
Code (Text):
/harenas access <player> <arena> take
This makes the plugin useful for arenas that should be available only for selected players or for a limited duration.
────────────────────────────────────────
Join and leave teleport points
Each arena can have its own join and leave locations.
When a player joins an arena, they can be teleported to the configured arena location.
When they leave, their time ends or they are removed from the arena, they can be teleported back to the configured leave location.
────────────────────────────────────────
Arena time limit
Each arena has a maximum session time.
Example:
Code (Text):
maxTimeSeconds: 300
When the time ends, the player is removed from the arena and custom actions can be executed.
────────────────────────────────────────
Player limit per arena
You can limit how many players can be inside an arena at the same time.
Example:
Code (Text):
maxPlayers: 10
If the arena is full, the plugin blocks new players from joining and can run custom actions or send a Discord log.
────────────────────────────────────────
Warning system
Staff members can issue warnings to players for a specific arena.
Code (Text):
/harenas warn <player> <arena>
Each arena has its own maximum warning count.
When a player reaches the warning limit, the plugin can automatically:
  • Remove the player's arena access
  • Block the player from the arena
  • Remove the player from the current arena session
  • Run custom actions
  • Send a Discord webhook notification
This allows staff to control arena rule violations without manually tracking everything.
────────────────────────────────────────
Temporary arena blocks
Players can be temporarily blocked from a specific arena.
Code (Text):
/harenas block <player> <arena> [seconds]
/harenas unblock <player> <arena>
If seconds are not specified, the arena's default block duration is used.
Blocks are stored per arena, so a player can be blocked from one arena while still having access to another.
────────────────────────────────────────
Blocked commands inside arenas
You can block specific commands while a player is inside an arena.
Example:
Code (Text):
blockedCommands:
  - spawn
  - home
This helps prevent players from escaping arena rules with commands such as spawn, home, back, tpa or other server commands.
When a blocked command is used, the plugin cancels it and can execute custom actions or send a Discord log.
────────────────────────────────────────
Boss bar and action bar
Each arena can display live information through boss bar and action bar messages.
Example boss bar:
Code (Text):
&fYou are in arena #FDBE00{arena} &7| &fTime left: #FDBE00{timeLeft}
Example action bar:
Code (Text):
&fPlayers&7: #FDBE00{players}&7/#FDBE00{maxPlayers}
Available arena placeholders include:
Code (Text):
{player}
{arena}
{arenaId}
{timeLeft}
{players}
{maxPlayers}
{warns}
{maxWarns}
────────────────────────────────────────
Discord webhook logging
Each arena can have its own Discord webhook settings.
The plugin can log important events such as:
  • Player joined an arena
  • Player left an arena
  • Player tried to join without access
  • Arena is full
  • Player is blocked from the arena
  • Access was given or removed
  • Warning was issued
  • Player was blocked because of warnings
  • Manual block or unblock
  • Warnings were reset
  • Arena time ended
  • Blocked command was used
Webhook messages support embeds, custom title, description, color and footer.
────────────────────────────────────────
Custom action system
hArenas includes a flexible action system that allows you to customize what happens during arena events.
Supported action sections:
Code (Text):
actions.alreadyInArena
actions.arenaFull
actions.noArenaAccess
actions.joined
actions.left
actions.accessGiven
actions.accessRemoved
actions.warned
actions.blocked
actions.unblocked
actions.warnsReset
actions.timeEnded
actions.warnBlocked
actions.arenaBanned
actions.commandBlocked
Supported action types include:
Code (Text):
[MESSAGE]
[BROADCAST]
[CONSOLE]
[PLAYER]
[SOUND]
[ACTIONBAR]
[BOSSBAR]
[PARTICLE]
[FIREWORK]
[EFFECT]
[VAULT]
[CLOSE]
[ACHIVEMENT]
Example:
Code (Text):
actions:
  joined:
    - '[MESSAGE] {prefix}You entered arena #FDBE00{arena}'
    - '[SOUND] ENTITY_PLAYER_LEVELUP:1:1'
  left:
    - '[MESSAGE] {prefix}You left arena #FDBE00{arena}'
  accessGiven:
    - '[BROADCAST] {prefix}Access to #FDBE00{arena} &fwas given to #FDBE00{player} &ffor #FDBE00{time}'
  commandBlocked:
    - '[MESSAGE] {prefix}You must leave the arena before using this command'
────────────────────────────────────────
SQLite storage
The plugin stores arena data in a local SQLite database:
Code (Text):
plugins/hArenas/arenas.db
Stored data includes:
  • Arena access
  • Arena warnings
  • Arena blocks
No external database setup is required.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Commands
Code (Text):
/harenas
/harenas join <arena>
/harenas leave
/harenas access <player> <arena> give [seconds]
/harenas access <player> <arena> take
/harenas warn <player> <arena>
/harenas resetwarns <player> <arena>
/harenas block <player> <arena> [seconds]
/harenas unblock <player> <arena>
/harenas reload
Command description:
Code (Text):
/harenas                                   - Show help message
/harenas join <arena>                      - Join an arena
/harenas leave                             - Leave the current arena
/harenas access <player> <arena> give      - Give arena access
/harenas access <player> <arena> take      - Remove arena access
/harenas warn <player> <arena>             - Add a warning
/harenas resetwarns <player> <arena>       - Reset warnings
/harenas block <player> <arena>            - Temporarily block a player
/harenas unblock <player> <arena>          - Remove arena block
/harenas reload                            - Reload config and arenas
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Permissions
Code (Text):
harenas.admin       - Access to admin commands
harenas.warn        - Access to /harenas warn
harenas.resetwarns  - Access to /harenas resetwarns
By default, these permissions are assigned to operators.
Player join and leave commands do not require a separate permission, but the player must have active arena access to join.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
PlaceholderAPI
If PlaceholderAPI is installed, hArenas registers its own placeholders.
The placeholder identifier is:
Code (Text):
harenas
Available placeholders:
Code (Text):
%harenas_access_<arena>%
%harenas_warns_<arena>%
%harenas_ban_left_<arena>%
%harenas_ban_left_formatted_<arena>%
Examples for arena file test.yml:
Code (Text):
%harenas_access_test%
%harenas_warns_test%
%harenas_ban_left_test%
%harenas_ban_left_formatted_test%
Placeholder values:
Code (Text):
%harenas_access_<arena>% returns: yes, no or banned
%harenas_warns_<arena>% returns: warning count
%harenas_ban_left_<arena>% returns: remaining block time in seconds
%harenas_ban_left_formatted_<arena>% returns: formatted remaining block time
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Configuration
Example arena settings:
Code (Text):
settings:
  displayName: '#FDBE00Arena'
  location:
    join:
      world: world
      x: 0.0
      y: 100.0
      z: 0.0
      yaw: 0.0
      pitch: 0.0
    leave:
      world: world
      x: 0.0
      y: 100.0
      z: 0.0
      yaw: 0.0
      pitch: 0.0
  maxPlayers: 10
  maxTimeSeconds: 300
  maxWarns: 3
  warnBanSeconds: 86400
  accessSeconds: 86400
  leaveOnDeath: true
  blockedCommands:
    - spawn
    - home
You can create more arenas by adding more YAML files to:
Code (Text):
plugins/hArenas/arenas/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Requirements
  • Java 17 or newer
  • Minecraft server API 1.16 or newer
Optional integrations:
  • PlaceholderAPI for external placeholders
  • Vault-compatible economy for Vault actions
  • Discord webhook URL for Discord logging
Paper or Purpur is recommended for the best experience, especially when using modern Adventure-based messages and visual actions.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Installation
  1. Place hArenas.jar into your server's plugins folder.
  2. Restart the server.
  3. Open plugins/hArenas/.
  4. Configure arenas in plugins/hArenas/arenas/.
  5. Give staff the required permissions.
  6. Give a player access to an arena.
  7. Let the player join the arena with /harenas join <arena>.
Example:
Code (Text):
/harenas access Steve test give 3600
/harenas join test
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Why hArenas?
hArenas gives server owners a clean way to manage private arena access without manually tracking players, timers, warnings or bans.
You can create multiple arenas, give timed access, control session length, limit players, block commands, punish rule breakers, show live boss bar information and receive Discord logs for important events.
Everything is configured through YAML files, and all player access data is stored automatically in SQLite.
Resource Information
Author:
----------
Total Downloads: 3
First Release: May 10, 2026
Last Update: May 10, 2026
Category: ---------------
All-Time Rating:
2 ratings
Find more info at t.me...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings