Features - Rumsfield/konquest GitHub Wiki

Konquest Features

The Konquest plugin implements many features and mechanics which allow server admins to create a fun and engaging experience. Most features are configurable. See the Configuration page for a full list of configuration options.

Feature Summary

Gameplay Features

  • Let players create and manage their own kingdoms, and set up admin kingdoms that players can join but only admins can manage.
  • Change kingdom relationships with diplomacy: peace, war, trade, alliance.
  • Player nametags and display names have relative name coloring based on kingdom relationships.
  • Optionally create per-kingdom permissions that players need to join specific kingdoms.
  • Set whether players can switch kingdoms or are stuck with the first one they join.
  • As an admin, create sanctuary territories with claimed land for anti-build, anti-pvp, anti-entry/exit and more properties.
  • Settle towns and claim chinks of land to grow kingdom territory.
  • Claimed town land prevents other players from accessing or breaking containers, killing farm animals, and more (anti-grief).
  • Pillage and destroy towns as a barbarian player, without joining a kingdom.
  • Travel (teleport) between friendly towns in your kingdom and towns in allied kingdoms.
  • Manage residents of towns to control who can build, promote some to knights with add/kick access.
  • Create, edit and delete town plots to manage which town residents can build and access chests on specific land chunks.
  • Make iron golems attack enemy players that raid towns.
  • Use town shields to block all enemy attacks for some time, or use town armor to protect a limited number of blocks from enemies.
  • Create camps as a barbarian to protect containers, and configure their size.
  • As an admin, create ruin territories for PvE objectives with rewards for their capture, and customize their critical block types, cooldowns and rewards.
  • Player stats are tracked and unlock title prefixes based on stat levels, which can be applied to chat names.
  • And much more!

Customization Features

  • Allow kingdoms and towns to exist in multiple worlds with configurable blacklist/whitelist. Players can only settle towns in allowed world, but may still explore other worlds for resources.
  • Use your own economy plugin with Vault, and implement your own custom ways for earning money.
  • Customize kingdom monument templates with the critical block type, amount and loot amount and refresh time.
  • Set optional minimum and maximum distances between settled towns and the kingdom capital.
  • Allow players to always travel even if they run out of favor.
  • Control whether kingdoms can be raided when there are little to no players online.
  • Give an EXP orb drop boost to players in the smallest kingdom to incentivize joining.
  • Force players that have been offline for too long to be removed from town resident lists or exiled from their kingdom.
  • Control town settlement constraints, such as min/max height and distance between other territories.
  • Set how much land new towns start with.
  • Enable or disable town upgrades, and set their costs and population requirements.
  • Set cooldown durations, such as time between town captures, traveling and raid alerts.
  • Customize the favor cost of all commands and quest rewards.
  • Enable or disable combat tagging, and prevent players from using a customized list of commands while tagged.
  • Allow players to complete tutorial quests (directives) for favor rewards.
  • Set up custom chat message formats for your server.
  • Integrate with the QuickShop plugin to add chest shop features within town land.
  • Integrate with the LuckPerms plugin to preserve permission group prefix/suffix in chat.
  • Integrate with the DiscordSRV plugin to chat between your Discord and Minecraft servers.
  • Use Dynmap and view all Konquest territory boundaries.
  • Use placeholders to get player info, like what kingdom they're in, which territory they're standing in, and much more.
  • Set permissions-based Favor discounts for players and permissions groups.
  • Create custom prefixes for players to purchase with in-game menus and currency.
  • And much more!

Select Features

Here are more details on specific plugin features.

Name Colors

All player names in chat and above player models are colored relatively: All enemies appear red, barbarians appear yellow and friendlies appear green by default. So two enemy players will see each other as red, while two friendly players will see each other as green. These relative colors are configured in core.yml with the primary and secondary colors of each team:

  • Friendly players in the same kingdom.
  • Enemy players in different kingdoms at war.
  • Trading players in different kingdoms in a trade agreement.
  • Peaceful players in different kingdoms at peace.
  • Allied players in different kingdoms in an alliance.
  • Barbarian players without a kingdom.

Note: The primary colors used in core.yml must match the ChatColor names found here. The secondary colors can use ChatColor names or Hex (#RRGGBB) color values.

Barbarian Camps

Barbarian players cannot settle towns, however they can create camps to protect their containers and prevent hostile mob spawns. Barbarians can only have one active camp. The size of the camp is configurable. A barbarian creates a camp by placing a bed in The Wild. While the camp is active, only the owner may access containers within. If any player destroys the bed, then the camp is destroyed and the containers can be accessed.

Ruins

Ruins are special territories that do not belong to any kingdom or player. They are created by admins with the /k admin ruin create (name) command. A ruin can be created in any world, not just the primary world. Ruins contain critical blocks similar to towns. They also contain spawn blocks, where the ruin will spawn modified iron golems, a.k.a Ruin Golems, to protect the critical blocks. Ruin Golems attack players who interact with the critical blocks. When players destroy all of the critical blocks, all players located inside of the ruin are rewarded with favor and experience. The ruin has a cooldown until it is again capturable. Ruins offer an objective for players to attack in a PvE setting.

Monument Loot

Chests within town monuments will periodically re-fill with random loot items. See the Loot Table page for details on all possible items and probabilities. Each chest within a town monument will produce random loot items periodically. Only town lords and knights can open monument loot chests. Once a player takes the loot items out of the chest, it will be empty until the loot refreshes. If no one takes the loot out of the chest, it will be destroyed and replaced with new loot when the loot refreshes. Players cannot place items into the loot chests.

Favor Discounts

The permission node konquest.discount.<X> can be used to give players a global discount on all Favor costs. For example, if a player or permission group has the permission konquest.discount.10, then a 10% discount will be applied on all withdraws for Favor, like settling towns and purchasing town upgrades.

Stats & Accomplishment Titles

Konquest tracks stats per-player, from things like towns settled and land claimed to mobs killed and music discs played. From these stat values, players can unlock different title prefixes to apply to their names in the chat box. See the Stats and Accomplishments pages for details.

Custom Prefixes

Players can apply custom prefixes to their name in chat. These prefixes are defined in prefix.yml. Each prefix has a label, name and cost, as well as requires a permission to use (konquest.prefix.<label>). The name is what appears in chat and supports color/formatting codes. The cost can be 0 (free) or other positive number. Once a player with valid permissions purchases a custom prefix, it is unlocked and can be applied at any time. Custom prefixes can be applied using the "/k prefix" command.

Custom Chat Format

The core.chat.message and core.chat.divider options in core.yml are used to define what player chat messages look like. The message string uses built-in tags for player names, kingdoms, etc. You can include anything you want in the message string within single-quotes ('). You may also include placeholders from other plugins using PlaceholderAPI. The built-in tags are (must be in all capital letters):

  • %NAME% - Player's name
  • %TITLE% - Player's accomplishment prefix title, can be empty
  • %KINGDOM% - Player's kingdom name
  • %RANK% - Player's kingdom role (master, officer, member)
  • %PREFIX% - LuckPerms meta prefix
  • %SUFFIX% - LuckPerms meta suffix
  • %C1% - Primary relation color
  • %C2% - Secondary relation color
  • %CW% - Kingdom web color

When core.yml option core.chat.always_show_title is true, the player's prefix title %TITLE% will always show in their chat message. When the option is false, the player may choose to turn off their prefix title with the /k prefix command, so that their chat messages may not show any title.

To disable all chat formatting by Konquest, set option core.chat.enable_format: false. This will allow other plugins to modify chat messages. When Konquest formats chat, it cancels the player chat event and sends different colored messages to each player, depending on their relationship to the sender. You can modify the priority that Konquest listens to the chat event with option core.chat.priorty. When priority is HIGH or HIGHEST, Konquest acts last so other plugins have a chance to modify the chat message. When priority is LOW or LOWEST, Konquest acts first so other plugins cannot modify the chat message.

⚠️ **GitHub.com Fallback** ⚠️