feat: starvation balance rework and Ghibli wind-stroke visuals
- Reduce hunger rate to 0.125/tick (~25/day) for ~6-7 day death timeline - Slow energy drain: idle 0.125, travel 0.5, work 0.5, complete 0.0625/tick - Use exact binary fractions for all rates to preserve float precision in save/load - Starving/critically-hungry NPCs always override sleep to seek food first - Extend starvation death threshold from 20 to 600 ticks (~3 days of starvation) - Add calligraphy-style wind stroke particles (WindStrokes scene + shader) - Two wind stroke emitters in valley and ridge for Ghibli atmosphere - Rework terrain macro-variation colors for vibrant warm-green palette - Enhance environment: stronger glow/bloom, higher saturation, warmer sky/fog/ambient
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
[gd_scene load_steps=5 format=3]
|
||||
|
||||
[ext_resource type="Shader" path="res://world/jajce/materials/wind_stroke.gdshader" id="1_shader"]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_stroke"]
|
||||
shader = ExtResource("1_shader")
|
||||
|
||||
[sub_resource type="QuadMesh" id="Mesh_stroke"]
|
||||
material = SubResource("ShaderMaterial_stroke")
|
||||
size = Vector2(1.8, 0.18)
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_wind"]
|
||||
lifetime_randomness = 0.5
|
||||
spread = 160.0
|
||||
gravity = Vector3(0, 0.15, 0)
|
||||
initial_velocity_min = 0.6
|
||||
initial_velocity_max = 2.5
|
||||
angular_velocity_min = -0.6
|
||||
angular_velocity_max = 0.6
|
||||
radial_accel_min = -0.2
|
||||
radial_accel_max = 0.2
|
||||
tangential_accel_min = -0.3
|
||||
tangential_accel_max = 0.3
|
||||
scale_min = 0.5
|
||||
scale_max = 1.5
|
||||
color = Color(1, 1, 1, 0.5)
|
||||
emission_shape = 1
|
||||
emission_box_extents = Vector3(35.0, 10.0, 35.0)
|
||||
|
||||
[node name="WindStrokes" type="GPUParticles3D"]
|
||||
emitting = true
|
||||
amount = 18
|
||||
lifetime = 4.0
|
||||
one_shot = false
|
||||
preprocess = 2.0
|
||||
speed_scale = 1.0
|
||||
local_coords = false
|
||||
process_material = SubResource("ParticleProcessMaterial_wind")
|
||||
draw_pass_1 = SubResource("Mesh_stroke")
|
||||
Reference in New Issue
Block a user