Getting Started
Last updated Sep 18, 2026
Getting Started
Install
- Install SoapsCommon, MMOCore, and MythicLib.
- Place
SoapsHungerStamina.jarinplugins/. - Restart the server (full restart, not
/reload). - Tune files in
plugins/SoapsHungerStamina/, then/shs reload.
First things to tune
| File | Start here |
|---|---|
actions.yml |
sprint, jump, attack, winded, bed-rest |
config.yml |
general.disabled-worlds, hunger.mode, ui.type, integration.mmocore |
weight.yml |
encumbrance.max-weight, encumbrance.severe-weight |
messages.yml |
Prefix and exhaustion lines |
Open /shs gui as OP to flip features while you test. /shs toggle <setting> does the same from chat.
Player commands to try
/stamina
/stamina display actionbar
/stamina display default
/weight
Admins: /stamina debug shows the live multiplier stack after one engine tick.
Presets
Copy a file from presets/ over the matching live YAML selectively (they are overlays, not full replacements):
| Preset | Intent |
|---|---|
public-smp.yml |
Fair public defaults: softer drains, new-player easing, recovery cues |
vanilla-plus.yml |
Light pressure; mounted/weather/feedback stay off |
rpg-combat.yml |
Dodge, sprint burst, mounted, feedback |
hardcore-survival.yml |
Higher drain, weather + mounted on |
identity-fighter.yml |
Melee-forward overlay |
identity-swimmer.yml |
Swim/coastal overlay |
identity-climber.yml |
Climb/elytra overlay |
See Endurance and Class Identity for how MMOCore max stamina and these overlays fit together.
| pvp-balanced.yml | PvP/PvE context multipliers |
Platforms
Paper 26.2, Spigot 26.2, and Folia are supported (tested on Paper 26.2, Java 25). plugin.yml sets folia-supported: true. Folia runs one engine task per player on the entity scheduler.
Companion plugin integration
Other plugins can drain or restore stamina through SHS so overflow, hunger, and session stats stay consistent:
SoapsHungerStamina shs = (SoapsHungerStamina) Bukkit.getPluginManager().getPlugin("SoapsHungerStamina");
if (shs != null) {
shs.getStaminaService().drainAction(player, cost);
// shs.getStaminaService().giveRegenCapped(player, profile, max, current, amount);
}
Prefer StaminaService over calling MMOCore directly when SHS owns the server's stamina rules.