userMaverickcancel

2,165 Commits over 822 Days - 0.11cph!

Yesterday
Merge from livestock_animals, livestock reword (removing old age, simpler owner etc)
Yesterday
Merge from main
Yesterday
- Add better debug drawing commands to test cows pens and diagnostic problems with them not eating / reproducing etc, that work on client - Limit herd size to 5, and increase herd detection distance to 40m
Yesterday
Move the shared AI test prefab paths from AITestFixture into a new AITestUtils so client tests use them instead of keeping their own copies
Yesterday
Fix test that sometimes randomly fails in editor because server and client share one TOD_Sky
Yesterday
Rework how outdoor herd sized are measured to make the 9 max herd cap more robust, instead of each cow checking only their neighboors, each neighboor checks their neighboors recursively Stretched herds no longer then allow the cap to be bypassed Perf is same, because then the other cows don't need to run their own queries, so the same total amount of queries are run Wild cows are skipped as they can't reproduce so don't need to know about their herd size
Yesterday
Fix lamb not using the same eye/mouth mask as adults, and having their eye/mouth tinted brown/black
Yesterday
- Fix client pooling not resetting livestock stats properly, showing incorrect or fluctuating stat before first network update - When a cow has no owner, the owner UI is replaced with "no owner, feed at a trough to claim" - Fix trust UI showing "can breed" even though trust doesn't factor in breeding anymore, instead show "will defend you" - Rename the trust thresholds, shy>curious>can be led>will defend you for females and babies, hostile>wary>can be led>will defend you for males - Female cows will also attack anyone that attacks their owner, as if they were their calf (and only owner is defended, not others)
Yesterday
Update rust native libraries for all platforms
Yesterday
- Make recessive genes factor in the buy price you get with the NPC - Make the buyer NPC comment on hidden bad genes / inbred cows / true god cows with good recessives - Hint at recessive genes in the genes UI
Yesterday
Remove distinction between adults and calves for needs, take into account unborn calves to decide whether to breed or not, to check if we hit the cap (open ground, was already done for in pens)
Yesterday
Prevent old animals (bears, stag, boars, chicken) from sleeping, it looks like they are dead then jumpscare players Fix old animals not running away when shot at a distance Fix bears roaming at high speed
Yesterday
Fix livestock potentially not breeding / eating, is 3 mates / troughts are closer to them but unreachable, even though they have another mate / trough in the pen
Yesterday
FSM now binds all state / transitions "owner" on the first SetState, instead of lazily
2 Days Ago
Fix new navmesh stalls on main thread: - build ghost ships async - allow splitting work with more granularity to stay under the budget, else a megabase navmesh tile can go way over, we need to split individual colliders of a tile - cache ToBaseEntity, as it's expensive
2 Days Ago
Make cows more intuitive and clear: - simplify cow ownership, you buy a cow it's yours, it eats at your trough it's yours now, no bond needed (only for leading), nobody can steal a lead from the owner, cows with no owner can't breed - UI shows owner - cows don't die from old age anymore, crowding is the only death, starved animals lie at 1 hp and get up when food is available again - cows can buffer up to 3 charges of milk to reduce micromanagement - UI shows milk cooldown / charges - overgrazing mechanic removed, replaced with simple grass need (it just checks if each cow has at least one foundation worth of grass in the pen) - cows can eat any food a horse can - if all fails, cows will teleport food from the trough to their belly (should be rare, just to prevent cows blocking other cows from eating despite the queue system) - UI shows pregnancy status, father, remaining time, cooldown after birth - UI shows how long the food / water in the trough will last given the number of cows using it (both on the trough UI, and on the cow UI) - cow names are not picked based on the server players language, but on the cow owner language, wild cows have no names and get one with their first owner (you won't have herds of foreign cows with names you may not be able to read, unless you steal them) - separate frame budgets for scientists, animals and livestock: too many livestock can't slow down scientists and animals anymore, only slow down livestock on the server - (in another previous changelist) personal space is same for all cows in herd, it doesn't fluctuate unless barn changes - (in another previous changelist) free range cows stop breeding when herd size reaches 9 (no crazy outbreak after leaving 2 cows outside)
2 Days Ago
Fix cows clipping through walls, causing their head to stick out of buildings
3 Days Ago
Merge from livestock_animals
3 Days Ago
Merge from livestock_animals
4 Days Ago
Make cpu affinity a warning instead of an error
4 Days Ago
Fix "death while running" anim never playing because speed was measured after stopping
4 Days Ago
Reduce the amount and size of comments in livestock fsm, instead move them to a separate document file
4 Days Ago
Fix agent velocity not always being accurate
4 Days Ago
Merge from livestock_hotfixes
4 Days Ago
Fix a few allocs caused by unconditionnal string.format, and a boxed action
4 Days Ago
Add a deterministic mode to NPCs for tests: - one rng generator per npc, use it everywhere there is a random draw - infinite budget and fixed time step during AI test - fix warp causing an agent speed spike - fix melee / voice sens lookups not checking their age - fix tiger / croc / grenade using deltaTime instead of fsm time, or not respecting timescale
4 Days Ago
Prevent cows from picking destinations where they will clip with each other
4 Days Ago
Partial fix for cows not eating properly at trough or grass in a pen, full fix is a bit riskier and for next patch potentially
5 Days Ago
Merge from main
5 Days Ago
Fix broken livestock sleep test
5 Days Ago
Fix livestock age regressing when calf grows up into adult, and age being more and more incorrect over time because of the random variance
5 Days Ago
Increase livestock lead break distance from 7 to 15m, show familiarity and gender by default
5 Days Ago
Fix broken test
5 Days Ago
Rework livestock personal space - free range cows stop reproducing even if fully bonded when herd reach a cap - indoor / pen cows, navmesh flood fill to get their exact area in m2, and derive the need directly off that, so that all cows shows the same thing and it's stable / reacts directly to players doing building changes (it's also cheaper that what we are doing now, as we don't need to re-query just check the cache) - this gives fast feedback and stays stable over time, so players get a better idea of if something they are doing is working or not
7 Days Ago
Make cows actually line up with troughs to eat + play the correct animation Make a system so that we can align any animal with props without turn in place (maybe handy for cars mounting/unmounting?)
7 Days Ago
Optimize path following further following Daniel's leads: - support full batching, serial path no longer needed even if some NPCs can swim or open doors, move requests are queued for next batch - better use of unity's TransformAccessArray to avoid native overhead (don't set to null, do not re-build every batch instead persistent w stable identities) - iterate forward instead of backward (ListHashSet is slower backward, + has RemoveUnordered so iterating backward to delete is not really needed) - skip IsUnityNull checks that's no longer needed
8 Days Ago
Cows outside of navmesh kill themselves like other AIs
8 Days Ago
Fix blue particles when shearing sheep
8 Days Ago
Merge from livestock_hotfixes
8 Days Ago
Merge from main
8 Days Ago
Fix broken test, fix cow unfreezing its needs / aging when bonded not being saved
8 Days Ago
Merged to main > Fix livestock breeding out of control in the wild: - Full bond is now 15min not 5min, reproduction can't happen before (can still lead from 5min like before) - Curious cows don't bond twice as fast anymore - If a calf is born in the wild somehow, it will age as soon as it's born, and won't be able to reproduce (eg won't be born bonded like the mom) - Server cap on livestock population of 300 "livestock.maxPerSpecies" - Command to kill off excess livestock, prioritizing not tame > far from TCs > bad genes / old to avoid hurting farms, "livestock.cullexcess" - Add "livestock.breedOnlyAtHome" convar, 0 by default, 1 means livestock can only breed near their top bonded player TC
8 Days Ago
Fix livestock tests
8 Days Ago
Merge from main
9 Days Ago
Hook sheep shaving vfx, and tint vfx properly
9 Days Ago
Reduce livestock clipping when leading multiple, and at trough
9 Days Ago
Fix livestock attacking players in vehicles
9 Days Ago
Fix lamb and calf colliding with travelling vendor
9 Days Ago
- fix bull still sometimes spamming headbutting on unreachable players - fix bull sometimes stopping entirely and getting stuck when charging a close player - fix rams not aiming their headbutt and charging in random directions - fix rams using the wrong stomp anim - fix procedural look at not being enabled for most anims, which looks off especially with stomp being aimed at the void instead of the target
9 Days Ago
Potential fix for cows sliding (suspected pregnant flag)