DominionForge
Factions, wars and 1.8 raiding physics on 1.21
DominionForge is a factions core for Paper and Spigot, 1.20.4 to 26.x. It covers claims, power, ranks, diplomacy, scheduled wars, a shared vault, a bank with a ledger, warps and web maps in one plugin. On top of that it has a full 1.8 raiding layer, which stays switched off until you turn it on.
Power sets how much land a faction can hold, and it goes down when members stop playing. Wars are declared in advance, so a base isn't taken at 4 a.m. while its builders are asleep.
What sets it apart
- Power you can check: base + hours played this week + reputation − recent deaths − inactivity.
/df powershows every term, so nobody has to ask staff why their number dropped. - Scheduled wars: the attacker declares in advance, the defender gets time to organise, and the attacker only wins by capturing a named objective chunk.
- Home with a warm-up:
/f homeand warps have a warm-up that breaks if you move or take a hit, plus a combat tag. - A vault that can't duplicate items: everyone looking at the faction chest shares one inventory, saved when the last person closes it.
- An auditable bank: every deposit and withdrawal records who, how much and why (
/df bank log).
The raid layer
Everything below ships inside DominionForge and is set per world, with two ready-made profiles (vanilla and 1.8). You edit it from an in-game menu (/df adminconfig) and reload it without a restart. It's all off by default, so a vanilla server stays vanilla until you switch a section on.
- 1.8 combat, per world: knockback measured against a real 1.8 server.
- Block health: obsidian takes the number of charges you decide, so a single TNT doesn't break it and a cannon does.
- Cannons, sand bots and ChunkBusters: charged for what actually goes in, on a server-wide budget.
- RaidGuard: blocks phasing, faction-map abuse, dismount clipping, the nether roof, bone-fed dispensers, mining exploits and inventory duplication.
- Events and economy: KOTH, bounties, a physical coin and territory shields.
How to use it
- Install: drop the jar into
/plugins, restart once and paste your licence key intoconfig.yml. SQLite is set up for you; switch to MySQL if several servers share the same factions. - Players:
/df create <tag>to start a faction,/df claimto take the chunk you're standing in,/df mapguito claim from a clickable map, and/df guifor the faction menu./dfon its own lists every command./fworks too, as long as no other plugin already uses it. - Admins:
/df adminconfigopens every setting in a menu. Changes apply straight away. - Coming from another plugin?
/df import factionsuuid(orsaberfactions) runs a dry run that writes nothing and lists what would be skipped and why. Addconfirmand it backs up the database first, then imports. Whatever is already on your server wins.
Requirements
- Paper or Spigot from 1.20.4 to 26.x, forks like Purpur included, on Java 17 or newer (the Java your Minecraft version asks for).
- Optional: Vault plus any economy plugin (enables the bank), PlaceholderAPI (14 placeholders), BlueMap or Dynmap, LuckPerms and WorldGuard.
None of the optional plugins is required. Without Vault the bank switches itself off and says so in the console. Without PlaceholderAPI the placeholders aren't registered. The plugin never refuses to start because an optional plugin is missing.
FAQ
Will it lag my server?
Every database query runs off the main thread, placeholders are cached, and /df bench reports real timings from your own server. Importing 200 factions, 600 members and 5,000 claims takes well under a second, and the server keeps ticking the whole time.
Can I translate or reword the messages?
Yes. English and Spanish are included, and every string a player sees is in the language file.
Paper logs two deprecated-event warnings. Is that a bug?
No. The deprecated event is the only one that reproduces 1.8 knockback exactly. We measured both options before choosing it.
Can other plugins read faction data?
Yes, through a public API on the Bukkit ServicesManager, so they can ask who owns a block without parsing chat.
For questions or bug reports, use the discussion tab on this page or our Discord.