Getting Started
Welcome to The Snake. This guide covers the server requirements, installation flow, generated files, permissions, and the shortest path to a playable arena.
Prerequisites
Section titled “Prerequisites”Before installing the plugin, make sure the server meets these requirements:
- Java Version: Java 25 or newer.
- Server Software: Paper or a compatible Paper fork.
- PlaceholderAPI Optional : Required to expose
%snake_...%placeholders to other plugins. - Permissions Plugin Optional : A plugin such as LuckPerms is recommended for arena administration.
Installation
Section titled “Installation”- Download the latest The Snake build from SpigotMC.
- Stop the server and place
the-snake-x.x.x.jarin theplugins/directory. - Install PlaceholderAPI if the server will use Snake placeholders in scoreboards, holograms, menus, or chat.
- Start the server and wait for the plugin to finish initialization.
- Join the server and run
/snaketo verify that the root command is registered.
Generated Files
Section titled “Generated Files”The first startup creates /plugins/Snake/ with these main files:
| File | Purpose |
|---|---|
config.yml | Storage, autosaving, command restrictions, placeholder fallbacks, debugging, and update checks. |
arenas.yml | Arena locations and per-arena game options. |
messages.yml | MiniMessage-formatted command, gameplay, title, and action-bar text. |
sounds.yml | Gameplay sound names, enabled states, volume, and pitch. |
mysql.yml | JDBC connection and statistics table settings. |
data/stats.yml | Flat-file player statistics when MySQL is not selected. |
The plugin can also create temporary inventory backup data while a player is playing or editing an arena. Do not delete those backups while players are active.
Essential Permissions
Section titled “Essential Permissions”| Permission | Purpose | Default |
|---|---|---|
snake.* | Grants all declared Snake administration permissions. | Operators |
snake.arena.create | Allows /snake create <arena id>. | Through snake.* |
snake.arena.delete | Allows /snake delete <arena id>. | Through snake.* |
snake.arena.edit | Allows /snake edit <arena id>. | Through snake.* |
snake.arena.list | Allows /snake list. | Through snake.* |
snake.admin.reload | Allows /snake reload. | Through snake.* |
snake.admin.stop | Allows /snake stop [arena]. | Through snake.* |
snake.command.tabcompleter | Shows standard subcommands and arena IDs in tab completion. | Through snake.* |
The player commands /snake join and /snake leave do not declare separate permission requirements.
Recommended First Setup
Section titled “Recommended First Setup”- Build a flat vertical or horizontal two-dimensional board.
- Run
/snake create <arena id>, then/snake edit <arena id>to enter the editor. - Set the start location and end location.
- Use the board setter to select two opposite corners on the same 2D plane.
- Open Options and configure movement, win conditions, and board blocks.
- Use Save, then Stop Editing.
- Test the arena with
/snake join <arena id>.