branchrust_reboot/main/Livestock_animalscancel
89 Commits over 457 Days - 0.01cph!
Added calf texture variations. set up with material variants.
AI select/move commands now work on multiple animals
Added ai.selectinrange convar
Added ai.deselectnpc convar
When ordering multiple NPC's to a location they all receive an offset so they don't all pathfind to the exact same spot
Hooked up sale info in-game UI
Create new SellAnimals and AnimalSalePreview dialogue panels
First one lists all nearby animals that are following the player (and can be sold) and the other shows what you will receive for selling that animal
No rewards hooked up yet, just panel flow
Stables_b is now playable in editor
Start of boilerplate animal selling mechanic, just set up NPC and basic conversation for now
Added a drink water need and corresponding behaviour to livestock animals, they can drink from a nearby water container or river/lake
Updated sheep model and prefab to improve lods further. added an opaque sheep fur mat for lods.
Add commands to select and direct a given NPC
ai.selectnpc will select the npc in front of the player
ai.movenpc will make the npc navigate to the point the player is looking at (takes a walk type sneak, walk, jog, run, sprint, fullsprint)
ai.releasenpc stops the debug control
Works on legacy AI and modern FSM based AI, needs to be manually added to every FSM AI but it's a one line change for each type
Imported new sheep lod to help with LOD issue. Updated prefab to help with LOD issue
Add a rename dialog to livestock animals, can only be used while the animal is being led
Infant animals will now stay close to their mother
LIvestock animals now save who their parent is
Added CompletePregnancy convar for debugging
All stats need to be >50% to allow breeding
Add a social stat to livestock - positive if there are 5 animals nearby, negative if there are less than or more than 5 animals nearby
Hooked up stats to crosshair display
Fixed sizing of stats widget
Livestock animals now sit while pregnant (so it's not just visible via UI)
Vitals get frozen so they don't end up starving
Refactored the timers on livestock animal into a new PersistentTimer class
Makes it easy to create new timer based behaviours (drop dung, get older, give birth, etc) and persist those timers through a save/load
Livestock now drop horse dung (might need a rename)
Hooked up sheep sleeping anim
Cleanup, don't use obsolete SetFlags
Fix animals moving while sleeping
New species asset for livestock
Supports spawning a different prefab for male/female animals
Setup for cows and sheep
Fixed all animals set to female
Added breeding fsm states
Adding sheep lean and react animations
Updating sheep skinning and Adding LODs to export
Update sheep sleeping clip lengths
Stats boilerplate, save load
Sleeping behaviour
Cow react, vm and 3p animations added
Unsaved wip from yesterday
Added serialized name for animals
Extend LookAtFarmAnimal that we used for chicken coop to display livestock animals
Added ai.renamelivestock convar
Remove an unused 2mb texture from the chicken coop UI
Boilerplate for animal breeding, triggered via console commands for now
Better transition if animal starts moving while grazing is ending
Livestock now gets saved, unlike other AI
This has caused massive problems in the past, so yolo I guess
FSM isn't saved/restored but we can probably get away with that
Livestok animals now flee if a loud noise like a gunshot is heard nearby
Fixed missing interact collider on lamb
Fixed following behaviour not working due to grazing taking priority
If an animal is hurt while being led they will forget about who they were following after they flee
Aging boilerplate
Expose a TimeToGrow field on livestock, when this time is reached they are replaced with a provided next stage prefab
If no next stage is provided then the animal is just killed (old age?)
Added livestockanimal.ageuplivestock that will age up the nearest animal with 20m
Lamb setup
Fixed prevent building volumes too large on all livestock
Created a tool to copy hitbox definitions from one skeleton to another with an optional scale multiplier (not needed in this case as the animator root is scaled, not bones)
Set up calf hitboxes