Greater slutch

This commit is contained in:
Rob Kelly 2025-04-18 15:19:54 -06:00
parent 2e3b08271f
commit 35cc441241
10 changed files with 81 additions and 69 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -28,9 +28,9 @@
"mesh":1, "mesh":1,
"name":"FaceNodule", "name":"FaceNodule",
"translation":[ "translation":[
-0.25755488872528076, -0.17057561874389648,
1.3063514232635498, 1.6081464290618896,
-0.29665297269821167 0.21613556146621704
] ]
}, },
{ {
@ -38,17 +38,17 @@
"name":"Nodule.001", "name":"Nodule.001",
"translation":[ "translation":[
0.3235247731208801, 0.3235247731208801,
0.9696184992790222, 1.1926970481872559,
0.08157177269458771 0.46364104747772217
] ]
}, },
{ {
"mesh":3, "mesh":3,
"name":"Nodule.002", "name":"Nodule.002",
"translation":[ "translation":[
-0.025791287422180176, -0.02579129859805107,
0.6830007433891296, 0.960591197013855,
0.010160116478800774 0.2809494137763977
] ]
}, },
{ {
@ -56,8 +56,8 @@
"name":"Nodule.003", "name":"Nodule.003",
"translation":[ "translation":[
-0.41702041029930115, -0.41702041029930115,
0.8321946859359741, 0.9688977003097534,
0.32163435220718384 0.6262117028236389
] ]
}, },
{ {
@ -65,8 +65,8 @@
"name":"Nodule.004", "name":"Nodule.004",
"translation":[ "translation":[
0.5003674030303955, 0.5003674030303955,
1.2441285848617554, 1.5599497556686401,
-0.20342206954956055 0.3163224160671234
] ]
}, },
{ {
@ -74,8 +74,8 @@
"name":"Nodule.005", "name":"Nodule.005",
"translation":[ "translation":[
0.3826490342617035, 0.3826490342617035,
1.4056977033615112, 1.554377555847168,
0.16940319538116455 0.7226130962371826
] ]
}, },
{ {
@ -83,8 +83,8 @@
"name":"Nodule", "name":"Nodule",
"translation":[ "translation":[
0.4212178587913513, 0.4212178587913513,
0.9415113925933838, 1.4067257642745972,
-0.502720057964325 -0.08076554536819458
] ]
} }
], ],
@ -201,7 +201,7 @@
"count":326, "count":326,
"max":[ "max":[
1.618986964225769, 1.618986964225769,
2.0478501319885254, 2.300966739654541,
1.716138243675232 1.716138243675232
], ],
"min":[ "min":[
@ -234,14 +234,14 @@
"componentType":5126, "componentType":5126,
"count":174, "count":174,
"max":[ "max":[
0.23762282729148865, 0.2763219177722931,
0.20167696475982666, 0.2834518849849701,
0.18547290563583374 0.23855793476104736
], ],
"min":[ "min":[
-0.2717793583869934, -0.38596513867378235,
-0.3451462388038635, -0.3979562222957611,
-0.32205337285995483 -0.48880502581596375
], ],
"type":"VEC3" "type":"VEC3"
}, },
@ -269,13 +269,13 @@
"count":60, "count":60,
"max":[ "max":[
0.2022053599357605, 0.2022053599357605,
0.16918832063674927, 0.20177102088928223,
0.19656305015087128 0.19349539279937744
], ],
"min":[ "min":[
-0.2022053450345993, -0.2022053599357605,
-0.16918843984603882, -0.20177114009857178,
-0.19656309485435486 -0.19349545240402222
], ],
"type":"VEC3" "type":"VEC3"
}, },
@ -303,13 +303,13 @@
"count":60, "count":60,
"max":[ "max":[
0.27359873056411743, 0.27359873056411743,
0.26625341176986694, 0.2665247917175293,
0.23749792575836182 0.26808565855026245
], ],
"min":[ "min":[
-0.27359873056411743, -0.2735987901687622,
-0.2662535011768341, -0.26652491092681885,
-0.23749792575836182 -0.26808562874794006
], ],
"type":"VEC3" "type":"VEC3"
}, },
@ -337,13 +337,13 @@
"count":60, "count":60,
"max":[ "max":[
0.16585636138916016, 0.16585636138916016,
0.1689516305923462, 0.16951501369476318,
0.17375069856643677 0.18974971771240234
], ],
"min":[ "min":[
-0.16585639119148254, -0.16585639119148254,
-0.16895174980163574, -0.16951489448547363,
-0.17375071346759796 -0.18974965810775757
], ],
"type":"VEC3" "type":"VEC3"
}, },
@ -371,13 +371,13 @@
"count":60, "count":60,
"max":[ "max":[
0.07109105587005615, 0.07109105587005615,
0.062039852142333984, 0.06617152690887451,
0.06739750504493713 0.06380155682563782
], ],
"min":[ "min":[
-0.07109105587005615, -0.07109105587005615,
-0.062039852142333984, -0.06617176532745361,
-0.06739750504493713 -0.06380161643028259
], ],
"type":"VEC3" "type":"VEC3"
}, },
@ -404,14 +404,14 @@
"componentType":5126, "componentType":5126,
"count":60, "count":60,
"max":[ "max":[
0.0909624993801117, 0.0909624695777893,
0.07769286632537842, 0.08616113662719727,
0.08200663328170776 0.0779794454574585
], ],
"min":[ "min":[
-0.09096261858940125, -0.09096258878707886,
-0.07769310474395752, -0.08616113662719727,
-0.08200664073228836 -0.07797938585281372
], ],
"type":"VEC3" "type":"VEC3"
}, },
@ -439,13 +439,13 @@
"count":60, "count":60,
"max":[ "max":[
0.1606079339981079, 0.1606079339981079,
0.14889538288116455, 0.15267109870910645,
0.1551172137260437 0.17389386892318726
], ],
"min":[ "min":[
-0.1606079339981079, -0.1606079339981079,
-0.14889538288116455, -0.15267133712768555,
-0.15511709451675415 -0.17389383912086487
], ],
"type":"VEC3" "type":"VEC3"
}, },

View File

@ -215,10 +215,10 @@ anchor_left = 0.5
anchor_top = 0.5 anchor_top = 0.5
anchor_right = 0.5 anchor_right = 0.5
anchor_bottom = 0.5 anchor_bottom = 0.5
offset_left = -400.86 offset_left = -400.102
offset_top = -300.741 offset_top = -298.829
offset_right = -400.86 offset_right = -400.102
offset_bottom = -300.741 offset_bottom = -298.829
grow_horizontal = 2 grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
script = ExtResource("4_ud8na") script = ExtResource("4_ud8na")
@ -235,6 +235,7 @@ offset_left = -208.0
offset_right = 1008.0 offset_right = 1008.0
offset_bottom = 253.0 offset_bottom = 253.0
grow_horizontal = 2 grow_horizontal = 2
mouse_filter = 2
theme_type_variation = &"AlertLabel" theme_type_variation = &"AlertLabel"
[node name="AlertLine1" type="Label" parent="AlertHUD/Rumbler/GrunkAlert2"] [node name="AlertLine1" type="Label" parent="AlertHUD/Rumbler/GrunkAlert2"]

View File

@ -0,0 +1,17 @@
@tool
class_name UpdateStalkingTarget extends ActionLeaf
## Copy the pursuit target to the stalking target during pursuit.
const SOURCE_KEY := "pursuit_target"
const DEST_KEY := "stalking_target"
@onready var stalking_timer: Timer = %StalkingTimer
func tick(_actor: Node, blackboard: Blackboard) -> int:
var target := blackboard.get_value(SOURCE_KEY) as Node3D
if not is_instance_valid(target):
return FAILURE
blackboard.set_value(DEST_KEY, target.global_position)
stalking_timer.start()
return SUCCESS

View File

@ -0,0 +1 @@
uid://yw2u7rlr0whk

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=36 format=3 uid="uid://ehf5sg3ahvbf"] [gd_scene load_steps=35 format=3 uid="uid://ehf5sg3ahvbf"]
[ext_resource type="Script" uid="uid://bukihqt1lybnx" path="res://src/util/frame_skipper.gd" id="2_lak6w"] [ext_resource type="Script" uid="uid://bukihqt1lybnx" path="res://src/util/frame_skipper.gd" id="2_lak6w"]
[ext_resource type="Script" uid="uid://gwwmqwixqqr5" path="res://src/world/grunk_beast/grunk_beast.gd" id="2_qqnhb"] [ext_resource type="Script" uid="uid://gwwmqwixqqr5" path="res://src/world/grunk_beast/grunk_beast.gd" id="2_qqnhb"]
@ -23,8 +23,7 @@
[ext_resource type="Script" uid="uid://bkdwuqv4tudka" path="res://src/world/grunk_beast/behaviors/actions/pursue_target.gd" id="14_x8l6r"] [ext_resource type="Script" uid="uid://bkdwuqv4tudka" path="res://src/world/grunk_beast/behaviors/actions/pursue_target.gd" id="14_x8l6r"]
[ext_resource type="Script" uid="uid://demv7xh27ouvr" path="res://src/world/grunk_beast/behaviors/actions/blackboard_erase_safe.gd" id="15_4b27i"] [ext_resource type="Script" uid="uid://demv7xh27ouvr" path="res://src/world/grunk_beast/behaviors/actions/blackboard_erase_safe.gd" id="15_4b27i"]
[ext_resource type="Script" uid="uid://dwfdg523bk776" path="res://addons/beehave/nodes/decorators/failer.gd" id="15_oons1"] [ext_resource type="Script" uid="uid://dwfdg523bk776" path="res://addons/beehave/nodes/decorators/failer.gd" id="15_oons1"]
[ext_resource type="Script" uid="uid://wfd5nbethyw6" path="res://src/world/grunk_beast/behaviors/actions/blackboard_copy.gd" id="15_umoec"] [ext_resource type="Script" uid="uid://yw2u7rlr0whk" path="res://src/world/grunk_beast/behaviors/actions/update_stalking_target.gd" id="16_lak6w"]
[ext_resource type="Script" uid="uid://ykfqlqp7e8og" path="res://src/world/grunk_beast/behaviors/actions/start_timer.gd" id="16_asd50"]
[ext_resource type="Script" uid="uid://h0cp58nswpml" path="res://src/world/grunk_beast/behaviors/conditions/timer_running.gd" id="16_oons1"] [ext_resource type="Script" uid="uid://h0cp58nswpml" path="res://src/world/grunk_beast/behaviors/conditions/timer_running.gd" id="16_oons1"]
[ext_resource type="Script" uid="uid://ubcelage67hs" path="res://src/world/grunk_beast/behaviors/actions/get_random_target.gd" id="24_asd50"] [ext_resource type="Script" uid="uid://ubcelage67hs" path="res://src/world/grunk_beast/behaviors/actions/get_random_target.gd" id="24_asd50"]
[ext_resource type="Script" uid="uid://dvnmhlldp23hg" path="res://addons/beehave/nodes/composites/selector_random.gd" id="24_xs4mp"] [ext_resource type="Script" uid="uid://dvnmhlldp23hg" path="res://addons/beehave/nodes/composites/selector_random.gd" id="24_xs4mp"]
@ -180,15 +179,8 @@ area = NodePath("../../../../../AggroRange")
metadata/_custom_type_script = "uid://b34l3v4sr8rmq" metadata/_custom_type_script = "uid://b34l3v4sr8rmq"
[node name="UpdateStalkingTarget" type="Node" parent="GrunkBeastBehavior/StateSelector/PursuitSequence"] [node name="UpdateStalkingTarget" type="Node" parent="GrunkBeastBehavior/StateSelector/PursuitSequence"]
script = ExtResource("15_umoec") script = ExtResource("16_lak6w")
source_key = "pursuit_target" metadata/_custom_type_script = "uid://yw2u7rlr0whk"
destination_key = "stalking_target"
metadata/_custom_type_script = "uid://wfd5nbethyw6"
[node name="RestartStalkingTimer" type="Node" parent="GrunkBeastBehavior/StateSelector/PursuitSequence" node_paths=PackedStringArray("timer")]
script = ExtResource("16_asd50")
timer = NodePath("../../../../StalkingTimer")
metadata/_custom_type_script = "uid://ykfqlqp7e8og"
[node name="PursueTarget" type="Node" parent="GrunkBeastBehavior/StateSelector/PursuitSequence"] [node name="PursueTarget" type="Node" parent="GrunkBeastBehavior/StateSelector/PursuitSequence"]
script = ExtResource("14_x8l6r") script = ExtResource("14_x8l6r")
@ -226,7 +218,7 @@ metadata/_custom_type_script = "uid://om57w2acvgb7"
script = ExtResource("11_mbqcc") script = ExtResource("11_mbqcc")
mean_time = 4.0 mean_time = 4.0
st_dev_time = 0.6 st_dev_time = 0.6
wait_time = 4.5275 wait_time = 3.8583
metadata/_custom_type_script = "uid://beyk2xtbjrsg4" metadata/_custom_type_script = "uid://beyk2xtbjrsg4"
[node name="RandomStalkingBehavior" type="Node" parent="GrunkBeastBehavior/StateSelector/StalkingSequence/RandomDelay"] [node name="RandomStalkingBehavior" type="Node" parent="GrunkBeastBehavior/StateSelector/StalkingSequence/RandomDelay"]
@ -272,7 +264,7 @@ metadata/_custom_type_script = "uid://cg016dbe7gs1x"
script = ExtResource("11_mbqcc") script = ExtResource("11_mbqcc")
mean_time = 5.0 mean_time = 5.0
st_dev_time = 1.0 st_dev_time = 1.0
wait_time = 6.19423 wait_time = 5.01985
metadata/_custom_type_script = "uid://beyk2xtbjrsg4" metadata/_custom_type_script = "uid://beyk2xtbjrsg4"
[node name="PickRandomLurkTarget" type="Node" parent="GrunkBeastBehavior/StateSelector/LurkSequence/RandomDelay"] [node name="PickRandomLurkTarget" type="Node" parent="GrunkBeastBehavior/StateSelector/LurkSequence/RandomDelay"]

View File

@ -8,6 +8,7 @@
[node name="SlutchBeast" instance=ExtResource("1_ctp72")] [node name="SlutchBeast" instance=ExtResource("1_ctp72")]
script = ExtResource("2_pm58j") script = ExtResource("2_pm58j")
theta_acceleration = 8.0
[node name="Slutch" parent="." index="0"] [node name="Slutch" parent="." index="0"]
surface_material_override/0 = ExtResource("3_htnl6") surface_material_override/0 = ExtResource("3_htnl6")