226 Commits by 4 Authors. 245 files added, 274 deleted, 78 moved.
21 March 2018
Sebastien Blomfield
add all fuel is now positional
Require free hands to light fire
Implemented deposit all to fire
20 March 2018
Sebastien Blomfield
Work on deposit all actions (not finished yet, so probably don't use them)
fixed NRE when removing Effects with exit actions
more fixes and attempting to avoid Effects NRE.
Item gathering for crafting should now account for items held in crafting station and in unit items. Fixed some editor only stuff not being tagged as such.
more SetDestination early exit fuckery
SetDestination fudge to make units arrive at destination if they are close enough to the interaction position
19 March 2018
Bill Lowe
ActionChain.Tick no longer calls Complete or Break in the same frame as the initial Run impl Nav cleanup
Block TimeManager.Pause during skip to morning
Navigation cleanup
Fixed AnimatorParameterHolderEx.Set returning when the components parent Unit's view was culled
Reduced action chain log spam
Navigation state cleanup
Fixed Unit.Navgation+Callbacks.OnPrimaryBehaviourEnded not listening to AgentBehaviourSlot.OnCompleted (was only listening to OnBreak)
Navigation.States.Pending now two states, NavigationPending, MovementPending
Navigation behaviour callback improvements
Got rid of force state argument
Fixed Navigation not calling SetState for all assignment
Navigation FSM enter/exit
Fixed Navigation.TickStateMachine not ticking state when new forced state was passed in
Navigation state machine
Fixed action chain logs being gated by additional flags
Fixed debug settings tab overriding ai debugger toggles
NRE logging fixes, ActionChain.Behaviour has CanBeNull attr
Added a bunch of conditional logging to ActionChain, gated by BeforeDebug.AI_ActionChainLogs
SmartObject.OnSmartBehaviourCompleted checks matching SmartSubscription.SmartObject
Sebastien Blomfield
Fixed TimeManager reset not resetting current game speed
Simplified Crafting component loading because PostLoad doesn't actually do what I thought
CraftItem persistence
More CraftItem stuff
untested craft item persistence stuff
crafting order tidy up
CraftItemProcess persistence WIP
Fixed people being stuck when trying to perform NextInteraction
NRE fixes
18 March 2018
Bill Lowe
Code cleanup
Actions cleanup
Made Behaviours events static to avoid allocations (listeners in BehaviourChain and SmartObject cross-reference the behaviour's chain or target, respectively)
16 March 2018
tier requirement met boosted to 0.5 from 0.05 to stop mood becoming impossible to improve
apply mood value to portrait animator to make mouth expression change
changed hunger curve to match hunger effect names
removed peckish effect to create a period of nutirition where the unit is neither hungry nor well fed
Bill Lowe
Enum generation and enum parsing for Stat and Activity defs uses consistent formatting of the asset name
Fixed StatTypeDefinition enum parse using the asset's displayname override
EntityInspectionWidget refreshes it's entire contents every 2 seconds Removed some stats from the EntityInspectionWidget display for units, gave most of them color gradient data Reduced UnitInfoWidget's portrait refresh stat change thresholds (health and mood tirgger a portrait update when they change by 2.5% or more, down from 10%)
Sebastien Blomfield
AI data save just in case it was important
15 March 2018
Bill Lowe
Weather types now support multiple FX prefabs
Made it possible to enable/disable the stat manipulators for an Effect in the editor Hot and scorching effects no longer have any stat manipulations (testing)
Added "GroupEntities" source to CandidateEntityFilter.EntitySources Changed most building target filters to use Group Entities source Food storage need no longer requires a specific amount of meat, only that the tribe build a rack, has much lower cohesion drain rate
Added option for debug spawner to add dead units and items to the player tribe supplies component
Fixed TribeWidget not updating mood color bar
Fixed a fairly massive oversight that prevented behaviour sim ticks from running while a unit was in the player command cooldown
EntityConsumeValue has more valid interactions listed to write
Fixed some bad consideration curves in Human/Food
AI logging Fixed AI debugger nodes not showing default curves on considerations
Nospawns setup for eating debug Debugger fixes
Pause UI save/load button fixes, probably?
Misc cleanup
Testbox nospawns is now a proper map, supported by sandbox and testbox scenarios
Game manager extension save/load uses IEnumerator
Fixed LoadGameWidget NRE
Fixed UnitPortraitWidget not instantly updating the last portrait (was waiting for a new one) Fixed load UI not refreshing after save on pause UI, other related tweaks
Fixed errors from UnitPathElement when quitting the game with people selected (Unit.Navigation.IsNavigating checks NavMeshAgent.isOnNavMesh) Fixed people being called "Human" when starting a new game after quitting the current session Version++
Starting tribe cohesion is defined ScenarioData
Version++ Camera module prediction crap for particle FX (is shit)
Sebastien Blomfield
if a container is an item it will now only add contained entities to supplies if placed
removed unnecessary SupplyInfo class
Fixed various building persistence issues.
ProtoContract default value attributes and other tidy up
DefaultValue attributes on PersistedEntityData to fix bad loading of visible state
awful spammy logging of IsVisible status. fixed PersistedEntityData constructor being protected and making ProtoBuf sad.
Loading errors back to normal Log instead of Error so they don't spam up the console
made deer idle look less alert so when they are actually alert you can tell.
14 March 2018
Bill Lowe
InteractionSettings can specify a command execution mode for player commanded interactions Added BehaviourSettings mode to RequiredAttachmentPointsCondition Dance interaction now scores diplomacy relations
Simplified billboard rotation
UI tweaks, inverted decay readout
Fixed Corpse.PostLoad settings isCarried on the view's animator when it shouldnt
Fixed PooledAudioSource.ReturnAfterPlay not working AudioManager per sound type pool sizes
Found AudioListener.pause, using that instead (music and GUI sources use .ignoreListenerPause setting)
Better audio source caching
Audio sources are paused when timescale is set to 0 for any reason
SupplyInfo fix
Refactored Group.Supplies a bit, now stores a dictionary of SupplyTypes, SupplyInfo. Made OnSuppliesChanged static Added static Cohesion.OnValueChanged event TribeWidget now listens to events from supplies and cohesion rather than doing bullshit in Update
Debug label
Camera particle FX are set to DontDestroyOnLoad Added supplies debug flag Debug settings tab uses reflection to automagically draw all bools from BeforeDebug
Fixed BeforeDebug init not grabbing properties
Fixed some debug values not being properly saved and loaded on init in BeforeDebug (made things not work until the debug settings window had been opened) Fixed entity inspection window not automatically opening when the player toggles the detail view with a unit selected Fixed unlocks with missing need requirement data
Fixed Tribe not having a cohesion component
Fixed missing warmth bonus on Goal.MakeFIre
Renamed GroupNecessities to GroupNeeds
Skipping to the morning uses the current human seasonal sleep range end time
Fixed GameSpeedControlsWidget not hiding the sleep/skip button on refresh Fixed UnitInfoWidget portraits being out of sync with the unit's view Humans now have seasonal sleep patterns
Fixed roles widget not updating counts when a member leaves the group Units.Roles now resets role on death
Asset cleanup, island1 terrain fix
Sebastien Blomfield
add things to stockpile on load
LogError instead of normal Log if save files are invalid
progress on persisting ragdoll state
Fixed player commanded building being cleared by Current Goal change
Implemented max number of builders per building.
fix for human female having wrong damage overlay mesh name causing unit portraits to not get synced with unit health
13 March 2018
Bill Lowe
Fixed warmth consideration returning shite Specular all the things
Removed Need stat types from the codebase, replaced all scoring with inverse considerations of the corresponding vital. (With the exception of Warmth, which now has its own consideration using the calculation from the simulator) Considerations now hold a default response curve which can be used by wrappers Validated a shitload of data
Tribe cohesion join/leave events now gated by thresholds used for the chance change calculations
Fixed NRE, cleaned up pool management in AudioManager
Audio sources pull default values from prefabs on returning to pool Mixer tweaks
Re-worked food need tiers
Storm FX
More rain bits
Rain FX tweaks
Tribe necessities UI elements change color according to the curve-evaluated time since start, flash & show icon when critical Removed cohesion effect events
Reduced cohesion drain rates for all necessity tiers by a factor of 10 or more, also increased the min time range by 6-12 hours or more in most cases Reduced the rate at which the chance that someone will leave the tribe changes, and lowered the cohesion threshold for leaving from 25% to 15%
Misc AI tweaks Camera FX follow player, no longer parented
12 March 2018
Bill Lowe
Fixed EntityComponentSimulator removing event listeners to TimeManager.OnMinute and OnGameSpeedChanged events on session change
Break behaviours with invalid subscriptions
Unit.Morphs is no longer a default component, disabled on all animals Fixed potential KNFE when adding an effect to a unit with no morph support Fixed pause menu not closing when hitting escape Added logging for behaviour breaks (trying to catch elusive invalid subscription error) AI scoring tweaks
Added Condition.BehaviourRequiresAttachmentPoints, which returns true if the current primary behaviour has any attachment point requirements Fixed crafters dropping items they have gathered repeatedly and getting stuck in a loop Fixed CraftingUtility.CraftingRequirementIsMet returning true in cases where it should not (unit holding item, must be deposited to machine to craft)
subtract skydome revert
9 March 2018
Bill Lowe
Audio options show value as % Cleaned up some Form.Bind stuff
Fixed generated form sliders having bad max value by default Fixed master volume option not working Fixed apply changes overriding graphics feature settings
revert skydome to try and make it not get dark at 7pm
8 March 2018
Bill Lowe
Fixed player controller inconsistent raycast and highlight distances Fixed options screen not refreshing all UI elements when loading defaults Fixed options being initialized after UI Merged SoundOptions into newer general options system, cleaned up how we access options at runtime Cleaned up graphics options, presets, exposed AA options
Camera cleanup
Clear weather no longer has 50% wind strength (causing building decay) Fixed zoneWeather's lerping of wind strength and TOD animation value, exposed global multiplier in config.World
Added methods to toggle a unit's entire hitbox Toggle unit hitboxes when carried by another unit
Fixed all camera modules being disabled after loading a save
Cohesion starts at 100%
Item world views take color of wearables (might be lacking shader support?)
Fixed wearable colors changing when taking off/wearing clothing
backpak item size filter and blacklist some items
wolf attachment posisionts
rat carried position
rabbit attachment offset
deer carry offset positions
7 March 2018
Bill Lowe
Fixed bad fill
Fixed missing building overlay icons
Fixed potential NRE in DetailOverlayUnitElement Building construction state overlay Cleaned up a bunch of old UI prefabs
Building destroy on decay optional
Unit.GroupMember holds a join time
Fixed cohesion leave/join events using incorrect dateTime
Cohesion leaver stuff no longer tests mood threshold, never picks leader
Necessities cohesion drain now uses a min/max range for the time and value, evaluated by an animation curve
Stuck a load of Unit.Items logging behind UnitDebug.Items option, exposed in debug tools Debug tools settings tab is now visible outside of playmode Moved all debug bools to BeforeDebug static
Fixed micro tooltip missing followCursor component
Fixed some bad tooltip assignments
Fixed tooltips being hidden when being triggered quickly by multiple UI elements
NRE fix
Fixed building UI not registering clicks in some cases
Fixed enemy overlay widget flickering Fixed secondary DM attack AI never winning (now highest priority, might cause issues with weapon management @sebov?)
Sebastien Blomfield
Container registration now applies to stockpiling too
merge from container registration stuff
merge from main/container registration
IContainer cleanup/container registration
Registration to containers working for gathering for fire (untested for other stuff)/container registration
6 March 2018
Bill Lowe
GUI save
GUI save
Building decay is gated by a few more conditions UIElementPositioning supports curves for each value (offset/scale/alpha)
BuildingView's materialPropertyBlock no longer static
Beauty shots can specify FOV Added beauty shot position to testbox
Fixed missing weather defs in scenario data causing NREs on load
Passing cheat commands with no argument will toggle their value Building debug UI
Fixed portrait rendering being badly offset when inspecting a sleeping unit Fixed building.CurrentHitPoints not being properly set on init
Fixed biome editor not showing weather data
Reworked building decay calc somewhat. Editor has dedicated structural data section, with area to test decay values and see the calculation for decay time Made a bunch of zone component events static (seasons, weather) Various UI
More value rounding
Data, prefabs
Decay time rounding
Value element bits
Always show decay value for buildings that can decay
Added stat/value element stuff to EntityInspectionWidget Added ShowOnUI and ValueColorGradient to StatTypeDefinition Added StatsUtility.GetColor ext method for IStat, which uses the gradient defined in data evaluated
Building decay added to value elements in tooltip/detail overlay
Compile fix
5 March 2018
Bill Lowe
Fixed an out of range in MenuScene
Fucked off DOF for now, just disable during tribe create
Added tribeCreate mode to DynamicDOF
Fixed loading UI not reseting values Detail overlay UI only shows for buildings that have either active constructions or machine processes
Restore UI widgets to their default state when session ends Cleaned up de-activation calls in various widget init routines in favour if using UIWidget.isActiveByDefault Various other UI Fixed NRE in GameSpeedControlsWidget
More UI stuff
Detail overlay UI no longer blocks raycasts
UI tweaks
Tab overlay UI is now toggled, shows building details Standardised a bunch of UI element positioning code
Sebastien Blomfield
moar/container registration
Container registration WIP/container registration
idle AI tweaks. Added next winning GPV button to debugger.
changed nmo on basic hut
crafting table update with small rock renderer for seb
4 March 2018
Diogo Teixeira
Fixed BeforeAtmosphericScattering shader func cases where unity_MatrixVP was no good
3 March 2018
Bill Lowe
Sleep transition bits
2 March 2018
Bill Lowe
Fixed agent behaviour slots being reset by forced DM tick (event order was fucked)
More AI refactoring; got rid of SmartBehaviour/BaseBehaviour/IBehaviour and conslidated into single Behaviour class Moved behaviour pooling from AIManager to Behaviour itself
Fixed player controller doing its primary raycast while doing marquee selection Fixed another edge case in building placement
Fixed another edge case with game speed and successive building placement
Fixed successive building placements causing the game speed after placement to be incorrect
More AI cleanup Night transition camera stuff
More low level AI cleanup and execution state refactoring
Misc cleanup
Fixed Effect not starting it's ActionChain properly
1 March 2018
Bill Lowe
Moved BehaviourChain.Break's OnStateChanged invoke so we don't reset state before we've finished execution of any actions on break
Compile fix
Refactored state handling from GoalPlanVariant downwards (through BehaviourChain, Behaviour, ActionChain and AIAction) to use a common AIStates enum
Cleaning up Action/ActionChain and BehaviourChain state
More debugger shite
AI debugger progress Fixed out of range error in EntityManager.OnCullingGroupStateChanged
AI Debugger revamp part 1
Player building placement collision checks ignores the anchor view when snapping to existing walls Building UI anim tweaks
Cleaned up some current goal unsetting in DecisionMaker Made decision heap management consistent for various scoring methods in DM
UnitAttachments.TryAttach cleanup, BaseEntity.AttachedTo renamed to AttachedToItem for clarity. Updated debug drawer to clarity
Sebastien Blomfield
dropping unneeded stuff to work DM and low priority
Force tick on behaviour complete
sleep time curves should make people want to go to sleep earlier
Fixed condition for nulling current goal
No longer possible to stow an item that was dropped while stowing.
attempt to stop sticks clipping in the ground while walking
stick stacks