Feed System

Description: Horses require adequate daily nutrition and consistent meals to remain happy and healthy. This system works cooperatively with the Thirst System.

The Food and Water systems do not work prior to 1.18.2-1.2.8+. This feature will not be fixed for 1.16.5.


Basics & Finding Food

Food search radius is a configurable value -  default is 15 but can be set from 5-40. Increasing this value can cause lag.

Horses will become hungry once per day, and will need approximately 1 (Quality) Bale or 112 grass blocks between 7AM-8PM, though there are many different combinations that a horse can be fed to meet their nutritional requirements. When food is available, horses can eat:


Food Bar

This bar is NOT an indicator of daily hunger or food intake, but the Horse's overall food status. It decreases from full to empty as the horse fails to consume enough food on a single day or continuously over several days. Each level decrease indicates a different stage of hunger, from fully fed (full) to starving (empty). Giving your horse extra food on a single day will not increase the value immediately, but will gradually over a day or more. See below for an explanation of how meals and missed meals work.

Water/Food bar.gif


Meals

Horse hunger is a configurable value - if it is disabled none of your horses will experience hunger.

Horses have a meal time at 7AM every day after the horse wakes up.
If 24hr food cycle is enabled via server config this will be 8AM GMT every real life day - provided the horse is loaded.

Meals will be totaled up at 8PM every night before the horse sleeps.
If 24hr food cycle is enabled via server config this will be 9PM GMT every real life day - provided the horse is loaded.

Missed Meals
Horse will satisfy a meal requirement if they consume 224+ points of food per day. When satisfied, they can progress between status' of hunger depending on whether they have missed any meals previously. A horse that is missing 0 meals will be considered fed, or fully fed if grain is provided daily.

If a horse fails to consume 224+ points of food in a day, that 'meal' will be missed. Missing meals will deteriorate the hunger status and slowly accumulate debuffs. Health can also be affected. Missed meals must be recovered; each meal your horse satisfies will decrease the missed meals value by 1 meal. Craft and use the Vet Bag to view the status of any missed meals.

Food Level (GUI) Status Missed Meals Gaits Speed Obedience
5 Fully Fed 0 --- --- +10%
4 Fed 0 --- --- ---
3 Hungry 1 -2s Stamina -10% -10%
2 Malnourished 3 Max. Canter -20% -20%
1 Starving 7 Max. Walk -- -30%

Points

Point values for food varies - some foods are more nutritious than others, requiring fewer items/servings to meet the meal points. Each food has a maximum that can be fed before a horse becomes unhappy, and a maximum that can count towards their meal points - feeding in excess of this will  not be counted as nutrition and will make your horse angry!

Saturation
To prevent them from consuming all their daily food in high-point items immediately on wake up, horses have a simple 'saturation' system. Each point they eat gets converted into a time before they can eat again - this also gives horses some time to just wander around, play idles etc. 

Saturation (Calculation)

Each point consumed satisfies the horse for 40 ticks (2 seconds).

Pts x 40ticks = # tick delay
Delay / 20 = seconds delay
Seconds / 60 = minutes delay (if necessary)

One minecraft hour is 1000 ticks, so each 1000pt delay will be one hour wait to eat again in game time.

Quality Bale (Example)
Bales give 112pts per slab = 4,480 ticks (3.7 minutes)
A horse that eats a bale at 7AM (1000 ticks) would not want to consume more food until 11:30AM (5480 ticks)

Grass (Example)
Grass gives 2pts per block or item consumed = 80 ticks (4 seconds). 
Horses can near continuously eat grass with a few seconds delay until their points are satisfied if they are not saturated from any other food type.

Points (All Food)
Contribution

The maximum number of points that can be put towards meals each day.

Restricts low-value or unhealthy foods (treats) meeting 100% of the horses's daily nutritional needs.

Food
The specific food item
Points
How many points one single serving of that food gives towards a meal
Minimum
The minimum servings to meet or max the points towards daily point requirements
Maximum
The maximum servings before a horse becomes angry (displays red particles)
Other
Any buffs or debuffs
Contribution (1D) Food Points Minimum Maximum Other
Treats
13pts Bamboo 3 3 7 1pts affinity
Beets 3 3 7 1pts affinity
Carrot 5 4 5 2pts affinity
Sugar Cube 5 1 5 2pts affinity
Watermelon Slice 5 4 5 2pts affinity
Sweetberries 7 1 3 3pts affinity
Honey 7 1 3 3pts affinity
Apple 7 2 3 3pts affinity
Honeycomb 11 1 2 5pts affinity
Pumpkin 11 1 2 5pts affinity
Melon 11 1 2 5pts affinity
Grass Feeds
224pts Grass/Shrooms 2 112 none ---
Oat Bushel 10 4 5 ---
Timothy Bushel 14 4 5 ---
Alfalfa Bushel 14 4 5 ---
Timothy Bale 56 2 3 ---
Timothy Slab 28
4 ---
Alfalfa Bale 56 2 3 ---
Alfalfa Slab 28
4 ---
Quality Bale 224 1 2 ---
Quality Slab 112 2 3 ---
Grains
112pts Sweet Feed* 112 1 2 ---
Rose Feed* 112 1 2 ---
One-Off Treats

0pts

Golden Apple 0 --- --- 2kpts affinity
GAP 0 --- --- 5kpts affinity
Golden Carrot 0 --- --- 1kpts affinity
Glistering Melon 0 --- --- 1kpts affinity

One-off treats heal the horse 100% of all ailments and health but can only be give ONCE to get the perks. 

* Feeding grain only will change a horse hungry (from fed/fully fed) even with 224pts+ as grain is not filling. 


Health

Horses meal points contribute points (XP) towards their health stat. Horses that are fed their maximum points daily will progress faster through the levels, by virtue of eating more, than those who miss meals.
If a horse is not fed, it does not lose XP from the health stat.

Negative Debuffs
When a horse is starving, their maximum health value will decrease at 0.5 hearts (1HP) per day they are starving.


Additional

Tack & Leading
Horses will not eat if they are wearing a bridle or on a lead (including if hitched). This is intentional to reduce the horse going into an eating animation while being ridden, or pathing to food while being led by a player. Leaving a horse tacked or hitched will restrict their ability to satisfy hunger.

Priority
Horses will always prioritize water over food if both are available, within their search radius and the horse is hungry/thirsty. After water is satisfied, the horse will prioritize food in the order of treats > grain > bales > grass.

Starvation
Critically starving horses will not poop as they are not taking in adequate nutrition to digest or excrete.

Fatality
Horses will not die directly from critical hunger and fatality will not be implemented as a feature. However, horses can die from taking damage and are much more likely to do so with a decreased max health stat. The implemented system of missed meals encourages players to keep their horses well fed and rehabilitate their horses back to full health with regular care to provide a non-fatal consequence to neglect.

Xaero's Minimap has a useful feature to display the in-game time so you never have to miss your mealtimes again!

Hourglass has been tested (1.18) and seems fully compatible with SWEM food cycle if players want an extended MC day!


Troubleshooting

[Read More] My horse is not eating!

The most likely reason for a horse not eating is:

  • Horses are not loaded during meal times (7:00AM) so their needs were not set to decrease
  • The world has the 24hr cycle enabled in server config so food only resets at 8AM GMT if horses are loaded.
  • The world has /gamerule doDaylightCycle set to false so time does not pass to allow meal times to take effect
  • The world has /gamerule mobGriefing set to false so horses cannot eat grass (should not effect feeders/bales)
  • Horses cannot eat food - wearing a bridle, attached to a leadrope or hitched.
  • Horses cannot access food - obstructed by something else (ie shavings around a slow feeder)
  • Horses cannot find food in their search radius - ~15B in any direction to reduce lag for multiple searching horses.
  • Horses have already eaten enough to satisfy their meal points and do not need to eat any more.

If your horse seems to be hanging around their feeder/trough, try giving them a nudge away incase they are 'stuck'.

[Read More] My horse is missing meals even though I provided food!

The most likely reason for a horse missing meals is your horses has not loaded for long enough to meet their points requirement. This is most often the case with grazing in which a horse needs to consume 112 blocks per day (which takes time) and if they are not rendered for long enough to do so, or cannot satisfy their dinner meal before they sleep, they will have missed a meal. Try supplementing your horse with bales, or checking on them ahead of the food check at 8PM to make sure they don't need any extra food.

Feeding grain only will change a horse hungry (from fed/fully fed) even with 224pts+ as grain is not filling. 

[Read More] The mealtimes are just too much work, but I still want hunger!

Unfortunately we can only offer immersive realism, or disabling needs entirely at this point. If you are finding the feeding system to occupy too much of your MC day (and you don't like that), you can do one of the following:

  • Pause the time for a while if you have access to commands
  • Ignore needs and reset them as required if you have access to commands
  • Avoid loading horses (160B+ distance) around hungry time on days you just want to chill
  • Turn off one or the other (hunger or thirst) to reduce your daily tasks. Disabling hunger will impact your ability to level health, whereas disabling thirst will have less significance on gameplay.
  • Enable 24hr food system via configs if you play ~9PM and 8AM GMT. Only recommended for active servers. 
  • (MP) Board your horse out to another player to take care of (or who won't render them) for a while.

Alternatively...

Try a mod like Hourglass to extend the MC day +/- night so you have more time between days in order to take care of your horses. For example, you could set a double length day (20 minutes) or even higher so the day passes slower. You can even elect to keep the same, shorter or longer length of night. The horses will still reset their needs at the right times even though the time progression speed is altered!

You will still need to have daylight cycle on, and render horses at meal times to enjoy your slower paced horse care!

[Read More] How to set hunger related stats or needs?

Players must have sufficient permissions (OP or ranks on MP servers) or cheats enabled (SP) to use commands.

/time set 999                                               Change the time to ~7:00 AM - just before the morning meal time

/swem set allNeeds [1-5]                          Set a horse's needs (health, hunger, thirst) to the specified value or level.

/swem set health [1-5]                              Set a horse's health value to the specified value (HP: 6 / 10 / 20 / 30 / 40) 

                                                                         Note: Will be capped by the maximum value allowed with the health skill.

/swem set hunger [1-5]                              Set a horse's hunger status to the specified level (1 - Starving / 5 - Fully Fed)

/swem set thirst [1-5]                              Set a horse's thirst status to the specified level (1 - Exsiccosis / 5 - Quenched)


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!


Trivia

Meal times are fondly referred to as 'hungy' times - which is not a typo. These have been referred to as that ever since the initial concept for a meal and time based food system, and that phrase is accurate even down to the code level.


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.18.2-1.3.2 Added missing half height lean-out transition animation.
1.18.2
1.18.2-1.3.0 [Bug Fix] Should have resolved uncommon issue of needs not resetting at 999.
1.18.2-1.2.8 [Bug Fix] Wild horses no longer eat constantly (use saturation/point limits)
1.18.2-1.2.7 Implemented new feed system with 'hungy times', meals, points and health.
1.16.5 1.16.5-0.5.3.20

Feed system is broken in 1.16.5 release and will not be updated.

  • Horses do not deteriorate in hunger
  • Horses do not seek out and eat or drink but can still be hand-fed

Revision #24
Created 7 June 2023 18:49:30 by Delphi
Updated 15 November 2023 10:12:45 by Delphi