HomeJavaModsCMines
CMines
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.

[​IMG]

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.

[​IMG]

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.

[​IMG]

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.

[​IMG]

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.

[​IMG]

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.

[​IMG]

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.

[​IMG]

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 same mine can then be configured through the GUI or through the extensive /cmines command tree.

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.

[​IMG]

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.

[​IMG]

Build the mine. Control the reset. Let CMines handle the rest.

Focused mine management without forcing an entire prison core onto your server.

CMines

Commands

Plugin details

Read from the plugin's own plugin.yml.

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.

Explore more