Rebuild stage from mossy cavern reference

This commit is contained in:
2026-06-10 11:33:22 +08:00
parent c6d42ff0e0
commit 0cd665198b
9 changed files with 58 additions and 173 deletions
+18 -132
View File
@@ -1,142 +1,28 @@
map stage_01
world 6400 720
camera 0 0 6400 720
player_spawn 160 496
world 2105 720
camera 0 0 2105 720
player_spawn 1030 346
collision 0 600 6400 160
collision 360 500 250 28
collision 780 440 260 28
collision 1320 500 280 28
collision 1960 445 260 28
collision 2240 390 220 28
collision 2740 455 300 28
collision 3300 420 340 28
collision 3720 485 300 28
collision 4140 405 260 28
collision 4660 455 300 28
collision 5060 380 240 28
collision 5520 470 320 28
collision 5960 430 280 28
collision 0 446 505 42
collision 128 560 350 42
collision 846 450 470 42
collision 1490 506 555 42
layer background_far BackgroundFar 0.18
rect 0 0 6400 720 0.03 0.09 0.11 1
rect_sprite_src -260 0 1240 720 0.18 0.58 0.58 0.34 assets/stage/stage_01/background/mossy_background_decoration.png 0 320 1400 980
rect_sprite_src 760 -40 1320 760 0.16 0.55 0.55 0.32 assets/stage/stage_01/background/mossy_background_decoration.png 1380 220 1320 1100
rect_sprite_src 1880 0 1280 720 0.18 0.60 0.57 0.30 assets/stage/stage_01/background/mossy_background_decoration.png 2600 360 1200 960
rect_sprite_src 2920 -30 1400 750 0.16 0.56 0.55 0.32 assets/stage/stage_01/background/mossy_background_decoration.png 420 1680 1500 1050
rect_sprite_src 4140 0 1360 720 0.14 0.50 0.52 0.34 assets/stage/stage_01/background/mossy_background_decoration.png 1900 1600 1400 1100
rect_sprite_src 5260 -40 1320 760 0.16 0.55 0.55 0.32 assets/stage/stage_01/background/mossy_background_decoration.png 2900 1880 1120 1160
layer reference_background BackgroundFar 1
rect_sprite_src 0 0 2105 720 1 1 1 1 assets/stage/stage_01/reference/mossy_cavern_reference_4hibzc.png 0 0 2432 832
endlayer
layer background_mid BackgroundMid 0.48
rect_sprite_src -160 395 620 260 0.42 0.78 0.58 0.44 assets/stage/stage_01/background/mossy_hills.png 50 580 420 420
rect_sprite_src 360 330 760 310 0.38 0.70 0.56 0.42 assets/stage/stage_01/background/mossy_hills.png 720 40 1160 500
rect_sprite_src 1020 360 720 285 0.35 0.66 0.52 0.38 assets/stage/stage_01/background/mossy_hills.png 760 650 1120 720
rect_sprite_src 1620 300 830 350 0.38 0.72 0.56 0.42 assets/stage/stage_01/background/mossy_hills.png 645 650 1280 840
rect_sprite_src 2340 370 650 270 0.34 0.66 0.52 0.38 assets/stage/stage_01/background/mossy_hills.png 1460 1520 520 420
rect_sprite_src 2860 320 820 330 0.40 0.74 0.58 0.44 assets/stage/stage_01/background/mossy_hills.png 720 40 1160 500
rect_sprite_src 3580 380 700 270 0.34 0.66 0.52 0.38 assets/stage/stage_01/background/mossy_hills.png 760 650 1120 720
rect_sprite_src 4200 290 860 360 0.38 0.72 0.56 0.42 assets/stage/stage_01/background/mossy_hills.png 645 650 1280 840
rect_sprite_src 4960 350 760 300 0.36 0.68 0.54 0.40 assets/stage/stage_01/background/mossy_hills.png 720 40 1160 500
rect_sprite_src 5620 385 740 260 0.34 0.64 0.50 0.38 assets/stage/stage_01/background/mossy_hills.png 1460 1520 520 420
endlayer
layer ceiling_shadow PropsBack 0.72
rect_sprite_src -120 -165 620 345 0.14 0.34 0.30 0.84 assets/stage/stage_01/props/mossy_hanging_plants.png 70 0 360 1240
rect_sprite_src 420 -195 560 370 0.12 0.30 0.28 0.78 assets/stage/stage_01/props/mossy_hanging_plants.png 550 0 330 1180
rect_sprite_src 920 -160 690 340 0.12 0.30 0.28 0.82 assets/stage/stage_01/props/mossy_hanging_plants.png 990 0 360 1300
rect_sprite_src 1520 -185 600 360 0.12 0.30 0.28 0.80 assets/stage/stage_01/props/mossy_hanging_plants.png 1340 0 470 1040
rect_sprite_src 2080 -150 680 330 0.14 0.34 0.30 0.76 assets/stage/stage_01/props/mossy_hanging_plants.png 540 1260 420 1040
rect_sprite_src 2700 -200 640 390 0.12 0.30 0.28 0.82 assets/stage/stage_01/props/mossy_hanging_plants.png 1020 1320 420 1120
rect_sprite_src 3300 -165 710 350 0.12 0.32 0.28 0.80 assets/stage/stage_01/props/mossy_hanging_plants.png 70 0 360 1240
rect_sprite_src 3940 -190 620 375 0.12 0.30 0.28 0.78 assets/stage/stage_01/props/mossy_hanging_plants.png 550 0 330 1180
rect_sprite_src 4520 -160 690 345 0.12 0.30 0.28 0.82 assets/stage/stage_01/props/mossy_hanging_plants.png 990 0 360 1300
rect_sprite_src 5160 -185 620 365 0.12 0.30 0.28 0.78 assets/stage/stage_01/props/mossy_hanging_plants.png 1340 0 470 1040
rect_sprite_src 5740 -170 700 350 0.14 0.34 0.30 0.82 assets/stage/stage_01/props/mossy_hanging_plants.png 540 1260 420 1040
endlayer
layer level_visual LevelVisual 1
rect_sprite_src -120 505 760 265 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 420 1120 1560 490
rect_sprite_src 620 505 640 265 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 420 1120 1560 490
rect_sprite_src 1220 505 520 265 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 420 1120 1560 490
rect_sprite_src 1700 505 760 265 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 420 1120 1560 490
rect_sprite_src 2420 505 650 265 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 420 1120 1560 490
rect_sprite_src 3050 505 860 265 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 420 1120 1560 490
rect_sprite_src 3860 505 620 265 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 420 1120 1560 490
rect_sprite_src 4440 505 760 265 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 420 1120 1560 490
rect_sprite_src 5160 505 650 265 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 420 1120 1560 490
rect_sprite_src 5740 505 760 265 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 420 1120 1560 490
rect_sprite_src 350 460 280 105 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 500 40 1050 420
rect_sprite_src 760 400 300 105 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 500 540 1060 430
rect_sprite_src 1300 460 330 105 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 500 40 1050 420
rect_sprite_src 1940 405 300 105 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 500 540 1060 430
rect_sprite_src 2220 350 260 105 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 500 40 1050 420
rect_sprite_src 2720 415 340 105 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 500 540 1060 430
rect_sprite_src 3280 380 380 105 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 500 40 1050 420
rect_sprite_src 3700 445 340 105 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 500 540 1060 430
rect_sprite_src 4120 365 300 105 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 500 40 1050 420
rect_sprite_src 4640 415 340 105 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 500 540 1060 430
rect_sprite_src 5040 340 280 105 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 500 40 1050 420
rect_sprite_src 5500 430 360 105 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 500 540 1060 430
rect_sprite_src 5940 390 320 105 1 1 1 1 assets/stage/stage_01/tiles/mossy_floating_platforms.png 500 40 1050 420
endlayer
layer props_back PropsBack 1
rect_sprite_src 80 260 170 360 0.70 0.95 0.78 0.68 assets/stage/stage_01/props/mossy_hanging_plants.png 70 0 360 1240
rect_sprite_src 650 240 140 350 0.70 0.95 0.78 0.56 assets/stage/stage_01/props/mossy_hanging_plants.png 550 0 330 1180
rect_sprite_src 1120 230 180 390 0.70 0.95 0.78 0.58 assets/stage/stage_01/props/mossy_hanging_plants.png 990 0 360 1300
rect_sprite_src 1660 200 210 410 0.70 0.95 0.78 0.64 assets/stage/stage_01/props/mossy_hanging_plants.png 1340 0 470 1040
rect_sprite_src 2210 250 170 340 0.70 0.95 0.78 0.58 assets/stage/stage_01/props/mossy_hanging_plants.png 540 1260 420 1040
rect_sprite_src 2760 185 190 430 0.70 0.95 0.78 0.62 assets/stage/stage_01/props/mossy_hanging_plants.png 1020 1320 420 1120
rect_sprite_src 3420 220 210 390 0.70 0.95 0.78 0.60 assets/stage/stage_01/props/mossy_hanging_plants.png 70 0 360 1240
rect_sprite_src 3960 240 170 360 0.70 0.95 0.78 0.56 assets/stage/stage_01/props/mossy_hanging_plants.png 550 0 330 1180
rect_sprite_src 4520 170 220 430 0.70 0.95 0.78 0.66 assets/stage/stage_01/props/mossy_hanging_plants.png 990 0 360 1300
rect_sprite_src 5080 245 190 350 0.70 0.95 0.78 0.56 assets/stage/stage_01/props/mossy_hanging_plants.png 1340 0 470 1040
rect_sprite_src 5680 215 210 390 0.70 0.95 0.78 0.62 assets/stage/stage_01/props/mossy_hanging_plants.png 540 1260 420 1040
rect_sprite_src 6120 180 180 440 0.70 0.95 0.78 0.58 assets/stage/stage_01/props/mossy_hanging_plants.png 1020 1320 420 1120
rect_sprite_src 420 555 170 80 0.95 1 0.78 0.78 assets/stage/stage_01/props/mossy_decorations_hazards.png 220 1640 620 360
rect_sprite_src 1410 548 180 85 0.95 1 0.78 0.76 assets/stage/stage_01/props/mossy_decorations_hazards.png 220 1640 620 360
rect_sprite_src 2620 540 190 90 0.95 1 0.78 0.76 assets/stage/stage_01/props/mossy_decorations_hazards.png 220 1640 620 360
rect_sprite_src 3580 510 210 95 0.95 1 0.78 0.78 assets/stage/stage_01/props/mossy_decorations_hazards.png 220 1640 620 360
rect_sprite_src 4840 500 210 100 0.95 1 0.78 0.78 assets/stage/stage_01/props/mossy_decorations_hazards.png 220 1640 620 360
rect_sprite_src 6030 555 190 90 0.95 1 0.78 0.76 assets/stage/stage_01/props/mossy_decorations_hazards.png 220 1640 620 360
endlayer
layer props_front PropsFront 1
rect_sprite_src -120 590 380 170 0.05 0.08 0.10 0.96 assets/stage/stage_01/tiles/mossy_floating_platforms.png 0 540 430 430
rect_sprite_src 720 575 460 185 0.05 0.08 0.10 0.92 assets/stage/stage_01/tiles/mossy_floating_platforms.png 0 540 430 430
rect_sprite_src 1720 570 520 190 0.05 0.08 0.10 0.94 assets/stage/stage_01/tiles/mossy_floating_platforms.png 0 540 430 430
rect_sprite_src 3040 555 600 205 0.05 0.08 0.10 0.92 assets/stage/stage_01/tiles/mossy_floating_platforms.png 0 540 430 430
rect_sprite_src 4220 540 560 220 0.05 0.08 0.10 0.94 assets/stage/stage_01/tiles/mossy_floating_platforms.png 0 540 430 430
rect_sprite_src 5340 575 520 185 0.05 0.08 0.10 0.92 assets/stage/stage_01/tiles/mossy_floating_platforms.png 0 540 430 430
rect_sprite_src 6060 590 420 170 0.05 0.08 0.10 0.96 assets/stage/stage_01/tiles/mossy_floating_platforms.png 0 540 430 430
endlayer
battle_zone zone_01_entrance 520 250 780 350 0 0 1860 720
spawn zone_01_enemy_a 820 536
spawn zone_01_enemy_b 1120 521
battle_zone zone_01_left_platform 0 250 560 310 0 0 1280 720
spawn zone_01_enemy_a 210 342
spawn zone_01_enemy_b 380 456
endbattle_zone
battle_zone zone_02_lower_cavern 1680 230 860 370 960 0 1960 720
spawn zone_02_enemy_a 1880 501
spawn zone_02_enemy_b 2260 531
spawn zone_02_enemy_c 2340 326
battle_zone zone_02_center_platform 760 230 650 320 410 0 1280 720
spawn zone_02_enemy_a 930 346
spawn zone_02_enemy_b 1200 346
endbattle_zone
battle_zone zone_03_main_hall 3000 210 960 390 2300 0 2100 720
spawn zone_03_enemy_a 3260 456
spawn zone_03_enemy_b 3660 486
spawn zone_03_enemy_c 3440 356
endbattle_zone
battle_zone zone_04_high_garden 4380 180 980 390 3600 0 2140 720
spawn zone_04_enemy_a 4620 441
spawn zone_04_enemy_b 4920 441
spawn zone_04_enemy_c 5160 316
endbattle_zone
battle_zone zone_05_exit 5480 220 840 360 4760 0 1640 720
spawn zone_05_enemy_a 5660 506
spawn zone_05_enemy_b 6040 536
spawn zone_05_enemy_c 6120 366
battle_zone zone_03_right_platform 1420 270 640 310 825 0 1280 720
spawn zone_03_enemy_a 1630 402
spawn zone_03_enemy_b 1880 402
endbattle_zone
+1
View File
@@ -14,6 +14,7 @@ This directory is reserved for the first playable side-scrolling ACT stage.
| Graybox platform tiles | `tiles/graybox_platform.png` | Optional temporary platform tileset referenced by `stage_01.map`; fallback color is used if missing. | TBD |
| Props sheet | `props/mossy_hanging_plants.png` | Current hanging plant props used by `PropsBack` layer. | Local asset pack: `X:\NS_unknown_game\asset\Mossy Cavern`; license TBD |
| Decoration / hazards sheet | `props/mossy_decorations_hazards.png` | Reserved for later foreground props and hazards; not used for gameplay yet. | Local asset pack: `X:\NS_unknown_game\asset\Mossy Cavern`; license TBD |
| Reference background | `reference/mossy_cavern_reference_4hibzc.png` | Full-scene reference image used as the first 1:1 rebuild pass for `stage_01.map`. | Local asset pack: `X:\NS_unknown_game\asset\Mossy Cavern\参考图\4HibZC.jpg`; license TBD |
| Hit spark | `effects/hit_spark.png` | Small combat impact effect. | TBD |
| Dust | `effects/dust.png` | Run, jump, and landing dust. | TBD |
| Music / ambience | `../../music/stage_01.ogg` | Optional loopable stage audio cue. | TBD |
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 MiB

+6 -8
View File
@@ -72,16 +72,14 @@ endbattle_zone
- `tile_index` 当前表示 tileset 第一行的横向 tile 序号。
- `r g b` 是该批 tile 的灰盒 fallback 色,alpha 固定为 `1.0`
当前 `stage_01.map`接入 Mossy Cavern 场景图集
当前 `stage_01.map``asset\Mossy Cavern\参考图\4HibZC.jpg` 重做为一比一参考图复刻版
- 世界尺寸为 `6400 x 720`,当前按现有摄像机逻辑保持 720 高度,主要扩展横向探索长度
- `BackgroundFar` 使用 `mossy_background_decoration.png` 做远景洞穴轮廓
- `BackgroundMid` 使用 `mossy_hills.png` 做中景苔藓轮廓
- `LevelVisual` 使用 `mossy_floating_platforms.png` 做地面和悬空平台。
- `PropsBack` / `PropsFront` 使用苔藓悬挂植物、发光装饰和前景暗部遮挡。
- Battle zone 已扩展为 5 段:入口、下沉洞道、主洞厅、高低平台群和出口段。
- 原参考图尺寸为 `2432 x 832`,等比映射到当前游戏视口高度后,世界尺寸为 `2105 x 720`
- `BackgroundFar` 使用 `reference/mossy_cavern_reference_4hibzc.png` 作为完整场景底图,保证第一轮视觉尽量贴近参考图
- 碰撞只按参考图中的左侧、中央、右侧可站平台建立,不把背景洞壁和装饰当碰撞
- Battle zone 分为 3 段:左侧平台、中央平台、右侧平台。
本轮只接入地图场景视觉,碰撞仍由 `collision` 独立定义;角色、怪物、植物动画和 hazard 玩法暂不接入。
本轮只接入地图场景视觉,碰撞仍由 `collision` 独立定义;角色、怪物、植物动画和 hazard 玩法暂不接入。后续若要把底图拆成可编辑素材层,再逐步用 Mossy 图集替换完整参考底图。
## 下一步
+3 -2
View File
@@ -38,8 +38,9 @@ UI
## 当前素材接入
第一关已经通过 `rect_sprite_src` 接入 Mossy Cavern 场景图集
第一关已经接入 Mossy Cavern 场景资源
- `reference/mossy_cavern_reference_4hibzc.png`
- `background/mossy_background_decoration.png`
- `background/mossy_hills.png`
- `tiles/mossy_floating_platforms.png`
@@ -47,7 +48,7 @@ UI
- `props/mossy_decorations_hazards.png`
- `tiles/mossy_tileset.png`
当前 `stage_01.map` 已按参考图重做为 `6400 x 720`横向大地图。视觉结构包含远景洞穴轮廓、中景苔藓丘、顶部压暗悬挂植物、地面/平台裁切、发光装饰和前景暗部遮挡
当前 `stage_01.map` 已按 `4HibZC.jpg` 重做为 `2105 x 720`一比一参考图复刻版。第一轮用完整 PNG 参考图作为底图,优先保证视觉构图贴近参考图;后续再逐步拆成可编辑的背景、平台和前景装饰层
由于当前 `tile_rect` 只能取 tileset 第一行,正式 Mossy 场景暂时优先使用 `rect_sprite_src` 从大图集裁切。`mossy_tileset.png` 已落位,等后续扩展 tile row/column 或 tile id 后再用于精细铺砖。
+3 -3
View File
@@ -345,9 +345,9 @@ game/assets
```text
map stage_01
world 6400 720
camera 0 0 6400 720
player_spawn 160 496
world 2105 720
camera 0 0 2105 720
player_spawn 1030 346
collision <x> <y> <w> <h>
layer <id> <role> <parallax>
rect_sprite_src <x> <y> <w> <h> <r> <g> <b> <a> <texture> <sx> <sy> <sw> <sh>
@@ -204,7 +204,7 @@ mindmap
- `StageLayerSource` 已接入:每个 `StageRect` 可选择色块占位或 sprite 资源路径,加载失败时回退色块。
- `StageAssetSlots` 已建立:`stage_01` 资源目录和素材来源记录已预留,素材回来后可直接落位。
- `StageProps` 已统一:后景/前景 props 都走 `StageLayer`,前景层在 actor 之后绘制,可用于近景遮挡。
- 第一关宽度已扩展到 6400 像素,并加入 5 个 battle zone 占位与敌人出生点。
- 第一关已按 Mossy Cavern `4HibZC.jpg` 重做为 `2105 x 720` 的参考图复刻版,并加入 3 个 battle zone 占位与敌人出生点。
下一步:
+17 -20
View File
@@ -17,7 +17,7 @@
第一轮场景骨架进度:
- `LevelDefinition` 已扩展世界尺寸、玩家出生点、镜头范围、分层视觉、battle zone 和敌人出生点数据。
- 第一关地图已扩展到 `6400 x 720`,当前主数据在 `game/assets/map/stage_01.map`
- 第一关已按 `asset\Mossy Cavern\参考图\4HibZC.jpg` 重做为 `2105 x 720` 的参考图复刻版,当前主数据在 `game/assets/map/stage_01.map`
- `StageRenderer` 已支持远景、中景、地面/平台、后景 props 分层绘制,当前先用色块占位。
- `DebugOverlay` 已能显示碰撞、玩家框、battle zone、camera lock 范围和 spawn point。
- `WhiteboxScene` 已支持 debug overlay,具体快捷键记录在 `../controls.md`
@@ -35,10 +35,10 @@
第一关不急着做最终题材,先做通用 ACT 测试关:
- 横向推进,当前 Mossy Cavern 测试关宽度为 6400 像素。
- 横向推进,当前 Mossy Cavern 参考图复刻版宽度为 2105 像素。
- 主要视口仍用 1280x720。
- 主路线先保持连续地面,避免当前平台碰撞不支持台阶/斜坡导致卡关;高度变化主要放在悬空平台上,用于测试跳跃和镜头推进。
- 至少预留 5 个战斗区域,每个区域宽度约 780 到 980 像素
- 当前按参考图三块主要站立区域预留 3 个战斗区域。
- 每个战斗区域有明确的入口、站位空间、敌人刷出点和退出方向。
- 保留一个跳跃测试段,用来验证移动手感。
- 保留一个窄平台/边缘段,用来验证镜头和碰撞。
@@ -164,13 +164,11 @@ game/assets/stage/stage_01/
### Step 5:加入战斗区域数据
当前 Mossy Cavern 大地图标出 5 个 battle zone
当前 Mossy Cavern 参考图复刻版标出 3 个 battle zone
- `zone_01_entrance`
- `zone_02_lower_cavern`
- `zone_03_main_hall`
- `zone_04_high_garden`
- `zone_05_exit`
- `zone_01_left_platform`
- `zone_02_center_platform`
- `zone_03_right_platform`
每个区域包含:
@@ -198,12 +196,11 @@ game/assets/stage/stage_01/
第一阶段完成时应该达到:
- 能启动 `Frostbite2DGame`
- 第一关宽度至少 2400 像素
- 玩家可以从起点跑到终点
- 至少 5 个平台/地面碰撞块。
- 至少 2 层背景
- 至少 8装饰物
- 至少 5 个 battle zone debug 标记。
- 第一关世界尺寸为 `2105 x 720`,与 `4HibZC.jpg` 等比映射后的宽高一致
- 参考图底图能完整显示,且横向摄像机不露出世界外黑边
- 至少 4 个平台碰撞块,对齐参考图中的左侧、左下、中央、右侧可站平台
- 当前视觉先以 1 张完整参考底图表达,不再沿用上一版拼接地图
- 至少 3 battle zone debug 标记
- 场景资源路径集中在 `game/assets/stage/stage_01/`
- 文档记录已使用素材来源和授权信息。
@@ -226,8 +223,8 @@ game/assets/stage/stage_01/
1. 已完成:扩展 `LevelDefinition`,加入世界尺寸、玩家出生点、镜头限制、敌人出生点、battle zone 占位数据。
2. 已完成:扩展 `StageRenderer`,支持背景层、地面/平台视觉层、后景 props,第一版继续用色块。
3. 已完成:扩展关卡宽度到 6400 像素,并整理成 5 段 Mossy Cavern 推进节奏
4. 已完成:加入 5 个 battle zone debug 标记,但暂不做刷敌逻辑。
3. 已完成:`4HibZC.jpg` 重建关卡为 `2105 x 720` 的参考图复刻版
4. 已完成:加入 3 个 battle zone debug 标记,但暂不做刷敌逻辑。
5. 已完成:加入 spawn point debug 标记,用于后续接 `EnemyActor`
6. 已完成:补 debug 开关,可切换碰撞、battle zone、spawn point。
@@ -254,7 +251,7 @@ game/assets/stage/stage_01/
- `LevelDefinition` 能表达世界尺寸、玩家出生点、相机边界、碰撞、视觉层、props、battle zone、spawn point。
- `StageRenderer` 能按层绘制远景、中景、地面/平台、后景 props、前景 props,并支持资源图和色块占位两种来源。
- `DebugOverlay` 能显示碰撞、battle zone、camera lock、spawn point、玩家包围盒。
- 关卡灰盒能从起点跑到终点,至少 5 个推进段和 5 个 battle zone 都能被观察到;具体验收流程见 `../scene_acceptance.md`
- 关卡灰盒能观察到参考图中的左侧、中央、右侧三个主要平台区域,至少 3 个 battle zone 都能被观察到;具体验收流程见 `../scene_acceptance.md`
- 素材目录、命名、来源记录文件已经准备好,后续放入 PNG 后只改资源引用。
### 场景骨架实施顺序
@@ -330,6 +327,6 @@ game/assets/stage/stage_01/
2. 已完成:`stage_01.map``BackgroundFar``BackgroundMid``LevelVisual``PropsBack``PropsFront` 已改用 `rect_sprite_src` 裁切 Mossy 图集。
3. 已完成:碰撞、玩家出生点、camera bounds、battle zone 和 spawn point 保持原数据,不把视觉块当碰撞使用。
4. 已完成:贴图 `LevelVisual` 不再叠加灰盒辅助顶线,避免平台素材显示异常。
5. 已完成:参考 `asset\Mossy Cavern\参考图`,把 `stage_01.map` 扩展`6400 x 720`横向大地图,包含入口、下沉洞道、主洞厅、高低平台群和出口 5 个推进段
5. 已完成:参考 `asset\Mossy Cavern\参考图\4HibZC.jpg`,把 `stage_01.map` 重做`2105 x 720`一比一底图复刻版,完全替换上一版 6400 宽地图
暂不接入 `BlueWizard Animations``Plant Animations``Slimes` 和 hazard 玩法。下一步围绕地图编辑器继续微调场景块位置和碰撞对齐。
暂不接入 `BlueWizard Animations``Plant Animations``Slimes` 和 hazard 玩法。下一步围绕地图编辑器继续微调碰撞对齐,并逐步把完整参考底图拆成可编辑图层
+9 -7
View File
@@ -7,14 +7,14 @@
- 场景入口:`WhiteboxScene`
- 关卡数据:`game/assets/map/stage_01.map`
- 关卡 fallback`CreateWhiteboxLevel()` 内置 C++ 白盒数据
- 世界尺寸:`6400 x 720`
- 玩家出生点:`(160, 496)`
- 关卡边界:`0 -> 6400`
- 世界尺寸:`2105 x 720`
- 玩家出生点:`(1030, 346)`
- 关卡边界:`0 -> 2105`
- 视口:`1280 x 720`
- Battle zones`zone_01_entrance``zone_02_lower_cavern``zone_03_main_hall``zone_04_high_garden``zone_05_exit`
- Battle zones`zone_01_left_platform``zone_02_center_platform``zone_03_right_platform`
- 资源槽位:`game/assets/stage/stage_01/`
- 地图资源:`game/assets/map/stage_01.map`
- Tile 数据:`stage_01.map` 中的 `tileset` / `tile_rect`
- 参考底图:`game/assets/stage/stage_01/reference/mossy_cavern_reference_4hibzc.png`
- 全局资源槽位:`game/assets/ASSETS.md`
- UI overlay`GameUiOverlay`,有字体时使用 `TextSprite`,无字体时使用 fallback 色条。
- 音频 cue`stage_01``player_jump``player_attack``battle_zone_enter`
@@ -43,6 +43,7 @@ if (!$p.HasExited) { Stop-Process -Id $p.Id -Force }
Test-Path build\windows\x64\release\assets\map\stage_01.map
Test-Path build\windows\x64\release\assets\ASSETS.md
Test-Path build\windows\x64\release\assets\fonts
Test-Path build\windows\x64\release\assets\stage\stage_01\reference\mossy_cavern_reference_4hibzc.png
```
### Switch
@@ -64,6 +65,7 @@ RomFS 地图检查:
Test-Path build\switch\aarch64\release\switch_game\romfs\assets\map\stage_01.map
Test-Path build\switch\aarch64\release\switch_game\romfs\assets\ASSETS.md
Test-Path build\switch\aarch64\release\switch_game\romfs\assets\fonts
Test-Path build\switch\aarch64\release\switch_game\romfs\assets\stage\stage_01\reference\mossy_cavern_reference_4hibzc.png
```
## 手动跑图检查
@@ -72,7 +74,7 @@ Test-Path build\switch\aarch64\release\switch_game\romfs\assets\fonts
1. 启动 Windows 版 `Frostbite2DGame.exe`
2. 从出生点向右移动,确认摄像机横向跟随且不露出世界外黑边。
3. 依次进入 5 个 battle zone,确认 camera bounds 平滑切换,没有硬切瞬移。
3. 依次进入 3 个 battle zone,确认 camera bounds 平滑切换,没有硬切瞬移。
4. 通过 debug 清场或离开区域解除锁定,确认摄像机恢复全关卡跟随。
5. 使用 debug 分项开关检查:
- 碰撞矩形和场景网格。
@@ -92,7 +94,7 @@ Test-Path build\switch\aarch64\release\switch_game\romfs\assets\fonts
- Switch `Frostbite2DGameSwitch` 构建:通过。
- Switch RomFS:已包含 character、shader、`stage_01` 资源槽位和 `assets/map/stage_01.map`
- 地图加载:`stage_01.map` 已作为第一关主数据源;C++ 白盒数据仅作为 fallback。
- 地图视觉:`stage_01.map`扩展`6400 x 720` 的 Mossy Cavern 大地图,当前主要通过 `rect_sprite_src` 裁切场景图集表达。
- 地图视觉:`stage_01.map`重做`4HibZC.jpg` 的一比一参考图复刻版,当前通过 `reference/mossy_cavern_reference_4hibzc.png` 作为完整底图表达。
- 引擎能力接入:`Animation`/NPK/PNG 角色资源优先级、`UIScene`/`TextSprite` UI、`Sound`/`Music` cue、`SaveSystem` debug 存档已接入。
- 手动跑图:未在本轮执行,等待后续素材/战斗区域进一步接入时复测。