change: changed how combat state mangement works by adding circling movement, target sight loss, and attach chance to combat subfsm

This commit is contained in:
Chris
2025-12-02 17:16:30 -05:00
parent ed4298b1da
commit 8919a69e50
5 changed files with 15 additions and 7 deletions

View File

@@ -17,7 +17,7 @@ MonoBehaviour:
Speed","changeValue":{"_value":1},"value":{},"_changeSmoothing":{},"_smoothing":{},"_changeEasing":{},"_easing":{}},"acceleration":{"label":"Acceleration","changeValue":{},"value":{},"_changeSmoothing":{},"_smoothing":{},"_changeEasing":{},"_easing":{}},"deacceleration":{"label":"Deacceleration","changeValue":{},"value":{},"_changeSmoothing":{},"_smoothing":{},"_changeEasing":{},"_easing":{}},"$type":"Reset.Units.ChangeMoveSpeedSettings"},{"newSpeed":{},"absolute":{},"relativity":{},"$type":"Reset.Units.SetNewSpeed"},{"log":{"_value":"!?"},"secondsToRun":3.0,"verboseMode":2,"$type":"NodeCanvas.Tasks.Actions.DebugLogText"}]},"_onUpdateList":{"executionMode":1,"actions":[]},"_onExitList":{"executionMode":1,"actions":[]},"foldEnter":true,"_color":{"r":1.0,"g":0.42,"b":0.32,"a":1.0},"_name":"Detect","_position":{"x":486.012,"y":-16.01074},"$type":"NodeCanvas.StateMachines.SuperActionState","$id":"2"},{"_actionList":{"executionMode":1,"actions":[{"log":{"_value":"Entering
Combat!"},"$type":"NodeCanvas.Tasks.Actions.DebugLogText"}]},"_color":{"r":1.0,"g":0.42,"b":0.32,"a":1.0},"_name":"Enter
Combat","_position":{"x":756.0,"y":-110.0},"$type":"NodeCanvas.StateMachines.ActionState","$id":"3"},{"_nestedFSM":{"_value":1},"_variablesMap":[{"_targetSubGraphVariableID":"7222df40-dd9e-41ce-a85a-a5221009180e","_canWrite":true,"_type":"UnityEngine.Animator","_name":"testModelAnimator","_targetVariableID":"2a36b4ca-c66b-4748-9a01-d054a460e3d3"},{"_targetSubGraphVariableID":"00b78a8a-fb9e-44d0-b9a8-81c6992abd41","_canWrite":true,"_type":"UnityEngine.Animator","_name":"bodyAnimator","_targetVariableID":"596577fd-def2-446f-855c-d366b7f6cc67"}],"_name":"In
Combat","_position":{"x":970.3454,"y":363.9611},"$type":"NodeCanvas.StateMachines.NestedFSMState","$id":"4"},{"_actionList":{"executionMode":1,"actions":[{"$type":"Reset.Units.SetWanderingPath"},{"minValue":{"_value":2.0},"maxValue":{"_value":7.0},"floatVariable":{"_name":"_newSpeed"},"$type":"NodeCanvas.Tasks.Actions.SetFloatRandom"},{"moveSpeed":{"label":"Move
Combat","_position":{"x":969.3454,"y":362.9611},"$type":"NodeCanvas.StateMachines.NestedFSMState","$id":"4"},{"_actionList":{"executionMode":1,"actions":[{"$type":"Reset.Units.SetWanderingPath"},{"minValue":{"_value":2.0},"maxValue":{"_value":7.0},"floatVariable":{"_name":"_newSpeed"},"$type":"NodeCanvas.Tasks.Actions.SetFloatRandom"},{"moveSpeed":{"label":"Move
Speed","changeValue":{"_value":1},"value":{"_name":"_newSpeed"},"_changeSmoothing":{},"_smoothing":{},"_changeEasing":{},"_easing":{}},"acceleration":{"label":"Acceleration","changeValue":{},"value":{},"_changeSmoothing":{},"_smoothing":{},"_changeEasing":{},"_easing":{}},"deacceleration":{"label":"Deacceleration","changeValue":{},"value":{},"_changeSmoothing":{},"_smoothing":{},"_changeEasing":{},"_easing":{}},"$type":"Reset.Units.ChangeMoveSpeedSettings"},{"newSpeed":{"_name":"_newSpeed"},"absolute":{},"relativity":{},"$type":"Reset.Units.SetNewSpeed"}]},"_color":{"r":1.0,"g":0.42,"b":0.32,"a":1.0},"_name":"Get
New Wandering Path","_position":{"x":-134.0,"y":112.0},"$type":"NodeCanvas.StateMachines.ActionState","$id":"5"}],"connections":[{"_sourceNode":{"$ref":"0"},"_targetNode":{"$ref":"1"},"$type":"NodeCanvas.StateMachines.FSMConnection"},{"_condition":{"eventName":{"_value":"New
Target Detected"},"$type":"NodeCanvas.Tasks.Conditions.CheckEvent"},"_sourceNode":{"$ref":"1"},"_targetNode":{"$ref":"2"},"$type":"NodeCanvas.StateMachines.FSMConnection"},{"_condition":{"timeout":{"_name":"_wanderTimer"},"$type":"NodeCanvas.Tasks.Conditions.Timeout"},"_sourceNode":{"$ref":"1"},"_targetNode":{"$ref":"5"},"$type":"NodeCanvas.StateMachines.FSMConnection"},{"_condition":{"eventName":{"_value":"Drop
@@ -32,7 +32,7 @@ MonoBehaviour:
_version: 3.31
_category:
_comments:
_translation: {x: 206, y: 338}
_translation: {x: 219, y: 300}
_zoomFactor: 1
_haltSerialization: 0
_externalSerializationFile: {fileID: 0}

View File

@@ -19,7 +19,7 @@ MonoBehaviour:
_version: 3.31
_category:
_comments:
_translation: {x: 215, y: -275}
_translation: {x: 471, y: -180}
_zoomFactor: 1
_haltSerialization: 0
_externalSerializationFile: {fileID: 0}

View File

@@ -12,7 +12,10 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: f945e777233a59f4aba40aeca29093a6, type: 3}
m_Name: TestEnemyCombatFSM
m_EditorClassIdentifier: NodeCanvas::NodeCanvas.StateMachines.FSM
_serializedGraph: '{"type":"NodeCanvas.StateMachines.FSM","nodes":[{"_position":{"x":859.0,"y":328.0},"$type":"NodeCanvas.StateMachines.EmptyState","$id":"0"},{"_nestedBT":{"_value":1},"executionMode":0,"_variablesMap":[{"_targetSubGraphVariableID":"c96d2e2b-e09d-4abc-a287-3e6821b42c4b","_canWrite":true,"_type":"UnityEngine.Animator","_name":"bodyAnimator","_targetVariableID":"00b78a8a-fb9e-44d0-b9a8-81c6992abd41"}],"_position":{"x":1346.0,"y":467.0},"$type":"NodeCanvas.StateMachines.NestedBTState","$id":"1"},{"_actionList":{"executionMode":1,"actions":[{"minValue":{"_value":3.0},"maxValue":{"_value":5.0},"floatVariable":{"_name":"_randomWait"},"$type":"NodeCanvas.Tasks.Actions.SetFloatRandom"},{"waitTime":{"_name":"_randomWait"},"$type":"NodeCanvas.Tasks.Actions.Wait"}]},"_color":{"r":1.0,"g":0.42,"b":0.32,"a":1.0},"_position":{"x":487.0,"y":399.0},"$type":"NodeCanvas.StateMachines.ActionState","$id":"2"},{"_actionList":{"executionMode":1,"actions":[]},"_color":{"r":1.0,"g":0.42,"b":0.32,"a":1.0},"_position":{"x":1110.0,"y":487.0},"$type":"NodeCanvas.StateMachines.ActionState"}],"connections":[{"_sourceNode":{"$ref":"0"},"_targetNode":{"$ref":"1"},"$type":"NodeCanvas.StateMachines.FSMConnection"},{"_sourceNode":{"$ref":"2"},"_targetNode":{"$ref":"0"},"$type":"NodeCanvas.StateMachines.FSMConnection"}],"canvasGroups":[],"localBlackboard":{"_variables":{"testModelAnimator":{"_name":"testModelAnimator","_id":"7222df40-dd9e-41ce-a85a-a5221009180e","_isPublic":true,"$type":"NodeCanvas.Framework.Variable`1[[UnityEngine.Animator,
_serializedGraph: '{"type":"NodeCanvas.StateMachines.FSM","nodes":[{"_actionList":{"executionMode":1,"actions":[]},"_color":{"r":1.0,"g":0.42,"b":0.32,"a":1.0},"_name":"Circling
Movement","_position":{"x":589.0,"y":145.0},"$type":"NodeCanvas.StateMachines.ActionState","$id":"0"},{"_name":"Try
to Attack","_position":{"x":991.0,"y":421.0},"$type":"NodeCanvas.StateMachines.EmptyState","$id":"1"},{"_nestedBT":{"_value":1},"executionMode":0,"_variablesMap":[{"_targetSubGraphVariableID":"c96d2e2b-e09d-4abc-a287-3e6821b42c4b","_canWrite":true,"_type":"UnityEngine.Animator","_name":"bodyAnimator","_targetVariableID":"00b78a8a-fb9e-44d0-b9a8-81c6992abd41"}],"_position":{"x":1213.0,"y":503.0},"$type":"NodeCanvas.StateMachines.NestedBTState","$id":"2"},{"_onEnterList":{"executionMode":1,"actions":[]},"_onUpdateList":{"executionMode":1,"actions":[]},"_onExitList":{"executionMode":1,"actions":[]},"_color":{"r":1.0,"g":0.42,"b":0.32,"a":1.0},"_name":"Walk
To Target","_position":{"x":256.0,"y":-182.0},"$type":"NodeCanvas.StateMachines.SuperActionState","$id":"3"}],"connections":[{"_condition":{"timeout":{"_value":1.0},"$type":"NodeCanvas.Tasks.Conditions.Timeout"},"_sourceNode":{"$ref":"0"},"_targetNode":{"$ref":"1"},"$type":"NodeCanvas.StateMachines.FSMConnection"},{"_condition":{"target":{"_name":"target","_targetVariableID":"4a2889be-2a8a-4a68-ab49-fa456e2c9a19"},"maxDistance":{"_value":15.0},"layerMask":{"_value":{"value":255}},"awarnessDistance":{},"viewAngle":{"_value":90.0},"_invert":true,"$type":"NodeCanvas.Tasks.Conditions.CanSeeTarget"},"_sourceNode":{"$ref":"0"},"_targetNode":{"$ref":"3"},"$type":"NodeCanvas.StateMachines.FSMConnection"},{"_condition":{"probability":{"_value":1.0},"maxValue":{"_value":4.0},"$type":"NodeCanvas.Tasks.Conditions.Probability"},"_sourceNode":{"$ref":"1"},"_targetNode":{"$ref":"2"},"$type":"NodeCanvas.StateMachines.FSMConnection"},{"_sourceNode":{"$ref":"1"},"_targetNode":{"$ref":"0"},"$type":"NodeCanvas.StateMachines.FSMConnection"},{"_condition":{"target":{"_name":"target","_targetVariableID":"4a2889be-2a8a-4a68-ab49-fa456e2c9a19"},"maxDistance":{"_value":15.0},"layerMask":{"_value":{"value":255}},"awarnessDistance":{},"viewAngle":{"_value":90.0},"$type":"NodeCanvas.Tasks.Conditions.CanSeeTarget"},"_sourceNode":{"$ref":"3"},"_targetNode":{"$ref":"0"},"$type":"NodeCanvas.StateMachines.FSMConnection"}],"canvasGroups":[],"localBlackboard":{"_variables":{"testModelAnimator":{"_name":"testModelAnimator","_id":"7222df40-dd9e-41ce-a85a-a5221009180e","_isPublic":true,"$type":"NodeCanvas.Framework.Variable`1[[UnityEngine.Animator,
UnityEngine.AnimationModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]"},"bodyAnimator":{"_name":"bodyAnimator","_id":"00b78a8a-fb9e-44d0-b9a8-81c6992abd41","_isPublic":true,"$type":"NodeCanvas.Framework.Variable`1[[UnityEngine.Animator,
UnityEngine.AnimationModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]"}}}}'
_objectReferences:
@@ -22,7 +25,7 @@ MonoBehaviour:
_version: 3.31
_category:
_comments:
_translation: {x: -320, y: 28}
_translation: {x: 132, y: 296}
_zoomFactor: 1
_haltSerialization: 0
_externalSerializationFile: {fileID: 0}

View File

@@ -350,7 +350,8 @@ MonoBehaviour:
_parentBlackboard: {fileID: 0}
_serializedBlackboard: '{"_variables":{"bodyAnimator":{"_value":1,"_name":"bodyAnimator","_id":"596577fd-def2-446f-855c-d366b7f6cc67","$type":"NodeCanvas.Framework.Variable`1[[UnityEngine.Animator,
UnityEngine.AnimationModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]"},"modelAnimator":{"_value":2,"_name":"modelAnimator","_id":"5c66985d-3dce-49ff-a5eb-fb807771b577","$type":"NodeCanvas.Framework.Variable`1[[UnityEngine.Animator,
UnityEngine.AnimationModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]"}}}'
UnityEngine.AnimationModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]"},"target":{"_propertyPath":"Reset.Units.EnemyCombat.target","_name":"target","_id":"4a2889be-2a8a-4a68-ab49-fa456e2c9a19","$type":"NodeCanvas.Framework.Variable`1[[UnityEngine.GameObject,
UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]"}}}'
_objectReferences:
- {fileID: 0}
- {fileID: 4447190118606394553}
@@ -366,6 +367,9 @@ MonoBehaviour:
_references:
- {fileID: 0}
- {fileID: 8332864352631384059}
- _json: '{"_propertyPath":"Reset.Units.EnemyCombat.target","_name":"target","_id":"4a2889be-2a8a-4a68-ab49-fa456e2c9a19","$type":"NodeCanvas.Framework.Variable`1[[UnityEngine.GameObject,
UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]"}'
_references: []
--- !u!114 &5075083518210584453
MonoBehaviour:
m_ObjectHideFlags: 0

View File

@@ -9695,7 +9695,8 @@ PrefabInstance:
propertyPath: _serializedBlackboard
value: '{"_variables":{"bodyAnimator":{"_name":"bodyAnimator","_id":"596577fd-def2-446f-855c-d366b7f6cc67","$type":"NodeCanvas.Framework.Variable`1[[UnityEngine.Animator,
UnityEngine.AnimationModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]"},"modelAnimator":{"_name":"modelAnimator","_id":"5c66985d-3dce-49ff-a5eb-fb807771b577","$type":"NodeCanvas.Framework.Variable`1[[UnityEngine.Animator,
UnityEngine.AnimationModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]"}}}'
UnityEngine.AnimationModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]"},"target":{"_propertyPath":"Reset.Units.EnemyCombat.target","_name":"target","_id":"4a2889be-2a8a-4a68-ab49-fa456e2c9a19","$type":"NodeCanvas.Framework.Variable`1[[UnityEngine.GameObject,
UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]"}}}'
objectReference: {fileID: 0}
- target: {fileID: 6881462958115636691, guid: 7dca717b905799e4cb7f64180d31be25, type: 3}
propertyPath: _objectReferences.Array.size