From 2ed7b625bb59b274a7f04737f0de0041772901ff Mon Sep 17 00:00:00 2001 From: Joywayer Date: Thu, 23 Jul 2026 10:03:24 +0800 Subject: [PATCH] =?UTF-8?q?feat(boss):=20data/bosses.json=20=E2=80=94=20Mi?= =?UTF-8?q?ni(4)/Final(5)=20=E4=B8=89=E9=98=B6=E6=AE=B5=E6=8B=9B=E5=BC=8F?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=EF=BC=887=20=E7=A7=8D=20kind=20=E5=85=A8?= =?UTF-8?q?=E8=A6=86=E7=9B=96=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/bosses.json | 67 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 data/bosses.json diff --git a/data/bosses.json b/data/bosses.json new file mode 100644 index 0000000..da05832 --- /dev/null +++ b/data/bosses.json @@ -0,0 +1,67 @@ +{ + "4": { + "move_speed": 120.0, + "phases": [ + { + "hp_threshold": 1.0, + "move_speed_mult": 1.0, + "summon_adds": 0, + "attack_patterns": [ + { "kind": "spread", "count": 5, "half_angle": 35.0, "speed": 220.0, "bullet_damage": 8.0, "bullet_radius": 8.0, "lifetime": 4.0, "cooldown": 2.4 }, + { "kind": "ring", "count": 14, "speed": 180.0, "bullet_damage": 7.0, "bullet_radius": 8.0, "lifetime": 4.0, "cooldown": 2.8 } + ] + }, + { + "hp_threshold": 0.66, + "move_speed_mult": 1.2, + "summon_adds": 6, + "attack_patterns": [ + { "kind": "dash", "windup": 0.8, "dash_speed": 620.0, "dash_time": 0.5, "contact_radius": 44.0, "contact_damage": 15.0, "contact_hit_cd": 0.4, "recover": 0.7, "telegraph_vfx": "hit_spark", "cooldown": 2.2 }, + { "kind": "spiral", "count": 6, "angle_step": 18.0, "speed": 200.0, "bullet_damage": 7.0, "bullet_radius": 8.0, "lifetime": 4.0, "cooldown": 2.0 } + ] + }, + { + "hp_threshold": 0.33, + "move_speed_mult": 1.5, + "summon_adds": 8, + "attack_patterns": [ + { "kind": "charge_up", "windup": 1.0, "release_kind": "ring", "count": 24, "speed": 220.0, "bullet_damage": 9.0, "bullet_radius": 9.0, "lifetime": 5.0, "recover": 0.8, "telegraph_vfx": "hit_spark", "cooldown": 2.6 }, + { "kind": "melee", "windup": 0.6, "melee_radius": 100.0, "melee_damage": 20.0, "recover": 0.5, "telegraph_vfx": "hit_spark", "cooldown": 2.0 } + ] + } + ] + }, + "5": { + "move_speed": 80.0, + "phases": [ + { + "hp_threshold": 1.0, + "move_speed_mult": 1.0, + "summon_adds": 0, + "attack_patterns": [ + { "kind": "spiral", "count": 8, "angle_step": 12.0, "speed": 190.0, "bullet_damage": 8.0, "bullet_radius": 8.0, "lifetime": 5.0, "cooldown": 1.8 }, + { "kind": "ring", "count": 20, "speed": 170.0, "bullet_damage": 8.0, "bullet_radius": 8.0, "lifetime": 5.0, "cooldown": 2.4 } + ] + }, + { + "hp_threshold": 0.66, + "move_speed_mult": 1.1, + "summon_adds": 6, + "attack_patterns": [ + { "kind": "dash", "windup": 0.7, "dash_speed": 680.0, "dash_time": 0.55, "contact_radius": 48.0, "contact_damage": 18.0, "contact_hit_cd": 0.4, "recover": 0.7, "telegraph_vfx": "hit_spark", "cooldown": 2.0 }, + { "kind": "spread", "count": 7, "half_angle": 45.0, "speed": 210.0, "bullet_damage": 8.0, "bullet_radius": 8.0, "lifetime": 5.0, "cooldown": 2.2 } + ] + }, + { + "hp_threshold": 0.33, + "move_speed_mult": 1.3, + "summon_adds": 10, + "attack_patterns": [ + { "kind": "charge_up", "windup": 1.1, "release_kind": "ring", "count": 32, "speed": 230.0, "bullet_damage": 10.0, "bullet_radius": 9.0, "lifetime": 6.0, "recover": 0.9, "telegraph_vfx": "hit_spark", "cooldown": 2.8 }, + { "kind": "melee", "windup": 0.6, "melee_radius": 120.0, "melee_damage": 25.0, "recover": 0.5, "telegraph_vfx": "hit_spark", "cooldown": 1.8 }, + { "kind": "spiral", "count": 10, "angle_step": 20.0, "speed": 200.0, "bullet_damage": 9.0, "bullet_radius": 8.0, "lifetime": 6.0, "cooldown": 1.6 } + ] + } + ] + } +}