Overview
LoopRun is a Minecraft plugin built for a speedrunning format where players loop through a sequence of worlds, advancing on certain events (like completing an advancement). It links each player’s Minecraft account to a Discord account and automatically moves that player’s Discord voice session to match who they’re currently following or playing alongside in-game.
Features
/loop startand/loop stopcommands to control the game- Per-player world looping using Multiverse-Core world creation/deletion and Multiverse-Inventories for per-world inventory separation
- Discord bot integration (via JDA) with slash commands for linking a Discord account to a Minecraft player
- Automatic Discord voice channel movement that follows player state changes (world changes, join events)
- Armor restrictions and join/world-change announcements via dedicated listeners
How it works
GameManager listens for advancement and world-change events and drives players through the Multiverse-managed world sequence, copying player profile data between worlds via the Multiverse-Inventories API. The discord package runs a JDA bot: LinkManager persists Minecraft-to-Discord account links in a YAML file, and VoiceManager listens for in-game world/join events and moves the corresponding Discord guild member between voice channels. The JDA dependency is shaded and relocated in the plugin jar to avoid classpath conflicts with other plugins.
