265 lines
11 KiB
Plaintext
Raw Normal View History

2025-09-02 12:16:16 -06:00
[gd_scene load_steps=39 format=3 uid="uid://brrd33217oplv"]
2025-08-30 00:12:41 -06:00
[ext_resource type="PackedScene" uid="uid://cyqr1ojnddyk0" path="res://assets/npc/shambler/shambler.gltf" id="1_uiw1a"]
[ext_resource type="Material" uid="uid://7xrgrvf3lymv" path="res://assets/npc/shambler/shambler.material" id="2_nayyt"]
2025-08-30 18:42:35 -06:00
[ext_resource type="Script" uid="uid://bueq1q2qva7gs" path="res://src/world/grunk_beast/shambler/shambler.gd" id="2_s7rwx"]
2025-09-02 12:16:16 -06:00
[ext_resource type="Texture2D" uid="uid://dy1b3rv3b473p" path="res://assets/particles/dust/dust_2.png" id="4_vmxrd"]
2025-08-30 18:42:35 -06:00
[sub_resource type="Curve" id="Curve_s7rwx"]
_limits = [0.0, 1.0, 0.0, 10.0]
_data = [Vector2(0, 0), 0.0, 0.230666, 0, 0, Vector2(5, 1), 0.0, 0.0, 0, 0, Vector2(10, 1), 0.0, 0.0, 0, 0]
point_count = 3
2025-09-01 16:06:24 -06:00
[sub_resource type="Curve" id="Curve_xyfav"]
_limits = [0.0, 1.0, 0.0, 10.0]
_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="Curve" id="Curve_lqi3b"]
_limits = [0.0, 4.0, 0.0, 10.0]
_data = [Vector2(0, 0), 0.0, 0.924, 0, 0, Vector2(4.36728, 4), 0.0, 0.0, 0, 0, Vector2(10, 4), 0.0, 0.0, 0, 0]
point_count = 3
2025-08-30 18:42:35 -06:00
[sub_resource type="Curve" id="Curve_vmxrd"]
_limits = [0.0, 3.0, 0.0, 10.0]
_data = [Vector2(4, 1), 0.141612, 0.141612, 0, 0, Vector2(5, 1.2), 0.327899, 0.327899, 0, 0, Vector2(10, 3), 0.392484, 0.0, 0, 0]
point_count = 3
[sub_resource type="Curve" id="Curve_elp7k"]
_limits = [0.0, 6.0, 0.0, 10.0]
_data = [Vector2(2, 1), 0.0, 0.0, 0, 0, Vector2(4, 3), 0.953378, 0.953378, 0, 0, Vector2(10, 6), 0.0, 0.0, 0, 0]
point_count = 3
2025-08-30 00:12:41 -06:00
2025-09-02 09:48:12 -06:00
[sub_resource type="Curve" id="Curve_c7m4v"]
_data = [Vector2(0.484065, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -1.42259, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_vru5p"]
curve = SubResource("Curve_c7m4v")
[sub_resource type="Curve" id="Curve_xlxrx"]
[sub_resource type="Curve" id="Curve_6bdpa"]
_limits = [-2.0, 0.0, 0.0, 1.0]
2025-09-02 12:16:16 -06:00
_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.141289, -1.67748), -2.40482, -2.40482, 0, 0, Vector2(0.240439, -2), 0.0, 0.0, 0, 0, Vector2(0.702195, -1.4748), 2.64323, 2.64323, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
2025-09-02 09:48:12 -06:00
point_count = 5
[sub_resource type="Curve" id="Curve_cp8sw"]
[sub_resource type="CurveXYZTexture" id="CurveXYZTexture_c7m4v"]
curve_x = SubResource("Curve_xlxrx")
curve_y = SubResource("Curve_6bdpa")
curve_z = SubResource("Curve_cp8sw")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_elp7k"]
lifetime_randomness = 0.5
emission_shape = 6
emission_ring_axis = Vector3(0, 1, -0.22)
emission_ring_height = 0.01
emission_ring_radius = 0.75
emission_ring_inner_radius = 0.0
emission_ring_cone_angle = 90.0
direction = Vector3(0, -1, 0)
spread = 0.0
directional_velocity_min = 0.999984
directional_velocity_max = 0.999984
directional_velocity_curve = SubResource("CurveXYZTexture_c7m4v")
gravity = Vector3(0, 0, 0)
attractor_interaction_enabled = false
scale_min = 0.2
alpha_curve = SubResource("CurveTexture_vru5p")
hue_variation_min = -2.23517e-08
hue_variation_max = 0.1
2025-09-02 12:16:16 -06:00
collision_mode = 1
collision_friction = 0.0
collision_bounce = 0.0
sub_emitter_mode = 3
sub_emitter_amount_at_collision = 1
2025-09-02 09:48:12 -06:00
[sub_resource type="Curve" id="Curve_o6myl"]
_data = [Vector2(0, 0), 0.0, 35.9454, 0, 0, Vector2(0.0724026, 1), 0.0, 0.0, 0, 0, Vector2(0.293182, 0.536532), -1.90991, -1.90991, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 4
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_xlxrx"]
transparency = 1
cull_mode = 2
vertex_color_use_as_albedo = true
albedo_color = Color(0, 0.101961, 0.301961, 1)
billboard_mode = 2
billboard_keep_scale = true
use_particle_trails = true
[sub_resource type="RibbonTrailMesh" id="RibbonTrailMesh_6bdpa"]
material = SubResource("StandardMaterial3D_xlxrx")
shape = 0
size = 0.1
sections = 8
section_segments = 4
curve = SubResource("Curve_o6myl")
2025-09-02 12:16:16 -06:00
[sub_resource type="Curve" id="Curve_vru5p"]
_data = [Vector2(0, 0.515938), 0.0, 0.0, 0, 0, Vector2(0.129958, 1), 0.0, 0.0, 0, 0, Vector2(0.63704, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 4
[sub_resource type="CurveTexture" id="CurveTexture_10hsf"]
curve = SubResource("Curve_vru5p")
[sub_resource type="Curve" id="Curve_0bwtl"]
_data = [Vector2(0, 0.443555), 0.0, 0.0, 0, 0, Vector2(0.166785, 1), 0.0, 0.0, 0, 0, Vector2(0.552054, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 4
[sub_resource type="CurveTexture" id="CurveTexture_e8o6m"]
curve = SubResource("Curve_0bwtl")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_vmxrd"]
gravity = Vector3(0, 0, 0)
attractor_interaction_enabled = false
scale_curve = SubResource("CurveTexture_e8o6m")
alpha_curve = SubResource("CurveTexture_10hsf")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_elp7k"]
transparency = 1
cull_mode = 2
vertex_color_use_as_albedo = true
albedo_color = Color(0, 0.101961, 0.301961, 1)
albedo_texture = ExtResource("4_vmxrd")
roughness = 0.4
texture_filter = 0
[sub_resource type="QuadMesh" id="QuadMesh_lqi3b"]
material = SubResource("StandardMaterial3D_elp7k")
size = Vector2(0.5, 0.5)
orientation = 1
[sub_resource type="AnimationNodeTimeScale" id="AnimationNodeTimeScale_s7rwx"]
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_vmxrd"]
animation = &"emerge_floor"
[sub_resource type="AnimationNodeOneShot" id="AnimationNodeOneShot_elp7k"]
[sub_resource type="AnimationNodeTimeScale" id="AnimationNodeTimeScale_vmxrd"]
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_nayyt"]
animation = &"idle"
[sub_resource type="AnimationNodeBlend2" id="AnimationNodeBlend2_nayyt"]
[sub_resource type="AnimationNodeAdd2" id="AnimationNodeAdd2_lqi3b"]
[sub_resource type="AnimationNodeTimeScale" id="AnimationNodeTimeScale_elp7k"]
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_s7rwx"]
animation = &"walk_front"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_elp7k"]
animation = &"walk_rear"
[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_nayyt"]
graph_offset = Vector2(-1225.38, 46.1403)
nodes/anim_scale/node = SubResource("AnimationNodeTimeScale_s7rwx")
nodes/anim_scale/position = Vector2(280, 140)
nodes/emerge_floor/node = SubResource("AnimationNodeAnimation_vmxrd")
nodes/emerge_floor/position = Vector2(-244.217, 564.913)
nodes/emerge_floor_trigger/node = SubResource("AnimationNodeOneShot_elp7k")
nodes/emerge_floor_trigger/position = Vector2(20, 160)
nodes/front_scale/node = SubResource("AnimationNodeTimeScale_vmxrd")
nodes/front_scale/position = Vector2(-720, 200)
nodes/idle_anim/node = SubResource("AnimationNodeAnimation_nayyt")
nodes/idle_anim/position = Vector2(-720, 0)
nodes/idle_blend/node = SubResource("AnimationNodeBlend2_nayyt")
nodes/idle_blend/position = Vector2(-480, 100)
nodes/output/position = Vector2(500, 160)
nodes/rear_add/node = SubResource("AnimationNodeAdd2_lqi3b")
nodes/rear_add/position = Vector2(-200, 160)
nodes/rear_scale/node = SubResource("AnimationNodeTimeScale_elp7k")
nodes/rear_scale/position = Vector2(-460, 380)
nodes/walk_front/node = SubResource("AnimationNodeAnimation_s7rwx")
nodes/walk_front/position = Vector2(-940, 200)
nodes/walk_rear/node = SubResource("AnimationNodeAnimation_elp7k")
nodes/walk_rear/position = Vector2(-720, 420)
node_connections = [&"anim_scale", 0, &"emerge_floor_trigger", &"emerge_floor_trigger", 0, &"rear_add", &"emerge_floor_trigger", 1, &"emerge_floor", &"front_scale", 0, &"walk_front", &"idle_blend", 0, &"idle_anim", &"idle_blend", 1, &"front_scale", &"output", 0, &"anim_scale", &"rear_add", 0, &"idle_blend", &"rear_add", 1, &"rear_scale", &"rear_scale", 0, &"walk_rear"]
[sub_resource type="SphereMesh" id="SphereMesh_s7rwx"]
2025-08-30 00:12:41 -06:00
[node name="Shambler" instance=ExtResource("1_uiw1a")]
2025-08-30 18:42:35 -06:00
script = ExtResource("2_s7rwx")
2025-09-01 16:06:24 -06:00
idle_blend_curve = SubResource("Curve_s7rwx")
rear_blend_curve = SubResource("Curve_xyfav")
rear_scale_curve = SubResource("Curve_lqi3b")
2025-08-30 18:42:35 -06:00
walk_scale_curve = SubResource("Curve_vmxrd")
look_accel_curve = SubResource("Curve_elp7k")
[node name="Armature" parent="." index="0"]
unique_name_in_owner = true
transform = Transform3D(0.8, 0, 0, 0, 0.8, 0, 0, 0, 0.8, 0, 0, 0)
top_level = true
2025-08-30 00:12:41 -06:00
[node name="Shambler" parent="Armature/Skeleton3D" index="0"]
surface_material_override/0 = ExtResource("2_nayyt")
2025-08-30 18:42:35 -06:00
[node name="LookIK" type="LookAtModifier3D" parent="Armature/Skeleton3D" index="1"]
target_node = NodePath("../../../LookTargetPivot/LookTarget")
bone_name = "Spine.005"
bone = 5
forward_axis = 2
primary_rotation_axis = 2
use_secondary_rotation = false
use_angle_limitation = true
symmetry_limitation = true
primary_limit_angle = 1.5708
primary_damp_threshold = 0.7
2025-09-02 12:16:16 -06:00
[node name="BoneAttachment3D" type="BoneAttachment3D" parent="Armature/Skeleton3D" index="2"]
transform = Transform3D(1, 4.26326e-14, 1.66895e-06, 1.64426e-06, 0.171372, -0.985207, -2.86011e-07, 0.985206, 0.171372, -1.88872e-13, 2.89043, -0.625428)
bone_name = "Spine.004"
bone_idx = 4
2025-08-30 18:42:35 -06:00
2025-09-02 12:16:16 -06:00
[node name="DripParticles" type="GPUParticles3D" parent="Armature/Skeleton3D/BoneAttachment3D" index="0"]
process_mode = 3
transform = Transform3D(1.25, 2.05405e-06, -3.58605e-07, 1.29369e-09, 0.214215, 1.23151, 2.08511e-06, -1.23151, 0.214215, -1.73335e-06, 0.540511, 1.0372)
amount = 3
sub_emitter = NodePath("SplatParticles")
lifetime = 4.0
trail_enabled = true
trail_lifetime = 1.9
process_material = SubResource("ParticleProcessMaterial_elp7k")
draw_pass_1 = SubResource("RibbonTrailMesh_6bdpa")
2025-08-30 18:42:35 -06:00
2025-09-02 12:16:16 -06:00
[node name="SplatParticles" type="GPUParticles3D" parent="Armature/Skeleton3D/BoneAttachment3D/DripParticles" index="0"]
amount = 32
lifetime = 2.0
process_material = SubResource("ParticleProcessMaterial_vmxrd")
draw_pass_1 = SubResource("QuadMesh_lqi3b")
2025-09-02 09:48:12 -06:00
2025-08-30 18:42:35 -06:00
[node name="AnimationPlayer" parent="." index="1"]
unique_name_in_owner = true
2025-08-30 00:12:41 -06:00
[node name="AnimationTree" type="AnimationTree" parent="." index="2"]
2025-08-30 18:42:35 -06:00
unique_name_in_owner = true
root_node = NodePath("%AnimationTree/..")
2025-08-30 00:12:41 -06:00
tree_root = SubResource("AnimationNodeBlendTree_nayyt")
anim_player = NodePath("../AnimationPlayer")
2025-09-02 09:48:12 -06:00
parameters/anim_scale/scale = 1.0
2025-09-02 12:16:16 -06:00
parameters/emerge_floor_trigger/active = false
parameters/emerge_floor_trigger/internal_active = false
parameters/emerge_floor_trigger/request = 0
2025-09-02 09:48:12 -06:00
parameters/front_scale/scale = 1.0
2025-09-01 16:06:24 -06:00
parameters/idle_blend/blend_amount = 0.0
2025-09-02 09:48:12 -06:00
parameters/rear_add/add_amount = 0.0
2025-09-01 16:06:24 -06:00
parameters/rear_scale/scale = 1.0
2025-08-30 00:12:41 -06:00
2025-08-30 18:42:35 -06:00
[node name="LookTargetPivot" type="Node3D" parent="." index="3"]
unique_name_in_owner = true
top_level = true
[node name="LookTarget" type="Marker3D" parent="LookTargetPivot" index="0"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 10)
2025-09-01 17:21:05 -06:00
[node name="DebugBall" type="MeshInstance3D" parent="LookTargetPivot/LookTarget" index="0"]
2025-08-30 18:42:35 -06:00
mesh = SubResource("SphereMesh_s7rwx")
2025-09-02 09:48:12 -06:00
2025-09-02 12:16:16 -06:00
[node name="GPUParticlesCollisionBox3D" type="GPUParticlesCollisionBox3D" parent="." index="4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.5, 0)
size = Vector3(4, 1, 4)