Skip to main content

Extractioncraft

Development snapshot compatibility

This section describes the Extractioncraft 1.0-SNAPSHOT source, not a verified release combination. The current source compiles against BetterStructures 2.7.6 and EliteMobs 10.9.7 and calls their APIs directly. Use a tested, matching build set before opening a server to players; installing the latest companion plugins alone does not establish compatibility.

Extractioncraft is a competitive extraction-style game mode plugin for Minecraft servers. Players enter procedurally generated instanced maps, loot containers, fight elite mobs, and race to reach extraction points before the world border closes in.

Start Here​

Current Platform Notes​

  • Plugin version in the current repo: 1.0-SNAPSHOT
  • Plugin descriptor API version: 1.21.4; the current build compiles against Spigot API 26.3-R0.1-SNAPSHOT with a Java 21 target
  • Root command: /extractioncraft (alias /exc)

How a Match Works​

  1. A player creates a match with /exc createMatch <contentPackage.yml>, which generates an instanced world using BetterStructures modular world generation. The creator is teleported to a random spawn location once the world is ready.
  2. The content package defines a minimum and maximum player count, but Extractioncraft registers no join command. /exc createMatch is the only built-in way into a match, so a match holds only its creator unless another plugin admits players through the API.
  3. Once minPlayers is met (1 by default), any player in the match can run /exc start. The countdown shows 2, 1, then 0 at one-second intervals before the match goes live.
  4. When the match goes live, the map's bosses spawn and chests and barrels are placed throughout the map. Containers emit portal particles every 10 ticks so they're easy to spot. Players loot containers (standing still for 3 seconds to open them) and fight EliteMobs enemies for loot drops. A sidebar scoreboard counts down a 15-minute timer.
  5. After 1 minute, the usable version of each extraction point is pasted in. A boss-bar compass shows a marker for every extraction point in front of the player.
  6. Right-clicking the lever at an extraction point removes the lever and opens a single shared 20-second extraction window for that point. Everyone standing inside that point's extraction zone when the window closes extracts together. Each extraction point opens one window.
  7. A world border starts at the width of the generated map and shrinks steadily toward its center, reaching 1 block at the 15-minute mark. When the timer runs out, the match ends and everyone still inside fails to extract.
  8. Players who extract keep their loot, soulbound to them when the EliteMobs Soulbind enchantment is enabled. Players who die, quit, disconnect or run out of time lose their whole inventory with the default config.

Full details on timers, extraction rules, deaths and world protections are on the match flow page.

Dependencies​

  • Required: BetterStructures, EliteMobs, FreeMinecraftModels
  • Framework: MagmaCore (bundled)

The descriptor marks the three companion plugins as soft dependencies, but Extractioncraft's startup fails unless all three are enabled and finish loading. BetterStructures also needs WorldEdit or FastAsyncWorldEdit to generate maps.