Configuration
All configs live in mods/HyPrisonCore/. Created on first run if missing. config.json is created from built-in defaults on first run; if you already have a config folder, the plugin adds any missing options (e.g. PrestigeResetTotalBlocks) on startup.
| File | Purpose |
|---|---|
config.json | Main plugin options. All boolean toggles (prestige reset, UnlimitedPrestiges, AllowOpInGame, HelpOpensGuide, UseMysql, ProtectionEnabled, ProtectionLogBlocked, ProtectionDebug (both default false), ProtectionRestoreHarvestBlocks, etc.), plus MainSpawnWorld (world name for /spawn; leave blank for per-world spawn). UnlimitedPrestiges (default false): when true, players can prestige beyond the Prestiges defined in ranks.json. AllowOpInGame (default false): when true, in-game players can use /op; when false, only console can. Created from defaults on first run; missing keys are merged in on startup. |
license.json | LicenseKey (required). Plugin does not run without a valid key. |
database.json | Optional MySQL. UseMysql is in config.json; here only Host, Port, Database, Username, Password. |
economy.json | StartingBalance, ProgressionMultiplier. Balances and logs are stored per-player in PlayerData/<uuid>.json (migrated automatically on first load). |
ranks/ranks.json | Ranks (A–Z), DefaultRank, RankupFallbackCost, DefaultPermissions. Player progress (rank, prestige, pickaxe, tokens, etc.) is stored per-player in PlayerData/<uuid>.json (migrated automatically on first load). Prestige definitions in ranks/prestiges.json. |
PlayerData/ | Per-player JSON files (one per UUID). Contains rank, prestige, pickaxe, tokens, balance, logs. Created and updated by the plugin; avoids the ~128 KB per-object JSON limit on large servers. |
Plots/plots.json | Plots system: world name, grid (plot size, road width), block types. Edit via Admin → Mines & World → Plots Editor or by hand. |
Plots/plots_data.json | Claimed plots data. Managed by the plugin when players use /plot claim or /plot auto. |
mines/mines.json | Mines (name → definition), DefaultBlockPrices, TeleportCooldownSeconds. Each mine: Name, RequiredRank, AllowedRank, WorldName, CornerOne/Two, Spawn, SpawnRotation, WarpId, ResetMode (Percent or Timer), ResetPercentage, ResetTimerSeconds, Prestige, AllowedPrestige, BlockComposition, BlockOverrides, BlockXpOverrides. Mine Editor: edit Reset % and mode (Percent = reset when blocks mined reach threshold; Timer = reset on interval). |
pickaxe_xp.json | TierXp (tier → XP per block), DefaultXp. |
pickaxe.json | Pickaxe item: ModelPath, TexturePath, IconPath, Quality, ItemLevel, LightColor, LightRadius, Particles. |
formulas.json | Progression formulas: pickaxe XP/level/tokens, upgrade costs (Fortune, Sell Booster, Token Finder, XP Boost, Jackhammer, Laser, Token Multiplier), proc chances (Token Finder, Jackhammer, Laser, Lucky Blocks, Explosive Touch, Double Drop), unlock costs, mine tier and token multipliers. Edit to rebalance without code changes. See Progression (formulas). |
protection.json | UnprotectedWorlds (world names where protection is fully disabled, e.g. plot world), ProtectedWorlds, SpawnProtectedWorlds, BypassPermission (default hyprisoncore.admin), BlockMessage, WorldProtectionEntries (per-world flags: BreakBlock, PlaceBlock, Gather, Harvest, PlaceFluid, RefillContainer, CycleBlockGroup, UseBlock), AllowedInteractions, HarvestItemToBlock. ProtectionEnabled, ProtectionLogBlocked, ProtectionDebug, ProtectionRestoreHarvestBlocks are in config.json. Edit in-game via /protection editor. See Protection. |
warps.json | Warps (Id, DisplayName, World, X, Y, Z, Permission, ShowWorldInMenu). Created when you first use /setwarp. Use /warp editor to edit. /warp [name] and /warps menu use this. |
world_options.json | FogDisabledWeatherId (weather when DisableFog is on). DisableFog is in config.json. |
scoreboards.json | HUD/scoreboard: ShowMain, ShowPickaxe, ShowMine; Title, Subtitle; MainLines, PickaxeLines, MineLines (line templates with placeholders). See scoreboards-default.json in Config folder. Placeholders include {pickaxeprogress}, {pickaxeprogressbar}. |
lang/en.json | Messages, command aliases. Scoreboard line templates can be in scoreboards.json or legacy ScoreboardLines in lang. HelpOpensGuide is in config.json. |
hyprisoncore_permissions.json | Permission overrides (groups, users). |
hyprisoncore_external_permissions.json | External permission definitions. |
hyprisoncore_group_parents.json | Group parent definitions. |
npcs.json | NPC definitions (name → definition: world, position, display name, interact command, optional hologram ID, hide name, linked entity UUID). Created from default on first run. See NPCs & Guide. |
crates.json | Crate types (id → definition: display name, rewards, optional LinkedEntityUuid). See Crates. |
crate_keys.json | Per-player key counts per crate (created when first keys are given). |
holograms.json | Hologram definitions (id → lines, position). See Holograms. |
Custom pickaxe model/texture
Place HyPrison_Pickaxe.blockymodel and HyPrison_Pickaxe_Texture.png in mods/HyPrisonCore/Common/Items/Tools/Pickaxe/ to override the default assets. Paths in pickaxe config remain Items/Tools/Pickaxe/HyPrison_Pickaxe.blockymodel and Items/Tools/Pickaxe/HyPrison_Pickaxe_Texture.png.