performance optimisation, polish and obscurifcation support

This commit is contained in:
betalars 2025-06-04 15:39:06 +02:00
parent c593bd530e
commit a4178faecc
6 changed files with 68 additions and 18 deletions

View File

@ -633,9 +633,9 @@ process_material = SubResource("ParticleProcessMaterial_hvcdc")
draw_pass_1 = SubResource("QuadMesh_oo2l3") draw_pass_1 = SubResource("QuadMesh_oo2l3")
[node name="VoxelGI" type="VoxelGI" parent="."] [node name="VoxelGI" type="VoxelGI" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.61825, -33.3675) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.53159, -32.7307)
subdiv = 3 subdiv = 2
size = Vector3(20, 10.4688, 124.604) size = Vector3(20, 7.1879, 99.7711)
camera_attributes = SubResource("CameraAttributesPractical_f5y2f") camera_attributes = SubResource("CameraAttributesPractical_f5y2f")
data = ExtResource("4_nmgvo") data = ExtResource("4_nmgvo")
@ -656,6 +656,7 @@ draw_pass_1 = SubResource("PlaneMesh_8c2us")
[node name="GPUParticles3D4" type="GPUParticles3D" parent="."] [node name="GPUParticles3D4" type="GPUParticles3D" parent="."]
transform = Transform3D(-1, 0, 8.74228e-08, 0, 1, 0, -8.74228e-08, 0, -1, -6.80088, 0.258846, -32.3954) transform = Transform3D(-1, 0, 8.74228e-08, 0, 1, 0, -8.74228e-08, 0, -1, -6.80088, 0.258846, -32.3954)
visible = false
material_override = ExtResource("5_32vcv") material_override = ExtResource("5_32vcv")
gi_mode = 2 gi_mode = 2
visibility_range_begin_margin = 1.0 visibility_range_begin_margin = 1.0

View File

@ -27,6 +27,7 @@ static var id_reference: Dictionary[StringName, StringName] = generate_id_refere
static var card_id_reference: Dictionary[StringName, StringName] = generate_id_reference(true, false) static var card_id_reference: Dictionary[StringName, StringName] = generate_id_reference(true, false)
static var sticky_id_reference: Dictionary[StringName, StringName] = generate_id_reference(false, true) static var sticky_id_reference: Dictionary[StringName, StringName] = generate_id_reference(false, true)
static var obscure_reference: Dictionary[StringName, StringName] = generate_obscure_reference()
static func generate_id_reference(include_cards: bool, include_sticky: bool) -> Dictionary[StringName, StringName]: static func generate_id_reference(include_cards: bool, include_sticky: bool) -> Dictionary[StringName, StringName]:
var out:Dictionary[StringName, StringName] = {} var out:Dictionary[StringName, StringName] = {}
@ -42,6 +43,22 @@ static func generate_id_reference(include_cards: bool, include_sticky: bool) ->
return out return out
static func generate_obscure_reference():
var out:Dictionary[StringName, StringName] = {}
randomize()
var salt = randi_range(1111, 9999)
for id in range(source_dicts.size()):
for card_name:String in source_dicts[id].keys():
out[card_name] = StringName("%d.%d" % [id, card_name.hash() % salt ])
for sticky_name in source_dicts[id][card_name]:
if sticky_name is String:
out[sticky_name] = StringName("%d.%s.%s" % [id, card_name.hash() % salt, sticky_name.hash() % salt])
return out
static func get_child_names_of(parent_id: StringName) -> Array[StringName]: static func get_child_names_of(parent_id: StringName) -> Array[StringName]:
var out: Array[StringName] var out: Array[StringName]
@ -55,6 +72,12 @@ static func get_child_names_of(parent_id: StringName) -> Array[StringName]:
static func get_children_of(parent_id: StringName) -> Array: static func get_children_of(parent_id: StringName) -> Array:
return get_cards_by_name_array(get_child_names_of(parent_id))["sticky_notes"] return get_cards_by_name_array(get_child_names_of(parent_id))["sticky_notes"]
static func get_obscure_name(card_name: StringName):
if State.obscure_logs and not OS.is_debug_build():
return obscure_reference[card_name]
else:
return card_name
func arrange(cards: Array[Card], rect: Rect2, obstacles: Array[Area2D]) -> Array[Card]: func arrange(cards: Array[Card], rect: Rect2, obstacles: Array[Area2D]) -> Array[Card]:
var total_cards = cards.size() var total_cards = cards.size()

View File

@ -115,6 +115,7 @@ signal has_burned
burn_tween.tween_property(self, "burn_progress", 2.0, 2) burn_tween.tween_property(self, "burn_progress", 2.0, 2)
burn_tween.tween_callback(_torch).set_delay(1.0) burn_tween.tween_callback(_torch).set_delay(1.0)
burned.TORCHED: burned.TORCHED:
print("Card %s has been burned." % HardCards.get_obscure_name(name))
has_burned.emit() has_burned.emit()
burn_state = burning burn_state = burning

View File

@ -7,6 +7,7 @@ var has_stage = false:
process_mode = Node.PROCESS_MODE_INHERIT process_mode = Node.PROCESS_MODE_INHERIT
self.show() self.show()
self.mouse_filter = Control.MOUSE_FILTER_PASS self.mouse_filter = Control.MOUSE_FILTER_PASS
Input.mouse_mode = Input.MOUSE_MODE_HIDDEN
else: else:
self.mouse_filter = Control.MOUSE_FILTER_IGNORE self.mouse_filter = Control.MOUSE_FILTER_IGNORE
self.hide() self.hide()

View File

@ -24,6 +24,33 @@ gradient = SubResource("Gradient_ckmi5")
width = 100 width = 100
height = 100 height = 100
[sub_resource type="Animation" id="Animation_57mhv"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("../Sprite2D:self_modulate")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Color(1, 1, 1, 0)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("../../CursorCandle:color")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Color(1, 1, 1, 1)]
}
[sub_resource type="Animation" id="Animation_23lqb"] [sub_resource type="Animation" id="Animation_23lqb"]
resource_name = "vanish" resource_name = "vanish"
tracks/0/type = "value" tracks/0/type = "value"
@ -38,20 +65,17 @@ tracks/0/keys = {
"update": 0, "update": 0,
"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)] "values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)]
} }
tracks/1/type = "value"
[sub_resource type="Animation" id="Animation_57mhv"] tracks/1/imported = false
length = 0.001 tracks/1/enabled = true
tracks/0/type = "value" tracks/1/path = NodePath("../../CursorCandle:color")
tracks/0/imported = false tracks/1/interp = 1
tracks/0/enabled = true tracks/1/loop_wrap = true
tracks/0/path = NodePath("../Sprite2D:self_modulate") tracks/1/keys = {
tracks/0/interp = 1 "times": PackedFloat32Array(0.69, 1),
tracks/0/loop_wrap = true "transitions": PackedFloat32Array(1, 1),
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0, "update": 0,
"values": [Color(1, 1, 1, 0)] "values": [Color(1, 1, 1, 1), Color(0, 0, 0, 1)]
} }
[sub_resource type="AnimationLibrary" id="AnimationLibrary_kaqqi"] [sub_resource type="AnimationLibrary" id="AnimationLibrary_kaqqi"]

View File

@ -177,11 +177,11 @@ func pick(id: int):
options.erase(options) options.erase(options)
anim_players[i].play("unshuffle") anim_players[i].play("unshuffle")
anim_players.remove_at(i) anim_players.remove_at(i)
print("Removed StickyNote %s from options pool" % option.sticky_id) print("Removed StickyNote %s from options pool" % HardCards.get_obscure_name(option.name))
i += 1 i += 1
var winning_id var winning_id
print("Randomly selected card %s" % options[1].text) print("Randomly selected card %s" % HardCards.get_obscure_name(options[1].name))
if not (current_scene_id == Scenes.id.YOUTH_JUI_JUTSU and selection_state == CARDS_SELECTED): if not (current_scene_id == Scenes.id.YOUTH_JUI_JUTSU and selection_state == CARDS_SELECTED):
randomize() randomize()
# investigate if this fixes error on line 197 # investigate if this fixes error on line 197