19,298 Commits over 1,614 Days - 0.50cph!
updated ASE, compile fix hack
updated navmesh components for 5.6b3
dont bother saving/loading smartObject subscriptions or reservations for now
minor DistanceConsideration optimisation
better smartobject interaction API wip
SmartObject cleanup, cleaner interaction position persistence, reserverations and subscriptions find references to InteractionPosition on load
smartObject layout, related classes to files and general cleanup
updating shader to fix ase glitch
Fixed some issues with behaviour pooling
CorpseCreator NRE fix and more Machine persistence
FuelToEffect now persists properly
Avoid creating new SmartSubscriptions in TrySubscribe, use FixedArray GetEnd pattern properly
Behaviour moved to BaseBehaviour, now abstract, inherits from PooledObject for generic pooling support
Lots of profiler hooks, and pooling changes
fixed a missing constructor
Building attachment prototpying
ProtoInclude PersistedSmartObjectData
Debug hookup fixes
Fixed bad music triggers
Disabled collaboration navmesh update toggling since it seems to break a lot in 5.5, needs further investigation
Fixed bad Building.PercentageOfRequirementsMet values causing people to build stuff that cannot yet be built
Roles on Goals
Smart object partial for persistence
BehaviourPlanData renamed and move to InteractionPlanData, now held by the InteractionPlan
Let's not merge out save and load functions from SmartObject.
GroupKnowledge persistence WIP
Added Role nouns
Disabled AI manager action chain pooling as it's buggy
ID classes weren't Serializable. gg.
Merged Smart Object Persistence branch to main.
Minor layout in BaseEntity
Refactoring building interaction data + validation, default interactions are defined on the script meta and validated in BuildingSettings.OnValidate
BuildingSettingsEditor upgrades stuff WIP
Removed SkillUseParameters from BehaviourPlanData as it wasn't being used
Moved some building data classes back into a single file for convenience while refactoring
Updated resharper templates
Let's not forget to proto include persisted smart object data.
Some manual cleanup after merge.
Comment header style because fuck it
angry sounds added to new anim
More work on SO persistence. Applied ParametersId and AssetId where appropriate + misc other persistence related things and thongs.
UnitComponents now using correct ID types
Started changing from int to new ID types
Dispenser persistence (untested)
Added BaseId, derived EntityId, AssetId, ParametersId, BaseIdEx for retrieval
Building upgrades data schema WIP
Added Entity.Create, called when entities are created and saved for the first time, usage example in Unit.Traits
InteractionPositionSet/Data need to inherit from DataParameters, that we get a Guid we can use to recognize the right instance when we load from persisted data.
InteractionPositionGroup shouldn't need its InteractionSettings persisted, so let's not do that!