Mods / Feed or Fallow

Tags:
Food Immersive Animals
Author:
Feyd
Side:
Server
Created:
Aug 25th at 1:19 AM
Last modified:
3 days ago
Downloads:
71
Recommended download (for Vintage Story 1.22.7):
FeedOrFallow-1.3.0.zip  1-click install

Feed or Fallow — v1.2.2 (call for testers)  ...::: BETA :::...

 

Your livestock get hungry now. Domesticated and tamed animals track when they last ate, and an animal left with nothing to eat will starve to death. Keep your pens stocked, or let them fall fallow.

Server-side only — connecting players do not need to install it. Built for Vintage Story 1.22.x. No Harmony patching, no client files, no new items or blocks.

How it works

 

  • Animals that can feed themselves, do. Grazing grass or crops, or eating from a trough, resets the hunger clock automatically. The mod reads the same lastMealEatenTotalHours timestamp the vanilla eating AI already stamps on the animal, so any food source it can reach on its own counts. The animals in danger are the ones shut in a barren pen with no forage and an empty trough.
  • Hand-feeding works too. Right-click an animal while holding any edible item (grain, vegetables, fruit, bread — anything with nutrition value). The clock resets, one item is consumed by default, and you get a “The sheep eats hungrily.” confirmation.
  • Then it starves. Go past the grace period (default 72 in-game hours = 3 days) with no food and the animal starts taking hunger damage every 6 in-game hours until it eats again — or dies. Most livestock have well under 20 HP, so neglect kills in a day or two of game time.
  • Only your stock is at risk. Wild animals spawn at generation 0; only generation 1+ (captive-bred) animals starve by default. Wild herds you walk past are fine. Babies are exempt.
  • All state lives in the entity's WatchedAttributes, so it survives save/reload. Animals that already exist when you add the mod start their clock fresh rather than dropping dead on load.

Affected animals

Animal Entity Applies to
Sheep sheep-adult Bred livestock (gen ≥ 1)
Chicken chicken-adult Bred livestock (gen ≥ 1)
Pig pig-adult Bred livestock (gen ≥ 1)
Goat goat-adult Bred livestock (gen ≥ 1)
Elk (tamed) elk-tamed Any generation — a tamed mount always needs feeding
Elk (semi-tamed) elk-semitamed Any generation — during and after taming

Wild predators and game (bear, wolf, fox, hyena, deer, moose, gazelle, hare, raccoon) are deliberately left out — they aren't domesticated and they don't eat from your hand. Adding more animals is a one-file JSON patch, so tell me which ones you want covered.

Configuration

The server writes ModConfig/feedorfallow.json on first launch. Edit and restart to retune. Out-of-range values are clamped on load and logged as [feedorfallow] Config adjusted: …, so a typo can't brick the mod.

Setting Default What it does
GraceHours 72 In-game hours without food before damage starts
DamageIntervalHours 6 In-game hours between damage ticks while starving
DamagePerInterval 2 HP lost per tick
MinGeneration 1 Lowest generation affected (0 = every animal, wild included)
ConsumeFedItem true Hand-feeding uses up one held item
GrazingCountsAsFeeding true Grazing/trough eating resets the clock. Set false for hardcore hand-feed-only
ExemptBabyCodeParts lamb, chick, piglet, calf, baby, cub, kid Entity-code substrings that are never affected
CheckIntervalSeconds 10 Real seconds between starvation checks

Installing

Drop the zip in your Mods/ folder and restart — %appdata%/VintagestoryData/Mods/ on Windows, ~/.config/VintagestoryData/Mods/ on Linux. For a multiplayer server, only the server needs it. To confirm it's live, look for [feedorfallow] Active. GraceHours=72, … in Logs/server-main.log.

What I'd like tested

 

  • Do penned animals with no grass and no trough start starving after ~3 in-game days?
  • Do animals with forage or a stocked trough keep themselves alive indefinitely?
  • Does right-clicking with grain/veg/fruit feed the animal and consume exactly one item?
  • Are babies and wild herds left alone?
  • Any conflicts with other animal/husbandry mods, and any noticeable server tick cost on a big herd.

Known edge case: hand-feeding swallows the right-click, and vanilla breeding runs first — so feeding a breeding-ready female to breed her may not also reset her hunger clock on that same click. Feed her again after and it's fine.

When reporting, please include your feedorfallow.json, the mod version (1.2.1), your game version, and the relevant chunk of server-main.log.

 

(( This mod is not ready for production ))

 

Thanks to anyone who cares to help me test and I'll do my best to refine it according to player feedback. 

 

AI Disclosure: This mod was developed with the assistance of AI tools, and its full source code is linked on this page for anyone who wants to review it. If AI-assisted content isn't for you, please filter or skip this mod. The comment section is reserved for bug reports, compatibility questions, and gameplay feedback.

Mod Version Mod IdentifierFor Game version Downloads Released Changelog Download 1-click mod install*
1.3.0 feedorfallow 12 3 days ago FeedOrFallow-1.3.0.zip 1-click install

1.3.0 — Hand-feeding works again: food you can eat was being swallowed by your own eating animation before the click ever reached the animal, so feeding now also goes through the server's hand-interaction event. Feed is matched against each animal's own vanilla diet, so hay and dry grass work and sheep refuse meat. New: real grazing — vanilla has none, so sheep/goats/elk now crop nearby tall grass and grass coverage, both of which regrow; a grassy pen feeds a few animals, a herd will strip it bare. New config: GrazeOnGrass, GrazeAfterHours, GrazeSearchRadius, GrazeGrassySoil. Shoutout to tester Yarylo for detailed testing of this mod!

1.2.2 feedorfallow 43 Aug 26th at 12:15 AM FeedOrFallow-1.2.2.zip 1-click install

v1.2.2 — bug fix release

Two bugs found while reviewing the mod against the 1.22 game code, both of which meant Feed or Fallow was quietly doing less than it claimed. If you are testing 1.2.1, please update — the results you were seeing were probably wrong.

Fixed: starving animals never actually died

Vanilla heals every living animal at a flat 1.2 HP per in-game hour, with no cooldown after taking damage. The default starvation rate was 2 HP every 6 hours — 0.33 HP/hour. Regeneration was running more than three times faster than starvation, so a neglected animal took its hunger damage, healed it straight back, and sat at full health forever. On default settings nothing could die.

Starving animals now have their healing suppressed until they eat. This uses the same internal regeneration switch the game's own "mortally wounded" system uses, so it plays nicely with vanilla: animals that are mortally wounded or recovering are left alone, and healing is always handed back when an animal is unloaded — removing the mod can't leave an animal permanently unable to heal.

The damage settings are unchanged, and they finally mean what the description says: on defaults a neglected sheep dies roughly two days after its grace period runs out.

Fixed: chickens were exempt from hunger entirely

The baby-exemption list shipped with "chick" in it. Adult chickens are internally coded chicken-hen and chicken-rooster — both contain the letters "chick" — so the exemption matched every chicken in the world. Chickens have never gone hungry in any version of this mod.

The default is now "poult", which exempts just the juvenile chicken-henpoult and chicken-roosterpoult variants that share the adult entity file. "baby" already covered chicken-baby.

Your config updates itself

The config file is only written when it is missing, so fixing the shipped default would have done nothing for anyone who has already run the mod once. Instead, existing feedorfallow.json files are repaired on load. On your first launch after updating you will see this in server-main.log, once:

[feedorfallow] Config adjusted: ExemptBabyCodeParts entry "chick" replaced with "poult" ...
[feedorfallow] Rewrote feedorfallow.json with the corrected values.

That is expected. It happens once, and it does mean chickens on your existing world will start getting hungry — plan for that before updating a world with a chicken coop in it.

Updating

The download is now named with its version: FeedOrFallow-1.2.2.zip. Delete the old FeedOrFallow.zip from your Mods/ folder rather than just dropping the new one alongside it, or the game will try to load two copies.

What I'd like re-tested

  • Penned livestock with no grass and no trough now actually die, not just take damage.
  • Chickens starve like everything else — and their poults and chicks still do
  • A fed or grazing animal heals normally again afterwards.
  • Tamed elk: can you hand-feed one at all? Clicking a saddle or an accessory elk or open a bag instead of feeding it. This one is still open — reports welcome.

Earlier releases

1.2.1 — compatibility release for Vintage Story 1.22.5; rebui 1.22.5 assemblies, no code changes.

1.2.1 feedorfallow 16 Aug 25th at 1:20 AM Empty FeedOrFallow.zip 1-click install

Disclaimer

By downloading a mod you consent to our Terms of Use.

We tell you this specifically because we want to make sure you are aware that we cannot validate every mod, and you are responsible for any damages you might incur by installing or loading mods.

This prompt will not be shown to you again (for the current browser session) if you proceed.


9 Comments (oldest first | newest first) (threaded | flat)

TheDarkPlague, 3 days ago

The mod looks cool! Just to know, was the mod developed using AI?

taucetifive, 2 days ago
@TheDarkPlague: The mod looks cool! Just to know, was the mod developed using AI?

yes, check github repository and look at the commits

Yarylo, 3 days ago

Very neat mod. Thank you for making this!
I've tested the mod, and most of the features work properly.

  • Domesticated animals start to starve after 3 days, unless they have a filled trough or are fed in a different manner.
  • Wild animals and babies do not starve

 

Now I've discovered the following issues:

  • Hand feeding does not work at all, even when FoF is the only mod loaded. You can only drop on the ground, which the animals will eat.
  • Grazing on regular grass does not seem to work, I've tested oxen, goats and sheep. The animals will, however, eat crops to reset their starvation meter.

 

Finally, I've tested this mod along with Better Husbandry and Shepherd's Herding. Everything works perfectly. Shepherd's Herding does, in fact, allow domesticated animals to graze when you use a shepherd's staff - and it resets the starvation meter.

I've ran all my tests with default configs, on FoF 1.2.2 and 1.22.7. Haven't found anything of note in the logs.

Feyd , 3 days ago
@Yarylo: Very neat mod. Thank you for making this!I've tested the mod, and most of the features work properly. Domesticated animals start to starve after 3 days, unless they have a filled trough or are fed in a different manner. Wild animals and babies do not star

Yarylo This is extremely helpful! Thank you for taking the time to test this so thoroughly.

I'm looking into the issues you've raised and hope to have a fix in a day or two.

Cheers!

DilanRona, Sep 16th at 9:37 AM

Will take a look tonight

Medixxx, Aug 27th at 6:40 PM

Hey am i able to put this into a generated world?

Feyd , Aug 28th at 7:33 PM
@Medixxx: Hey am i able to put this into a generated world?

Medixxx I am as well as a few other players and I haven't noticed any issues. Full disclosure, I have not tested this with naturally aging livestock.

I would backup my world before using it if you have a lot of livestock.

Thanks,