Skip to main content

Main Plugin Config

File: mods/Zuxaw_RPGLeveling/RPGLevelingConfig.json The main configuration file for the RPG Leveling plugin. Controls XP rates, max level, difficulty preset, and core gameplay toggles.

Configuration Options

OptionTypeDefaultDescription
MaxLevelInteger100Maximum level players can reach
RateExpDouble3.0Global XP multiplier (1.0 = normal, 2.0 = double XP)
BaseXPDouble1.0Base XP multiplier for mob kills (used in XP formula)
LevelBaseXPDouble150.0Base value for level XP requirement formula
LevelOffsetDouble0.0Offset for level XP requirement formula
EnableHUDBooleantrueEnable or disable HUD (fix HUD crashes)
DebugBooleanfalseEnable debug logging
ResetLevelOnDeathBooleanfalseReset player level to 1 on death (hardcore mode)
BlacklistedEntitiesString""Comma-separated entity type IDs (e.g. Bear_Grizzly) that give no XP and no level display when killed or looked at
BlacklistedEntityRolesString"Citizen_"Comma-separated role name substrings for NPCs excluded from leveling: no level display, no HP/damage scaling, no XP. NPCs with the NPCEntity component whose role name contains any of these strings (e.g. Citizen_) are treated as non-leveled. Use for Citizen mod NPCs (dialogue, traders). See Entity role blacklist.
EnablePVPXpBooleanfalseIf true, killing a player awards XP. If false, no XP from PvP kills
DifficultyPresetString”normal”"easy", "normal", "hard", or "extreme"
EnableMonsterLevelScaleBooleantrueIf true (default), monster level scaling is enabled (damage/HP per level, gap damage/defense, level-based XP). HP scaling is the primary toughness mechanic, so your damage stays consistent while higher-level mobs simply have bigger HP pools. If false, all monster level scaling is disabled and XP reverts to the old HP-based system (only mob max HP), while level display still works. See Difficulty Scaling.
EnableGapLevelDefenseBooleantrueIf true, level-gap defense applies (you deal less damage when underleveled). If false, gap defense is disabled - your damage to monsters is not reduced by level gap, letting HP scaling alone handle the toughness while your stat upgrades feel more impactful. See Difficulty Scaling.
EnableGapLevelDamageToPlayerBooleantrueIf true, level-gap damage applies (monsters deal extra damage when above your level). If false, gap damage to player is disabled - monsters do not get bonus damage from level gap. See Difficulty Scaling.
EnableGapLevelXpReducerBooleantrueIf true, XP is reduced when you are underleveled (monster level above yours). If false, no XP reduction for being underleveled - you get full XP from higher-level monsters. See Formulas level-difference table and Difficulty Scaling.
EnableNameplateLevelDisplayBooleantrueIf true (default), nameplates can show level; if false, no nameplate is modified (players or monsters).
EnablePlayerLevelNameplateBooleantrueIf true (default), player nameplates show level (e.g. “Username [Lvl. X]”). If false, only player nameplates are left unchanged; monster level still shows when you look at them.
EnableNotificationBooleantrueIf true (default), notifications are sent (XP gain, level up, stat points earned, death penalty, zone warnings, entity killed, critical hits, class tier-up subtitle, etc.). If false, no notifications are sent.
EnablePassiveNotificationsBooleantrueOnly applies when EnableNotification is true. If true (default), class passive proc popups are shown (heal/buff/damage effect lines, Hunter’s Mark proc, on-kill timed buffs like Overkill). If false, those passive-only popups are hidden; XP, level up, crits, entity killed, tier-up subtitle, zone warnings, etc. are unchanged.
EnableCurrentZoneHudDisplayBooleantrueIf true (default), HUD shows level plus current zone/biome (e.g. “Lvl 5Zone 1 Emerald Grove”). If false, HUD shows only level and XP progress bar.
BlacklistedXPBlocksString"Tw_Feed_Carnivore,Tw_Feed_Herbivore"Comma-separated block type IDs excluded from mining/woodcutting XP. Case-insensitive exact match (same style as BlacklistedEntities). See Block XP blacklist.

XP and Leveling

0.2.0 note: XP from mobs is based on monster level and level difference. RateExp and BaseXP still apply as multipliers. See Formulas for the complete math.

XP Rate Multiplier

  • RateExp - Global XP multiplier applied to all XP gains
    • 1.0 = normal XP
    • 2.0 = double XP
    • 3.0 = triple XP (default)
  • Admin timed XP boost - Operators can run /lvl xprateboost (see Commands) for a server-wide or per-player multiplier over a duration. That multiplier is applied on top of this config (and zone rates): e.g. RateExp 3 plus timed ×2 vs the formula baseline, not .

Level Requirements

Level XP requirements use this formula:
XP_required = LevelBaseXP × level^2.5 + LevelOffset   (level ≥ 2)
XP_required(1) = 0
  • LevelBaseXP - Base multiplier for the level curve (exponent 2.5; default: 150.0)
  • LevelOffset - Added to total XP per level.
To multiply XP earned while the player is in a specific level range (e.g. 3× XP at levels 80–100), use XPCurveOverridesConfig.json. See Formulas for examples and progression tables.

Difficulty Scaling

0.2.0 changes: Difficulty scaling settings are now in the main config file. Difficulty scaling is always enabled and controlled via the DifficultyPreset setting.

Difficulty Presets

PresetMonster→Player Dmg/LvlHP%/LvlGap Dmg MultGap Def MultBest For
EASY+0.5%+2%×0.75×0.75New players
NORMAL+1%+3.25%×1.0×1.0Default
HARD+2%+4.5%×1.25×1.25Experienced
EXTREME+4%+6.5%×1.5×1.5Hardcore
See Difficulty Scaling for complete details on monster damage, HP scaling, and level-gap mechanics.

Scaling Toggles

Fine-tune difficulty with these toggles:
  • EnableMonsterLevelScale - Master toggle for all level-based scaling (damage, HP, XP)
  • EnableGapLevelDefense - Toggle level-gap defense penalty (you → monster when underleveled)
  • EnableGapLevelDamageToPlayer - Toggle level-gap damage bonus (monster → you when underleveled)
  • EnableGapLevelXpReducer - Toggle XP reduction when fighting higher-level monsters

Death Penalty

Optional hardcore mode that resets progress on death:
  • ResetLevelOnDeath: true - Reset to level 1, lose all XP, clear stat allocations
  • ResetLevelOnDeath: false (default) - Keep level and stats on death

Entity Blacklist

Exclude specific entities from giving XP and showing level displays:
{
  "BlacklistedEntities": "Bear_Grizzly,Wolf_Alpha,Sheep"
}
Blacklisted entities:
  • Give no XP when killed
  • Show no level display when looked at
  • Are comma-separated entity type IDs

Entity role blacklist

Exclude NPC roles from leveling (no level display, no HP/damage scaling, no XP). This is based on the entity’s role name (NPCEntity component), not the entity type ID. Default: "Citizen_" - so NPCs whose role name contains Citizen_ (e.g. from the Citizen mod: dialogue, traders, quest givers) are not scaled and do not show level.
{
  "BlacklistedEntityRoles": "Citizen_,Villager_"
}
  • Role names are checked with contains (case-insensitive). Example: Citizen_Guard or MyCitizen_Type match the string Citizen_.
  • Blacklisted role NPCs: no level on nameplate, no HP scaling, no damage scaling, no XP when killed.
  • Leave as "Citizen_" to keep Citizen mod NPCs unaffected; set to "" to level all NPCs by role (no role blacklist).

Block XP blacklist

Exclude specific block type IDs from mining/woodcutting XP when players break them. Use this when a modded block matches ore/log/tree rules but should not be farmed for XP (for example Animal Husbandry feed troughs). Default: "Tw_Feed_Carnivore,Tw_Feed_Herbivore"
{
  "BlacklistedXPBlocks": "Tw_Feed_Carnivore,Tw_Feed_Herbivore"
}
  • List block type IDs, not item IDs. Enable "Debug": true, break the block once, and check the console for [BlockBreakXPSystem] Block broken: id="...".
  • IDs use case-insensitive exact match (same as BlacklistedEntities). tw_feed_carnivore and Tw_Feed_Carnivore are equivalent.
  • Blacklisted blocks give no XP when broken. Mining/woodcutting stat speed bonuses are unchanged.
  • Set to "" to allow XP from all eligible blocks (no block blacklist).
  • To disable all block-break XP, use EnableBlockXP: false in the same file (documented in 0.2.0 Main Config - Block XP).

PvP XP

Control whether player kills award experience:
  • EnablePVPXp: true - Killing players awards XP
  • EnablePVPXp: false (default) - No XP from player kills

Example Config (Default Values)

{
  "MaxLevel": 100,
  "RateExp": 3.0,
  "BaseXP": 1.0,
  "LevelBaseXP": 150.0,
  "LevelOffset": 0.0,
  "EnableHUD": true,
  "Debug": false,
  "ResetLevelOnDeath": false,
  "BlacklistedEntities": "",
  "EnablePVPXp": false,
  "DifficultyPreset": "normal",
  "EnableMonsterLevelScale": true,
  "EnableGapLevelDefense": true,
  "EnableGapLevelDamageToPlayer": true,
  "EnableGapLevelXpReducer": true,
  "EnableNameplateLevelDisplay": true,
  "EnablePlayerLevelNameplate": true,
  "EnableNotification": true,
  "EnablePassiveNotifications": true,
  "EnableCurrentZoneHudDisplay": true,
  "BlacklistedXPBlocks": "Tw_Feed_Carnivore,Tw_Feed_Herbivore"
}

File location and reload

  • Path: mods/Zuxaw_RPGLeveling/RPGLevelingConfig.json
  • This file is reloaded by /lvl reload. See Configuration Overview.

See Also