This standalone project is deprecated for now. Boosters has moved into the 1MB-CMIAPI project, though this repository is being kept around in case we want to roll back to the standalone version later.
Boosters is a helper plugin for 1MoreBlock.com that tracks server-wide boosters from mcMMO, Jobs Reborn, and a manual-detection points integration for PyroWelcomesPro, restores tracked boosters after restart, and gives players a clean /rate command to check the current status.
Version: 1.3.1
Build: 043
Updated: 2026-04-28
- Tracks native mcMMO
/xpratecommands from players and console. - Tracks native Jobs
/jobs boost ...commands from players and console. - Restores tracked boosters a few seconds after startup.
- Adds
/rate,/rate info,/rate start,/rate stop,/rate reload, and/rate debug. - Detects manual
pointsboosters fromPyroWelcomesProconfig values. - Exposes PlaceholderAPI placeholders for mcMMO, Jobs, and points.
- Uses MiniMessage for plugin output and configurable broadcast messages.
- Supports configurable console command hooks for booster start and stop events.
- Loads player-facing wording from
Locale_EN.yml.
- Built with Java
25. - Compiled against the Paper API for
26.1.2. - The generated
plugin.ymldeclaresapi-version: 1.21.11so the same jar can be tested on Paper1.21.11and Paper26.1.2. - Intended for Paper
1.21.11and newer Paper26.xservers that are running on Java25. - The built jar is named
1MB-Boosters-v1.3.1-043-j25-26.1.2.jar. - The plugin data folder is
plugins/1MB-Boosters/. - Repo-local
/servers/is not used by this project; testing should go through/Users/floris/Projects/Codex/servers/run-test-server.
If you run this exact build on a server that still uses Java 21, the plugin will not load because the bytecode target is Java 25.
Native mcMMO commands that Boosters tracks:
/xprate <rate> <true|false>/xprate reset
Boosters can also manage timed mcMMO boosters itself with /rate start mcmmo ..., even though native mcMMO /xprate does not include a timer.
Native Jobs commands that Boosters tracks:
/jobs boost <job|all> <exp|money|points|all> <time> <rate>/jobs boost all reset
Boosters stores the remaining time and restores the Jobs booster after restart.
Boosters includes a read-only/manual-detection points integration for PyroWelcomesPro.
- It reads
plugins/PyroWelcomesPro/config.yml - It checks:
Settings.EarnablePointsSettings.DiscordSRV.EarnablePoints
- It infers a Points booster when either value is higher than the configured base value
- It shows that detected booster in
/rate,/rate debug, and PlaceholderAPI output - It does not write, stop, or reload PyroWelcomesPro until that plugin reliably reloads these settings live
Current assumptions:
- Base in-game points:
2 - Base Discord points:
1 - Points multipliers must be whole numbers like
2,3, or4
Examples:
Settings.EarnablePoints: 4with base2is shown as2x.Settings.DiscordSRV.EarnablePoints: 2with base1is shown as2x.- If both values are at their base values,
/ratereports no active Points booster.
/rate start points and /rate stop points are intentionally skipped for now. If a manual Points booster is active, reset PyroWelcomesPro's values back to the base values and restart/reload that plugin once its reload issue is fixed.
/rateShows the current tracked booster status. Experimental points can stay hidden from normal players. Players with onlyonemb.boosters.ratedo not get admin or debug tab completions./rate infoShows a short introduction to the plugin, the current build information, and a clickable GitHub repository URL.
/rate start <mcmmo|jobs|all> <time> <rate>Starts tracked boosters.allstarts every enabled/admin-available booster using the same time and rate./rate stop <mcmmo|jobs|all>Stops one tracked booster or all tracked boosters./rate reloadReloads this plugin'sconfig.ymland locale file./rate debugShows a summary debug view with build/runtime information, including the compile Paper API version and declared compatibility floor./rate debug referenceShows commands, permissions, and placeholders./rate debug integrationsShows integration status for mcMMO, Jobs, and points./rate debug stateShows the tracked runtime state./rate debug rawShows raw stored values and important file paths./rate debug configShows an expanded grouped config summary./rate debug config <path>Reads a config value./rate debug config <path> <value>Sets a simple config value and reloads this plugin./rate debug toggle <path> [true|false]Flips a boolean true/false config setting, or explicitly sets it if you providetrueorfalse, then reloads this plugin./rate debug allConsole-only full debug dump with summary, reference, integrations, state, raw, config, and logs./rate debug logsShows recent audit log entries./rate debug clean logsClears the recent audit log entries./rate debug cleanlogsAlias for clearing the recent audit log entries.
If /rate start or /rate stop is used without enough arguments, the plugin shows the correct command synopsis.
/rate/rate info/rate start mcmmo 1h 2/rate start jobs 30m 2/rate start all 1h 2/rate stop mcmmo/rate stop jobs/rate stop all/rate reload/rate debug/rate debug reference/rate debug raw/rate debug all/rate debug config features.points.visible true/rate debug toggle features.points.visible/rate debug toggle features.points.visible true/rate debug logs/rate debug clean logs
onemb.boosters.rateAllows players to use/rate.onemb.boosters.adminAllows staff to use/rate start,/rate stop, and/rate reload.onemb.boosters.debugAllows staff to use/rate debug.
lp group admin permission set onemb.boosters.admin truelp group admin permission set onemb.boosters.debug truelp group default permission set onemb.boosters.rate true
Boosters registers the PlaceholderAPI identifier onembboosters.
%onembboosters_mcmmo_active%ReturnsYesorNo.%onembboosters_mcmmo_rate%Returns the tracked mcMMO rate without thex.%onembboosters_mcmmo_time%Returns the original tracked mcMMO duration, orManualfor a native/xprate.%onembboosters_mcmmo_timeleft%Returns the remaining tracked mcMMO duration, orManualfor a native/xprate.
%onembboosters_jobs_active%ReturnsYesorNo.%onembboosters_jobs_rate%Returns the tracked Jobs rate without thex.%onembboosters_jobs_time%Returns the original tracked Jobs duration.%onembboosters_jobs_timeleft%Returns the remaining tracked Jobs duration.
%onembboosters_points_active%ReturnsYesorNo.%onembboosters_points_rate%Returns the detected PyroWelcomesPro points multiplier, or1when inactive.%onembboosters_points_time%ReturnsManualfor detected PyroWelcomesPro points boosters, orNonewhen inactive.%onembboosters_points_timeleft%ReturnsManualfor detected PyroWelcomesPro points boosters, orNonewhen inactive.
When a booster is not active:
ratereturns1timereturnsNonetimeleftreturnsNone
config.ymlStructural settings, feature toggles, tab completions, display options, integration paths, broadcasts, and lifecycle command hooks.Locale_EN.ymlPlayer-facing wording and MiniMessage styling for/rateoutput.booster-state.ymlAutomatically managed runtime state for tracked boosters.
You can run your own console commands whenever a tracked booster starts or stops.
- Hook lists live in
config.ymlundercommandHooks.start.*andcommandHooks.stop.* globalruns for every booster typemcmmoandjobsonly run for that booster typepointshook lists are reserved for a future controlled Points mode and do not run while Points is read-only/manual-detection- Hooks also run for tracked native mcMMO/Jobs commands and when a timed booster expires
- Commands are sent to the console raw, so the target plugin can handle its own formatting, MiniMessage, hex colors, sounds, bossbars, particles, and so on
- Leading
/is optional
Available hook placeholders:
- The common ones you will probably use most are
{booster},{rate},{duration},{remaining},{sender},{jobs_target},{jobs_scope},{ingame}, and{discord}. {phase}returnsstartorstop{booster}returnsmcMMO,Jobs, orPoints{booster_key}returnsmcmmo,jobs, orpoints{booster_label}returns the configured display label fromconfig.yml{rate}returns the tracked multiplier{duration}and{duration_compact}return the booster duration{remaining}and{remaining_compact}return the remaining time at the moment the hook runs{sender}returns the player name orConsole{jobs_target}and{jobs_scope}return Jobs target/scope values{ingame}and{discord}return the current points values for the points integration
Example hook config:
commandHooks:
start:
global:
- "cmi broadcast Booster {booster} {rate}x started for {duration} by {sender}"
- "cmi titlemsg all Booster Started \n {booster} {rate}x for {duration}"
stop:
global:
- "cmi broadcast Booster {booster} stopped by {sender}"
- "cmi titlemsg all Booster Stopped \n {booster} ended after {duration}"The expected folder layout is:
plugins/1MB-Boosters/config.ymlplugins/1MB-Boosters/Locale_EN.ymlplugins/1MB-Boosters/booster-state.yml
If you upgrade from an older release that used plugins/Boosters/ or plugins/boosters/, this build attempts to migrate that data folder on startup.
- Gradle targets Java
25. - The plugin is compiled against
io.papermc.paper:paper-api:26.1.2.build.+. - The generated
plugin.ymldeclaresapi-version: 1.21.11. - Current release metadata: version
1.3.1, build043. - PlaceholderAPI support is optional.
- mrfloris for the original plugin idea, project direction, testing, and 1MoreBlock server integration
- nossr50 and the mcMMO team for mcMMO
- Zrips for Jobs Reborn
- xsmeths for logic fixes and helpful review on booster output behavior
- The456gamer for additional contributions and improvements
- OpenAI for Codex-assisted development, refactoring, documentation updates, and testing support
- Everyone who helped shape the original idea and later fixes for this plugin