aparx' skywarz icon

aparx' skywarz -----

The ultimate Skywars experience. Advanced plugin with a ton of customization.



Skywarz
The gold standard of Skywars.

This is a beta version

If you spot bugs, please open an issue on GitHub before writing a review.

After seven years and over 30,000 downloads, I decided to completely redo the original Skywarz. This project contains over 17,000 lines of code and more than 190 Java classes, that showcase my skills in Java. Made with security and future extendability in mind.

Legacy versions (< 2.0) are not supported anymore

Overview

[​IMG] [​IMG]

Skywarz Features
  • Multiarena & Bungeecord​
  • Teams (and solo support)​
  • SQL Database support for MySQL, SQLite, Postgres, Microsoft SQL, and more​
  • Player leaderboard and statistics​
  • Underlying TTL caching of database query results​
  • Priority join (Premium join)​
  • Chest refill (togglable per arena)​
  • Protection phase (togglable per arena)​
  • Spectators (with Teleporter)​
  • Quickstart​
  • Arena Reset​
  • Simplistic kit creator​
  • Advanced kit selector​
  • Animated team selector​
  • Particles, effects and winner celebration​
  • Easy setup & per arena customization​
  • Customizable items​
  • Customizable signs​
  • Customizable messages​
  • Customizable scoreboards​
  • Customizable kits (kits.yml & in-game kit creator)​

Multiarena sign (and states)
You can create signs for a multiarena server. If you use Bungeecord, you have to use a separate Bungeecord sign plugin that utilizes the motd of the target arena server as the status. It is planned to add Bungeecord signs natively in the future.
sign_creation_img.png sign_idle.png sign_playing.png sign_done.png
(By default) If the color is green, it means a player is able to join the match in theory.


Media
[Tutorial and further media follows]


Scoreboards
All scoreboards are completely changable through scoreboards.yml

[​IMG] [​IMG] [​IMG]


Configurations
Skywarz contains many configurations. Not every is listed below, but most are.
Code (YAML):
# <================================================>
#                 Main configuration
#    Here contained are general purpose settings.
#        [[ Skywarz 2.0.0-beta.1 by ~aparx ]]
# <================================================>

bungeecord
:
  # If true, this server is seen as a dedicated Skywarz server.
  # This implies that only one arena is active at once for this server.
  enabled
: false
  # The dedicated arena that is represented by this dedicated server.
  # If the above boolean is true, a player will be put into a match for this arena.
  # If the arena does not exist and the player has no setup permission, they are kicked.
  arena
: <Arena >
  # The Motd when the Bungeecord mode is enabled (can be used for external analysis)
  motd
:
 - ' {name }'
  - ' {state.color } {state.name }'
  # The fallback server players are teleported when a match ends or they leave
  fallback
: lobby
celebration
:
  # If enabled, effects will spawn to celebrate a winner at the lobby when a match is done
  enabled
: true
  # The radius in which fireworks randomly spawn to celebrate the winner
  firework spawn radius
: 20.0
  # The minimum height offset to the lobby spawn at which fireworks spawn
  firework height
: 5.0
chat
:
  # When a player is not alone in a team, they will automatically only be able to chat
  # with their team, unless they use one of following tags at the beginning of their message.
  # The tags are case-insensitive.
  everyone tag
:
 - '@everyone'
  - '@ all'
  - '@a'
# Valid units: 'ticks', 'seconds', 'minutes', 'hours' and 'days'
duration
:
  # The different durations of all running game phases
  phases
:
    DONE
:
      ==
: Skywarz.TickDuration
      unit
: seconds
      amount
: 15
    IDLE
:
      ==
: Skywarz.TickDuration
      unit
: seconds
      amount
: 45
    PLAYING
:
      ==
: Skywarz.TickDuration
      unit
: minutes
      amount
: 25
  # How long players cannot take damage (protection time)
  protection
:
    ==
: Skywarz.TickDuration
    unit
: seconds
    amount
: 15
  # The interval in which an opened chest is refilled
  chest refill
:
    ==
: Skywarz.TickDuration
    unit
: minutes
    amount
: 3
Code (YAML):
# <============================================================>
#                     Language configuration
#    The primary message definitions in your target language.
#    This configuration does *not* contain all translations.
#              [[ Skywarz 2.0.0-beta.1 by ~aparx ]]
# <============================================================>

prefix
: §b [Skywarz ]§r
successPrefix
: §a [Skywarz ]
warningPrefix
: §c [Skywarz ]
errors
:
  generic
: ' {warningPrefix } Error : {0 }'
  syntax
: ' {warningPrefix } Syntax : {usage }'
  in a match
: ' {warningPrefix } You are in a match already!'
  not in a match
: ' {warningPrefix } You are not in a match!'
  not a number
: ' {warningPrefix } Value {0 } is not a number!'
  not an integer
: ' {warningPrefix } Value {0 } is not an integer!'
  arena not found
: ' {warningPrefix } Cannot find arena {0 }!'
  permission
: ' {warningPrefix } You do not have the permission for this action!'
  command not found
: ' {warningPrefix } Command not found. Try §r/sw help§c.'
  match is full
: ' {warningPrefix } Cannot join : Match is full!'
  not a player
: ' {warningPrefix } Argument is not a valid player!'
match
:
  join
:
    error
: ' {warningPrefix } You cannot join this match!'
    broadcast
: §a [- ]§7 Player §r {player.name }§7 has joined the game.
  leave
:
    success
: ' {successPrefix } You left the match!'
    broadcast
: §c [- ]§7 Player §r {player.name }§7 has left the game.
  team switch
:
    error
: ' {warningPrefix } You cannot join this team!'
  priority
:
    error
: ' {warningPrefix } Match is full. Could not find anyone that is kickable!'
    kick
: ' {warningPrefix } You have been kicked for someone that is VIP.'
  dequeued
: ' {warningPrefix } An error occurred. You have been dequeued.'
  broadcast
:
    idle
:
      countdown
: ' {prefix }§7 The game starts in §8 {match.time.left.literal }§7!'
    require players
: ' {prefix }§7 Require §c {match.missing }§7 more players to start!'
    done
:
      countdown
: ' {prefix }§7 The match closes in {match.time.left.literal }!'
    protection
:
      countdown
: ' {prefix }§7 Protection phase ends in {time.left.literal }!'
      ended
: ' {prefix } Protection has ended, you are now vulnerable!'
  quickstart
:
    success
: ' {successPrefix } The game will start shortly.'
    error
: ' {warningPrefix } Cannot quickstart your match.'
  killed
: ' {prefix }§7 Player {player.team.color } {player.name }§7 was killed by {killer.team.color } {killer.name }§7!'
  death
: ' {prefix }§7 Player {player.team.color } {player.name }§7 died!'
  kit
:
    select
: ' {successPrefix } You selected the Kit {player.kit.displayName }§a!'
    assign
: ' {successPrefix } You have been assigned the Kit {player.kit.displayName }§a!'
  finish
:
    title
:
      you won
: §aYou won!
      you lost
: §cYou lost!
      team won
: Team {team.displayName }§r won!
    broadcast
:
      team won
:
     - ' {team.color } [Skywarz ] Team §l {team.displayName } won!'
      - ' {team.color } [Skywarz ] Thanks for using Skywarz!'
  chat
:
    team
: ' {sender.team.color } [TEAM ] §r {sender.name } : §7 {message }'
    all
: '§8 [ ALL ] {sender.team.color } {sender.name } : §7 {message }'
    spectator
: '§8§o [DEAD ] §7 {sender.name } : §7 {message }'
stats
:
  fetching
: ' {prefix } §7Fetching statistics ...'
  none other
: ' {warningPrefix } Player {target.name } has no stats in Skywarz'
  none self
: ' {warningPrefix } You have stats in Skywarz'
  overview
:
 - ' {prefix } §7Stats for §8 {target.name }§7:'
  - '{prefix} §8• §7Points
: §e {target.total.points }'
  - '{prefix} §8• §7Played
: §b {target.total.played }'
  - '{prefix} §8• §7Won
: §b {target.total.won }'
  - '{prefix} §8• §7Kills
: §b {target.total.kills }'
  - '{prefix} §8• §7Deaths
: §b {target.total.deaths }'
  - '{prefix} §8• §7K/D
: §b {target.total.kd }'
  - ' {prefix } §8• §7Win %: §b{target.total.winChance}'
  leaderboard
:
    overview
:
   - ' {prefix } §7The top §e10§7 of Skywarz:'
    - ' {content }'
    - ' {prefix } §7It can take up to §81h§7 to refresh.'
    line
: ' {prefix } §e #{place}§r {player.name}§7 - {player.stats.points} Points -
      {player.stats.kd } K/D'
time
:
  TICKS
:
    plural
: ticks
    singular
: tick
  SECONDS
:
    plural
: seconds
    singular
: second
  MINUTES
:
    plural
: minutes
    singular
: minute
  HOURS
:
    plural
: hours
    singular
: hour
  DAYS
:
    plural
: days
    singular
: day
state
:
  SETUP
: Setup
  IDLE
: Idle
  PLAYING
: Playing
  DONE
: Done
team
:
  RED
: Red
  GREEN
: Green
  BLUE
: Blue
  WHITE
: White
  BLACK
: Black
  CYAN
: Cyan
  ORANGE
: Orange
  YELLOW
: Yellow
  PURPLE
: Purple
  MAGENTA
: Magenta
  LIME
: Lime
  GRAY
: Gray
Code (YAML):
# <=================================================================>
#                      Scoreboard configuration
#    Edit to modify the in-game scoreboards shown to participants.
#                [[ Skywarz 2.0.0-beta.1 by ~aparx ]]
# <=================================================================>

# Scoreboard shown during IDLE state
idle
:
  title
: '    §lLobby§r    '
  # The different lines of this scoreboard.
  # Tip: use less than 15 characters for better readability.
  lines
:
 - ' '
  - 'Map:'
  - §b {match.arena }
  - ' '
  - 'Kit:'
  - ' {player.kit.displayName }'
playing
:
  # Scoreboard shown during PLAYING state
  alive
:
    title
: ' §b§lSKYWARZ§r '
    # The different lines of this scoreboard.
    # Tip: use less than 15 characters for better readability.
    lines
:
   - ' '
    - 'Map:'
    - §b {match.arena }
    - ' '
    - 'Time:'
    - §e {match.time.left.format }
    - ' '
    - 'Alive:'
    - §e {match.alive }
    - ' '
    - 'Kills:'
    - §c {player.match.stats.kills }
  # Scoreboard shown during PLAYING state
  dead
:
    title
: '  §b§lSKYWARZ§r  '
    # The different lines of this scoreboard.
    # Tip: use less than 15 characters for better readability.
    lines
:
   - ' '
    - 'Map:'
    - §b {match.arena }
    - ' '
    - 'Time:'
    - §e {match.time.left.format }
    - ' '
    - 'Alive:'
    - §e {match.alive }
# Scoreboard shown during DONE state
done
:
  title
: '  §b§lSKYWARZ§r  '
  # The different lines of this scoreboard.
  # Tip: use less than 15 characters for better readability.
  lines
:
 - ' '
  - 'Map:'
  - §b {match.arena }
  - ' '
  - 'Winner:'
  - ' {match.winner.color } {match.winner.name }'
  - ' '
  - §7~§oby aparx
Code (YAML):
# <==============================================================================>
#                                Sign configuration
#                 Edit to update the sign layout of Skywarz signs.
#    Note: as of the version (see below) these signs only work for multi-arena.
#                       [[ Skywarz 2.0.0-beta.1 by ~aparx ]]
# <==============================================================================>

lines
:
- ' {state.color }§l [SW ]'
- ' {state.color } {state.name }'
- ' {name }'
- ' {alive }/ {maxPlayers }'
Code (YAML):
# <============================================================================>
#                         Primary database configuration
#         Change the values to have Skywarz connected to your database.
#    Supported: MySQL, Postgres, Microsoft SQL, H2, Derby, HSQLDB and Sqlite.
#                      [[ Skywarz 2.0.0-beta.1 by ~aparx ]]
# <============================================================================>

# True to enable this configured database.
# Note: Skywarz will shut down if the connection cannot be established!
active
: false
# The Java Database Connectivity (JDBC) URL that identifies your target database.
# For MySQL, simply replace "<hostname>" and "<database>" with your respective values.
# Read: https://tableplus.com/blog/2019/09/jdbc-connection-strings.html
jdbc
: jdbc:mysql://<hostname>/<database>
username
: <username>
password
: <password>
Code (YAML):
# <==============================================================================>
#                               Chest configuration
#           Edit the items and their possibility of appearing in chests!
#    The higher the weight, the higher the chance the item is put into a chest.
#                       [[ Skywarz 2.0.0-beta.1 by ~aparx ]]
# <==============================================================================>

# The probability that a specific slot is being set an item to within a chest.
# This value should be between 0 and 100 (Default: 35).
fill slot probability
: 35
# A list of all items possibly occurring in chests.
# You can add enchantments by defining an "enchants" section as in this example:
# - ==: Skywarz.ChestItem
#   weight: 10.0
#   type: diamond chestplate
#   enchants:
#     PROTECTION_FIRE: 2
# Enchantments names are done after Bukkit's enchantment enumeration:
# https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/enchantments/Enchantment.html
items
:
- ==
: Skywarz.ChestItem
  weight
: 21.0
  type
: golden leggings
- ==
: Skywarz.ChestItem
  weight
: 18.75
  type
: golden pickaxe
- ==
: Skywarz.ChestItem
  weight
: 12.5
  type
: iron pickaxe
- ==
: Skywarz.ChestItem
  weight
: 25.0
  type
: wooden sword
- ==
: Skywarz.ChestItem
  weight
: 31.25
  type
: wooden axe
- ==
: Skywarz.ChestItem
  weight
: 15.0
  type
: golden sword
- ==
: Skywarz.ChestItem
  weight
: 6.25
  type
: diamond pickaxe
- ==
: Skywarz.ChestItem
  weight
: 21.0
  type
: golden boots
- ==
: Skywarz.ChestItem
  weight
: 12.5
  type
: iron shovel
- ==
: Skywarz.ChestItem
  weight
: 6.25
  type
: diamond shovel
- ==
: Skywarz.ChestItem
  weight
: 31.25
  type
: wooden pickaxe
- ==
: Skywarz.ChestItem
  weight
: 5.0
  type
: diamond chestplate
- ==
: Skywarz.ChestItem
  weight
: 31.0
  type
: leather boots
- ==
: Skywarz.ChestItem
  weight
: 11.0
  type
: diamond helmet
- ==
: Skywarz.ChestItem
  weight
: 10.0
  type
: iron chestplate
- ==
: Skywarz.ChestItem
  weight
: 16.0
  type
: iron leggings
- ==
: Skywarz.ChestItem
  weight
: 11.0
  type
: diamond boots
- ==
: Skywarz.ChestItem
  weight
: 16.25
  type
: stone pickaxe
- ==
: Skywarz.ChestItem
  weight
: 25.0
  type
: leather chestplate
- ==
: Skywarz.ChestItem
  weight
: 31.0
  type
: leather leggings
- ==
: Skywarz.ChestItem
  weight
: 6.25
  type
: diamond axe
- ==
: Skywarz.ChestItem
  weight
: 8.75
  type
: iron ingot
  amount
: 8
- ==
: Skywarz.ChestItem
  weight
: 19.0
  type
: chainmail boots
- ==
: Skywarz.ChestItem
  weight
: 16.25
  type
: stone shovel
- ==
: Skywarz.ChestItem
  weight
: 31.25
  type
: wooden shovel
- ==
: Skywarz.ChestItem
  weight
: 19.0
  type
: chainmail helmet
- ==
: Skywarz.ChestItem
  weight
: 21.0
  type
: golden helmet
- ==
: Skywarz.ChestItem
  weight
: 13.125
  type
: gold ingot
  amount
: 8
- ==
: Skywarz.ChestItem
  weight
: 16.25
  type
: stone axe
- ==
: Skywarz.ChestItem
  weight
: 5.833333333333333
  type
: iron block
- ==
: Skywarz.ChestItem
  weight
: 15.0
  type
: golden chestplate
- ==
: Skywarz.ChestItem
  weight
: 13.0
  type
: stone sword
- ==
: Skywarz.ChestItem
  weight
: 12.5
  type
: iron axe
- ==
: Skywarz.ChestItem
  weight
: 16.0
  type
: iron boots
- ==
: Skywarz.ChestItem
  weight
: 18.75
  type
: golden shovel
- ==
: Skywarz.ChestItem
  weight
: 19.0
  type
: chainmail leggings
- ==
: Skywarz.ChestItem
  weight
: 10.0
  type
: iron sword
- ==
: Skywarz.ChestItem
  weight
: 8.75
  type
: gold block
- ==
: Skywarz.ChestItem
  weight
: 5.0
  type
: diamond sword
- ==
: Skywarz.ChestItem
  weight
: 18.75
  type
: golden axe
- ==
: Skywarz.ChestItem
  weight
: 11.0
  type
: diamond leggings
- ==
: Skywarz.ChestItem
  weight
: 16.0
  type
: iron helmet
- ==
: Skywarz.ChestItem
  weight
: 13.0
  type
: chainmail chestplate
- ==
: Skywarz.ChestItem
  weight
: 31.0
  type
: leather helmet
- ==
: Skywarz.ChestItem
  weight
: 26.25
  type
: stone
  amount
: 32
- ==
: Skywarz.ChestItem
  weight
: 4.375
  type
: diamond
  amount
: 8
- ==
: Skywarz.ChestItem
  weight
: 43.75
  type
: grass block
  amount
: 32
- ==
: Skywarz.ChestItem
  weight
: 43.75
  type
: acacia planks
  amount
: 32
- ==
: Skywarz.ChestItem
  weight
: 43.75
  type
: acacia wood
  amount
: 32
- ==
: Skywarz.ChestItem
  weight
: 43.75
  type
: dirt
  amount
: 32
- ==
: Skywarz.ChestItem
  weight
: 43.75
  type
: birch planks
  amount
: 32
- ==
: Skywarz.ChestItem
  weight
: 15.0
  type
: cobweb
- ==
: Skywarz.ChestItem
  weight
: 43.75
  type
: birch wood
  amount
: 32
- ==
: Skywarz.ChestItem
  weight
: 7.5
  type
: golden carrot
  amount
: 16
- ==
: Skywarz.ChestItem
  weight
: 19.5
  type
: melon slice
  amount
: 32
- ==
: Skywarz.ChestItem
  weight
: 15.0
  type
: beef
  amount
: 16
- ==
: Skywarz.ChestItem
  weight
: 15.0
  type
: cooked beef
  amount
: 10
- ==
: Skywarz.ChestItem
  weight
: 19.5
  type
: baked potato
  amount
: 16
- ==
: Skywarz.ChestItem
  weight
: 37.5
  type
: apple
  amount
: 32
- ==
: Skywarz.ChestItem
  weight
: 7.5
  type
: golden apple
  amount
: 3
- ==
: Skywarz.ChestItem
  weight
: 22.5
  type
: carrot
  amount
: 32
- ==
: Skywarz.ChestItem
  weight
: 15.0
  type
: flint and steel
- ==
: Skywarz.ChestItem
  weight
: 25.0
  type
: stick
- ==
: Skywarz.ChestItem
  weight
: 10.0
  type
: water bucket
- ==
: Skywarz.ChestItem
  weight
: 8.0
  type
: lava bucket
- ==
: Skywarz.ChestItem
  weight
: 5.0
  type
: ender pearl
Code (YAML):
# <========================================>
#         Kit Selector configuration
#     Edit to update the item and menu.
#    [[ Skywarz 2.0.0-beta.1 by ~aparx ]]
# <========================================>

# The position of the item in the inventory (0 through 8)
slot
: 0
# The item with which a player can interact
item
:
  type
: chest
  name
: §bKit selector
  enchants
:
    LUCK
: 1
  lore
:
 - §8Click to select your kit
  flags
:
 - hide enchants
menu
:
  # The title of the kit selector inventory
  title
: Kit Selector
Code (YAML):
# <========================================>
#          Leave item configuration
#          Edit to update the item.
#    [[ Skywarz 2.0.0-beta.1 by ~aparx ]]
# <========================================>

item
:
  item
:
    type
: red dye
    name
: §cLeave
    enchants
:
      LUCK
: 2
    lore
:
   - §8Click to leave this match
    flags
:
   - hide enchants
Code (YAML):
# <========================================>
#       Quickstart item configuration
#          Edit to update the item.
#    [[ Skywarz 2.0.0-beta.1 by ~aparx ]]
# <========================================>

# The position of the item in the inventory (0 through 8)
slot
: 7
# The item with which a player can interact
item
:
  type
: nether star
  name
: §aQuickstart
  lore
:
 - §8Click to quick start your lobby
Code (YAML):
# <========================================>
#        Team selector configuration
#     Edit to update the item and menu.
#    [[ Skywarz 2.0.0-beta.1 by ~aparx ]]
# <========================================>

# The position of the item in the inventory (0 through 8)
slot
: 1
# The item with which a player can interact. Use bed, concrete or wool as a type
# to have it replaced with the color of the team a player has joined (it being the default).
item
:
  type
: white bed
  name
: §bTeam selector
  enchants
:
    ARROW_KNOCKBACK
: 2
  lore
:
 - §8Click to select your team
  flags
:
 - hide enchants
menu
:
  # The title of the team selector inventory
  title
: Team Selector
  team
:
    status
:
      # Applied to a team item to show a player that they have already joined the team
      joined
: Joined this team
      # Applied to a team item to indicate that the team is already full
      full
: This team is full
      # Applied to a team item to indicate the team to be joinable
      joinable
: Click to join this team
    # Applied to a team item to showcase who joined a team
    member
: §8• {0 }
Code (YAML):
# <===================================================>
#             Teleporter item configuration
#           Edit to update the item and menu.
#    The teleporter is a menu with which a spectator
#      can teleport to other living participants.
#         [[ Skywarz 2.0.0-beta.1 by ~aparx ]]
# <===================================================>

# The position of the item in the inventory (0 through 8)
slot
: 0
# The item with which a player can interact
item
:
  type
: compass
  name
: §7Teleporter
  enchants
:
    LUCK
: 2
  lore
:
 - §8Click to teleport to players
  flags
:
 - hide enchants
menu
:
  # The title of the teleporter inventory
  title
: Teleporter

Skywarz Permissions

  • skywarz.*
    Grants permission to anything Skywarz related
  • skywarz.play (default)
    Grants the ability to participate in Skywarz matches
  • skywarz.priority
    Ensures if the to be joining match is full in idle phase, a non-priority player is kicked to make space
  • skywarz.setup
    Grants access to everything setup related (manage, delete and create arenas and more)
  • skywarz.stats.*
    Grants permission to anything stats related (read and write)
    • skywarz.stats.self (default)
      Grants permission to see the player's own statistics
    • skywarz.stats.other
      Grants permission to see the other players' statistics
    • skywarz.stats.modify
      Grants permission to modify the stats of players

Skywarz Commands
Generic commands:
  1. /sw help
    Lists all descriptive commands
  2. /sw join <Arena>
    Permission: skywarz.play, skywarz.*
  3. /sw leave <Arena>
    Permission: skywarz.play, skywarz.* (implicitly)
  4. /sw stats (Player)
    Permission: skywarz.stats.self, skywarz.stats.other, skywarz.stats.*, skywarz.*
  5. /sw stats reset <Player>
    Permission: skywarz.stats.modify, skywarz.stats.*, skywarz.*
  6. /sw leaderboard
    Permission: skywarz.stats.other, skywarz.stats.*, skywarz.*
  7. /sw arena list
    Permission: skywarz.setup, skywarz.*
Setup commands (in order):
  1. /sw arena create:delete <Arena>
    Permission: skywarz.setup, skywarz.*
  2. /sw arena set lobby <Arena> (unsaved)
    Permission: skywarz.setup, skywarz.*
    Updates the idle lobby spawn of an arena
  3. /sw arena set spectator <Arena> (unsaved)
    Permission: skywarz.setup, skywarz.*
  4. /sw arena set point <Arena> <1:2> (unsaved)
    Permission: skywarz.setup, skywarz.*
    Sets a playground corner, i.e. the box in which all spawns exist and players can freely move and play within. It explicitly defines the area that is arena-reset by default.
  5. /sw arena add spawn <Arena> <Team> (unsaved)
    Permission: skywarz.setup, skywarz.*
    Adds a spawn to given team and arena. The amount of spawns can be independant to the final maximum team size. Players spawn randomly for their given team (if possible).
  6. /sw arena remove spawn <Arena> <Team> (Spawn-ID) (unsaved)
    Permission: skywarz.setup, skywarz.*
    Removes the given spawn or all spawns from given team.
  7. /sw arena save <Arena>
    Saves and applies all changes for an arena. If a match is currently ongoing in that arena, the changes won't apply to that specific match.
Extra arena rules (modification of arenas; unsaved):
  1. /sw arena set rule team.size <Arena> <Number>
    Permission: skywarz.setup, skywarz.*
    Updates the maximum team size for the arena (default: 2)
  2. /sw arena set rule world.weather <Arena> <clear:downfall>
    Permission: skywarz.setup, skywarz.*
    Updates the perceived weather environment for all participants (default: clear)
  3. /sw arena set rule world.time <Arena> <Number>
    Permission: skywarz.setup, skywarz.*
    Updates the world time for all participants (default: 6000)
  4. /sw arena set rule refill <Arena> <true:false>
    Permission: skywarz.setup, skywarz.*
    Toggles chest refills for given arena (default: true)
  5. /sw arena set phase.protection <Arena> <true:false>
    Permission: skywarz.setup, skywarz.*
    Toggles the protection phase for given arena (default: true)
Bungeecord commands:
  1. /sw bungee update <Arena>
    Permission: skywarz.setup, skywarz.*
    Updates the dedicated arena in which players are put when they join the server, if Bungeecord is enabled
  2. /sw bungee toggle (true:false)
    Permission: skywarz.setup, skywarz.*
    Enables or disables the Bungeecord mode. This only works if a valid dedicated arena has been set (see /sw bungee update)

Kit commands:
  1. /sw kit create <DisplayName...>
    Permission: skywarz.setup, skywarz.*
    Creates an empty kit with given display name. The final name will be the display name but without color codes.
  2. /sw kit edit <KitName...>
    Permission: skywarz.setup, skywarz.*
    Enters the kit edit mode, in which the player inventory will represent the kit's inventory one-to-one when saved.
  3. /sw kit save:cancel
    Permission: skywarz.setup, skywarz.*
    Leaves and saves or cancels the kit edit mode
Note: to edit the kit icon you still have to go to the kits.yml. Future versions may implement a way to update kit icons using commands.
Tip: you can use color codes (using ampersands '&') on all items for kits!


Servers using this plugin
Shoot me a DM if you want your server to be listed here. :)

Track the process
You can track how Skywarz is developing, what is planned,
what is currently being developed and more in Skywarz' GitHub!


I hope you like this plugin. Please leave feedback in DMs.
This is an alpha version, thus bugs can occur.
If you see a bug, please open an issue on GitHub.
Resource Information
Author:
----------
Total Downloads: 33,901
First Release: Jun 23, 2017
Last Update: Dec 27, 2023
Category: ---------------
All-Time Rating:
60 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings