ModsJava
CMines
CMines is a modern, GUI-first mine management system built for Prison, SkyMining and custom servers.
⬇ Download on Spigot
CMines
Modern mines. Powerful resets. Complete control.
CMines is a modern, GUI-first mine management system built for Prison, SkyMining and custom Minecraft servers.
Minecraft 1.21.x • Spigot • Paper • Bukkit • Java 21
No NMS. No required gameplay dependencies.
Modern mines. Powerful resets. Complete control.
CMines is a modern, GUI-first mine management system built for Prison, SkyMining and custom Minecraft servers.
Minecraft 1.21.x • Spigot • Paper • Bukkit • Java 21
No NMS. No required gameplay dependencies.
Mine management should be more than a reset timer
A mine plugin should not force you to choose between a simple cuboid resetter and a massive all-in-one prison core.
CMines focuses entirely on mines.
Create them, shape them, configure their block composition, control when and how they reset, protect players during regeneration, display live information through holograms and BossBars, trigger actions, create templates, control access and manage everything through one consistent system.
You can do it visually through the GUI.
You can do the same through commands.
And the actual reset engine is designed to remain predictable even when your mines become large.
One Control Center for every mine
Open /cmines and manage your mines from a modern administration interface.
Instead of placing every possible setting into one overwhelming inventory, CMines uses focused menus for the different parts of a mine.
Manage:
• Block composition
• Reset behavior
• Layers and Y restrictions
• Holograms
• BossBars
• Player safety
• Access
• Actions
• Icons and themes
• Spawn locations
• Templates
• Statistics
• Storage and diagnostics
The GUI is designed for everyday administration, while advanced settings remain available when you need them.
And if you prefer commands, CMines does not lock functionality behind its GUI.
GUI and command configuration are designed to stay in parity.
More than random blocks
Different mining servers need different generation styles.
CMines includes three composition modes:
RANDOM
Classic weighted random generation.
Configure materials and their weights, then let CMines distribute them throughout the mine.
LAYERED
Build structured mines with dedicated vertical layers.
Create different compositions for different height ranges and build mines that change as players dig deeper.
VEINED
Generate a more natural vein-like distribution instead of pure random noise.
Configure the composition, seed and vein scale to tune the result.
Individual materials can also have their own minimum and maximum Y restrictions, giving you another layer of control without requiring separate mines.
Reset exactly when you want
CMines supports multiple reset triggers instead of forcing every mine into the same timer system.
TIME
Reset after a configured amount of time.
PERCENTAGE
Reset when the mine reaches a configured remaining-block percentage.
EMPTY
Reset when the mine has been completely mined.
SCHEDULED
Reset according to configured scheduled times.
MANUAL
Only reset when an administrator, command or API explicitly requests it.
Disabling a mine also pauses its reset countdown.
When the mine is enabled again, the timer continues from where it stopped instead of silently resetting or continuing in the background.
Instant, batched or adaptive regeneration
Triggering a reset is only half the problem.
How those blocks are placed matters just as much.
CMines provides:
INSTANT
For small mines where completing the reset immediately makes sense.
BATCHED
Regenerate the mine across multiple ticks using a controlled block budget.
ADAPTIVE
CMines dynamically adjusts the amount of work performed according to its configured timing target.
Large or dangerous reset configurations are protected by hard performance limits, and multiple mines cannot freely create an unlimited number of simultaneous reset jobs.
The goal is simple:
A mine reset should not have to mean a frozen server.
Keep players safe during resets
Players standing inside a mine should not become collateral damage when thousands of blocks suddenly regenerate.
Every mine can use a dedicated player-safety mode:
TELEPORT
Move affected players to a safe location.
PUSH_UP
Move them above the regenerated region.
IGNORE
Allow the reset without moving them.
CANCEL_RESET
Cancel the reset if players are inside.
CMines checks the actual mine region when reset safety is evaluated, keeping the protection accurate even after mine configuration changes.
Native holograms — no hologram plugin required
CMines uses Minecraft's native TextDisplay entities for mine holograms.
No external hologram dependency is required.
Display live information such as:
• Mine name
• Remaining blocks
• Remaining percentage
• Reset countdown
• Players currently inside
• Progress bars
• Mine state
Holograms support configurable positioning, scale and formatting and are visibility-aware to avoid doing unnecessary work for players nowhere near the mine.
Disabled mines can also show a subtle inactive marker without replacing the rest of the hologram design.
BossBars, borders and live previews
Mine information does not have to stay in chat.
CMines includes configurable BossBars for players inside a mine, with progress based on reset time or remaining mine capacity.
Administrators can display particle borders around selections and mine regions.
The composition preview system can temporarily visualize a mine's configured distribution without permanently replacing the real blocks.
This makes editing a mine much easier when percentages alone do not tell the full story.
Actions turn resets into workflows
CMines includes an action system for events surrounding the mine lifecycle.
Available triggers include:
• BEFORE_RESET
• AFTER_RESET
• ENTER
• LEAVE
• BLOCK_BREAK
Actions can perform operations such as:
• Player messages
• Broadcasts
• Console commands
• Player commands
• Sounds
• Titles
• Economy rewards through Vault
This makes it possible to connect a mine to the rest of your server without requiring a custom addon for every small interaction.
Templates and cloning
Do not rebuild the same configuration ten times.
Mine templates can store reusable configuration independently from a specific region.
CMines includes starting templates for common Prison and SkyMining setups, and administrators can create their own.
Existing mines can also be cloned, making it easy to create multiple ranks, worlds or progression stages that share the same base configuration.
A player-friendly mine browser
Players can use:
/mines
to browse the mines they are allowed to access.
Each mine can have its own:
• Display name
• Material icon
• CustomModelData
• Theme
• Teleport location
• Access rules
The browser uses the same backend access system as the actual teleport and movement protection, so what players see matches what they can really enter.
Public by default. Explicitly restricted when needed.
CMines uses a deny-oriented per-mine access model.
A mine can remain public when no restriction is configured.
When LuckPerms is installed, CMines can also understand explicit tristate permission decisions so an explicit false can deny mine access without turning every unconfigured mine into a permission-management task.
Access is checked not only from menus.
CMines can also prevent unauthorized players from physically entering restricted mine regions.
PlaceholderAPI integration
PlaceholderAPI is optional.
CMines exposes 120+ mine and runtime presentation fields, including current-mine, named-mine and material-related variants.
Use mine information in:
• Scoreboards
• TAB lists
• Chat
• External holograms
• Menus
• Other PlaceholderAPI-compatible plugins
Frequently requested placeholders use optimized lookup paths so a scoreboard does not need to rebuild the entire mine presentation model for every single value.
SQLite, MySQL & MariaDB
CMines works immediately with SQLite.
No external database configuration is required for a normal single-server installation.
Servers that prefer remote storage can use:
• MariaDB
• MySQL
Runtime and statistical data are stored separately from the human-editable mine YAML definitions.
The storage layer includes bounded asynchronous work queues, connection validation, timeout handling and controlled shutdown behavior to prevent a database outage from becoming an unlimited memory queue.
Designed for real public servers
Performance and safety are not treated as optional extras.
CMines includes protections around areas that can otherwise become expensive on production servers:
• Maximum mine volume limits
• Maximum chunk limits
• Reset block budgets
• Concurrent reset limits
• Batched and adaptive regeneration
• Chunk-indexed mine lookup
• Bounded database queues
• Optimized PlaceholderAPI lookup
• Viewer-aware holograms
• Player membership tracking for BossBars
• Bounded previews
• Reset cancellation and cleanup during reload
Block selection during mine regeneration is precompiled so CMines does not create and sort temporary block lists for every single regenerated block.
Database queries use prepared statements and SQLite database paths are restricted to the plugin data directory.
CMines does not use NMS.
WorldEdit & FastAsyncWorldEdit
WorldEdit is completely optional.
You can create mine regions using CMines' own selection wand, or import your current WorldEdit / FastAsyncWorldEdit selection when those plugins are available.
The core mine engine does not require either dependency.
Fully configurable presentation
CMines supports modern Minecraft text formatting throughout its presentation system.
Supported formats include:
• Legacy colors
• HEX / RGB colors
• Gradients
• Rainbow formatting
• Named formatting tags
Mine display names, GUI text, holograms, messages and other presentation elements can be styled to match your server.
Included languages
English — en_US
Hungarian — hu_HU
English is the deterministic default language.
Administrators can change the plugin's server-wide language live without maintaining separate mine configurations for every locale.
Commands when you want them. GUI when you don't.
Start from the dashboard:
/cmines
Alias:
/cm
Player mine browser:
/mines
Quick mine creation:
Code (Text):
/cmines wand
Select two corners
/cmines create A
/cmines gui A
The interface is there to make mine administration faster — not to take flexibility away.
Developer API & Bukkit events
CMines exposes a developer-facing API for integrations with other plugins.
Bukkit events are available for important mine lifecycle operations including:
• Mine creation
• Mine deletion
• Pre-reset
• Reset completion
• Player entering a mine
• Player leaving a mine
The documented public API remains stable in the release build while internal implementation details remain separated from it.
Migration & administration tools
CMines includes tools intended to make long-term administration easier.
• CataMines migration support
• Dry-run migration
• Mine statistics
• Debug export
• Backups
• Storage diagnostics
• Mine information tools
• Automatic additive configuration migration
Debug exports intentionally avoid exposing database passwords and other sensitive configuration secrets.
Compatibility
Minecraft: 1.21.x
Java: 21
Server software: Spigot / Paper / Bukkit-compatible servers
API baseline: Spigot 1.21.1
Required dependencies: None
Optional integrations:
• PlaceholderAPI
• WorldEdit / FastAsyncWorldEdit
• Vault
• LuckPerms
Installation
Download CMines.
Place the JAR inside your server's plugins directory.
Restart the server.
Open /cmines.
Create your first mine using the guided interface or the selection wand.
Configure its composition, reset system and visuals.
Start mining.
SQLite works out of the box.
MySQL or MariaDB can be enabled from the storage configuration when needed.
Build the mine. Control the reset. Let CMines handle the rest.
Focused mine management without forcing an entire prison core onto your server.
CMines
CMines is a free Minecraft Java mod. Compatible with Minecraft 1.21. Downloaded 13 times (via Spigot). Download it and open it directly in the game.