1. Clanfolk
  2. News

Clanfolk News

Update 7: Cats and Rats!

Hi Everyone,

It has been a very busy month on the testing branch, which included an unexpected early cat leakage (thanks traders), livestock in the family tree, and a couple days of cats in pants. It has been a strange, but productive month.

This update took longer than expected due to the complexity of the cat AI. I am trying to simulate Cat behaviors and make them entertaining to watch, so it has taken time as there is a lot of new custom AI in there as well as new systems to handle pets and general wildlife populations. These new systems will make the addition of later Pets and Wildlife a lot easier as well.

[h3]Note: Strict skill priorities have been turned back on as default.[/h3]
To turn off: Settings/Gameplay/

Strict priorities mean all tasks of higher priority skills are completed first, but in task priority order.
Non-Strict is a mixture of skill/task priority were used to determine task order.

[h2]First Off, let's talk about RATS[/h2]

The Rats were the first to arrive on the testing branch, quite early on, and in overwhelming numbers, which have been cut back but will rise again in the future.

Rats spawn when you cut grasses (Hay, Oats, Flax, Reeds) You are destroying their habitat, so they will need to find a new place to live (your pantry.) Rats will not spawn until day 3 so no need to worry until then. Rats also will spawn based on your (days of food / 2) + 1. So you will not see a lot of rats unless you have a large food stockpile (and even then it is currently capped to 10) (It was once 30!)

Rats will spoil your food as they nibble and poop on it. It takes quite a few rats to make an impact though. But if you notice your frozen dried mushrooms losing quality, its the rat poop.

Rats can also pass UNDER doors. So there is no keeping them out. These are rats after all. They are scared of humans and will hide under various objects and disappear, but they are still there, nibbling and pooping. When everyone leaves a room, you will notice them poking their noses back out to cause trouble. They can be fun to watch actually.

To deal with the Rats, there are two options: Build the new Rat Traps, or... CATS!

[h2]Scottish Wildcats[/h2]

Once the Rats have arrived, this will draw the attention of the Scottish Wildcat population. Unlike livestock, the Cats derive their max population based on the amount of prey available. It is 1 cat per 2 active rats.

There is not a notification when a Wildcat arrives, but you will start to notice a new type of den appearing on the map. This is where they will take shelter, and they place these dens when they find a decent hunting ground. The Wildcats prefer rats, BUT they will also eat Rabbits if they cannot find Rats nearby.

The Wildcats do not want to be around humans, but their hunger for Rats will lead them to approach the Homestead and sneak inside unoccupied rooms, under doors (cats are liquid and I have videos to prove it) When they go under a door, they even schooch down.

As the Wildcat spends time near humans (but not too near) its tameness bar will fill. Tameness increases by 1 point per second based on every human in range (about 12 tiles) but will decrease by every human within 4 tiles. It can take a long time to tame this way, but it will happen naturally and does not need to be micro managed. But there is a faster way.

Pet bowls have also been added. When these are placed outside, the Wildcats will use them and start to rely on the Humans more and more. This is a much quicker way to tame, but requires food and daily maintenance.

Eventually the Cat will pick a companion and it will be "Their Human"

[h2]Tamed Cats[/h2]

Once a Cat has become Tamed, (or has been purchased from a trader) it will pick a companion. A Human can have many pets, but a pet can only have one (live) human.

The Tamed Cat has quite a few more AI behaviors than the Wildcat and this list will continue to grow. A Cat isn't a Cat without zoomies, which will be coming.

Tamed cats will try to hunt rats first, then they will use pet bowls,steal meat, and finally they will hunt far away rats or bunnies to keep themselves fed. So they are mostly hands off. Pet Bowls are recommended if you want to keep them away from the meat in the pantry when the rats run out.

Tamed Cats also have an Instinct Bar. Cats do not just hunt when hungry. They also hunt for entertainment. This Instinct bar is emptied as the Cat encounters Rats in its territory. The more rats, the faster the bar drains. Eventually the Cat will be unable to resist and will go hunting once again, slowly stalking its prey, hunching down, and then pouncing. (This is fun to watch as you never know if the rat will get away or the cat will succeed.)

Since the Cat is not hungry when it hunts to refill the Instinct bar, that is where "presents" come in. The Cat can become a decent Rat/Bunny retriever as it makes kills and delivers them to its Cat Bed or Companion's Bed or even the Companion's grave in some cases.

Cats are also social, but not too social. So if they detect their Human is in social distress, they will interact with them, but only a bit. If a Human really needs to talk, they may also find a pet Cat to talk to, but the Cat will only put up with this 5 times a day.

I will continue to work on the Cats, but right now they are definitely far enough along to be a great addition to Clanfolk.

Final note: If a pet dies of natural causes, it can be buried in a nice pet grave, but if you slaughter it, then it's food.

[h2]New Scenario: The Hermit[/h2]

On Discord there is a very popular "Hermit Challenge." I figured what better combination for the Hermit than a whole clowder of cats. This is a very difficult mode and will take a lot of planning, but it is a great way to get Cats early on and the only way to start with kittens.

[h2]Bloodlines, Marry Off / Remarry[/h2]

I have started to track the Clan bloodline now. This may eventually be used to determine the Clan Chief as more year 2+ content comes online. For now though it is used to keep the Family Tree logically intact.

So the rules are that anyone without a parent on the tree (the initial members) or without a partner will be of the Clan's bloodline. The partner who is from the Clan's bloodline is also always on the left side of the pair. Clan members with children cannot leave the Clan since that would prune a large part of the tree.

Ever wanted to get rid of some dead weight? Now you can Marry them Off!

When a worker wants to join the Clan, now you can either have them stay, OR have their potential partner leave with them. This helps keep the population under control, and also gives a hefty relationship bonus from the Worker's Clan.

When a partner dies, they can also now Remarry.

When the dead partner is of the Clan bloodline, then the new partner will take the old partner's place in the family tree (it is unceremonious and I will make this better)

When the dead partner was NOT of the Clan bloodline, they can remarry and leave if they do not have children, but if they do have children they are stuck with the Clan. This is all to keep the lineage intact.

[h2]More Optimization[/h2]

There were even more system optimizations this update to gain CPU overhead and smooth out stuttering.

Large homesteads should run even better now and be a lot smoother when they do. My test case is an 80 person homestead (Please try to stay under 40, but this is a stress test) and it runs really well now, whereas in Update 6 it stuttered often, and in Update 5 was a slideshow.

All Update 7 Change logs


[h2]v0.257[/h2]
  • Fixed (possibly) male pregnancy. I was unable to reproduce this bug, but added some code to make it more impossible than before.
  • Fixed Baby stuck in door juggle caused by baby in a locked door when picked up.
  • +1 fun thing to discover for yourself (It was Rats)


[h2]V0.258[/h2]
  • Cut the rat spawning down until Cats are ready.
  • Max Rats now 5 (was 30)
  • Rats will not appear until day 3
  • Fixed Rats eating bowls along with their contents.
  • Rats appear when any grass of reeds are cut (10% chance)
  • Rats can move and hide under objects
  • Rats add a small amount of spoilage to items/storages on the tile where they eat
  • Rats add "RatFilth" in the areas where they eat. It is ugly, and may spread disease later.
  • Rats are most active at night and will only eat during the day if starving
  • Cats have been in the works all weekend. Keep an eye out for their arrival in subsequent versions.


[h2]V0.259[/h2]
  • Fixed Traders bringing cats by accident
  • Upgraded Entity ID system to fix possible collision in ID's if a game was started new after loading another game.
  • Fixed dead bodies that had rotted appearing as naked grey zombies with yellow hair
  • Probable fix for sometimes family trees getting broken due to rotten bodies.
  • Wildlife Spawner added. This will allow Wildlife to come to the map when certain criteria are met
  • Cat and Rat door indicators colored gold correctly because they go under doors (don't need keys)
  • No birth announcements for wild animals
  • All Clans will want to buy Tamed Cats.
  • Added Callout when animals tamed
  • Baby animals will inherit wild/tame from mother.
  • Baby Humans and Pets do not break room privacy
  • Tamed Wildcat is considered a Pet
  • Wild animals only breed with there is not overpopulation vs prey
  • Wild animals that are not classed as vermin(rats) will try not to wander around indoors.
  • Taming currently semi works. Proximity to humans will acclimatize the cats to people and they will gain tameness over time. BUT if people get too close, the cats will lose tameness as they flee. You should not need to micro manage this, and there is a food bowl coming soon that will also help with this. The act of catching rats should be enough to tame the cats over the course of a few days (theoretically)
  • Cats are about 50% done, but due to the earlier cat leakage, I decided to push this cat upgrade incrementally to improve the game for those who already have cats in the testing branch. This also helps me with testing too.


[h2]V0.260[/h2]
  • Fixed bug caused from the addition of the Tameness attribute that could cause some units to pause out permanently
  • Found but so far cannot fix issue where if you alt-tab while loading a world, AND your chosen resolution is not the same as your desktop resolution it will cause the cursor to be offset. Will add this to the FAQ so we at least know what causes it and how to avoid.
  • Added a pounce and stun mechanic to the cat's attacks making them much more effective in catching the sneaky rats.
  • When cats go into stalking mode, they crouch down now while they sneak up.
  • When Buying and Selling animals, it will show their names to make them more easy to identify (if you named them)
  • Fixed Traders buying Wild Cats.
  • Possible fix for Cats getting stuck not eating or drinking (I can't reproduce this one, if you do please let me know)
  • Fixed Wild Cats Starving/Thirsting to death (They will eventually leave when food runs out in the future)
  • Fixed Wild Cats stealing food like the rats (that is what the rats are for) Tame cats will eat human food though.
  • Cat spawning is now triggered based on Rat population and not rabbits. This will keep the cat population in line with the rat population
  • Cat pregnancy 9->12 days
  • Cats max births from 4 -> 3 (chance of each next kitten after the first one is currently 40%)
  • Cats will not spawn until Day 3 like the Rats
  • 1 Cat is always allowed to spawn, even if there are no Rats.
  • Wild Cats will still eat Rabbits, but they much prefer Rats and the Cat population will be lower now.
  • Cats are much less likely to go into the lake to find drinking water. They should re-evaluate and find shoreline much more quickly now.
  • Tamed Cats will not go after Rabbits and prefer Rats and Human Food
  • Tamed Cats will stop breeding once there is too much over population. Tames allow for more overpopulation than wild cats do
  • Forest and Plains Clans will Supply Tamed Cats, Mountain and Coastal will want Tamed Cats
  • Tamed Cat base price increased from 80->120 and rarity increased from Normal to High (you will see them less often)
  • Wild and Tamed Cats can eat snow in winter as a last resort for water
  • Wild Cats/Rabbits will prefer to not make dens near human areas - checks vs beds, doors, and to determine if an area has human smell
  • Baby Humans prevent Private Room again. I didn't realize they were being used as Birth Control :)
  • New Human Avoidance System: Rabbits and Wild Cats will want to avoid areas with Humans and will wander to areas without humans/structures if they get too close to their territory.


[h2]V0.261[/h2]
  • Reordered the Cat AI to make them survive better
  • Tamed Cats are allowed to Hunt Rabbits again if no Food is available
  • Wild Cats will keep their dens further apart and will require more grass in the area to determine if a den is in a good spot


[h2]V0.262[/h2]
  • Added Cat Beds!
  • Slowed down animals wandering to get away from humans so they do not kite the humans hunting them so much
  • Upgraded Chaining tasks to override the working hours logic so bunnies do not get dropped when sunset happens
  • Applied sunset override to building/crafting tasks such that if items have been picked up, the job is allowed to finish
  • Also applied sunset override to hauling tasks such that if the haulable item is in the workers hands, the job will finish and not be aborted.
  • Added new handling code to the unit's AI brains such that if they encounter a major bug, they will not get permanently get locked down.
  • Fixed case where Boosting priority on fire fighting could cause brain lockdowns
  • Fixed issue with haul task that could sometimes cause a task paradox that spammed the log/temporarily blocked task rethinking
  • 12x Sleep Speed is now also allowed when units from other Clans are leaving but all the Clanfolk are sleeping.


[h2]V0.263[/h2]
  • Fixed Smithy, Meat Smoker, and Kiln having a low burn speed and catching on fire in rare cases
  • Cats now have an Instinct attribute. The less full the bar the less satisfied their urge to kill has become. The more prey items in the local vicinity, the faster this bar depleted and the cat goes on the hunt.
  • Added instinct hunting. Cats will prefer rats that are close by, but if their instinct bar gets low, they will look farther away and will hunt rabbits as well. This means Cats will kill more than they need to eat (for fun)
  • Units will now track their last bed. This gives cats a place to stash "presents" for their favorites.
  • Pets can choose a Companion. This will be "My Human" and the Pet will prefer that person.
  • Small units and Pets will not break room privacy. So no pigs or cows in private rooms, but rats and cats are ok.
  • When cats are hunting by instinct, they will try to bring the kill home to their bed or their companion's bed (note the kill cannot be directly on the bed due to the rule that items cannot be on top of objects. So the kill we be dropped on the floor nearby.
  • Fixed cats becoming invisible if their den is destroyed while they are inside
  • Cats will not be satisfied hunting/eating already dead animals for Instinct/Normal Hunger.
  • If Cats really feel the need to hunt, they will abort seeking shelter and hunt. Sometimes they just need to murder things.
  • If a Cat is starving and there is no food to hunt nearby, and there is no prey, they will be willing to scavenge dead animals as a last resort.
  • Cats will not stalk dead prey. They just walk right up.
  • Cats will sometimes bring presents to their previous owner's grave.
  • The new Instinct Attribute + the Tamed Retrieve (Present Hauling) means that players can harness their pet cat's instincts for pest control as well as rabbit hunting and delivery.
  • Note, cats pick their companion when tamed, but will also try each morning if needed.


[h2]V0.264[/h2]
  • Fixed issue where a unit could get stuck trying to haul a body to a grave that it could not get to.
  • Optimized Fire Places so that they do not calculate their global heating per frame. (CPU savings)
  • Reworked some code that was producing garbage unexpectedly. HashSet.UnionWith surprisingly. (CPU savings)
  • Reworked some game object ID's that I found generating garbage (CPU savings)
  • Moved the Affliction updater to a time sliced manager so they are not all updated for every entity per frame (CPU savings)
  • Above provides an additional 15% CPU headroom on very large homesteads. Will have less effect on more reasonable sized ones, but there will be some improvement there too
  • Changed Build/Crafting task finishing at Sunset to only continue if the task was chained from another. Was seeing too much starvation caused by this.
  • Fixed case where if a baby dies before it was half way to juvenile, that it would prevent future pregnancies forever due to it being detected in that state forever. Will add a mourning affliction later for cases like this.
  • I now track the Clan bloodline. Eventually this will be used to determine if the bloodline has died out and also for choosing a Chief.
  • If a Clan member has children, they cannot leave the Clan. It makes too much of a mess of the family tree.
  • Remarriage is now possible for members of the Clan bloodline if their partner dies. This keeps the family tree intact.
  • Non bloodline Clan members can also remarry but they must leave the Clan to do so. (also no kids rule still applies)
  • It is also now possible to "Marry Off" units of the Clan bloodline to other clans. (Dead weight should be nervous now)
  • There is a large reputation bonus for marrying off a Clan member (+200)
  • There is a small reputation bonus for marrying a new person into the Clan. (+50)
  • Base price for Tamed Cats is now 150 Coin (Was 120)
  • Tamed Cats are possible starting animals now!


[h2]V0.265[/h2]
  • Fix/Workaround for an issue where a Fertilizer bag could get set to count 0 and then cause some AI lockdowns.
  • Upgraded Roof blueprint system so the roof tiles that currently have support and can be built will be more visible than the ones without support yet.
  • Upgraded Roof blueprint system so that stopped tiles are taken into consideration when doing the support checks for the support viewer.
  • Fixed case where it was possible for a worker to get stuck with the manure basket when the poop was just out of range and they were done following their path because there was a wall in the way.
  • Fixed case where if a Clanfolk was at 0 warmth, and the target bed was in a room < 0c AND the unit was in a doorway it could cause some AI indecision as the bed was seen as viable and non viable as the unit changed zones (this is the up/down bug in doorways when people freezing and tired)
  • Note: Units will not sleep in beds in rooms < 0c
  • Fixed Hauling/Till Soil indecision when Hauling is a higher priority task than farming and there is nothing to haul but the hoe that is currently carried
  • Tilled soil now chains like add water and add fertilizer.
  • Fixed Water/Fertilizer Chaining so that the Clanfolk with stick to one or the other and not alternate when chaining tasks (prevent pointless walking)
  • Planting tasks will also chain now.
  • Removed ownership from Hay Trough, Grain Trough, Water Trough because it was causing livestock to not use them
  • Pets will not disturb sleep. (Rats running around will though)
  • Turned off rabbits fleeing from dead rabbits for now. It lead to some bad cases.


[h2]v0.266[/h2]
  • Fixed wild cats animals showing up in the player's trade count for males and females
  • Fixed blueprints showing Flammability None when it should show the flammability of the object once it is built.
  • Changed default priority for DrinkZone and Well from 5 to 8 to make water jug filling happen sooner
  • If a Cat dies of old age or starvation, it will be marked as a pet and will not be sent to the butcher block. Was too horrifying.
  • If a Cat is marked for slaughter, it will cease being a pet and will be butchered as normal (in case of emergency)
  • Added Pet Graves. These will be auto assigned like normal graves


[h2]V0.267[/h2]
  • Fixed case where if a baby was in a doorway, sometimes the task to help them would get cancelled. (Was also true of patients in doorways)
  • Fixed Cats in Pants
  • Fixed Death announcements showing on wild cats
  • Fixed Traders spawning with animals with very low care and health.
  • Livestock is now Auto Sorted by Type, Sex, and Age.
  • Fixed button toppers in the unit selection menu updating correctly on the Livestock as they are bought and sold
  • Added Pet Bowls. They take raw meat/fish and water to fill and are much more efficient than having the Cats raid the cupboards when they cannot find rats
  • If pet bowls are placed outside, they will attract wild cats (if there are no rats/bunnies to hunt nearby) When the wild cat eats out of the pet bowl, it will gain extra tameness


[h2]V0.268[/h2]
  • Fixed Meat Rack and Serving Basket taking some of the wrong ingredients due to v0.267
  • Fixed case were sometimes Clanfolk would be so focused on their job that they would poop themselves.
  • Added new type of "Normal" task chaining that will not override attribute checks before the next chained job is picked. This will allow people to take care of critical attributes/boosts. Cases of this are Building, clearing tiles, and collecting poop. Other tasks like hauling bunnies back to the butcher block use priority chaining and will not be overridden by attribute needs (unit is heading home anyway so no need to override).
  • This should lead to fewer cases of units getting latched onto long term jobs like clearing a field even into sunset.
  • Fixed babies not being able to follow parent inside houses when wandering. It only was working properly outside.
  • Added "Animal Companion" task where Pets will sense their Human's social is low and hang around trying to cheer them up
  • Added "Loving Pet" affliction where contact with a pet will increase Social, Fun, and Mood.
  • Fixed case where people in Time Off mode could get stuck playing the flute forever
  • Clanfolk can now talk to pets to raise their social bars!
  • Cats will only be receptive to being talked to when they detect that their Companion is lonely (0.25 Social attribute) They will also stop wanting to listen or interact with the Companion when their Social attribute is above (0.5) They care, just not that much...
  • Cats will only put up with being talked to 5 times a day. After that, they have enough, and their Companion will need to fine love elsewhere.


[h2]V0.269[/h2]
  • Fixed rats using bunny holes as a warp gate network when they were hiding
  • Fixed traders not showing details for inventory items in their inventory if they were still locked for the player
  • Fixed Cat Tamed Callouts re-triggering from use of the pet bowl
  • Increased Cat's lifespan from 2->3 in game years. Feel more like companions if they survive a bit longer.
  • Cat pregnancy time increased from 12->15 days
  • Fix for giant red exclamation point when an object that takes multiple crafting ingredients has no feed options (like a hay trough with no available hay)
  • Fixed "Hauling Ballet" When a full high priority Storage object had one item removed, and then everyone available tried to refill that slot at the same time.
  • All hauling reservations are now set earlier in the task logic so there should be little to no hauling overlap between units.
  • Added concept of multiple reservation to container objects, so that as long as there is space, multiple slots in a container can be filled at once.
  • Added some safety code to prevent Married Off Clanfolk from disappearing in the middle of the map instead of the edge, but I also have not been able to reproduce this.
  • Added system to keep track of Clan members when they leave a Clan for a new one. This allows relationship data to stay intact even when the character is de-spawned.
  • When Clan Members are Married Off they no longer disappear from the Family Tree and instead get graphic showing what Clan they married into and who they married.
  • Parents are now able to retain their married off children's names in their child lists when their selection panel is active.


[h2]V0.270[/h2]
  • Fixed livestock being added to the family tree when they were sold.
  • Added Leather Pants
  • Added Wool Shirt


[h2]V0.271[/h2]
  • Added Medical Treatment task indicator for when Clanfolk try to take care of their afflictions themselves. The task was showing up blank and looking like an error.
  • Fixed case when Clanfolk leave the map that was causing a new task evaluation after their deletion, this caused some nasty bugs. (introduced in V0.269)
  • Fixed Family tree getting filled up with entries when Traders/Workers/Guests Spawned.


[h2]V0.272[/h2]
  • Updated Hungarian
  • Updated Simplified Chinese
  • Updated Traditional Chinese
  • Language selection is now saved
  • Humans can now "Eat Snow" at Lakes in Winter like animals, but it they will only try this when dehydrated and when their health is < 70% as a last resort to stay alive. This will also cool them down quickly.
  • Added Low Profile Rat Traps that can be rotated and sit next to walls (The Snare hallways were getting ugly) These will only catch Rats, not Bunnies
  • Snares now only catch Bunnies again.
  • Upgraded Localization system to better support languages where words have associated genders.


[h2]V0.273[/h2]
  • Fixed Hauling issue introduced in v0.269 where nearby items to the carried haul items were not also being carried back to stockpiles
  • Updated French
  • Set Rat traps to not unlock until Day 3 (Since no Rats before day 3)
  • Fixed Clan Setup Menu Custom games not working the first time due to Localization Upgrade for gender support in languages.


[h2]V0.274[/h2]
  • Made Milk less desirable for eating/drinking so it is more likely to be left alone for Cheese
  • Updated Hungarian
  • Updated German
  • Fixed bug preventing high priority builds from being serviced when there were not enough resources. When priority has been raised, units are allowed to deliver resources to those builds so that other less expensive builds do not prevent more complex but higher priority ones from completing.
  • Fixed Vents that are open on 3 sides only venting in the two visible directions across from each other. Could sometimes cause heat leakage when not building full walls to enclose the vents on two sides.
  • Applied Vent fix to doors and windows so they will only transmit light or units in the desired direction.
  • Made Recluse Affliction less nasty. When Isolated happens (social reaches 0) There is a 25% chance of recluse happening (Leave Me Alone) Lowered duration from 1200 to 600 seconds, and Mood Penalty from -3000 to -1500
  • Added concept of Human Privacy vs Animal Privacy. So for pregnancy checks and public pooping checks, only humans in the room count.
  • Updated Brazilian Portuguese


[h2]V0.275[/h2]
  • When highly zoomed in, it is now possible to view off the edge of the map so items are not covered by the interface.
  • Updated Simplified Chinese
  • Updated Traditional Chinese
  • Made "Died of Old Age" listed as cause of Death when less than 10% life bar left since the death due to hunger or thirst will be because the health bar is so short at the very end of life.
  • Added a check/fix for cases where an object gets locked in InUse state (seen with Bathtubs, but could not reproduce why)
  • Fixed case where Dead Bodies in Graves could cause logic lockdowns when Wild Cats checked for Taming.
  • Fixed case where Doctors were checking people in graves as viable patients, sometimes causing task lockdowns
  • Fixed case where when cleaning at Sunset when units had no attribute bars that needed filling, they would walk to something to clean and then just nope out and go to bed instead. I mean yes I feel that way sometimes too :)
  • Fixed issue that prevented Cats from using PetBowls/Water Troughs/Meat Theft at night


[h2]V0.276[/h2]
  • Fixed Building tasks that use tiles (walls, roofs, floors) and also use tools, and ALSO where hauling is a higher priority than building AND there is nothing left to haul such that 1 tile is not built at a time and then the tool is taken back to the rack on repeat
  • Major performance upgrade to the path finding system that can now cache path data. Removes a great deal of stuttering for large homesteads!
  • Updated Japanese
  • Turned off Ownership for Cat beds until it is possible to assign ownership to Pets.
  • Updated Cat naming with Tomcat and Molly (Male/Female)
  • Wild Cats and Bunnies will not make Dens on Tilled Soil (or dig through any floors)
  • Added "Hermit" Scenario. Start alone aside from 2 cats and 4 kittens
  • Fixed duplicate sell text when selling animals in the Clan Setup menu


[h2]V0.277[/h2]
  • Removed path finding optimization. Turning it off for now while I find the error. :(


[h2]V0.278[/h2]
  • Changed Adult female cat from Molly to Queen
  • Fixed the path finding optimization, Nursing Babies were causing task indecision with the cached path data since in that case they are able to pass through doors to get to their mother.


[h2]V0.279[/h2]
  • Strict Skill Priorities Defaulted back to ON. All tasks of higher skill priority are completed before any tasks of lower skill priority. This works much better long term as the homestead grows. This can be toggled OFF in Settings/Gameplay and priority will be a mix of skill priority and task priority. Non Strict works well for year one with few people, but in later years becomes a headache to assign roles to people.
  • Updated Spanish


[h2]Next Top Priorities[/h2]
  • Getting Hunters to Haul Bunnies when they are cold [DONE Update 2]
  • Preventing personal needs from breaking chained tasks [DONE Update 2]
  • Keeping fires lit overnight [DONE Update 3]
  • Automating burying loved ones [DONE Update 4]
  • Fixing bed owners stealing unclaimed beds, blocking them [DONE Update 4]
  • Wells duplicating water jugs somehow [DONE Update 4]
  • Upgrading the Boost System to also read skill ordering for decision making [DONE Update 5]
  • Any and all cases of a movement stuck problem causing starvation [DONE Update 5]
  • Performance upgrades for very large homesteads 40+ Clanfolk 100+ Livestock [DONE Update 6]
  • Carrying Tools back home better [DONE Update 7]
  • Cats and Rats [DONE Update 7]
  • System to make large task counts and over boosting less attractive to new players
  • Tutorial system upgrades for Fall/Winter to help with preparation
  • Better explanation of the priorities system to lower frustration


[h2]Road Map[/h2]

There is a lot more to come! Please take a look at the Road Map for further long term details as well.

https://store.steampowered.com/news/app/1700870/view/3388412789658793666

Thanks again people on the testing branch. It helps keep the main branch stable. If you like quicker daily updates, come join us in the testing branch too :)

Library->Clanfolk->Properties->Betas->testing

Diving back into the code now.

Andrew Hume (Blorf)
MinMax Games Ltd.

Update 6: Performance BOOST!

Hi Everyone,

So I spent the last week in a nerd trance optimizing Clanfolk. The homesteads have gotten bigger than I ever expected and performance was suffering. It was time to roll up my sleeves and break some code :)

This update took longer than expected (8 days,) and I included all the changelists below so that you can see the fine details/suffering if you are interested.

[h2]The long story short is that Clanfolk now runs a LOT faster.[/h2]

Please be advised, I reworked a lot of core logic and may have broken a few things. The testing branch team has been awesome in finding bugs as I made optimizations, but there may be a few left. I will fix these as fast as I can in the form of hotfixes.

I also plan to be here on Steam and on Discord more again starting today again. The optimization work was complex and intense, so I had to block everything out as I worked.

I also plan to take a day or two off soon. For at least the last 2 months I have been working 16 hour days 7 days a week, and I think that I better stop that for my long term health. I have been in emergency mode for release and then the follow up flurry of bug fixes, but now I would like to get into a mindset of a marathon again where I provide content and bug fixes at a regular, but sane, pace. In the long run this will also make the game better.

[h2]Starving Animals Fixed[/h2]

I am calling this one out specially as it was one of the core reasons for the optimizations. I am sorry that it took so long. Some of the CPU gains that I made were applied to making the Livestock brains update faster. This should be the end of those trough starvations.

[h2]Large Homesteads Note[/h2]

So Clanfolk can now comfortably support 40 humans and 40 Livestock. Eventually there will be some soft gameplay push back as populations get too high since Clanfolk is not designed as a city simulator. The AI is just far to deep to support a huge number of agents at once. To me 40 Clanfolk already looks like an ant colony, but it works now at least :)

[h2]Large Task Count (Fewer Tasks Are Better)[/h2]

There are warnings coming for huge task counts. In some cases I was seeing 200+ Tasks per Unit which is just far too high. It is really not in your best interest to have that many tasks as all those tasks are constantly being evaluated by the AI as well as creating a huge work backlog for the units before they can get to lower priority tasks. They essentially get locked down.

People work around these lockdowns using Boost, but that makes things worse since Boost is an emergency tactic pulling all attention towards one task. Players who keep their task count low (300 or less) and use Boost sparingly report having a much better time and report the AI doing quite well in completing tasks.

[h2]V0.247[/h2]
  • Made Non Strict Priority checking more efficient
  • Optimized task checking substantially such that checking for new tasks while other tasks are in progress happens less often, saving CPU
  • Optimized all "feed object" tasks such that they will only see valid target objects before any expensive checks begin


[h2]V0.248[/h2]
  • Fixed problem introduced due to optimizations in v0.247 that prevented cooking


[h2]V0.249[/h2]
  • Upgraded haulable system to better handle large numbers of haulables late game
  • Upgraded to a newer TextMesh Pro, saving CPU by disabling Text Scaling of all things.
  • Optimized the roof support updater for blueprints. Saves a lot of CPU when there are lots of roofs active.
  • Optimized window lighting
  • Optimized entity distance searches around walls


[h2]V0.250[/h2]
  • Fixed oddly drawn windows and vents as a result of v0.249


[h2]V0.251[/h2]
  • Cached tool finding code for large numbers of construction jobs, large CPU savings
  • Added new internal build task sorting system to prioritize and cull build tasks better. fixes many large hitches when there are lots of build tasks.
  • Added cached string system to lower memory usage in the Jobs Menu (reduces hitching)
  • Haulable system checks for haulable destination stockpiles over time instead of on demand (reduces hitching with lots of haulables)
  • Upgraded the Tasks Menu Updater to make it take 5x less CPU.
  • Improved memory management with tilemaps.
  • Fixed broken baby carry due to an optimization in v0.247. No more floating babies
  • Clanfolk will only go after spoiling food to eat with higher desirability if it is in a stockpile (no more berry parades)
  • Applied some CPU gains to making the task system update faster at higher time scales. This should lead to more consistent behavior at high speed
  • Added new high priority Livestock task manager to make sure that they get enough updates when eating when there are a lot of livestock
  • Added an update multiplier to task manager based on current unit count vs reference count of (20) So at 40 units, there will be double the updates (and cpu cost) But things should run more consistently.
  • Starving Animals At Troughs Fixed!


[h2]V0.252[/h2]
  • Updated French Language
  • Fixed case where packing up an object on top of floor or roofs being built could disable those build jobs permanently
  • Fixed cleanup of build tasks in the new optimized system that could lead to packup orders being ignored.
  • Optimized PackupManager such that is tracks only the pack up object instead of all objects because it gets out of hand fast with huge homesteads.


[h2]V0.253[/h2]
  • Removed a bunch of spam that tends to bloat the log files without providing useful info
  • Added a sanity checker to try to catch error cases with haulable lists and repair them
  • Added possible fix that could cause a null entry to be added to the haulable list after an items destruction if timed just right
  • Optimized the Attribute Updater to use less memory and skip inactive attributes.
  • Fixed haul not calculating its relative priority to other tasks properly in non Strict Skill Priorities (everything was at priority 5)
  • Upgraded Closest Entity finder to categorize items in such a way that very large item counts are less of a problem CPU wise.
  • Upgraded Attribute Manager with mass item finding system
  • All foods given an equal +2 priority offset so hauling of different food types is consistent but prioritized over normal items
  • Update Clear Tile and Harvest Tile to segregate their tasks by related work skill to lessen the impact of large masses of tasks
  • Time Sliced the task update manager to remove the 1 second hitch that was sometimes visible under heavy cpu load.


[h2]V0.254[/h2]
  • Fixed broken auto farming from V0.253


[h2]V0.255[/h2]
  • Fixed build tasks that require a tile to be cleared beneath them not showing up in the task list.
  • Fixed task priorities on tasks on top of tiles that need to be cleared being ignored (was using the skill priority of the clearing task)
  • Added better handling for paths that take a long time to return. Causes a lot less re-pathing also better task persistence
  • Added new Trapped Detection that will trigger if a unit is in a room < 50 tiles with no way out. This prevents recurring expensive task finding calcs
  • Added a Trapped Alert.


[h2]V0.256[/h2]
  • Changed: Babies trapped state is not checked vs doors since they tend to be carried through doors and don't carry keys
  • Fixed non built crafting objects being valid for the auto supply checks, sometimes causing the auto supply to fail until the object was built.
  • Fixed Seniors not getting private room bonus
  • Fixed Bunny Dump at Butcher Block not working when the Butcher Block is reserved and there is no corpse stockpile.


[h2]Next Top Priorities[/h2]
  • Getting Hunters to Haul Bunnies when they are cold [DONE Update 2]
  • Preventing personal needs from breaking chained tasks [DONE Update 2]
  • Keeping fires lit overnight [DONE Update 3]
  • Automating burying loved ones [DONE Update 4]
  • Fixing bed owners stealing unclaimed beds, blocking them [DONE Update 4]
  • Wells duplicating water jugs somehow [DONE Update 4]
  • Upgrading the Boost System to also read skill ordering for decision making [DONE Update 5]
  • Any and all cases of a movement stuck problem causing starvation [DONE Update 5]
  • Performance upgrades for very large homesteads 40+ Clanfolk 100+ Livestock [DONE Update 6]
  • System to make large task counts and over boosting less attractive to new players
  • Carrying Tools back home better
  • Cats and Rats


Thanks again people on the testing branch. It helps keep the main branch stable. If you like quicker daily updates, come join us in the testing branch too :)

Library->Clanfolk->Properties->Betas->testing

Diving back into the code now.

Andrew Hume (Blorf)
MinMax Games Ltd.

Update 5: Better Priorities!

Hi Everyone,

For Update 5, I focused on getting the Clanfolk to get jobs done better. There are lots of bug fixes and tweaks listed below as well, so please take a look if you are interested in the fine details :)

Let's dive into the changes.

[h2]Experimental Non-Strict Skill Priorities[/h2]

So there has been a lot of discussion about what I will call the Strict Skill Priority system on both Discord and the Steam forums. Here is the relevant question from the poll.


Assume Cooking Skill at the top, Crafting skill under Cooking, Haul at very bottom for the Unit.
Assume Cooked Eel Task Priority 2
Assume Craft Stone Axe Priority 7
...11 other skill entries here....
Assume Haul Large Rock Priority 10

1. Highest priority TASKS are always selected first - All level 10 tasks done first regardless of associated Skill type. Haul, Craft, Cook
2. All Tasks within the highest priority SKILL are always completed first - Then all tasks of the next highest priority SKILL are completed. Cook, Craft, Haul
3. The priority of both the Tasks and the Skills are combined to guide picking with the highest combined value being picked first. Craft, Cook, Haul


The question was, how did the priority system work. The answer (was) #2 That was Strict Skill Priorities and they still can be used by selecting Settings/Gameplay and ticking the box, not to worry. This system works quite well for about half the people, but is not friendly to newer players who expect the priority on individual tasks to play more of a global role.

SO, this brings us to NON-Strict Skill Priorities, which are a new experimental feature that has been defaulted to as a test. As I say, turn Strict Priorities back on in settings/gameplay if you run into problems with it as it is quite a different method of handling tasks scheduling.

The new system is #3
So Skill priority AND task priority work together to create the task ordering. This means that you should not have to touch the skill priorities very often and instead manipulate task priorities more. So a very high task priority will be seen by more people and sooner. The rule is, to jump in front of a higher priority skill, the task needs to be 1 priority level higher that and task for the higher skill.

Reports on this new system so far have been positive, but it is an adjustment for people who understand #2 really well. I would like to hear your thoughts as well in the forums. I have not decided which should be the default system.

#2 (old) Task ordering localized inside of skill ordering
#3 (new) Task ordering more global but influenced heavily by skill ordering

[h2] Smarter Priority Boosts [/h2]

Priority Boosts also get an upgrade (Soon to be called Emergency Boosts.) They used to all be equal and picked by the next available unit based on distance, but now they are weighted by the unit's own skill priorities. So this means in general the more correct/skilled person for the job will work on the priority boost, and they will less often all get locked down doing a nearby job, ignoring all other boosts.

That being said...

Priority Boosts are not a good long term solution. There is another poll about this in the forums discussing the dangers of overuse. They are really meant to be used to quickly achieve a task and then turned off since they completely bypass the normal task selection procedure and are very inefficient long term.

The combination of large numbers of tasks and large numbers of boosts to complete tasks seems to be the root of many of the complaints about the AI not doing what it is told. I am looking at ways to make it more clear that large task counts and boost overuse is dangerous.

[h2] Task Chaining [/h2]

Another new experimental feature is task chaining. This is used to have jobs serviced in groups. There was a problem of cutting a single tree, then dragging the logs home right after due to hauling being a higher priority than lumber, or perhaps there was a new boost task that becomes available. Anyhow now most job types will try to chain to the exact same task nearby.

The Clanfolk do get fixated on similar tasks nearby now though, so it is a much better to select 10 trees to chop vs 1000 or else that unit will be locked down for a very long time once they start to chopping.

[h2]V0.241[/h2]
  • Updated Hungarian Translation
  • Upgrade to the Trade window to allow scrolling in the buy and sell portion. - This one ended up eating up way more hours than expected. I will try to get a set of smaller bugs fixed next that take less time. This bug was a priority because it hid items off screen.


[h2]V0.242[/h2]
  • Increased Bread Oven's heat output from 6c over 27 tiles to 7c over 48 tiles
  • Guests no longer tend fires. It sometimes put them in situations that lowered satisfaction too much.
  • Fix for case where all Clanfolk would stay awake if there were humans or animals needing doctoring but there was not bed to place them in.
  • Fixed case where Workers who joined the family left their clothing marked as not droppable, causing they to stay on in the wrong times of year.
  • Fixed case where Clanfolk could get forever stuck when they were trying to clean or collect poop from hard to reach locations
  • Fixed a case with task indecision where the Unit would want to sleep, but travelling through the cold would make them too cold to sleep so they would do something else and warm up, then want to sleep again. Happened when had to walk long distances in winter to get to their bed.
  • Wood Ash recipe 1:1 with the Bark consumed now. So doubled the output. More fertilizer!


[h2]V0.243[/h2]
  • Fix for carried humans and animals having their priority reset each time they are picked up.
  • Added Toggle in Settings/Gameplay for Strict Skill Priorities, currently defaulted to off. Strict Skill priorities is how priorities worked prior to v0.243. Definition: "ALL Tasks within the Highest Priority SKILL are always completed first"
  • Note: Non-Strict Priorities are experimental currently, but are currently Active. Please turn Strict Priorities back on if you run into problems or dislike it. I am just trying to get lots of testing on this experimental system
  • New Smarter Priority Boost System. Instead of just looking at distance for priority boosts, it also uses the Units skill priorities to pick what
    the next boost to attempt should be.
  • Auto Water and Auto Fertilize tasks given neutral priority (5) instead of low priority (2) This should lead to these tasks being picked more
    often now.


[h2]V0.244[/h2]
  • Added a Sanity check to Abort Tasks if the task cannot progress due to a loss of pathfinding.
  • Fix for case made much more visible in v0.243 where testing a potential Haul task could cause the Unit to drop their carried item. This could happen at a time when the item was already expected to exist by another task causing all manner of hard to find suffering for the Dev. From the player perspective this was the reason Clanfolk stood there forever holding a poop basket.
  • Upgraded Hauling Task to prioritize hauling carried tools back.
  • Skill Priority has 1.5x the weight of Task priority vs 1:1 before
  • Hauling skill weight is not so heavily tied to distance when it comes to non strict skill priority mode, so far hauling tasks do not need to be so heavily weighted to be used.


[h2]V0.245[/h2]
  • Added a sanity check for poop collection that in the case where the task started with the the wrong tool being held, it was possible that the task could get locked up for a long period of time.
  • Fix for Manure Basket Collecting such that the entire local area will be cleared of poop until the basket is full before it is hauled back.
  • Added Task Persistence to Harvesting Tasks such that when a harvest ends, Units will try to find another similar task within 15 tiles. There was a problem of units being pulled off of their harvest tasks after harvesting 1 tile, this was due to boosting intercepting the unit's task priority before the next similar task could start.
  • Task Chain will now break the task series if the Unit is too hungry, tired, etc. Units won't work to death stuck in a task chain.
  • Clear Tile Tasks like Cutting Trees or grass or mining all try to chain now as well.
  • Auto Harvest base priority increased from 2->5
  • Fixed a case in the evaluating the haul task that could cause paths in active tasks to be stopped, causing the active tasks to pause out indefinitely.


[h2]V0.246[/h2]
  • Fixed priorities for cleaning tasks not being evaluated correctly when comparing to other tasks using non strict skill priorities.
  • Fixed Doctoring priority such that with non strict priorities, Doctoring and baby care are less easily bypassed for non emergencies
  • Lowered Task Chaining range from 15 to 7 tiles. Don't want units fixated to the same task over such long distances.
  • Lowered Gong(Manure) Collector task chain range from 20 tiles to 12
  • Add/Auto Water and Fertilize will now also Task Chain within 7 tiles to keep the jobs more persistent


[h2]Next Top Priorities[/h2]
  • Getting Hunters to Haul Bunnies when they are cold [DONE Update 2]
  • Preventing personal needs from breaking chained tasks [DONE Update 2]
  • Keeping fires lit overnight [DONE Update 3]
  • Automating burying loved ones [DONE Update 4]
  • Fixing bed owners stealing unclaimed beds, blocking them [DONE Update 4]
  • Wells duplicating water jugs somehow [DONE Update 4]
  • Upgrading the Boost System to also read skill ordering for decision making [DONE Update 5]
  • Any and all cases of a movement stuck problem causing starvation [DONE Update 5]
  • Carrying Tools back home better
  • Performance upgrades for very large homesteads 40+ Clanfolk 100+ Livestock
  • System to make large task counts and over boosting less attractive to new players


Thanks again people on the testing branch. It helps keep the main branch stable. If you like quicker daily updates, come join us in the testing branch too :)

Library->Clanfolk->Properties->Betas->testing

Diving back into the code now.

Andrew Hume (Blorf)
MinMax Games Ltd.

V0.242

V0.242
  • Increased Bread Oven's heat output from 6c over 27 tiles to 7c over 48 tiles
  • Guests no longer tend fires. It sometimes put them in situations that lowered satisfaction too much.
  • Fix for case where all Clanfolk would stay awake if there were humans or animals needing doctoring but there was not bed to place them in.
  • Fixed case where Workers who joined the family left their clothing marked as not droppable, causing they to stay on in the wrong times of year.
  • Fixed case where Clanfolk could get forever stuck when they were trying to clean or collect poop from hard to reach locations
  • Fixed a case with task indecision where the Unit would want to sleep, but travelling through the cold would make them too cold to sleep so they would do something else and warm up, then want to sleep again. Happened when had to walk long distances in winter to get to their bed.
  • Wood Ash recipe 1:1 with the Bark consumed now. So doubled the output.

V0.241

- Updated Hungarian Translation
- Upgrade to the Trade window to allow scrolling in the buy and sell portion.

The trade window rebuild took longer than expected, but it can now handle infinite items for buy and sell without anything going off screen. :)