Documentation

GensCore

Placeable generators that drop what you tell them to, fully configurable in game.

v1.0.01.14 - 26.2Spigot / PaperFolia supportedReleased
GensCore overview

GensCore gives players blocks they place in the world that produce items on a clock. What each one drops, how fast, and what it upgrades into is entirely yours to define.

Generators are a path rather than a ladder. Tiers branch how you lay them out, share one cooldown, and are created and edited from an in game admin hub.

It comes with its own selling side: /sell moves what your generators made, and sell wands carry a multiplier and a use count so you can hand out limited boosts.

What it does

Generators you define
Create a generator, choose the block, the drop, the speed and the price, all from an in game editor rather than a config file.
Tiers as a path
Upgrades branch rather than climbing a single ladder, and every tier shares one cooldown so the timing stays predictable.
Selling built in
A /sell command moves what the generators made, priced per drop, with no shop plugin needed.
Sell wands
Hand out a wand with its own multiplier and a limited number of uses, created straight from an admin command.
Limits from permissions
A limit permission decides how many generators a player may place, largest held wins, with an unlimited node for staff.
Tells you what is broken
A check command reports anything misconfigured, and a self test walks every placeholder so the docs cannot drift from the code.

Installation

  1. Drop GensCore.jar into your server's plugins folder.
  2. Restart the server. The plugin writes its own configuration on first start.
  3. Run /gens admin hub in game to set everything up. There is no file editing step.
iEverything ships in one jar. The shared framework is shaded in, so GensCore does not depend on any other Core plugin and any number of them run side by side.

Optional integrations

All of these are soft dependencies. GensCore loads and runs with none of them installed.

PluginWhat it adds
VaultReads or provides the server economy, depending on the mode you choose.
PlaceholderAPIRegisters the placeholder expansion listed below.
ItemsCoreCustom ItemsCore items are understood and displayed properly.
LuckPermsPermission driven limits resolve for offline players too.

Commands

Generated from the plugin's own command registry at version 1.0.0, so this list cannot drift out of date.

/gensYour generators/generators/gen
Usage
UsagePermissionDescription
/gensnoneYour generators
Subcommands
UsagePermissionPlayer onlyDescription
/gens listgenscore.useyesShow the generators you have placed
/gens admin [action] [player] [generator] [amount]genscore.adminnoAdministration commands
/gens admin actions
UsagePermissionDescription
/gens admin give <player> <generator> [amount]genscore.admin.giveGive somebody a generator item
/gens admin sellwand <player> [multiplier] [uses]genscore.admin.wandGive somebody a sell wand
/gens admin hubgenscore.adminOpen the admin hub
/gens admin generatorsgenscore.admin.defineCreate and edit generators
/gens admin settingsgenscore.admin.settingsEdit the settings in game
/gens admin messagesgenscore.admin.settingsEdit any player facing message
/gens admin menusgenscore.admin.menusEdit any menu in game
/gens admin checkgenscore.adminReport anything misconfigured
/gens admin reloadgenscore.admin.reloadReload the configuration
/sellSell what your generators made

Requires genscore.sell

Usage
UsagePermissionDescription
/sellgenscore.sellSell what your generators made

Permissions

everyone is granted to all players, operator only to ops, and nobody must be granted explicitly by a permissions plugin.

NodeDefaultDescription
genscore.*operatorGrants every genscore permission
genscore.adminoperatorUse the admin commands
genscore.admin.defineoperatorCreate and edit generators in game
genscore.admin.giveoperatorGive a generator item
genscore.admin.menusoperatorEdit the menus in game
genscore.admin.reloadoperatorReload the configuration
genscore.admin.settingsoperatorEdit the settings in game
genscore.admin.touchoperatorPick up and upgrade anybody's generator
genscore.admin.wandoperatorCreate sell wands
genscore.limit.<amount>nobodyPlace up to <amount> generators, largest held wins
genscore.menueveryoneOpen the generators screen
genscore.selleveryoneSell generator drops with /sell
genscore.unlimitedoperatorPlace any number of generators
genscore.useeveryonePlace and pick up generators
genscore.wandeveryoneUse a sell wand

Placeholders

Requires PlaceholderAPI. Turn the expansion off with integrations.placeholderapi: false.

Every key below is walked by the plugin's own self test, which fails if one stops resolving, so this list cannot quietly go out of date.

The generator part of a key is the id you gave it, which is also its file name under generators/.

Server wide

These need no player.

PlaceholderExampleNotes
%genscore_generator_count%2how many generators are switched on
%genscore_placed_total%418every generator standing on the server
%genscore_drops_per_minute%73what the clock actually produced last minute
%genscore_name_<generator>%Cobblestone Generatordisplay name
%genscore_tiers_<generator>%4how many tiers it has
%genscore_price_<generator>%$2what one of its drops sells for

Per player

PlaceholderExampleNotes
%genscore_placed%7generators this player has standing
%genscore_limit%10how many they may place, unlimited shows as an infinity sign
%genscore_placed_<generator>%3how many of one kind they have standing
%genscore_speed%1.50their current speed multiplier, all sources multiplied

What they return when they cannot answer

A generator id that does not exist gives an empty string.

A per player key with no player is left unresolved, so PlaceholderAPI leaves the text as it is.

The limit key for an offline player gives the configured default, since permissions are not loaded.