Configs, Commands & Files

This section outlines the following functions/features:

CONFIGS: How to tweak configurable game settings to your liking.
COMMANDS: How to run (in-game) commands relating to SWEM Horses, or allocate inbuilt permissions.
FILES: How to access and interpret files aimed at assisting servers in managing SWEM features.

Client Config

Information targets the latest supported release. For legacy (older) versions and bug fixes, read the changelogs.

Introduction

Client configs are set for the individual player and are not overriden by any server settings.

Client configuration files tweak small visual settings that apply to ALL worlds created for the current mod pack and any servers joined.

MULTIMC
Right click pack icon → Config Folder → swem → swem-client.toml
CURSEFORGE Right click pack icon → Open Folder → config → swem → swem-client.toml
FORGE (WINDOWS) Open file explorer → [user]/AppData/Roaming/.minecraft/config/swem/swem-client.toml
FORGE (MAC) Open finder → ~/Library/Application Support/minecraft/config/swem/swem-client.toml

Important

Configuration files have a specific format, and allow you to change limited values. Inputting invalid information or adjusting the file format can result in issues such as invalid configuration loading or crashing.

It is important to read the file carefully and only change values that are supported.

If you suspect a config file is corrupted or invalid, delete it and reload Minecraft to regenerate a default file.


Default Configuration

This is the default configuration file, containing five adjustable settings.

# || =========== [Wings Transparency] =========== ||
[wings_tansparency]
	# || Set how visible the horse wings should be! 0 = off, 1 = 25%, 2 = 50%, 3 = 75%, 4 = 100%
	# Default: 4
	# Range: 0 ~ 4
	wingsTransparency = 4

# || =========== [Gait HUD] =========== ||
[hud]
	# || Should the gait HUD be enabled?
	gaitHudEnabled = true
	# || How much would you like to offset the current X position? (A negative value moves the text up and a positive value down.)				
	# Default: 0
	# Range: > -2147483648
	gaitHudX = 0
	# || How much would you like to offset the current Y position? (A negative value moves the text up and a positive value down.)				
	# Default: 0
	# Range: > -2147483648
	gaitHudY = 0
	# || What color should the gait HUD be?
	# Default: 16777215
	# Range: > -2147483648
	gaitHudColor = 16777215

# || =========== [Gender] =========== ||
[gender]
	# || Should gender icons be shown before horse names?
	# || Icons only show if the horse is tamed and has a custom name.
	showGenderIcons = true
	# || What colour the male icon should appear as.
	# || This is a hex value, format: #A1B2C3. (Default is #18C0ED)
	maleIconColor = "#18C0ED"
	# || What colour the female icon should appear as.
	# || This is a hex value, format: #A1B2C3. (Default is #FF4DAC)
	femaleIconColor = "#FF4DAC"
	# || What colour the icon should appear as, when the horse is infertile.
	# || This is a hex value, format: #A1B2C3. (Default is #444269)
	infertileIconColor = "#444269"

Adjustable Values - Wings

Set the transparency for wings on Amethyst Tier Horse Armor.

	# || Set how visible the horse wings should be! 0 = off, 1 = 25%, 2 = 50%, 3 = 75%, 4 = 100%
	# Default: 4
	# Range: 0 ~ 4
	wingsTransparency = 4

This accepts whole numbers from 0-4. Default is 4 where wings are fully opaque (100%).


Adjustable Values - Gait HUD

Enable or disable the gait HUD overlay which displays the currently active gait while riding a horse.

	# || Should the gait HUD be enabled?
	gaitHudEnabled = true

This accepts boolean values of true or false. Default is true (enabled). 


Set the horizontal position for the gait HUD overlay.

	# || How much would you like to offset the current X position? (A negative value moves the text up and a positive value down.)				
	#Range: > -2147483648
	gaitHudX = 0

This accepts whole numbers greater than -2147483648. Default is 0 to the right of the hotbar.


Set the vertical position for the gait HUD overlay.

# || How much would you like to offset the current Y position? (A negative value moves the text up and a positive value down.)				
	#Range: > -2147483648
	gaitHudY = 0

This accepts whole numbers greater than -2147483648. Default is 0 at the height of the hotbar.


Set the decimal value of the gait HUD overlay to change the text color.

# || What color should the gait HUD be?
	#Range: > -2147483648
	gaitHudColor = 16777215

This accepts whole numbers greater than -2147483648. Default is 16777215 (white).


Adjustable Values - Gait HUD

Enable or disable gender icons shown next to horse names.

# || Should gender icons be shown before horse names?
	# || Icons only show if the horse is tamed and has a custom name.
	showGenderIcons = true

This accepts boolean values of true or false. Default is true (enabled). 


Set the HEX value of the male gender icon.

# || What colour the male icon should appear as.
	# || This is a hex value, format: #A1B2C3. (Default is #18C0ED)
	maleIconColor = "#18C0ED"

This accepts HEX value combinations. Default is #18C0ED (blue).


Set the HEX value of the female gender icon.

# || What colour the female icon should appear as.
	# || This is a hex value, format: #A1B2C3. (Default is #FF4DAC)
	femaleIconColor = "#FF4DAC"

This accepts HEX value combinations. Default is #FF4DAC (pink).


Set the HEX value of the infertile (male or female) gender icon.

# || What colour the icon should appear as, when the horse is infertile.
	# || This is a hex value, format: #A1B2C3. (Default is #444269)
	infertileIconColor = "#444269"

This accepts HEX value combinations. Default is #444269 (muted purple).


Additional

Files change from .toml to .toml.bak if entries are invalid or a file was regenerated. Check regularly when updating or editing files!

Configuration file updates are uncommon and usually harmless, but you may need to regenerate files or reapply custom settings.


Known Issues

You can report any mod issues to our bugs forum on Discord - please check for duplicate reports first! 


Changelog

View Changes

This is not a complete list of changes or features. It is a log of wiki-related version information and may be outdated.

MC Version Release Notes
1.21.1 1.6.12 Page established - Information prior to 1.6.12 is not specifically included and may differ significantly.

Common Config

Information targets the latest supported release. For legacy (older) versions and bug fixes, read the changelogs.

Introduction

 Multiplayer: Configuration files on servers override any "client-side" (player) or pack settings while connected.

Common configuration files tweak settings that apply to ALL worlds created for the current mod pack.

MULTIMC
Right click pack icon → Config Folder → swem → swem-common.toml
CURSEFORGE Right click pack icon → Open Folder → config → swem → swem-common.toml
FORGE (WINDOWS) Open file explorer → [user]/AppData/Roaming/.minecraft/config/swem/swem-common.toml
FORGE (MAC) Open finder → ~/Library/Application Support/minecraft/config/swem/swem-common.toml

Important

Configuration files have a specific format, and allow you to change limited values. Inputting invalid information or adjusting the file format can result in issues such as invalid configuration loading or crashing.

It is important to read the file carefully and only change supported values.

If you suspect a config file is corrupted or invalid, delete it and reload Minecraft to regenerate a default file.


Default Configuration

This is the default configuration file, containing two adjustable settings.

#Common Configs
[common]

	# || =========== [Block o Water] =========== ||
	[common.block_o_water]
		# || Do the hose and the spigot require a Block O Water?
		needBlockOWater = true

#SWEM Ore Generation Settings
[oregen]

	# || =========== [Shining Amethyst] =========== ||
	[oregen.amethyst]
		# || What is the spawn chance (%) for Shining Amethyst?
		# Default: 25
		# Range: 0 ~ 100
		amethystSpawnChance = 25

Adjustable Values

Enable or disable the spigot requiring a block o' water.

# || Do the hose and the spigot require a Block O Water?
		needBlockOWater = true

This accepts boolean values of true or false. Default is true - spigots require a block o' water to function. 


Set the chance of amethyst clusters becoming shining amethyst when fully grown.

# || What is the spawn chance (%) for Shining Amethyst?
		# Default: 25
		# Range: 0 ~ 100
		amethystSpawnChance = 25

This accepts whole numbers from 0-100. Default is 25 (%).


Additional

Files change from .toml to .toml.bak if entries are invalid or a file was regenerated. Check regularly when updating or editing files!

Configuration file updates are uncommon and usually harmless, but you may need to regenerate files or reapply custom settings.


Known Issues

You can report any mod issues to our bugs forum on Discord - please check for duplicate reports first! 


Changelog

View Changes

This is not a complete list of changes or features. It is a log of wiki-related version information and may be outdated.

MC Version Release Notes
1.21.1 1.6.12 Page established - Information prior to 1.6.12 is not specifically included and may differ significantly.
1.20.1 1.5.3 Removed star worm cobble generation settings (broken). 

Server Config

Information targets the latest supported release. For legacy (older) versions and bug fixes, read the changelogs.

This page is a WORK IN PROGRESS and may contain inaccurate or placeholder information or links.

Introduction

 Multiplayer: Configuration files on servers override any "client-side" (player) or pack settings while you play on that server.

Server configuration files tweak settings that apply to ALL worlds created for the current mod pack.

MULTIMC
Right click pack icon → Config Folder → swem-server.toml
CURSEFORGE Right click pack icon → Open Folder → config → swem-server.toml
FORGE (WINDOWS) Open file explorer → [user]/AppData/Roaming/.minecraft/config/swem-server.toml
FORGE (MAC) Open finder → ~/Library/Application Support/minecraft/config/swem-server.toml

Prior to 1.21.1 server config files are located under saves → worldname → serverconfig → swem-server.toml


World Override Neoforge 1.21+

It is possible to set custom configuration for specific worlds (override default file). 
Paste a copy of the swem-server file into saves → worldname → serverconfig. Edit. Save. Relaunch.


Important

Configuration files have a specific format, and allow you to change limited values. Inputting invalid information or adjusting the file format can invalidate configuration file loading, world loading or result in game crashes.

It is important to read the file carefully and only change supported values.

If you suspect your config file is corrupted or invalid, delete it and reload the game to regenerate the file.


Default Configuration

This is the default configuration file, containing 12 adjustable settings. 

Default - 1.21.1-1.6.12
# || =========== [Horse Care] =========== ||
[horse_care]
	# || Do horses need to eat? (Default = True = Yes)
	needFood = true
	# || Do horses need to drink? (Default = True = Yes)
	needWater = true
	# || Enable Poop ticking on swem horses? (Default = True = Yes)
	poopTick = true
	# || Specify range (radius) that the horses search for food/water. The larger the  radius, the more lag it can cause per horse.
	# || We recommend "15" (30b diameter) for servers.
	# Default: 15
	# Range: 5 ~ 40
	intakeSearchRadius = 15
	# || Specify in seconds the interval between each poop cycle.
	# || We recommend '1800' (30min) for singleplayer, and '2700' (45min) for multiplayer.
	# Default: 1800
	# Range: > 1
	poopInterval = 1800
	# || Enable Pee ticking on swem horses? (Default = True = Yes)
	peeTick = true
	# || Specify in seconds the interval between each pee cycle.
	# || We recommend '1500' (25min) for singleplayer, and '2700' (45min) for multiplayer.
	# Default: 1500
	# Range: > 1
	peeInterval = 1500
	# || Specify how many seconds it takes for the foal to growp up?
	# || We recommend '1800' (30min) for singleplayer, and '28800' (8hr) for multiplayer.
	# Default: 1800
	# Range: > 1
	foalAgeInSeconds = 1800
	# || Specify how many minutes the Health Booster lasts for?
	# || We recommend '600' ~(30mc days) for singleplayer, and '10,000' ~(504mc days / 7irl days) for multiplayer.
	# Default: 600
	# Range: > 1
	healthBoosterTime = 600

# || =========== [Horse Breeding] =========== ||
[horse_breeding]
	# || Enable Breeding Tokens? This limits breeding of horses to Tokens, prevents feed from escalating foal growth time, and limits use of canatazarite potions.
	# || Enable if the server is multiplayer and has an economy.
	tokensBreeding = false
	#
	# || Do horses stay in love mode forever? (Default = False = No)
	# || If false, horses will only be in love mode for the amount of seconds specified in stallionLoveTime and mareLoveTime.
	permanentLoveMode = false
	#
	# || Specify how many seconds the stallion stays in love mode (Only has an effect if permanentLoveMode is false).
	# || We recommend '1800' (30min) for singleplayer, and '28800' (8hr) for multiplayer.
	# Default: 1800
	# Range: > 1
	stallionLoveTimeInSeconds = 1800
	#
	# || Specify how many seconds the mare stays in love mode (Only has an effect if permanentLoveMode is false).
	# || We recommend '1800' (30min) for singleplayer, and '28800' (8hr) for multiplayer.
	# Default: 1800
	# Range: > 1
	mareLoveTimeInSeconds = 1800
	#
	# || Specify how many seconds it takes for the mare to give birth
	# || Set to 1 to disable gestation period, and making the birth instant.
	# || We recommend '1800' (30min) for singleplayer, and '28800' (8hr) for multiplayer.
	# Default: 1800
	# Range: > 1
	mareGestationTimeInSeconds = 1800
	#
	# || Specify how many seconds it takes for the stallion to be able to breed again.
	# || We recommend '900' (15min) for singleplayer, and '14400' (4hr) for multiplayer.
	# Default: 900
	# Range: > 1
	stallionBreedingCooldownInSeconds = 900
	#
	# || Specify how many seconds it takes for the mare to be able to breed again.
	# || We recommend '1800' (30min) for singleplayer, and '28800' (8hr) for multiplayer.
	# Default: 1800
	# Range: > 1
	mareBreedingCooldownInSeconds = 1800
	#
	# || Specify how many times a stallion can breed before it is infertile.
	# || Disable infertility option by setting it to '0'.
	# Default: 0
	# Range: > 0
	maxStallionCovers = 0
	#
	# || Specify how many times a mare can breed before it is infertile.
	# || Disable infertility option by setting it to '0'.
	# Default: 0
	# Range: > 0
	maxMareCovers = 0
	#
	# || Specify the chance of a mare giving birth to twins (Default = 1,000 = 0.1%)
	# || If the value is higher than 1,000 the odds go down, if the value is lower than 1,000 the odds go up.
	# || We recommend '1000' (1/1000 chance) for singleplayer, and '15000' (1/15000 chance) for multiplayer.
	# Default: 1000
	# Range: > 1
	twinBirthChance = 1000
	#
	# || Should infertile horses be able to be made fertile again (by giving a male/female/random potion)?
	refertile_horses = true
	#
	# || If enabled, a Stallion will look for a fertile Mare to breed without need of items.
	natural_breed_chance = false

# || =========== [Tack Dependencies] =========== ||
[tack_dependencies]
	# || Is the Bridle slot required before equipping a Blanket? (Default = True = Yes)
	needBridle = true
	# || Is the Blanket slot required before equipping a Saddle? (Default = True = Yes)
	needBlanket = true
	# || Is the Saddle slot required before equipping the Girth Strap,  Breast Collar, and/or Saddlebag? (Default = True = Yes)
	needSaddle = true
	# || The Rider and Saddle should fall off if there is no Girth Strap equipped. (Default = True = Yes)
	needGirthStrap = true
	# || Are all Tack slots required before equipping Horse Armor? (Default = True = Yes)
	needAll = true
	# || The Bridle is needed to steer the horse. (If disabled, you would still need a saddle). (Default = True = Yes)
	needBridleToSteer = true

# || =========== [Horse Experience Levels] =========== ||
[horse_experience_levels]
	# || Amount of XP required to max a horse's Speed stat.
	# || We recommend '13500' for singleplayer, and '100000' for multiplayer.
	# Default: 13500
	# Range: > 1
	maxSpeedXP = 13500
	# || Amount of XP required to max a horse's Jump stat.
	# || We recommend '13500' for singleplayer, and '100000' for multiplayer.
	# Default: 13500
	# Range: > 1
	maxJumpXP = 13500
	# || Amount of XP required to max a horse's Health  stat.
	# || We recommend '13500' for singleplayer, and '100000' for multiplayer.
	# Default: 13500
	# Range: > 1
	maxHealthXP = 13500
	# || Amount of XP required to max a horse's Affinity stat.
	# || We recommend '17000' for singleplayer, and '50000' for multiplayer.
	# Default: 17000
	# Range: > 1
	maxAffinityXP = 17000

# || =========== [Server Admin] =========== ||
[server_admin]
	# || Enable Coat Cycling (via lapis lazuli and redstone)?
	# || Do not enable if the server is multiplayer and has an economy.
	allowCoatCycling = true
	# || Can Secret Coats be obtained via Secret Items? (Default = True = Yes)
	# || Do not enable if the server is multiplayer and has an economy.
	allowSecretCoats = true
	# || Enable the horse's food/water systems to be based off the 24 hour day?
	# || This is recommended for servers ONLY.
	serverTime = false
	# || Required only is 'serverTime' config is enabled.
	# || The hour at which morning hungy time triggers (Local to the server).
	# Default: 7
	# Range: 0 ~ 23
	morningHungyTime = 7
	# || Required only is 'serverTime' config is enabled.
	# || The hour at which evening hungy time triggers (Local to the server).
	# Default: 20
	# Range: 0 ~ 23
	eveningHungyTime = 20
	# || Should xp cost for renaming items in an cantazarite anvil be removed?
	removeXpRenameCost = true
	# || Should the perks provided by the Amethyst Armor (excluding Amethyst Riding Boots) be disabled?
	disableAmethystPerks = false
	# || Should the rider be teleported with the horse if the horse should fall into the void whilst the horse is wearing Amethyst Tier Armor.
	voidTP = true
	# || List of coats ids that should not be obtainable
	# || Example: ["swem:salamarty_arishant_cytris", "swem:mr_ed", "swem:joey_this_esme", "swem:delta_malli"]
	blacklistedCoatIds = []
	# || Enable SWEM's built-in permission node system for controlling player use of commands.
	# || This is recommended for servers ONLY.
	enableKeyPermission = false
	# || What horses should spawn? Vanilla horses only, SWEM horses only, or Both?
	#Allowed Values: VANILLA_ONLY, SWEM_ONLY, BOTH
	horseSpawn = "BOTH"
	# || Enables fireworks to be shot out of jumps and barrels when horses touch them.
	fireworkDisplay = false
	# || Should winged horse fly without requirement of Amethyst Horse Armor?
	wingedHorseFly = true
	#|| How much to heal the player wearing Netherite+ Riding Boots as a percentage of damage dealt.
	# Default: 0.05
	# Range: 0.01 ~ 1.0
	lifesteal = 0.05

Multiplayer Servers

Please note, default configuration is aimed at the average Singleplayer user. Configuration for Multiplayer use, especially with a strong Equestrian focus, or balance on rate of reproduction, training etc will require specific adjustments to suit your individual needs.

Read the full configuration file carefully to observe any recommendations on Multiplayer specific settings!


Adjustable Values - Horse Care

Food & Water
READ ME: Disabling Needs System

If you wish to disable the needs system entirely, please note the following:

Enable or disable food and water system.

	needFood = true

This accepts boolean values of true or false. Default is true - horses reset hunger points (AM) and calculate meals (PM) daily.

	needWater = true

This accepts boolean values of true or false. Default is true - horses reset thirst (AM) and calculate drinks (PM) daily.

Set the distance in blocks that horses will search for food and water sources, and prioritize choosing preferred types (ie bales over grass).

	intakeSearchRadius = 15

This accepts whole numbers from 5-40. Default is 15 - Horses search 15B outwards (30B radius) for food and water sources.

If set too low, horses may struggle to find suitable sources to satisfy their needs. If set too high or with many horses, lag may occur.


Pee & Poop

Set the duration between poop cycles. 

	poopInterval = 1800

This accepts whole numbers over 1. Default is 1800 - poop events (spawn poop entity) typically occur every 30 minutes while loaded.

Set the duration between pee cycles. 

	peeInterval = 1500

This accepts whole numbers over 1. Default is 1800 - pee events (set block) typically occur every 25 minutes while loaded.


Foal Growth

Set the duration for foals to grow up into adults.  ONLY AFFECTS FOALS BORN AFTER THIS SETTING IS CHANGED!

	foalAgeInSeconds = 1800

This accepts whole numbers over 1. Default is 1800 - foals fully grow up in 30 minutes, only increases while loaded.


Booster Shots

Set the duration of effect for booster shots.  ONLY AFFECTS HORSES BOOSTED AFTER THIS SETTING IS CHANGED!

	healthBoosterTime = 600

This accepts whole numbers over 1. Default is 600 - booster effect expires after 600 minutes, only decreases while loaded.


Adjustable Values - Horse Breeding

Breeding Tokens

Enable or disable breeding tokens (uncraftable). Replaces Rose Feed as the breeding item. Intended for Multiplayer servers.

	tokensBreeding = false

This accepts boolean values of true or false. Default is false - breed horses using the default rose feed (craftable).


Permanent Love Mode

Enable or disable permanent love mode. If enabled Horses remain "In Love" and seek a partner until they successfully breed.

	permanentLoveMode = false

This accepts boolean values of true or false. Default is false - horses remain "in love" for a short duration before it expires.


Love Mode Duration

Set duration of "In Love" status for stallions.    ONLY AFFECTS HORSES BRED AFTER THIS SETTING IS CHANGED! / IGNORED IF PERMANENT = TRUE

	stallionLoveTimeInSeconds = 1800

This accepts whole numbers over 1. Default is 1800 - stallions remain in love mode for 30 minutes, only decreases while loaded.

Set duration of "In Love" status for mares.    ONLY AFFECTS HORSES BRED AFTER THIS SETTING IS CHANGED! / IGNORED IF PERMANENT = TRUE

	mareLoveTimeInSeconds = 1800

This accepts whole numbers over 1. Default is 1800 - mares remain in love mode for 30 minutes, only decreases while loaded.


Gestation Duration

Set duration of pregnancy (gestation) for mares.  ONLY AFFECTS HORSES BRED AFTER THIS SETTING IS CHANGED!

	mareGestationTimeInSeconds = 1800

This accepts whole numbers over 1. Default is 1800 - mares give birth after 30 minutes, only decreases while loaded.


Breeding Cooldown

Set duration of breeding cooldown for stallions.   ONLY AFFECTS HORSES BRED AFTER THIS SETTING IS CHANGED!

	stallionBreedingCooldownInSeconds = 900

This accepts whole numbers over 1. Default is 900 - stallions cannot breed for 15 minutes, only decreases while loaded.

Set duration of breeding cooldown for mares.    ONLY AFFECTS HORSES BRED AFTER THIS SETTING IS CHANGED!

	mareBreedingCooldownInSeconds = 1800

This accepts whole numbers over 1. Default is 1800 - mares cannot breed for 30 minutes, only decreases while loaded.


Breeding Limits

Set limit on number of breedings for stallions.   ONLY AFFECTS HORSES BRED AFTER THIS SETTING IS CHANGED!

	maxStallionCovers = 0

This accepts whole numbers over 0. Default is 0 - stallions have no limits to how many times they can breed.

Set limit on number of breedings for mares.    ONLY AFFECTS HORSES BRED AFTER THIS SETTING IS CHANGED!

	maxMareCovers = 0

This accepts whole numbers over 0. Default is 0 - mares have no limits to how many times they can breed.


Twins Chance

Set chance (odds 1 in #) for mares to give birth to twin foals.

	twinBirthChance = 1000

This accepts whole numbers over 1. Default is 1000 - 1 in 1000 births (0.1%) chance of producing twins.


Fertile Toggle

Enable or disable permanent infertility status. 

	refertile_horses = true

This accepts boolean values of true or false. Default is true - horses can be given a male/female/random potion to reverse infertility.


Natural Breeding

Enable or disable stallions being permanently "In Love" and able to breed with fertile mares nearby. 

	natural_breed_chance = false

This accepts boolean values of true or false. Default is false - horses will always require breeding items to reproduce.


Adjustable Values - Tack

Tack Order

Enable or disable limitations on what order tack must be equipped in.

# || Is the Bridle slot required before equipping a Blanket? (Default = True = Yes)
	needBridle = true
# || Is the Blanket slot required before equipping a Saddle? (Default = True = Yes)
	needBlanket = true
# || Is the Saddle slot required before equipping the Girth Strap,  Breast Collar, and/or Saddlebag? (Default = True = Yes)
	needSaddle = true

This accepts boolean values of true or false. Default is true - tack must be equipped in a set order (bridle, blanket, saddle, girth).


Girth Strap

Enable or disable automatic removal of the saddle and dismounting of the rider when a girth is not equipped.

	needGirthStrap = true

This accepts boolean values of true or false. Default is true - girth must be equipped before mounting a horse.


Horse Armor Requirements

Enable or disable requirements on a full set of Adventure Tack to equip Horse Armor.

	needAll = true

This accepts boolean values of true or false. Default is true - full set (inc. wraps + breast collar) is required to equip armor.


Bridle Requirement

Enable or disable requirements on a bridle to steer the horse. If disabled, a saddle is still required!

	needBridleToSteer = true

This accepts boolean values of true or false. Default is true - horses cannot be "steered" without a bridle (halters do not count).


Adjustable Values - Experience Levels

Skill Experience

Set experience required to reach maximum level in each skill.

	maxSpeedXP = 13500
	maxJumpXP = 13500
	maxHealthXP = 13500
	maxAffinityXP = 17000

This accepts whole numbers (integers) over 1. Default is 13500 experience for max. skill level, or 17000 for affinity.

Multiplayer: Values are aimed at Singleplayer and it is common for Equestrian servers to set 50-100,000+ 


Adjustable Values - Server Admin

Coat Cycling

Enable or disable changing horse coats in survival.

	allowCoatCycling = true

This accepts true or false. Default is true and permits coat cycling (change) owned horses using lapis and redstone.


Secret Coats

Enable or disable converting horses into a secret coat using the correct process or items.

	allowSecretCoats = true

This accepts true or false. Default is true and allows players to obtain special coats in survival.


Server Time

Enable or disable horse mealtimes using real life (24hr) time system.  SUITABLE FOR SOME MULTIPLAYER / DO NOT USE IN SINGLEPLAYER

	serverTime = false

This accepts true or false. Default is false and uses Minecraft day cycle to execute hunger and thirst routines at set game times.

Set the real life time (local to the server) horses reset their hunger and thirst points.  IGNORED IF SERVERTIME = FALSE

	morningHungyTime = 7

This accepts whole numbers over 0 and below 23. Default is 7 - horses reset their needs at 7AM, if they are in a loaded chunk.

Set the real life time (local to the server) horses calculate their meals.  IGNORED IF SERVERTIME = FALSE

eveningHungyTime = 20

This accepts whole numbers over 0 and below 23. Default is 20 - horses reset their needs at 8PM, if they are in a loaded chunk.


Anvil Rename Cost

Enable or disable free item (ie nametags) renaming in Cantazarite Anvils.

	removeXpRenameCost = true

This accepts true or false. Default is true - cantazarite anvils can rename an item without XP cost or increments.


Amethyst Perks

Enable or disable additional perks (excluding armor protection values) for Amethyst Player Armor.

    disableAmethystPerks = false

This accepts true or false. Default is false - Amethyst armor retains all perks, specific to the item type or tier equipped.


Void TP

Enable or disable teleporting the horse and rider if they fall into the void.

	voidTP = true

This accepts true or false. Default is true - teleport horse/rider to spawn if falling into the void with Amethyst Horse Armor.


Blacklisted Coats

Set restrictions on coats that can be obtained via breeding, natural spawning and spawn eggs.  TBC 

# || List of coats ids that should not be obtainable
	# || Example: ["swem:salamarty_arishant_cytris", "swem:mr_ed", "swem:joey_this_esme", "swem:delta_malli"]
	blacklistedCoatIds = []

This accepts swem:coatid of default swem coats. Community pack coats can be individually restricted via their JSON files.


Key Permissions

Enable or disable the built in permission node system.  SUITABLE FOR SOME MULTIPLAYER / DO NOT USE IN SINGLEPLAYER

	enableKeyPermission = false

This accepts true or false. Default is false - commands are not restricted to players with "key" permissions.


Spawning

Enable or disable natural spawning of SW horses during world exploration.

	horseSpawn = "BOTH"

This accepts BOTH or VANILLA_ONLY or SWEM_ONLY. Default is BOTH - lite and vanilla horses naturally spawn.


Obstacle Fireworks

Enable or disable fireworks when colliding with jumps and barrel obstacles.  CAN CAUSE REFUSALS / MINOR DAMAGE TO HORSES (JUMPS)

	fireworkDisplay = false

This accepts true or false. Default is false - fireworks are not activated on contact with an obstacle.


Winged Flight

Enable or disable ability for "natural winged horses" (ie Pegasus) to fly without Amethyst Horse Armor.

	wingedHorseFly = true

This accepts true or false. Default is true - default and custom pegasus (set in JSON file) can fly without armor.


Lifesteal

Set decimal value of the Lifesteal effect in Netherite+ riding boots.  IGNORED IF DISABLEAMETHYSTPERKS = TRUE

	lifesteal = 0.05

This accepts decimal numbers from 0.01-1.0. Default is 0.05 - 5% damage is healed by Netherite+ riding boots. 1.0 = 100%


Additional

Files change from .toml to .toml.bak if entries are invalid or a file was regenerated. Check regularly when updating or editing files!

Configuration file updates are uncommon and usually harmless, but you may need to regenerate files or reapply custom settings.


Known Issues

You can report any mod issues to our bugs forum on Discord - please check for duplicate reports first! 


Changelog

View Changes

This is not a complete list of changes or features. It is a log of wiki-related version information and may be outdated.

MC Version Release Notes
1.21.1 1.6.12 Page established - Information prior to 1.6.12 is not specifically included but is likely the same.

Recipe Config

Information targets the latest supported release. For legacy (older) versions and bug fixes, read the changelogs.

This page is a WORK IN PROGRESS and may contain inaccurate or placeholder information or links.

Introduction

 Multiplayer: Configuration files on servers override any "client-side" (player) or pack settings while connected.

Singleplayer: Recipe config is aimed at allowing MP servers to restrict access to certain items, and holds very little use in SP.

Recipe configuration files tweak settings affecting how items are obtained, which apply to ALL worlds created for the current mod pack.

MULTIMC
Right click pack icon → Config Folder → swem → swem-recipe-control.toml
CURSEFORGE Right click pack icon → Open Folder → config → swem → swem-recipe-control.toml
FORGE (WINDOWS) Open file explorer → [user]/AppData/Roaming/.minecraft/config/swem/swem-recipe-control.toml
FORGE (MAC) Open finder → ~/Library/Application Support/minecraft/config/swem/swem-recipe-control.toml

Important

Configuration files have a specific format, and allow you to change limited values. Inputting invalid information or adjusting the file format can result in issues such as invalid configuration loading or crashing.

It is important to read the file carefully and only change supported values.

If you suspect a config file is corrupted or invalid, delete it and reload Minecraft to regenerate a default file.


Default Configuration

This is the default configuration file, containing two adjustable settings.

# || =========== [Obtaining] =========== ||
[obtaining]
	# || How is Amethyst Weapons and Armor (Player) obtained? 1 = Survival Crafting, 2 = Creative Menu, 3 = /give
	# Default: 1
	# Range: 1 ~ 3
	obtainAmethystGear = 1
	# || How are Rosettes obtained? 1 = Survival Crafting, 2 = Creative Menu, 3 = /give
	# Default: 1
	# Range: 1 ~ 3
	obtainRosettes = 1
	# || How are Two Tailed Ribbons obtained? 1 = Survival Crafting, 2 = Creative Menu, 3 = /give
	# Default: 2
	# Range: 1 ~ 3
	obtainTwoTailedRibbons = 2
	# || How are Three Tailed Ribbons obtained? 1 = Survival Crafting, 2 = Creative Menu, 3 = /give
	# Default: 2
	# Range: 1 ~ 3
	obtainThreeTailedRibbons = 2
	# || How are Champion and Reserve Champion Ribbons obtained? 1 = Survival Crafting, 2 = Creative Menu, 3 = /give
	# Default: 2
	# Range: 1 ~ 3
	obtainChampionshipRibbons = 2
	# || How are Plaques obtained? 1 = Survival Crafting, 2 = Creative Menu, 3 = /give
	# Default: 2
	# Range: 1 ~ 3
	obtainPlaques = 2
	# || How are Trophies obtained? 1 = Survival Crafting, 2 = Creative Menu, 3 = /give
	# Default: 2
	# Range: 1 ~ 3
	obtainTrophies = 2
	# || How are Breeding Tokens obtained? 1 = Survival Crafting, 2 = Creative Menu, 3 = /give
	# Default: 3
	# Range: 1 ~ 3
	obtainTokensBreeding = 3
	# || How are Boosters obtained? 1 = Survival Crafting, 2 = Creative Menu, 3 = /give
	# Default: 1
	# Range: 1 ~ 3
	obtainBoosters = 1
	# || How are Infertility Potions obtained? 1 = Survival Crafting, 2 = Creative Menu, 3 = /give
	# Default: 1
	# Range: 1 ~ 3
	obtainInfertilityPotions = 1
	# || How are Equestrian Shop Coins obtained? 1 = Survival Crafting, 2 = Creative Menu, 3 = /give
	# Default: 1
	# Range: 1 ~ 3
	obtainCoins = 1
	# || How are XC Jump Eggs obtained? 1 = Survival Crafting, 2 = Creative Menu, 3 = /give
	# Default: 1
	# Range: 1 ~ 3
	obtainJumps = 1
	# || Should EQ Coins be exchangeable with SWEconM Thyms?
	sweconmExchange = false

Supported Values

Most settings accept a numerical value:


Adjustable Values

Set the method to obtain Amethyst equipment, including Player Armor and Weapons.

	obtainAmethystGear = 1

This accepts whole number values between 1-3. Default is 1 - items can be crafted in survival. 


Set the method to obtain Rosettes.

	obtainRosettes = 1

This accepts whole number values between 1-3. Default is 1 - items can be crafted in survival. 


Set the method to obtain Two Tailed Ribbons.

	obtainTwoTailedRibbons = 2

This accepts whole number values between 1-3. Default is 2 - items can be obtained via creative menu or commands. 


Set the method to obtain Three Tailed Ribbons.

	obtainThreeTailedRibbons = 2

This accepts whole number values between 1-3. Default is 2 - items can be obtained via creative menu or commands. 


Set the method to obtain Reserve and Champion Ribbons.

	obtainChampionshipRibbons = 2

This accepts whole number values between 1-3. Default is 2 - items can be obtained via creative menu or commands. 


Set the method to obtain Plaques.

	obtainPlaques = 2

This accepts whole number values between 1-3. Default is 2 - items can be obtained via creative menu or commands. 


Set the method to obtain Trophies.

	obtainTrophies = 2

This accepts whole numbers between 1-3. Default is 2 - items can be obtained via creative menu or commands.


Set the method to obtain Breeding Tokens. Only relevant if tokensBreeding = true in Server Config.

	obtainTokensBreeding = 3

This accepts whole number values between 1-3. Default is 3 - items can only be obtained via give commands.


Set the method to obtain Boosters.

	obtainBoosters = 1

This accepts whole number values between 1-3. Default is 1 - items can be crafted (brewing stand) in survival. 


Set the method to obtain Infertility Potions.

	obtainInfertilityPotions = 1

This accepts whole number values between 1-3. Default is 1 - items can be crafted (brewing stand) in survival. 


Set the method to obtain Equestrian Shop Coins.

	obtainCoins = 1

This accepts whole number values between 1-3. Default is 1 - items can be crafted in survival. 


Set the method to obtain throwable XC Jump Eggs.

	obtainJumps = 1

This accepts whole number values between 1-3. Default is 1 - items can be crafted in survival. 


Enable or disable converting Equestrian Shop Coins to Thyms (SWecon Mod).

This accepts boolean values of true or false. Default is false - coins cannot be exchanged for SWecon Thyms.


Additional

Files change from .toml to .toml.bak if entries are invalid or a file was regenerated. Check regularly when updating or editing files!

Configuration file updates are uncommon and usually harmless, but you may need to regenerate files or reapply custom settings.


Known Issues

You can report any mod issues to our bugs forum on Discord - please check for duplicate reports first! 


Changelog

View Changes

This is not a complete list of changes or features. It is a log of wiki-related version information and may be outdated.

MC Version Release Notes
1.21.1 1.6.12 Page established - Information prior to 1.6.12 is not specifically included and may differ significantly.
1.18.2
1.3.0-12 Added option to toggle method of obtaining booster shots.
1.0.0 Added option to toggle method of obtaining awards (all types).

SWEM Commands

To use commands listed below, the following crtieria must be met:


Basic Commands

These are commands that are accessible to all players by default. 

CHANGE OWNERSHIP

Transfer ownership must be used while riding a horse to have an effect. Only the owner can run this command.

Command Version Description
/swem horse transfer <playername>      1.16+ Transfer a horse to a player (new owner).

/swem horse transfer <playername>          Transfer a horse to another player (new owner).

ADD OR REMOVE TRUSTED PLAYERS
This command 'whitelists' player(s) to ride and interact with a horse that is set to Trusted only. 

Trusted player commands must be used while riding a horse to have an effect. Only the owner or OP can run this command.

Command Version Description
/swem horse addfriend <playername>      1.16+ Add a player to the horse's trusted list.
/swem horse removefriend <playername>      1.16+ Remove a player from the horse's trusted list.

LIST OWNED
This command is intended for servers that enforce a horse ownership limit.

Command Version Description
/swem horse owned list <playername>      1.18+ Displays the total # and names (if named) of owned horses.
/swem horse owned search <limit>     1.18+ Displays a list of any players that exceed the stated # owned horses.

TACK RENDERING
This command sets tack to invisible, or re-renders already invisible tack.
It is used to simulate 'bareback' riding or 'wild' horses (invisible rider). Server-side, so changes can be seen by all players.

Tack render commands must be used while riding a horse to have an effect.

Command Version Description
/swem render bridle   1.16+ Toggle visibility of the bridle tack slot.
/swem render blanket 1.16+ Toggle visibility of the blanket tack slot.
/swem render saddle 1.16+ Toggle visibility of the saddle tack slot.
/swem render girth_strap     1.16+ Toggle visibility of the girth strap tack slot.
/swem render all 1.16+ Toggle visibility of all core tack slots.

Additional tack slots such as leg wraps are not included as they are not required to ride a horse (cosmetic only).

RRP COMMANDS
These commands trigger a single or looped animation to support photos and videos for players and content creators. 
This occurs server-side, so triggered animations will be seen by all players unless it is a custom animation (pack required).

Looped animations (∞) play continuously until the command is repeated, all others will play one time then stop.
Single animations triggered during a looped animation will play once, then return to the original looped animation.
Animations are visual only and will not have any effects such as damage from bucking or biting. 

RRP commands must be used while riding a horse to have an effect.

Command Version Description
/swem rrp bite   1.18+ Horse will lunge forward into a bite once.
/swem rrp buck 1.18+ Horse will buck once (as with taming).
/swem rrp eat 1.16+ ∞ Horse will lower their head into a looped grazing animation.
/swem rrp kick     1.16+ Horse will kick out with one rear leg.
/swem rrp lay     1.16+ ∞ Horse will lower themselves to the ground (player floats if riding)
/swem rrp rear     1.16+ Horse will rear once.
/swem rrp sad     1.16+ Horse will lower it's head (sad or sick) and use sad walk animations.
/swem rrp stomp     1.18+ Horse will half-rear, lunging forward to stomp their front hooves. 
/swem rrp anim StatueBuck
1.20+ Horse will freeze in a bucking statue pose (no idles).
/swem rrp anim StatueCanter
1.20+ Horse will freeze in a canter statue pose (no idles).
/swem rrp anim StatueFloat 1.20+ Horse will freeze in a flying statue pose (no idles).
/swem rrp anim StatueGallop 1.20+ Horse will freeze in a gallop statue pose (no idles).
/swem rrp anim StatueGallop 2 1.20+ Horse will freeze in a gallop (v2) statue pose (no idles).
/swem rrp anim StatueLaunch 1.20+ Horse will freeze in a leaping into flight statue pose (no idles).
/swem rrp anim StatueLaying Down 1.20+ Horse will freeze in a lying statue pose (no idles).
/swem rrp anim StatuePiaffe 1.20+ Horse will freeze in a dressage piaffe statue pose (no idles).
/swem rrp anim StatueRear 1.20+ Horse will freeze in a rearing statue pose (no idles).
/swem rrp anim StatueSit 1.20+ Horse will freeze in a sitting statue pose (no idles).
/swem rrp anim StatueStandIdle 1.20+ Horse will freeze in a standing statue pose (no idles).
/swem rrp anim StatueTrot
1.20+ Horse will freeze in a trotting statue pose (no idles).
/swem rrp anim StatueWalk 1.20+ Horse will freeze in a walking statue pose (no idles).
/swem rrp anim <animation name>     1.20+ Horse will play the selected animation on loop.

This command supports custom animations added via resource pack.

Triggered anims may not visually work with riders - not all animations have a player animation (lying down etc). 

[EXPAND] Full List Of Default Animations

Bite
Buck
Canter
Dive
EatingHalfHeight
EatingLoop
ExtendedCanter
FloatDown
Flutter
Gallop
GettingUp
GoingUp
HalfHeightLeanIn
HalfHeightLeanOut
JumpLvl1
JumpLvl2
JumpLvl3
JumpLvl4
JumpLvl5
Kick
Launch
LayingDown
LayingDownAsleepIdle
LayingDownLoop
LeanIn
LeanOut
Rear
SadStandIdle
SadWalk
Scratch
Shake
SleepingIn
SleepingOut
SlowDown
SpeedUp
StandIdle
StatueBuck
StatueCanter
StatueFloat
StatueGallop
StatueGallop 2
StatueLaunch
StatueLaying Down
StatuePiaffe
StatueRear
StatueSit
StatueStandIdle
StatueTrot
StatueWalk
Stomp
Swim
TailSwish
Trot
TurnLeft
TurnLeftCycle
TurnRight
TurnRightCycle
Walk
WalkingBackwards

RESOURCES

Command Version Description
/swem wiki      1.20+ Provides a link to this Wiki in chat (client side).

Breeding Commands (1.18.2-1.4.0+)

If configured on servers, these commands will only be usable by OPs or with relevant permissions (if enabled).

Breeding commands must be used while riding a horse to have an effect.

Command Version Description
/swem horse breeding advance      1.18 Advance a mare's pregnancy to just before birth is due.
/swem horse breeding change     1.18 Change a Stallion or Gelding ⇔ Mare

1.20 Change a Stallion ⇔ Mare or Gelding ⇔ Infertile Mare
/swem horse breeding geld     1.18 Change a Stallion → Gelding
/swem horse breeding fertile     1.20 Change a Gelding → Stallion or Infertile Mare → Mare (fertile)
/swem horse breeding infertile     1.20 Change a Stallion → Gelding or Mare → Infertile Mare
/swem horse breeding reset cooldown 1.18+ Reset the breeding cooldown timer to 0.
/swem horse breeding reset pregnancy 1.18+ Reset a pregnancy (set to not pregnant).

Summon & Modify Commands

If configured on servers, these commands will only be usable by  TBC .

Minecraft /summon command will only summon default (white) horses as of 1.20.1-1.5.0+, use /swem summon instead!

Command Version Description
/swem summon LEGACY <id:coat>      1.20 1.5 Summon a untamed horse with a specific coat or custom coat.
/swem summon random LEGACY     1.20 1.5

Summon an untamed horse with a random coat or custom coat.

Random coats can only select from non-secret, non-blacklisted default coats or custom coats with lapis_cyclable: true

/swem set coat <id:coat>     1.20 1.5 Set the horse to use a specific coat or custom coat.
Minecraft Command Version Description
/summon swem:swem_horse 1.16-18 Summon an untamed horse with a random coat.
/summon /summon swem:swem_horse ~ ~ ~ {Age: -#} 1.16+ Summon a (untamed) foal. # is growth timer (36000 = 30 mins).

1.20-1.5.X Foals summoned with this command will look wrong as they use the adult white coat unless otherwise set.

/summon swem:swem_horse ~ ~ ~ {HorseVariant:#}

1.16-18

Summon an untamed horse with a specific coat variant #.

 TBC 

1.20

Summon an untamed foal with a specific coat variant #.

/summon swem:swem_horse ~ ~ ~ {NoAI: 1} 1.16-18 Summon an untamed horse with no AI*.
/summon swem:wormieboi 1.16+ Summon a worm on a string.
/summon swem:swem_poop 1.16+ Summon a horse poop.
/data merge entity @e[type=swem:swem_horse,limit=1,sort=nearest] {HorseVariant:#} 1.16-18 Set the nearest horse to use a specific coat variant #.
/data merge entity @e[type=swem:swem_horse,limit=1,sort=nearest] {NoAI:1} 1.16+ Modify the nearest horse to have no AI*.
/data merge entity @e[type=swem:swem_horse,limit=1,sort=nearest] {NoAI:0} 1.16+ Modify the nearest horse to have AI*.

* No AI Horses still have needs, can be ridden and led but will not move when unmounted except for idle animations.

No AI Horses can be returned to normal using a data merge command without being killed + replaced

/data get entity @e[type=swem:swem_horse,sort=nearest,limit=1] Behaviors[6].Coat 1.20 Find out the coat ID for the nearest horse.

Filming Commands

These commands will only be usable to players with the Film key unless disabled in serverconfig (1.20+).

Wild mode and Max Gallop commands must be used while riding a horse to have an effect.

MULTIPLAYER Wild mode is not recommended for SMPs - it sets max affinity, provides free tack and adjusts gallop limit.

WILD MODE   THIS DOES NOT ACTUALLY MAKE HORSES "WILD"  
This command sets horses to a specific skill level and tack setup intended for quick filming-ready horses.

  WILD MODE CANNOT BE REVERSED  

Command Version Description
/swem rrp wild      1.16+ Set a horse's tack and skills to filming 'wild' mode.
/swem rrp maxgallop     1.18+ Reset the gallop cooldown and set max gallop time to 120 seconds.


Moderator Commands

These commands will only be usable to players with the Mod key unless disabled in serverconfig (1.20+).

Commands requiring a [playername] specified will need to be run while the intended player is online to work.

Command Version Description
/swem horse owned list <playername>      1.18+ Displays the total # and names (if named) of owned horses.
/swem horse owned search <limit>     1.18+ Displays a list of any players that exceed the stated # owned horses.
/swem horse tame 1.18+ Instantly tame a nearby or ridden (wild) horse.
/swem horse tackup  1.18+ Instantly tackup a ridden horse with white Western tack.
/swem horse addfriend <playername>  1.18+ Add a player to a horse's trusted list (even if not the owner).
/swem horse removefriend <playername>    1.18+ Remove a player from a horse's trusted list (even if not the owner).
/swem horse transfer <playername> 1.18+ Transfer a horse to another player (even if not the owner).
/swem set allNeeds <1-5> 1.18+ Set horse needs value (health, hunger, thirst) [1-5] 1 Min - 5 Max
/swem set health <1-5> 1.18+ Set horse health value [1-5] HP: 6 / 10 / 20 / 30 / 40) 
/swem set hunger <1-5> 1.18+ Set horse hunger state [1-5] 1 Starving - 5 Fully Fed
/swem set thirst <1-5> 1.18+ Set horse thirst state [1-5] 1 Exsiccosis - 5 Quenched

Admin Commands

These commands will only be usable to players with the Admin key unless disabled in serverconfig (1.20+).

Set level commands must be used while riding a horse to have an effect.

Command Version Description
/swem set level affinity <1-12>      1.18+ Set the affinity skill [1-12]
/swem set level health <1-5>     1.18+ Set the health skill [1-5]
/swem set level jump <1-5> 1.18+ Set the jump skill [1-5]
/swem set level speed <1-5>  1.18+ Set the speed skill [1-5]
/swem set level all <1-12>  1.18+ Set all skills [1-12] Choosing 12 will max all skills fully.
/swem set coat <id:coat>    1.20+ Set the horse to use a specific coat or custom coat.

Assigning Keys

Keys do NOT stack - you need all the keys relevant to the desired keys (ie Admin does not inherit the commands of Mod).

As shown in the above sections, some SWEM commands are linked to a role 'key' to prevent misuse of some non-survival friendly commands on servers. Please read the below information carefully:

Command Version Description
/swem key assign <playername> swem:film    1.18+ Give a player the film key.
/swem key assign <playername> swem:mod    1.18+ Give a player the mod key
/swem key assign <playername> swem:admin  1.18+ Give a player the admin key. MP: Must assign via server console.
/swem key revoke <playername> swem:film  1.18+ Remove the film key from a player. MP: Requires Admin+ Key
/swem key revoke <playername> swem:mod  1.18+ Remove the mod key from a player. MP: Requires Admin+ Key
/swem key revoke <playername> swem:admin    1.18+ Remove the admin key from a player. 
/swem key list    1.18+ List the currently held keys (current player).

Other

Change Ownership
This vanilla command should no longer be needed in 1.18 with OP overrides to horse ownership (when set to none/trusted only) but it is noted in case of any issue with accessing a restricted horse.

/data modify entity @e[type=swem:swem_horse,sort=nearest,limit=1] Owner set value PLAYERSFULLUUIDHERE

  1. Stand near the target horse - move away any other nearby SWEM horses (to not accidentally edit their data instead)
  2. Find the UUID of a (OP) player, you can get it on a website like MCUUID, and edit the command
  3. Run the command. You can change the horse to All, mount it and use the normal transfer command

Known Issues

If you find an issue, please report it to our bugs channel on Discord. We ask that you look to see if your issue was reported first!


Changelog

View Changes

This is not a complete list of version changes / fixes. It is a changelog of relevant wiki-related version information.

MC Version Release Notes
1.20.1
1.20.1-1.4.0 Removed geld command for fertile/infertile command (either gender).
1.18.2
1.18.2-1.4.0 Added /swem horse breeding commands for 1.4.0 Gender update.
1.18.2-1.3.0-15 Added /swem horse owner [player] command to list owned + named horses.
1.18.2-1.2.2 Added /swem horse set commands for needs (part of new feed/water system)
1.18.2-1.0.0
Added render command for all (render or unrender all tack).
Added RRP commands for shake, scratch, buck, bit and stomp idles/animations.
Merged the /swem horse setgalloptime and /swem horse resetgallop commands
Changed /swem setlevel command to /swem set
Changed /dev tackup and /dev tame to /swem horse category.

Horse Data

The Horse Data file (1.18.2+) adds information on horses within the world and allows players or servers to reference information that would otherwise be inaccessible outside of code or NBT explorers / editors. 

MultiMC: Instance > Minecraft Folder (Right Sidebar) > Saves > [World Name] > Serverconfig > swem > horsedata.json
CurseForge: Profile > ... (next to play) > Open Folder > Saves > [World Name] > Serverconfig > swem > horsedata.json
Forge (Windows): [user]/AppData/Roaming/.minecraft/saves/[world name]/serverconfig/swem/horsedata.json
Forge (Mac): ~/Library/Application Support/minecraft/saves/[world name]/serverconfig/swem/horsedata.json
Servers: World > Serverconfig > swem > horsedata.json


Horse Data Explained

Horse Data is only a reference source and cannot be changed to adjust entity data or remove entities in game!

Horse Data can be opened via a text editor (ie Notepad) and provides the following information:

Data Definition
Horse ID  The horse's unique identifier (UUID)
Horse name  Nametagged name or 'SWEM Horse' if N/A
Owner ID  The current owner's unique identifier (UUID) 
Owner Name  The name of the current owner as displayed in the horse GUI
Dimension The dimension they were in (on last info save)
Position The X, Y and Z coordinates they were at (on last info save)
'Is Dead' The status of a horse as either alive (false) or deceased (true)
Inventory Data  The data of tack slots (air = no item in slot)
Progression Data 
The data of skill levels and training
Jump / Speed / Affinity default = 0 (level 1), health = 1 (level 1)
Days 'swiped' = Uses of desensitization items
Desensitization items = ??

Data is saved routinely and may not reflect changes to information (ie location) post-save. SP worlds require a save / exit to update the data file, whereas servers can usually access info accurate to within a few minutes without a shutdown. 


Uses

The horse data has many potential uses - even as a reference only source:


Horse Ownership

World Owners (SP) or Server staff with console access (MP) can of course search (Ctrl+F) for an owner's UUID in horse data and determine currently owned horses - alive or deceased - and information such as location and stats. This may provide useful for servers in moderation where imposed restrictions on number of owned horses exists and there is concern for misuse.

However, horse data and the horse owner data entry offers the most significant feature built into the game; searching by criteria for this specific information. With adequate permissions, the following commands can be run:

/swem horse owned list <player>   List the number of owned horses (and the names if nametagged) of a specific player.

/swem horse owned search <#>         List the names of players and # of horses owned that exceeds the limit of # owned.


Resurrection

Horses Data was implemented with the intention to enable in-game resurrection further into development.

Horse Data does not currently offer a way to resurrect horses in game, or alter the state of a horse via file editing. However, for servers that want to offer a low exploit-risk resurrection service (free or at cost) the horse data file contains most, if not all, the required information to create a new horse and reinstate the last-known skill levels, equipment and owner. 

Similarly, SP users can utilise the information in much the same way if they want to recreate a previous horse as accurately as possible.


Relocation

Horse Data does not save constantly, so coordinate locations may reflect the exact location of a horse on the move.

Horse Data does not currently offer a way to relocate horses in game, or alter the location of a horse horse via file editing. What it can do is provide a good starting location and dimension to conduct a manual search, or to narrow down search radius for searching via Minecraft commands. This information removes the necessity of using external NBT explorers, spending time searching when location commands fail (or cannot be used due to lack of a name / unknown exact name / many entities with the same name), leaving players hoping someone will find them in the future or even futile searching for a horse that may no longer be alive. 


Other

The Horse Data file should be safe to delete if it become corrupted or remove outdated information on deceased horses. It will regenerate with data of new and existing horses (provided they are loaded by a player). It will not reinstate the data of deceased horses prior to resetting the file. 


Known Issues

If you find an issue, please report it to our bugs channel on Discord. We ask that you look to see if your issue was reported first!


Changelog

View Changes

This is not a complete list of version changes / fixes. It is a changelog of relevant wiki-related version information.

MC Version Release Notes
1.18.2 1.18.2-1.3.0-15 Horses Data logging implemented.