-
Notifications
You must be signed in to change notification settings - Fork 0
Config File
This guide will walk you through every setting in your config.yml file. We'll explain what each option does, what the available choices are, and how you can best configure your server.
These are the basic settings at the top of your file.
| Option | Type | Description |
|---|---|---|
config-version |
String |
Do not change this! This is used by the plugin to manage updates. |
language |
String |
Sets the language for all plugin messages. Supported: EN (English), TR (Turkish). |
This section details the various hooks used by the Farmer plugin to integrate with other plugins on your server.
These settings determine how the plugin interacts with land management and claim plugins to define farmer boundaries and membership.
| Option | Type | Description |
|---|---|---|
region-hook |
String |
Required. Tells the farmer which land protection or island plugin should be used for checking region boundaries, ownership, and members. Supported Plugins:
|
This setting defines the primary plugin used for all money transactions.
| Option | Type | Description |
|---|---|---|
money-hook |
String |
Required. Sets the plugin used for all economy transactions (purchasing farmers, selling crops, taxes). Supported Plugins:
|
This setting specifies where the plugin looks to determine the market price of items for the farmer's selling mechanism.
| Option | Type | Description |
|---|---|---|
price-source-hook |
String |
Sets the plugin used to determine the price of crops and materials for the farmer's internal selling mechanism. Use default if no external shop plugin is used.Supported Plugins:
|
These settings specify which plugin handles the farmer's visual representation and physical interaction logic.
| Option | Type | Description |
|---|---|---|
interaction-hook |
String |
Specifies which plugin handles the farmer's NPC entity model and interaction logic. Leave empty if relying only on internal systems. Supported Plugins:
|
This is where all your farmer data (owner, upgrades, contents) is stored.
| Option | Type | Description |
|---|---|---|
driver |
String |
The type of database to use. SQLITE is simple and stores data in a file. MYSQL is recommended for larger servers or multi-server networks. |
host |
String |
The IP address of your MySQL database (e.g., localhost). |
database |
String |
The name of the database to use. |
username |
String |
The username for your MySQL database. |
password |
String |
The password for your MySQL database. |
port |
Integer |
The port for your MySQL database (default is 3306). |
use-ssl |
Boolean |
Whether to use a secure connection (SSL) to your database. |
Configure this if you run a network (like BungeeCord/Velocity) and want farmers to sync across servers.
| Option | Type | Description |
|---|---|---|
enabled |
Boolean |
Set to true if you are using more than one server. |
redis-host |
String |
The host address for your Redis server, which is required for multi-server syncing. |
This section controls the core logic, economy, and behavior of your farmers.
| Option | Type | Description |
|---|---|---|
disabled-worlds |
List |
A list of worlds where farmers will not work (e.g., world_nether, world_the_end). |
disabled-products-grow-physically |
Boolean |
If true, products that are have their collection status disabled by the farmer owner/member will grow physically and will not be simulated. This can cause critical performance issues, not recommended to enable. |
collect-dropped-items |
Boolean |
If true, the farmer will suck up matching items dropped on the ground within its region. |
collect-custom-items |
Boolean |
If true, the farmer will collect items that have custom names or lore. If false, it ignores them. |
upgrade-all-upgrades-everything |
Boolean |
If false, /farmer upgrade-all only upgrades items the farmer has collected before. If true, it upgrades everything in the farmer's storage. |
upgrade-all-discount |
Integer |
A percentage discount (0-100) to apply when using the "upgrade-all" function. 50 means 50% off. |
place-farmer-on-region-creation |
Boolean |
If true, a farmer is automatically placed when a player creates a new region (e.g., an island or claim). |
farmer-command-opens-gui |
Boolean |
If true, /farmer opens the main GUI. |
farmer-command-opens-buy-menu |
Boolean |
If true and the player doesn't have a farmer, /farmer will open the purchase menu. |
disable-buy-command |
Boolean |
If true, disables /farmer buy. The only way to get farmers would be via admin-given eggs. |
sell-all-requires-confirmation |
Boolean |
If true, players must confirm before selling all items to prevent accidents. |
adding-member-requires-permission |
Boolean |
If true, farmer managers will need the permission uxmfarmer.addmember to add new members. |
add-new-region-members-to-farmer |
Boolean |
If true, new region members (like island member or trusted player in a claim) will be added to farmer as members too. |
remove-leaving-region-members-from-farmer |
Boolean |
If true, region members who have left the region will be removed from farmer members |
default-click-actions |
List |
A list of actions (as Strings) to perform when a player clicks the farmer NPC. Default opens the main menu and plays a sound. |
disable-transfer |
Boolean |
If true, players cannot give their farmer to another player. |
maximum-farmer-per-player |
Integer |
The default maximum number of farmers a player can own. Grant uxmfarmer.maxfarmer.<amount> to allow more. |
tax-price |
Double |
The default tax rate (as a decimal) taken from all sales. 0.25 = 25% tax. |
farmer-price |
Double |
The flat cost to buy one new farmer. |
return-price-on-delete |
Boolean |
If true, the owner gets money back when their farmer is deleted (e.g., by staff). |
return-percent |
Integer |
The percentage of the farmer-price a player gets back when they use /farmer return. 75 = 75% back. |
This only works when place-farmer-on-region-creation is enabled. It configures the exact coordinates and rotation of the automatically placed farmer relative to the region center.
| Option | Type | Description |
|---|---|---|
enabled |
Boolean |
Set to true to use this automatic location feature. |
modify-by |
String |
The X, Y, Z offset (relative to region center) where the farmer will be placed (e.g., -5.5, 1.5, 3.5). |
rotation |
String |
The Pitch, Yaw rotation values for the farmer's head (e.g., -88, 0.8). |
This section controls the behavior when a player attempts to add a member to their farmer.
| Option | Type | Description |
|---|---|---|
required-online |
Boolean |
If true, the player being added must be online to be successfully added as a member. |
input-type |
String |
How to take the target player's name: CHAT (typing in chat) or SIGN (anvil/sign GUI). |
chat-timeout |
Integer |
How long (in seconds) the plugin waits for the player to enter input via chat before timing out. |
This section configures how the player provides a specific quantity (e.g., of XP or items) to take from the farmer.
| Option | Type | Description |
|---|---|---|
input-type |
String |
How to take player input: CHAT (typing in chat) or SIGN (anvil/sign GUI). |
chat-timeout |
Integer |
How long (in seconds) the plugin waits for the player to enter input via chat before timing out. |
This section is for using custom models from plugins like ModelEngine, ItemsAdder, or BetterModel.
| Option | Type | Description |
|---|---|---|
default-entity |
String |
The default Minecraft Entity to use if no model is applied (e.g., VILLAGER). |
model-source |
String |
Which plugin is providing the custom model: ModelEngine, ItemsAdder, or BetterModel. |
model-name |
String |
The ID/name of the model you want to use from the source plugin. |
Manages the plugin's logs to save database space.
| Option | Type | Description |
|---|---|---|
enabled |
Boolean |
Set to true to enable automatic log cleaning. Be careful! The comments warn this could cause lag the first time it runs on old databases. |
clean-old-logs-after |
Integer |
The total number of logs to wait for before cleaning. |
logs-to-clean |
Integer |
The number of oldest logs to remove once the threshold is met. |
Controls the floating text hologram that appears above the farmer NPC. Requires the internal Holograms hook.
| Option | Type | Description |
|---|---|---|
enabled |
Boolean |
Set to true to show holograms above farmers. |
billboard |
String |
How the hologram rotates: CENTER (always faces player), FIXED, VERTICAL, HORIZONTAL. |
view-range |
Integer |
How far away (in blocks) a player can be and still see the hologram. |
height |
Double |
The default height (in blocks) above the NPC's head to display the hologram. |
scale |
String |
The X, Y, Z scale of the hologram (e.g., 1, 1, 1). |
update-period |
Integer |
How often (in ticks) to update the hologram. 1200 = 1 minute. Higher is better for performance.
|
see-through-blocks |
Boolean |
If true, the hologram can be seen through walls. |
shadow |
Boolean |
If true, the hologram text has a drop shadow. |
text-opacity |
Integer |
How transparent the text is (0-255). 255 is fully opaque. |
background-color |
Integer |
The ARGB integer for the hologram's background. Use the ARGB calculator linked in the config. |
brightness |
Integer |
The brightness level of the hologram (1-1000). |
text-alignment |
String |
How the text is aligned: CENTER, LEFT, or RIGHT. |
content |
List |
The lines of text (as Strings) to display. Uses MiniMessage formatting (e.g., <#ff7700>, <bold>). |
entity-specific-height |
Map |
A list to override the default height for specific entity types. Key is EntityType (String), value is height (Double). |
Controls the appearance and properties of the farmer NPC itself.
| Option | Type | Description |
|---|---|---|
name |
String |
The MiniMessage-formatted name for the NPC. |
use-name |
Boolean |
If true, shows the NPC's nameplate in addition to the hologram. Default is false. |
default-type |
String |
The default EntityType to use (e.g., VILLAGER, ALLAY, IRON_GOLEM). |
default-villager-profession |
String |
If the default-type is VILLAGER, this sets its Profession (e.g., FARMER, LIBRARIAN). |
default-glowing |
Boolean |
If true, the farmer NPC will have the glowing effect by default. |
default-glowing-color |
String |
The default color of the glow (e.g., BLUE, RED, GREEN). |
| Option | Type | Description |
|---|---|---|
skin-texture |
String |
The Base64-encoded texture value for the skin. |
skin-signature |
String |
The Base64-encoded signature value for the skin. |
skin-name |
String |
An alternative to texture/signature. Enter a player's name (e.g., "Notch") to use their skin. |
permission-skins |
Map |
A list of skins that players can use if they have the associated permission. Key is skin name (String), value is permission (String). |
| Option | Type | Description |
|---|---|---|
scale |
Double |
A general size multiplier for the NPC. 1.0 is default size. |
entity-specific-scales |
Map |
A list to override the default scale for specific entity types. Key is EntityType (String), value is scale (Double). |
Sets the time (in seconds) players must wait between using certain commands.
| Option | Type | Description |
|---|---|---|
move-cooldown |
Integer |
Cooldown for moving the farmer. |
sell-all-cooldown |
Integer |
Cooldown for selling all products. |
sell-xp-cooldown |
Integer |
Cooldown for selling experience. |
change-glowing-cooldown |
Integer |
Cooldown for changing the farmer's glow color. |
change-entity-cooldown |
Integer |
Cooldown for changing the farmer's entity type. |
change-profession-cooldown |
Integer |
Cooldown for changing the farmer's villager profession. |
return-cooldown |
Integer |
Cooldown for returning (deleting) the farmer. |
Defines the Sounds played for specific plugin events.
| Option | Type | Description |
|---|---|---|
on-cooldown |
String |
Sound played when a command is on cooldown. |
try-again |
String |
Sound played for a minor error (e.g., failed input). |
already-using-that-glow-color |
String |
Sound played when trying to select the currently active glow color. |
blacklisted-world |
String |
Sound played when trying to use a farmer command in a disabled world. |
This is for developers and support staff.
| Option | Type | Description |
|---|---|---|
debug |
Boolean |
Keep this false! Enabling it will spam your console with detailed information, which can cause lag. Only enable it if a developer asks you to. |