Bring real football to your Minecraft server
AdvancedSoccer is a production-ready soccer (football) minigame built for Spigot and Paper. The ball runs on a custom per-tick physics engine — not a vanilla projectile — so matches feel like actual football: rolling, bouncing, curving shots, headers, deflections, and tense goalkeeper saves.Whether you run a minigames hub, a dedicated sports server, or a network with a lobby and game backend, AdvancedSoccer gives players something they cannot get from basic snowball or entity plugins: dribbling, charged shots, slide tackles, stamina, throw-ins, offside, golden goal, penalty shootouts, and cinematic goal replays — all out of the box.
Realistic ball physics
The heart of the plugin is a fully simulated ball rendered as a rolling soccer ball head (ItemDisplay):- Gravity, air drag, and ground friction — tune how heavy, bouncy, or slippery the ball feels
- Restitution-based bouncing with sub-stepped collision — fast shots never clip through walls
- Magnus effect — strike across the ball to put spin on it and curve free kicks around defenders
- Speed clamp, rest threshold, and spin decay for stable, believable motion
Player mechanics
| Action | Control |
|---|---|
| Shoot | Left-click |
| Pass | Right-click |
| Charge power | Hold Sneak |
| Slide tackle | Sneak + Sprint |
| Dribble | Run with the ball at your feet |
- Stamina — sprinting, charging, and tackling drain stamina; run dry and you slow down
- Goalkeeper saves — players in their own goal box deflect shots
- Deflections & headers — fast balls bounce off players (including own goals)
- Team kits — colored leather armor for Red vs Blue
Full match flow & rules
Matches play like real football, not a simple deathmatch:- Lobby countdown → kickoff countdown → two halves with half-time break
- Goals, assists, and own goals tracked automatically
- Throw-ins on touchline exits (configurable)
- Offside enforcement with IFAB-style indirect free kicks
- Golden-goal extra time when scores are tied
- Penalty shootout tiebreaker
- Optional mercy rule
- Live sidebar scoreboard, possession tracking, and broadcast HUD
- Player inventory, location, gamemode, and health are saved and restored on join/leave/disconnect
AI bots — play solo anytime
No players online? No problem.- Practice solo vs AI with up to 10 bots per side
- Bots use smart movement, passing, shooting, and stamina — they feel like real opponents, not statues
- Visual modes: built-in packet NPCs, Citizens (optional), Mannequin (1.21.4+), or armor stand fallback
- Quick-join GUI to pick team, opponent count, and AI teammates
TV-style goal replays
Every goal can trigger a cinematic replay:- Rolling buffer captures the build-up
- Slow-motion playback with multi-angle camera (cinematic, chase, broadcast)
- Ball particle trail, scorer glow, and boss bar progress
- Fully configurable clip length, speed, and effects
Match officials
Optional referee NPCs add atmosphere:- Center referee + two assistant referees (linesmen)
- Follow play realistically along the touchline
- Whistle sounds on key moments
Championships & tournaments
Run organized competitions without third-party tournament plugins:- Create leagues and knockout cups with GUI registration
- Group stages, playoffs, standings, and scheduling
- Admin tools to manage teams, rename tournaments, and start matches
- Bracket view for knockout rounds
Stats, leaderboards & presentation
- Persistent per-player stats (goals, wins, assists, tackles, saves, and more)
- In-game leaderboards via /soccer top and /leaderboard
- Action bar HUD for stamina and shot power
- Goal, kickoff, half-time, and winner titles, sounds, and fireworks
- Crowd atmosphere — ambient stadium noise that reacts to shots, saves, and goals
- Optional real stadium sound resource pack (included) for an even more immersive experience
Network support (BungeeCord / Velocity)
Perfect for minigame networks:- Lobby mode — /soccer quickjoin sends players to your game server
- Game mode — hosts matches and returns players to lobby when done
- Standalone mode for single-server setups
Developer-friendly
Hook your own features with custom Bukkit events:- GoalScoredEvent
- BallKickEvent (cancellable & mutable — great for power-ups)
- MatchStateChangeEvent
- OffsideEvent
Easy arena setup
Admins set up pitches in-game with simple commands — no WorldEdit required:/soccer create <arena>
/soccer pos1 → /soccer pos2 → /soccer setfield <arena>
/soccer setredgoal / setbluegoal <arena>
/soccer setballspawn / setredspawn / setbluespawn / setlobby <arena>
/soccer enable <arena>
Players join with /soccer quickjoin or /soccer join <arena>.
Commands
Players- /soccer quickjoin — join the best available match (with team-pick GUI)
- /soccer join <arena> — join a specific arena
- /soccer leave — leave your match
- /soccer list — list arenas and status
- /soccer stats [player] — lifetime statistics
- /soccer top [category] — leaderboards
- /leaderboard — chat leaderboard view
- /soccer championship — open tournament GUI
- /soccer help
- Arena create/delete, region setup, spawn points, enable/disable
- Force start/stop matches
- Championship management
- /soccer reload — reload config and arenas
- /soccer crowdpack — crowd sound pack info
Permissions
| Permission | Description | Default |
|---|---|---|
| soccer.play | Join and play matches | Everyone |
| soccer.admin | Manage arenas and matches | OP |
| soccer.* | Full access | OP |
Requirements
- Server: Spigot or Paper 1.20.x
- Java: 17+
- Optional: PlaceholderAPI, Citizens (for enhanced bot NPCs)
- Optional: BungeeCord/Velocity proxy for network mode
Configuration & localization
- Everything tunable from config.yml — physics, mechanics, timings, teams, scoreboard, replays, bots, crowd, championships, and network
- Built-in language files: English and Russian (lang/en.yml, lang/ru.yml)
- Auto config updater on plugin updates
