- can create npcs from generic rigs
- added custom match target for generic rigs ( mandatory ) - can be also used on humanoid rigs if wanted. Has possibilty to assign any bone for match target effecter instead only hands and feet.
- apply RagdollManagerHum on humanoid rigs, apply RagdollManagerGen on generic rigs.
- IMPORTANT NOTE: now upon creating match target animation, enter match start and match end values in 'OnMatchTargetStartEvent' function in trigger animation import settings.
Enter match start and match end in ''OnMatchTargetStartEvent' string parameter in form of 'matchStart;matchEnd' - ( 0.1;0.7 ) - first match start - then - semicolon - then match end.
- added examples of npc animator with minimal amount of animations ( 'Challenger_Gen_Basic' animator for challenger model, 'Mech_Basic' animator for mech_bot, 'Spiderbot_Basic' for spider_bot.
- added full feature animator example with ladders and triggers for challenger model 'Challenger_Gen_Advanced' and mech animator with triggers 'Mech_Advanced'
- added additional failsafe for arrow grabbing event miss bug.
- created bow mode aiming for non oriented skeletons ( if spine bone don't point forward of player )
- choose beween two aiming modes: lookat mode and additive mode. Look at mode is suitable with oriented spine aiming bones and additive if aim bone is not oriented.
- added posibility to assign aiming bone.
- when creating bow, now you can create target position for arrow aim. Place transform as a child of bow and system will keep arrow aimed at position of it when drawing bow.That way arrow will always point in the direction of bow and it will not wiggle. Look at the example in current bow in package.
- improved dive rolling: player do not abruptly rotate to direction of diving but turns quickly.
- added field 'UIHeightOffset' to HealthUI and 'DebugUI' so UI can be moved up/down
- now resetting to default clips on equipping bow
- changed function name from 'OnArrowHitFleshEvent' to 'OnArrowHitNPCEvent' in ArrowPool.cs. You can add that function to arrow impact hit delegate to any physics material you want to interact to arrow hits. I used it also on mech metal material so it accept hits from bow/arrow.
- improved some triggers - now player/npc do not stop upon starting trigger ( like climb on / jump over ) but blend to trigger animation from current motion ( like running )
- added TriggerType parameter to animator instead of cluttering with many parameters ( ClimbOn, ClimbOnRun, ClimbOnLowObstacle etc. - now toggle ClimbOn + int type parameter to start different climb on animations ).
- changed climbOn trigger to accept 3 climb on animations: climb on walking or running and climb on low obstacle - toggle ClimbOn parameter + TriggerType 0 = walk/ 1 = low obstacle, 2 = run
- changed jumpOver trigger to accept 2 jump over animations: jump over walking or running - toggle JumpOver parameter + TriggerType 0 = walk/ 1 = run
- changed jumpDown trigger to accept 2 jump down animations: jumpDown from low and high - toggle JumpDown parameter + TriggerType 0 = high / 1 = low.
- changed jumpForward trigger to accept 2 jump forward animations: leap from walk and run motions - toggle JumpForward parameter + TriggerType 0 = walk, 1 = run.
NOTE: look in the trigger script examples to see how to add more animations on particular action.
- added block resistance and block penetration modifiers. Example when unarmed player has block resistance of 0 and block penetration of 0 - that means npc with block penetration of more than 0 can break player's block. Like Chainsaw have blockPenetration of 2 - that means it cannot be blocked by hands ( 0) or wooden shield ( 1), but can be blocked by metal shield ( 2).
NOTE1: Assign blockResistance and blockPenetration to player stats, weapon stats ( switching when player changes items ) - also set those on npc in stats component.
NOTE2: You can also use block resistance and penetration to modify damage done to receiver to block only part of damage;
- improved local avoidance ( now a lot cheaper and better )
- added scenegraph / scene zones. Divide scene into multiple zones and activate/deactivate zone objects based on player position.