branchbefore/main/Diplomacycancel
26 Commits over 0 Days - ∞cph!
Some final testbox tweaks
Made a new consideration to make agents pick better gifts
Made coconuts a x2 value gift
Gift component now has a value multiplier to allow for gifts of varying value
Added a good/bad diplomacy activity that pops a notification so player has feedback when they are doing something another tribe likes or dislikes
Added territory consideration to gift ai selection so AI's hopefully won't regift the same item multiple times
AI tribe gifting items is somewhat working, still has a few issues
Fixed some party invite abilities not restricting by group (could join other tribes hunting parties)
Hostile Introduction now uses TriggerComsAngry01 animation
Reworked friendly/hostile introductions as abilities rather than conversations
Diplomatic Events now have a max number of recurring events, so each event type can be capped differently (all are set to two except for gift, you can do that 3 times)
Started work on a Diplomacy AIModule with some WIP AI gifting stuff
Blackboard data can now store a group
Added a friendly and hostile introduction conversation topics
Modified Conversations component to evaluate sensed humans not in group
Made some group conditions - IsInSameGroup and HasInteractedWithMyGroup and applied them to the existing conditions
Player Instigated conversations have issues at the moment so most of this isn't functional yet
Added diplomacy scene to the SceneLoader dropdown
Refactored relationship calculation to happen once a (in-game) minute, rather than every time the state was requested
Updated diplomacy debug panel to work with last commit
DiplomaticEvents now store an AssetId to the original DiplomaticEventSettings asset
This means we can now recognize multiple events of the same type, current behaviour will just retime the existing event and not stack an event multiple times
Made an activity + diplomatic event for gifting
Added a Gift component to Items
If an item is marked as a Gift, it can be given to an neutral/friendly foreign unit
Rock is marked as a gift for testing purposes
Mouse over description for humans now reflects relationship status
DiplomacyRelation now stores whether the two tribes have interacted, mouse over description will still read "A Stranger..." if the two tribes haven't met
Made a DiplomacyFriendlinessConsideration that scores a relationship from 0-1
Added the consideration to Sleep in Building and Find Shelter in Building so units will be less likely to sleep somewhere not owned by them if the relationship is bad
Player controlled diplomacy now mirrors any relationships that other components have (this might change, still pondering)
Added a Interacted With Building activity
Added a UsedProperty diplomatic event
Added a new diplomacy testbox for easier testing of this stuff
Added a diplomacy check to building interaction, foreign buildings can only be interacted with if the relationship is neutral or hostile
Activities now have a slot for a DiplomaticEvent to trigger, they require Target to be set in the ActivityData to determine the group to assign to
Moved the Attack diplomatic event from the Combat component onto the StartCombat Activity
Starting some Diplomacy enhancements:
-Added a new DiplomaticEvent asset type
-Diplomacy component now keeps track of these events
-Component uses these events to determine relationship level and then hostility level
-Exposed an optional diplomatic event to the Attack component that applies an Attacked event when attacking a member of another tribe (this will probably be replaced with an Activity/Trigger in future)