-
Notifications
You must be signed in to change notification settings - Fork 0
Configuration
RPGMood ships four config files, generated automatically in plugins/RPGMood/ on first start: config.yml, zones.yml, triggers.yml, and farming.yml. Edit them and run /rpgmood reload to apply changes.
-
zones.yml— zone definitions. See Zones. -
triggers.yml— time/weather/block-break events. See Ambient Events. -
farming.yml— crops, seasons, recipes, and animals. See Farming. -
config.yml— everything else, detailed below.
| Key | Type | Default | Description |
|---|---|---|---|
zone_change_cooldown |
Integer (seconds) | 45 |
Minimum time between zone-change feedback for the same player |
particle_update_interval |
Integer (ticks) | 40 |
Reserved for future ambient particle scheduling — not yet read by any feature |
| Key | Default |
|---|---|
delivery |
ACTION_BAR — ambient messages (time/weather events, farming/animal feedback) go to the action bar instead of chat. Set to CHAT for the traditional behavior. This is the server-wide default; a player can override it for themselves with the Action Bar Delivery toggle in the GUI menu's Settings panel (writes player_actionbar.<uuid>). Doesn't affect zone entry — that's Title/Subtitle only, see Zones
|
no_permission |
&c[RPGMood] You do not have permission to use this command. |
plugin_reloaded |
&a[RPGMood] Configuration reloaded successfully. |
toggle_enabled |
&a[RPGMood] Effects enabled. |
toggle_disabled |
&e[RPGMood] Effects disabled. |
player_join |
&a→ {player} joined the world. |
player_join_first_time |
&6✨ {player} arrived for the very first time! |
player_quit |
&7← {player} left the world. |
join_sound |
entity.player.levelup |
join_first_time_sound |
ui.toast.challenge_complete |
quit_sound |
entity.villager.no |
player_join/player_join_first_time/player_quit replace the vanilla join/quit chat
broadcast entirely (the vanilla message is suppressed). {player} is replaced with the
player's name. Each is sent through broadcastAmbient, so every online player receives it via
their own delivery preference (action bar or chat, per the delivery setting/toggle above),
along with the matching sound played to every online player. First-time joins
(!player.hasPlayedBefore()) use player_join_first_time + join_first_time_sound instead of
the regular join template. Set any *_sound key blank to disable just the sound for that
event.
Every message routed through delivery (all of AmbientTask's time/weather events, plus all
farming/animal interaction feedback) is centralized in MessageService, and action-bar
messages are sticky — resent twice, a second apart, so a short vanilla fade or a different
message a moment later doesn't erase it before it's been read. If a newer message is sent to
the same player before a resend fires, the stale resend is skipped instead of flashing old
text back over the new one.
Achievement unlocks always go to chat regardless of delivery — see Achievements → Notifications.
See Mob Scaling for the full formula. Quick reference:
| Key | Type | Default | Description |
|---|---|---|---|
enabled |
Boolean | true |
Master switch |
hostile-only |
Boolean | true |
Only scale Monster entities |
max-level |
Integer | 40 |
Upper clamp on the computed level |
health_per_level |
Decimal | 2.0 |
Max health added per level |
damage_per_level |
Decimal | 0.12 |
Attack damage added per level |
armor_per_level |
Decimal | 0.25 |
Armor added per level |
speed_per_level |
Decimal | 0.0015 |
Movement speed added per level |
radius.step_distance |
Decimal (blocks) | 180 |
Distance per "ring" of difficulty from spawn |
players_bonus_per_player |
Integer | 1 |
Level added per nearby player (within ~30 blocks) |
name_format |
String | "&cLv. {level} {name}" |
Custom name shown above scaled mobs. Supports {level} and {name}
|
show_name_tags |
Boolean | false |
Show the floating name tag above scaled mobs. Off by default — RPGMood shows level via particle auras instead |
particle_aura |
Boolean | true |
Level-tiered coloured particles around scaled mobs (blue → yellow → orange → red as level rises), only rendered for mobs within ~30 blocks of a player |
bonus_xp_per_level |
Integer | 2 |
Bonus XP granted per level when a player kills a scaled mob. 0 disables |
base-levels |
Map<EntityType, Integer> | see below | Per-mob-type difficulty seed |
biome-bonuses |
Map<Biome, Integer> | see below | Flat bonus per biome |
structure-bonuses |
Map<structure key, Integer> | see below | Flat bonus near a vanilla structure |
announcement.* |
— | see below | Server-wide broadcast when a high-level mob spawns |
mob_scaling:
base-levels:
ZOMBIE: 1
SKELETON: 2
SPIDER: 2
CREEPER: 3
ENDERMAN: 4
WITHER_SKELETON: 5
biome-bonuses:
PLAINS: 0
FOREST: 1
MOUNTAINS: 3
SOUL_SAND_VALLEY: 4
structure-bonuses:
stronghold: 3
desert_pyramid: 2
jungle_pyramid: 2
woodland_mansion: 4
ocean_monument: 4
nether_fortress: 3
announcement:
enabled: true
min-level: 25
cooldown-seconds: 120
message: "&c⚠ A Level {level} {name} has emerged in {biome}!"Any EntityType / Biome not listed defaults to 0 (or 1 for base-levels) — you don't need to list every enum value, only the ones you want to deviate from baseline. See Mob Scaling for the rewards and announcement behavior in detail.
Fully documented on the Death Messages page. Top-level keys: fallback, causes (includes killers.player for PvP), biomes, killers, killer_synonyms, armed, modifiers, location_name_templates, location_name_descriptors (ships per-biome pools for common biomes plus default), location_names.
Not hand-edited — RPGMood writes player_effects.<uuid>: true|false and player_titles.<uuid>: true|false here automatically when a player runs /rpgmood toggle / /rpgmood toggle titles.
None of these are hand-edited — each is written automatically by its owning feature and read back on startup / /rpgmood reload.
| File | Backs |
|---|---|
stats.yml |
/rpgmood leaderboard — per-player deaths, zone changes, highest mob level killed. See Commands
|
achievements.yml |
/rpgmood achievements — unlock timestamps and progress counters. See Achievements
|
season.yml |
Current season and day-in-season. See Farming → Seasons |
recipes.yml |
Per-player discovered recipes. See Farming → Cooking & recipes |
animals.yml |
Owned animals and their affection/health/hunger/sickness state. See Farming → Animal husbandry |
playerdata/<uuid>.yml |
/diary entries. See Commands
|