Files

3.9 KiB
Raw Permalink Blame History

崩坏童话:蜜糖村

纯单机网页游戏(Phaser 3 + TypeScript + Vite)。无存档、无后端、无 localStorage;浏览器打开即玩。完整流程约 25–35 分钟,含 4 个结局。

启动方式

npm install
npm run dev      # 开发
npm run build    # 产出静态 dist/
npm run preview  # 本地游玩构建结果
npm test         # 单元测试(PRD 数值/台词/矩阵)

请用 npm run devnpm run preview 访问,不要直接用 file:// 打开(ESM 模块加载需要 HTTP)。

按键

按键 作用
WASD / 方向键 四向移动
E / 空格 交互、推进对话
1 / 2 / 3 对话选项(温柔 / 迟疑 / 否定)
Enter 确认名字;结局「回到标题」
` (反引号) 开关 Debug 面板

靠近可交互物(≤24 像素)会出现「按 E」提示。

游玩流程

  1. 标题画面 → 输入名字(留空默认为「小满」)→ Day 1 小屋
  2. 每日:晨起 → 广场公告板接任务 → 完成任务 → 黄昏钟声 → 回屋睡觉 → 梦境 → 次日
  3. Day 7 参加「第 413 届丰收庆典」,按幸福 / 觉知 / 线索走向 E1–E4 之一

幸福值不显示数字:左上角向日葵 12 瓣按值点亮,满格后花心出现黑籽。

Debug 面板(默认关闭)

按 ` 打开。仅服务验收,正常游玩无 UI 痕迹。

功能
H / J 幸福 ±10
K / L 觉知 ±10(L 仅 Debug 可下调)
Shift+17 设置当前日(用 code Digit17,兼容浏览器 Shift 改写 key 为 !@#
C 置齐全部线索
09 传送到 10 个场景(0小屋 1广场 2面包房 3杂货店 4诊所 5湖畔 6花田 7古井 8雾墙 9白色层)
V 循环传送下一场景
F1F4 强制结局 E1E4
N 负片闪帧
P 触发欢乐庆典

素材与地图制作流程(全部原创)

本项目禁止使用任何现成素材包。像素图与地图均由仓库内脚本 + 本机工具生成:

Aseprite

本机路径示例:/Applications/Aseprite.app/Contents/MacOS/aseprite

export PATH="/Applications/Aseprite.app/Contents/MacOS:$PATH"
aseprite -b -script scripts/generate_tileset.lua   # → public/assets/tilesets/village.png128 瓦 16×16
aseprite -b -script scripts/generate_sprites.lua   # → player / npcs / birds / extras / portraits / sunflower
  • 瓦片:草地、石板路、湖水、花丛、莓果、树、房屋、室内家具、井、雾、白色层等
  • 主角:16×24,4 朝向 × 4 帧行走;对话微笑头像 + E3「真实的脸」
  • NPC ×7:各 3 档表情 smile / flat / offoff 仅 12 像素差异)
  • 双子鸟 2 帧张嘴;群演 ×5

源文件同时保存 .aseprite 与导出 .png

Tiled Map Editor

本机路径示例:/Applications/Tiled.app/Contents/MacOS/tiled

node scripts/generate-maps.mjs
# 可选:用 Tiled CLI 再导出校验
tiled --export-map json mapsrc/house.tmx public/assets/maps/house_tiled_export.json

10 张地图(§10):小屋、村广场、面包房、杂货店、诊所、湖畔、花田、古井空地、雾墙边界、白色层。
结构层:ground / obstacles(碰撞)/ objectsspawn、NPC、door、交互点)。
源 TMX 在 mapsrc/,运行时 JSON 在 public/assets/maps/

一键重生成

npm run assets   # 若已配置 scripts/generate-assets.sh
node scripts/generate-maps.mjs

技术要点

  • 逻辑分辨率 320×180,整数倍放大,pixelArt: true,无纹理平滑
  • CorruptionDirector:幸福 / 觉知 / 日 / 任务 / 线索 / 侵蚀阶段唯一真源
  • BGM 与 4 个音效均为 Web Audio 程序合成,无外部音频文件
  • 无 localStorage、无外部网络资源 / 字体

验收

PRD §14 共 20 条。单元测试覆盖台词、任务奖励、侵蚀矩阵、错字表、结局优先级、悲伤数值等。