
CustomGenerator lets BentoBox island owners buy and activate custom resource generators
A fully‑featured, BentoBox‑compatible generator plugin designed to provide island owners with the ability to buy, manage, and activate custom cobblestone, stone, basalt, or deepslate generators. All configurations are handled via easy-to-edit YAML files, making customization straightforward and flexible for server administrators.
custom-generator-categories.ymlCustom Generator Categories via custom-generator-categories.yml:
Define your own generator logic using fluid-flow conditions, surrounding blocks, biomes, Y-level limits, and more.
Improved Generator Menu UI:
Visual enhancements, better layout, and more intuitive category buttons.
Pagination Support in GUI:
The menu now supports unlimited generator types, navigable through Next / Previous page buttons.
| Plugin | Tested Version | Purpose |
|---|---|---|
| BentoBox | 3.0.0+ | Manages island data and world separation |
| Vault | 1.7+ | Provides economy API for transactions |
The plugin requires both dependencies to be installed and enabled; it will not load otherwise.
CustomGenerator.jar file and place it inside your server’s plugins/ directory. messages.yml — customizable message strings generator-types.yml — definitions for all generator types custom-generator-categories.yml — defines generator behavior/generator reload or restart the server to load your custom settings. /generator help to see available commands and usage.| Command | Description |
|---|---|
/generator |
Opens the main menu and displays available generators to the player. |
/generator buy <generator> |
Purchases the specified generator. The player must have enough money. |
/generator activate <generator> |
Activates a previously purchased generator. |
/generator list |
Lists all generators defined on the server. |
/generator reload |
Reloads all configuration files. Admin permission required. |
Generator types are defined inside the generator-types.yml file. You can add new types or modify existing ones. Each entry specifies how the generator behaves and appears in the GUI. Here is an example:
generator-types:
diamond:
display-name: "&bDiamond Generator"
material: DIAMOND_ORE
lore:
- "&bContains rare and valuable resources."
- "&7Produces 30% diamond and 70% stone blocks."
generator-type: COBBLESTONE
price: 5000
required-island-level: 30
blocks:
STONE: 70
DIAMOND_ORE: 30
generator-type must either be one of the built-in categories (COBBLESTONE, STONE, BASALT, DEEPSLATE) or a custom category defined in custom-generator-categories.yml.
Values under blocks: act as relative weights. The plugin normalizes these internally, so whether you use 70/30, 0.7/0.3, or 7/3, the behavior is consistent.
The price supports decimal values if your economy plugin allows it.
material must be a valid Bukkit Material for GUI icons.
lore supports multiple lines and color codes to describe the generator.
Custom generators are defined in custom-generator-categories.yml. Example:
dirt_generator:
category: DIRTGEN
display-name: "&2Dirt"
fluid: LAVA
to: AIR
conditions:
sides: [ DIRT ]
up: [ STONE ]
down: [ COARSE_DIRT ]
y-level:
min: 10
max: 64
biomes:
- minecraft:plains
- minecraft:the_void
category: Unique category ID. Must match a generator-type entry in generator-types.yml.
fluid: Triggering fluid block (e.g., LAVA, WATER).
to: Block the fluid flows into (AIR, WATER, POWDER_SNOW etc.).
conditions: Optional block requirements (sides, up, down).
y-level: Optional Y-axis range for the generator to be active.
biomes: Optional biome whitelist for where the generator works.
With this system, you can implement:
Basalt generators restricted to the Nether.
Gold generators above Y=100.
Dirt generators with specific surrounding blocks.
Biome-exclusive generators (like Mushroom Islands only).