Skip to content

Compatibility

okereke-dev edited this page Jul 17, 2026 · 4 revisions

Compatibility

Both integrations are soft dependencies (softdepend: [PlaceholderAPI, squaremap] in plugin.yml) — RPGMood works fully without either plugin installed, and detects them automatically at startup (check your server log for a confirmation line).

As of v1.10.0, WorldGuard is no longer a softdepend. The curated zones.yml + WORLDGUARD zone type it powered was removed in favor of the fully organic zone cluster system — there's no WorldGuard-dependent behavior left anywhere in the plugin.


PlaceholderAPI

If PlaceholderAPI is detected, RPGMood registers the %rpgmood_*% placeholders:

Placeholder Description
%rpgmood_zone% The player's current zone display name (e.g. "Elden Meadows")
%rpgmood_area_danger% The mob scaling level a Zombie would get if it spawned at the player's current location right now
%rpgmood_village_rep% Sum of the player's village reputation across every village they've traded in

Useful for scoreboards, tab list headers, or BossBar plugins that want to show "area danger" or village standing as a live stat.

Squaremap

If squaremap is detected, RPGMood registers a "RPGMood Zones" map layer and draws every zone cluster as a borderless, semi-transparent rectangle on the web map — filled color reflects that cluster's local danger tier (the same 5-tier palette used for zone title colors and RPGLoot rarity), and the cluster's display name shows on hover. See Zones → Squaremap integration.

Squaremap-specific classes are only ever loaded if the squaremap plugin is actually present at startup — without it installed, RPGMood behaves exactly as if the integration didn't exist, no errors, no extra overhead.


Paper vs Spigot

RPGMood targets the Paper API (api-version: '1.20') and uses a couple of Paper-specific APIs (org.bukkit.generator.structure.StructureType for structure-proximity scaling). Running on plain Spigot/CraftBukkit instead of Paper is untested and may not build/behave identically.


Reading a mob's level from another plugin

RPGMood tags every scaled mob with its level via PersistentDataContainer under rpgmood:level — no dependency on RPGMood required to read it. See Mob Scaling → Exposing level to other plugins.

For anything beyond reading the level off an entity — reacting to zone changes, overriding a mob's level before it's applied, replacing a death message, or hooking crop harvests — RPGMood fires four Bukkit events. See Developer API.


bStats

RPGMood reports anonymous usage metrics via bStats once a plugin ID is registered (bundled and shaded, no extra install needed). Disable server-wide the same way as any other bStats-based plugin: set enabled: false in plugins/bStats/config.yml.

Clone this wiki locally