13,600 Commits over 2,710 Days - 0.21cph!
Basic first pass on better item placement logic
Remove IsEditor check for now -might fix compiling?
(Hopefully) fixed God Mode in builds again
Added a custom Is Running In Editor bp node
Never added custom c++ in Unreal, so hopefully this isn't a complete trainwreck
God Mode should now only be accessible in the editor
Some WIP volume settings in the options menu
Exposed Music, Effects and UI volume control
Can mute or double the default volume for each volume control
Units no longer play the getup animation when seen in the unit portrait manager
Floating health bar population now happens via an event delegate
Added an OnHealthModified event to CharacterBase
Floating Health Bar now just subscribes to that
Fixes incorrect starting health bar value being applied to enmies over the default hp (big sword guys)
Combat Changes
-Attack Montage speed is now controlled by an Attack Hold system that triggers on AntStart and holds for 0.7s
-If an enemy is attacked while in an Attack Hold they are staggered
-Characters can now be hit while dodging, their physics asset collision is being used as the hitbox
Fixed melee AI looking at target while at long range
Items in a container (backpack) will now appear in the radial menu
Pause menu now actually pauses the game
More spinner module stuff
A new padding module with two spinners
Fixed no race selected on tribe spawner in nospawns
Fixed some freeze errros on AI's with no running behaviour tree (dummy ai's)
Weapon trace stuff
Fixed some control issues if sheathing weapon while locked on
Tweaked character colission setup so sword strikes are colliding with e skeleton mesh
Bone name is now available in Weapon, not being used for anything right now.
Added a spinning trap hero module
-Still a bit wip
-Added an editor only gate mesh to the connector adctor to make positioning easier when making modules
Tooltip widget now positions while animating, fixes that weird hitch on the tooltip when you mouse over something
Added a machine fallback to the CreateMachineProcessActionDesireProcess (fixes not being able to give a player command to burn an item on a campfire)
Added a distance consideration to the GoSwimming goal plan so that swimming while idle is a bit less common (might need some tuning)
Construction skill now gets raised when depositing items to a building in construction (skill gain was tied to old construction system)
Random destination selector will now fail if it couldn't find a destination (fixes units trying to swim at 0,0,0 on island_01)
Added the ability for Selectors to Hide from UI on fail like Conditions
Go Home ability now hides from ui while unit is sleeping (since we can't calculate if a valid path home exists while the unit is sleeping)
Calls to IsValidDestination on sleeping units will now fail nicer and not throw error logs
Turned off Ignore Carried Items flag on Acquire Materials For Fire filter (this means that if the unit is holding a branch from a previous task, it will be used for fires as expected rather than being ignored and the unit collecting and feeding the fire with one arm while holding a branch)
IsHolding on Items can now optionally check LShoulder, RShoulder or Chest attachment points as well as hands (hands-only check is the default)
A unit going to sleep will now drop or stow held items in Chest, LShoulder or RShoulder slots, prevents weird holding animations being run while sleeping
Fixed ItemsBuffer in Items not being cleared between various methods
Added an confirmation prompt for quitting the game
Added a confirmation prompt for loading a game while a session is already in progress
Player will now turn to face input direction at the start of a current attack
Only affects non-locked combat
Turn takes less than half a second and takes place during attack animation
Fixes quick directional changes followed by an attack resulting in an attack that doesn't go in the intended direction
Added a lerped version of move speeds on the AnimBP
Hooked them up to the Guarding blendspace for smoother guard animations
Changed navmesh agent max step height to match step height on AI characters
Fixes weird pathing around stairs
Added an attacking move helper that gently pushes the player back if they are attacking towards an edge
-Pushback amount is exposed in Movement/AttackEdgePushbackAmount in MainDude
-Currently set to 100, which still allows the player to fall off the edge, but tends to leave the player close to the edge at the end of an attack
-Can be set to 0 to disable completely, 512 is generally enough to keep the player on a ledge even if spamming attack, but it's super obvious
AI_Character now stores it's AICharacterType and Behaviour Tree
Cleans up the big class detection branch in AIController
FaceTargetLoop will now break if the unit has stopped facing the target for any other reason (face target on unit view was being disabled if a unit was moving, which gets triggered if the unit gets bumped by another unit)
This should fix animals getting stuck if they are bumped while facing taget
Fixed a couple of load/session change issues
Fixed building upgrades not appearing in child radial menus
Fixed axe impact screen shakes affecting player camera even if the unit chopping wasn't being controlled (or in another tribe!)
Some more debug readout stuff: can see an entity's enabled state and can see the EntityKnowledgeData associated with a known entity (displays distance and last seen on)
Added God Mode for testing, suppressed leaderboard posting in editor
Hit G to toggle god mode, should be suppressed in a packaged build (untested)
Fixed human rigidbody and collider components getting left on when the game starts (this might solve the invisible units bug)
Fixed UI.ActivityNotificationsWidget still accepting raycasts even if it was disabled, was blocking player input in the middle third/bottom half of screen
Tweaked the various Sit action plans
-Fixed Resting flag being left on a unit indefinitely, will now get removed via a break action
-Fixed sitting plans lasting forever (until unit passed out from fatigue or hypothermia) if they are player instigated, added the 30-120s timer to do this
Fixed building views not getting set to finished when the last required item is deposited
Implemented screen space target lock changes
Changing lock on target now attempts to get the next valid target in a given screen-space direction
Can now change lock on target by pushing Rstick left/right or pressing Q/E on keyboard (Mouse Wheel still works as well)
Added a Test Map and a disabled AI Dummy
Tweaked sit by fire warmth need curve in warmth goal plan to try and stop people sitting at fires when they don't need to (left the sit by fire plan in Idle module, since we want that as a fallback)
Added a FireFuelCapacityConsideration to try and prevent people filling up fires too aggressively, should score lower the more "full" the fire is (first pass, could probably use some tweaking)
Added a toggle to log any flag changes on the debug tool
Can now display a unit's threat map as an overlay via the Morale component debug panel
Increased Human max filter target candidates count to 15 (was 10, lower than some animals)
Added an ignore carried items option to BehaviourChainFilter to filter out items held by the unit running the filter
Turned this on for the Gather fuel for fire goal plan, fixes unit's clothing getting evaluated in the filter
Reverted the random peek point I committed earlier
TargetFilters will now peek into the target array at a random point rather than starting 0, helps when dealing with large (10+) filters to ensure items that are at the end of the array get a change to be selected
Fixed construction parameters on building materials not being set properly on load
Added a Go Home ability to units - if they are outside of their territory you can command them to head back to their territory
Applied Unit Controller load fix from last week to a Groups entities to fix buildings getting marked as not player controlled on load (buildings in players group but not player controlled was messing stuff up)
Added a missing ProtoInclude for PersistedGameEventManagerData