309 Commits by 4 Authors. 479 files added, 55 deleted, 37 moved.
15 December 2017
Bill Lowe
Fixed NRE on load related to roles/possessions stuff
Moved animal cooking to Cook module
Added a log for SmartObject.CanSubscribe failing due to incorrect role Fixed spit addong not being buildable (bad role override on the deposit interaction)
Fixed bad timestep getting saved
UI bits
Fixed night skip getting stuck if you're skipping a short amount of time
Hopefully fixed rain sounds getting stuck Disabled tribe creation Various data
Roles UI fixes
Tracker fuckeries
Disabled notification on AttribuetGain activity
Fixed bad event
Roles widget fixes
Refresh role icons when pressing tab to show all the folouts
Another roles foldout tweak
Cohesion widget back in
Testing some sleep scoring changes
Fixed roles foldout not always autoclosing
Improved skip time
Added button to skip night time when everyone is sleeping
Various UI bits
Totally important editor things that took ages
ConditionSettingsWrapperDrawer can fuck off tbh Fixed TabbedWindows double deactivation
Sebastien Blomfield
People should now only stockpile things in stockpiles belonging to their designated role. Fixe role override not being used in CanSubscribe.
Eat From Dispenser should now filter by food resources and items. Carrots have Eat From Dispenser interaction and are also in the food category.
GPV score can no longer be negative
Fixed GPVs that inherit score from an InteractionDesire not having Momentum applied
commented out tool desire creation upon failure of carrying required tool.
Nothing to craft notification should no longer show if the crafter is currently crafting. Fixed ActiveBehaviourCondition awful copy paste.
Goal momentum on woodcutter module. Roles now always disables other roles on assign.
Jarryd Campi
Fixed Required By Blackboard Building filter option not checking resources
Fixed spit requiring construction
Fixed shonky hut requiring 27 grass to construct a turf roof Fixed building upgrades triggering the building complete activity
Fixed time not unpausing when exiting a tabbed window
14 December 2017
Sebastien Blomfield
removed bears and moved wolves to other side of island 1 removed various hunting area hints and put them on the appropriate spawners
hunter role unlocked from start. spears in default possessions.
Made a bunch of AI for creating find desires when people can't do things. Disabled said AI. All stockpiles now unlock at the same time as standard buildings.
Trees now give a good amount of sticks. Trees that don't assign trunk view prefab will destroy the trunk view and can dispense any number of items.
Bill Lowe
UI bits
Fixed shitty delay after leaving a modal window
Building UI will refresh choices whenever player unlocks something and the widget is open Added some scene UI for the biome data editor (button to refresh all biome objects in scene) Fixed activity UI not being properly cleared and refreshed between sessions Fixed unit attacked notification not clearing (potentially) Biome fuckery
UI transition improvement
Added UI buttons for all the fullscreen windows (tribe/progression/diplomacy/knowledge)
Build fix
not splats
cut out and split up sea edge
increased wave scale
made grass light the same colour as grass again so we could use it to paint out grass from edges of cliffs
Jarryd Campi
Tweaked some curves to try and prevent the basket pick up/drop loop
Fixed a container nre in TargetFilterUtility Added Units to the player building placement collision mask - spawning buildings on top of units is pushing the units down onto lower ground layers
Item Spawner now positions items above the ground, should fix some spawners spawning items clipping into the ground and falling below it Moved a rock spawner closer to the camp
13 December 2017
Bill Lowe
Basic hut now requires 10 wood (was 16) and 5 rock (was 8)
Player assignment role via RMB checks unlock status
UI tweaks
Filter target filtering returning 0 entities
Unified target filtering code into TargetFilterUtility
Fixed Attribute.SoftCap NaN
Uncommented ConditionSettingsWrapperDrawer
Data fixes
SmartObject.CanSubscribe checks unit's active role
Fixed Keyword base.name returning bad things
Actually fixed NRE in ProvidesItemDesiredByTribe (dont assume that dispensable contains items) Added Attribute gains data to various skills
Fixed NRE in Condition.ProvidesItemDesiredByTribe Added SKILL_VERB keyword Added AttributeGain activity type
Fixed bad icons
Fixed activity notification UI colors
Added portraits to activity notifications created by units Portrait clone creation resets all animator parameters to their default values Added config data for desire icons ActivityData can override icon ActivityData can override icon color
Misc cleanup
Jarryd Campi
Possession component persistance
Added an IgnoreEmptyDispensers option to target filters Switched the cook module filters back to first candidate mode and made them ignore empty dispensers
Switched a few cooking dispenser filters to all candidate mode, needs to evaluate multiple dispensers because the first dispenser could be empty
Possessions now stores a list of current possessions Added actions/abilities and conditions for adding/removing and querying the current possessions Item Management will no longer drop items that are in the possessions list
Sebastien Blomfield
fixed being unable to select units when a dead unit is selected
PlayerBuildingPlacement no longer tries to pathfind check using dead units
Improvements to harvesting for other people's find desires
Harvesting roles AI for harvesting tribe desired items WIP
terrain icons
12 December 2017
Sebastien Blomfield
BehaviourChainFilters now have a CandidateMode allowing them to select the first valid candidate instead of filtering all candidates of the same entity ID. Testing this in Crafting and Cooking modules.
Some fixes to goal failure activity. Being unable to craft now generates the correct activity.
Goal Failure activity is now tracked by the Goal rather than the Agent. Added a timer after which we repeat the activity if it is still ocurring.
Bill Lowe
Agent holds reference to their last failed Goal activity generator, to prevent spam
Activity gen editor stuff
made grass spawn on "grass light" & made grass light lighter than grass so its obviously different
Jarryd Campi
Fixed sleep time speed not triggering Fixed sleep speed not triggering if a unit in the group is dead
Fixed ActiveRole not getting updated after disabling a role Fixed role widget not updating correctly after clearing a unit's role
Added cook module to cook role Typo fix Fixed active role field not being set properly on a load, also fixes role UI not being correct after load
11 December 2017
Jarryd Campi
Fixed activity notifications on low severity lingering forever
Fixed NRE in decay panel Fixed sticks coming from a sapling not getting a view prefab data assigned and failing to be picked up (TreeParameters now has a ViewPrefabData that gets assigned to trunk view)
Unsaved changes
Added a Chop Trunks into Logs plan to woodcutter module
Added a Go Home method to GameCamera Triggers via H key, has an exposed method on GameCamera to get hooked up to UI Looks for first building in players group, falls back to unit average position if no buildings are built
Can toggle build menu with B key
A tribe member being attacked now triggers the correct activity which pauses the game (restricted it to only fire when the unit is at full health to prevent spam)
Sebastien Blomfield
Activity Generation on Goal Failure WIP
Fixed failure notifications for possessions
Possessions component initial implementation
moved cooking AI to module
Moved basket crafting from role equipment to its own AI. People should now only make baskets when there's food to be gathered.
Bill Lowe
Fixed building completion activity being generated twice
More Agent+DM cleanup
Agent+DecisionMaking cleanup Removed obsolete UnitFailuresWidget
Possessions debug panel
Activity tweaks
Fixed Activity notifications not working properly
Fixed various diplomatic event/activity data Tuned AO down a bit Activity creation logged, editor prefs exposure
Ported diplomatic events stuff out of Activity and into new DiplomaticEvents static
Action.CraftItem now records who the item was craft for in the activity data it generates Added ActivityData.CraftedFor, and keyword Activity defs can specify a list of conditions and or triggers that will cause related notifications to expire, notifications UI handles evaluation
Roles install AI modules Added Woodcutter module
updated cliff02 collision to stop units feet going underground
added flowers back to spawn population
10 December 2017
Bill Lowe
Posessions boilerplate
Sebastien Blomfield
Role on click should always work if no other interaction was found
Crafting for self and for tribe are now separate Goals Tidied up Senses lists
(hopefully) fixed Senses not updating the lists of structs properly resulting in Knowledge containing very old distance data
Cooking (and basket making) now unlock upon building a crafting table. Rock is no longer a tool
null check current snapshot when changing game state in audio manager
target filters inside conditions and considerations should now show up in the AI debugger
Fixed tutorial widget not loading properly
8 December 2017
Bill Lowe
Skip portrait render requests for dead units
Tribe tracker portraits remain clickable after a unit dies
Fixed woodcutter role not being unlockable Distance considering pathfinding check range exposed via global AI config, reduced and made human only Distance consideration is used only by humans
Tooltip positioning thing
Removed role score conditions since they're unused, hid the skills list in editor as they're also unused for now
Logs stockpile unlocks with standard buildings
Tutorial improvements
Last few UI tweaks
Various UI tweaks
Fixed some other spawners
Fixed stone spawner near tribe start on island 1 not having physics enabled checked
Moved tutorial widget UI tweaks
Version ++ Role assignment sounds
ActivityManager static init (fixes activity subscriptions not working during asset warmup)
Portraits use mood as background, added health vital meter that shows when < 100%, pulsates when < 50%
Disabled cohesion UI
Subtracting objective unlocks stuff
Building UI tooltips
Properly fixed tribe tracker hover crap
Building panel improvements Tribe tracker fixes
Building UI fixes
Building panel stuff
Compile fix
Fixed tooltips on map showing incorrect top label text Updated Facepunch plugins, unity bits
Preview images for all buildings Removed Gatherer role and all references Added Stonecutter and Potter roles
foliage works withoutline (needed to resasign textures to materials)
made radial menu popup instant if you move the mouse while holding rmb
crafting table icon
Jarryd Campi
Merging objective unlock display
Merge from main /objective_unlock_display
Typo fix /objective_unlock_display
Objectives widget now shows the requirements for the next 2 unlocks as objectives Implemented in a kinda hacky way, I make a fake Objective based on the unlock definition (can be disabled by toggling off showUnlocks on the objective widget) /objective_unlock_display
Added world layer to camera occlusion highlighting
Can close build panel by clicking on build button again Fixed unlocks not unlocking for building placement if the building was placed in one session and finished being built in another session
7 December 2017
Bill Lowe
More map cleanup
Fixed TimeManager.ProgressTime not being set to true in some cases upon leaving the map view
Fixed a bunch of missing images from icon component changes Removed building and crafting screens from the tabbed mega-modal thing
More DataAsset warmup stuff
OnGameStart uses RuntimeInitializeOnLoadMethod instead
DataAsset.OnEnable no longer virtual, added OnGameStart virtual method called by OnEnable when the application is playing
Added preview image generation to building editor tool Added DataAsset.Preview image Added new building UI (WIP)
Fixed bad portraits on map Fixed fucked up tooltip on map
Sticks and rocks are no longer weapons (for now) Fixed time controls tooltip
NRE fix
Fixed potential NRE in Building.RequiresItemProvidedByItem
Added DM filter for blackboard building requirements
Fixed group knowledge propogation updating distance when it shouldn't
Nuked old un-used statistical modelling condition/consideration
Unit.Desires tracks fullfillment history Added TimeSinceDesireFulfillment consideration
ScenarioData.TribeMembers count includes leader
Default scenario starts with 3 people
Roles GPV change callback only sets new active role if we don't already have one
Filling stockpiles goal plan added to Gather Items goal (role gated)
Sebastien Blomfield
Building module cleanup
hunting goal requires weapon
item pickup desire fulfillment should get all corresponding desires. correct weight for role item finding desires.
fixed some issues with fulfillment and creation of find desires that should improve crafting for said find desires
Added gather desired item goal. Testing parent desires not being fulfilled by child desires.
fixed desire parenting determining whether we drop the crafted item or not. create find desire for required tool instead of craft.
made camera min tilt angle check correct
Jarryd Campi
Made eat a berry interaction positional and non-exclusive so more than one unit can eat from a berry bush at once
Tripled input values for all campfire inputs - should make campfires last longer and make units less likely to spend all of their time tending to the fire Advanced Crafting now unlocks after building a crafting table Set "Craft Item for find desires" goal to the crafting role Disabled raids, units aren't good enough to survive right now Fixed crafters not crafting items for other people if the item to be crafted had 0 required roles assigned to it
Fixed the game failing to load if an unlock that was unlocked in a save game has been deleted or is no longer available Added a last hunt time to Roles data, stores the last time a unit went on a hunt Added a Time Since Last Hunt consideration, trying to push hunters to go hunting every 1-2 days instead of waiting until tribe is hungry (cooks collecting berries is preventing that from happening) Added some hunting area hints on Island_01 ItemFilter can now ignore specific weapon types, used this to make sure hunters don't go hunting with improvised weapons (sticks) Hopefully fixed an issue where multiple recommended item craft desires were created if a unit doesn't craft the recommended item fast enough (should fix people making 4 hand axes lol)
6 December 2017
Bill Lowe
screenshots at 1x, 2x if you hold L shift
Fixed game not running from main
Fixed player controller not properly clearing buffers, like actually fixed it.
More radial/command stuff
Radial menu fixes PlayerController uses a generic command instead of a list of actions when dealing with multi-unit commands Command can hold children
Tribe tracker tweaks
Radial menu invokes hovered command on RMB release, fixed other issues with closing
Added overlap capsule fallback to back in to playerController raycast
Command pooling safety
Prefab save
Fixed lingering icon
Tooltip shows mouse action icon w/ interaction name
PlayerController command cleanup
Tooltip now shows target entity progress (building, machine process, etc). Removed progress display from other indicator widgets
Cant open radial unless it contains more than 1 command
Command trigger text reset
Role on click assignments for resources
HoveredInteractableIndicator shows a little hint icon when the player can open the radial menu Hand axe is now tool type Blade Hand axe is no longer a weapon
Tribe cohesion ruonding reduced from 0.25 to 0.1
TribeCohesion UI label
Removed a debug log
Tribe creation/customisation cleanup and prep for leader only w/random tribe Testbox runs testbox scenario Scenarios can define a list of console commands to execute on start
.2p4 shader fixes
Tribe tracker role tooltip improvements Role descs
Sebastien Blomfield
Let's only create one craft desire per find desire
People with the crafter role will now craft items for find desires in the tribe.
Craftable items can now specify required roles
Initial crafting progression WIP
added a fallback time to tree felling so that stuck trees still end up giving logs
Jarryd Campi
Added a 10 second fallback to InStationaryState on the Animation component, units are sometimes getting stuck in this state Fixed a bad target on the find to container to fill filter, should make units be a bit less aggressive with the constant berry harvesting Before crafting a recommended item, a unit will check that the number of identical items in the group is less than the number of units with the same role (this prevents cooks filling up a basket, placing it and then making a new basket because they no longer have a basket over and over again)
Renamed Bows unlock to hunting - triggers after crafting a spear or wooden club and unlocks bows, arrows and the hunter role Fixed unlock definitions marked as not game valid appearing in ui Fixed roles not getting correctly unlocked via unlock definitions Fixed roles unlocked during gameplay not becoming clickable in the role selection foldout
Forgot to save
ItemContainer now shows what's in the container on the tooltip (not currently visible, tooltip text is being truncated)
Added another rock spawner to the outcrop on the left of the starting camp Disabled physics on the rock spawners, stops rocks ending up underground
Fixed eat from dispenser filter not looking for resources (was ignoring berry bushes) Crafting Table now gets unlocked after building the basic hut Bow and arrow now gets unlocked after crafting a wooden club or spear (was tied to whittling skill) Stone Axe and Rabbit Trap now get unlocked after building a crafting table
5 December 2017
Sebastien Blomfield
Tweaked territory radii on island 1 spawners. Item Can Be Picked Up condition now checks if picking up the item would make the unit go above 100% encumbrance.
TerritoryLocationSelector now selects a location based on the spawn position of the group for a non-human unit. Animals will now wander around their territory instead of all over the map. Fleeing and self defense should override idle plans.
added enable fog of war debug option
Jarryd Campi
Removed gatherer role requirement for fire management Switched fill containers goal from gatherers to cooks Removed basket recommended item from gatherer Added basket and hand axe to recommended items for the Cook role
Added a minimum move speed to the Navigation component, defaults to 0.5 Fixes units getting encumbered to the point they can't move
Fixed decay values on clothing getting set in non-normalized space (was setting decay to 80 when a unit got hit, which made all of the unit's clothing invisible) Added a slider to the Decay component inspector to manually test durability changes
Baskets now get placed instead of dropped by AI gatherers, fixes baskets full of food rolling down hills and falling into the ocean If an item is recommended by a role definition, keep desires will now treat that item as required (fixes gatherers dropping their baskets at weird times)
Bill Lowe
GUI save
Added PlayerTribe:PlayerComponent, migrated all tribe specific functionality to this component, cleaning up Group and Player. Groups have leaders (currently first unit added)
Play UI sound for roles when they get enabled Added role on click to buildings data Various UI fixes
Tribe tracker roles foldout is more responsive, animates quicker. Only display game valid role icons. Role click feedback Removed ImageMasked crap
Removing some debug logs PlayerController assigns default role on click failing any valid interactions (defined in entity settings)
Fixed interactions not being properly evaluated by playerController
Tribe tracker animator rework
More anim stuff
UI anim bits
increased max zoom
delete files
clothing decay polish
4 December 2017
Bill Lowe
More PlayerController command buffer cleanup
Fixed RadialMenuWidget NRE
PlayerController only clears command buffers before evaluating new target in MouseOver
Radial menu buffers command data and cleans up on deactivate callback
More cleanup
More logs
PlayerController cleanup + logging
Anim fixes
UI wip
Tribe tracker role icons, animations Added Before/UI Portrait shader Fixed portrait clone rotation being set to match a reference unit that is ragdolling
Fixed building placement not working
Refactored player controller to handle a single interactable
Tribe tracker elements only refresh on demand (via thresholds for mood and health changes) Group and Entity.EntityActivity event cleanup in OnDestroy
Unit.Navigation no longer rejects partial paths providing that the distance between the desired destination and the end of the path is within a threshold defined in data (default is 5) PlayerController focus event no longer invoked for non-player controlled units, fixing an NRE UI.UnitDetailViewModal when playing in debug mode
Sebastien Blomfield
combat ability min range WIP. radial now shows when holding right click.
fixes to cave camera
Fixed tutorials loading. Triggers will now always call Initialize (previously Setup) on game ready. Moved initialization of triggers listening to static events to OnEnable.
"triggerAttack" is the non root motion attack and "triggerAttackPounce" is the root motion one
camera fix to stop dead space when mouse over interactable object
Jarryd Campi
Added a container capacity consideration
Restricted baskets to only carry food Gatherers with baskets will now pick up baskets, fill them up with food and drop them by a campfire Can now check if an item is in a container with an item filter Still kinda WIP, there's some dithering where units repeatedly drop/pick up the baskets but they eventually get the job done
Added a recommended items to role definition, craft desires will be generated for each item when a role is assigned Builder has hand axe, gatherer has hand axe and basket (equipping axes helps fend off early dangerous animals) Checks if a unit already has the item and that the item is unlocked, rechecks every in-game hour to account for missing items, new unlocks
3 December 2017
Jarryd Campi
Fixed a dumb copy+paste error
1 December 2017
Sebastien Blomfield
let's resume in load too
fixed game being paused upon restart
UI refresh now happens at session end
fixed issue causing TerritoryLocationSelector to have a null grid.
fixed single unit building commands
multi unit interactions work again
fixed finding best unit for interaction
null check in PlayerController cursor thing
interaction mouse cursor for multiple selection WIP
fixed personality persistence
Bill Lowe
Command no longer uses PooledList Command pooling clarification
Fixed bad ThirdPersonCamera profile asset/assignment Added "survive winter" objective to the default scenario
Disable highlighting renderer with UI Fixed tooltip lingering when player entered fog of war
Fixed GameUI missing primary tooltip reference (and in turn fixes an NRE in RadialMenuWidget) Fixed movement controls occasionally blocking deselection Player controller clears and properly resets command pools (needs refactoring, feels like a mess) Goats are no longer heavy as fuck to carry Added BaseEntity.GetTypeString, override to return a nice player-friendly taxonomic phrase (wot it is, wat it do)
Auto push to public branch on steam
Fixed crafting UI
Fixed potential NRE in playerController
Fixed tabbed window view buttons not being clickable
UI buttons fix
Put craft button back on the game UI Fire related AI requires gatherer role
Player controller multi-unit attack fix
Fixed highlighting shaders Wearable NRE fix
WearableObject decay setup
Fixed player controller not changing cursor when multiple units are selected Tooltip fixes
Fixed unit path display NRE after restarting a session Fixed tooltip not always filling secondary label text Fixed selected unit indicators not being properly cleaned up between sessions Fixed potential duplicate key and NRE in TerritoryLocationSelector, added error log when territory map is null Fixxd tutorial widget not showing completion animation or displaying the next task Jenkinsfile b11
Moved all player controller interactions evaluation to MouseOver (still somewhat WIP, expect bugs with multi-unit commands) Properly removed interaction position data from all trees
SmartObject wont create positions unless they are actually required by interactions
Jarryd Campi
renamed female damage renderer (needs to be have damage in the name, was called human_female_overlay)
Raid positions are now checked to ensure they can reach the player's camp - prevents spawning raids inside cliffs
Don't calculate lag locations (used for party movement) if we're not in a party
Added a rock spawner near the starting area on Island_01 so the first building is easier to make Fixed smartobjects initialising their interactions before their interaction positions (caused the interaction to not init successfully, made buildings impossible to interact with)
Reverted wolf aggression back to 2 (was 2 before raid changes, ambient pre-existing wolves are too aggressive on island_01) Added a Raiding effect that gets applied to units to increase aggression during raids