Introduction
What ExyliaAimTrainer is, what it solves, and how this documentation is organised.
ExyliaAimTrainer is an aim trainer for servers that take PvP practice seriously. A player shoots a drill alone, tuned to the target size and distance they choose, or challenges another player to a best-of duel in which both shoot the same targets at the same time. Every run is scored, every best is kept, and every drill has its own leaderboard.
The targets are not entities. Each one is sent as packets to the one player who shoots it: a block you see and an interaction box riding it that you hit. The server has nothing to tick, any number of players share one arena without seeing each other's targets, and a click is judged by the player's own client running the same hitbox test it runs on another player — exactly the way a PvP hit is judged.
What is included
Sixteen shipped across four kinds — flicking, reaction, tracking and combo fights with a real weapon
— and none hardcoded: a drill is a block of numbers in config.yml.
A score in the drill's own currency, a difficulty from the way it was played, and the rating that is both multiplied together and the one number the boards rank.
SettingsEach player picks target size, distance, colour and style, and what their screen shows. Smaller and farther earns more rating.
DuelsDirect challenges, best-of series, the same seed on both screens so the same targets appear in the same places.
ArenasOne spawn per arena, created from the admin menu, shared by every drill and duel sent to it.
StatisticsProfiles, personal bests per drill, a board per drill and category, an overall board, session and duel history.
Requirements
| Requirement | Detail |
|---|---|
| Server | Paper 1.21.4 or newer. Folia supported. |
| Java | 21 |
| Required dependencies | ExyliaLib, packetevents |
| Optional dependencies | PlaceholderAPI, ExyliaPracticeCore |
Typed configuration, declarative YAML menus, the database, placeholders, effects, sidebars, overlays, inventory snapshots and the player claims that keep Exylia plugins from stepping on each other all come from ExyliaLib. The plugin is written on top of it and does not run without it.
How to read this documentation
Getting started
Installation, a first arena, a first drill and a first duel within minutes.
Configuring
Drills, scoring, player settings, duels and arenas. This is where most of the time goes.
Systems
What happens during a drill, statistics and boards, the HUD, and how the plugin behaves next to the rest of the Exylia ecosystem.
Reference
Commands, permissions, placeholders, every configuration key, the menus and the developer API.
Conventions
- Values marked as default are what the plugin writes the first time it starts. If the file already exists, your value is kept.
- Identifiers between
<and>are variables./aim train <drill>means/aim train gridshot, not/aim train <gridshot>. - Times are seconds with decimals unless a key says ticks; 20 ticks are one second. Distances and sizes are blocks.
- Colours use ExyliaLib palette tokens (
{primary},{highlight},{muted}); MiniMessage tags such as<click>and<hover>work too, as the default duel request shows.
Something missing on this page? Tell us on Discord