2.6 KiB
2.6 KiB
星种:长夜之前
一款基于 Vue 3 的单机文明演化增量游戏。从无名潮池中的复制分子出发,跨越陆冠、炉城与星种四个纪元,在暮阳风暴抵达前完成生命档案、磁场天幕与星种方舟。
直接游玩
无需安装、无需后端、无需联网:
- 下载仓库;
- 直接双击
dist/index.html; - 游戏会在浏览器中运行。
dist/index.html 是 Vite 编译后的单文件发行版,JavaScript 与 CSS 均已内联。它已通过 file:// 方式实际加载和点击验证。
核心内容
- 四个线性纪元:潮池、陆冠、炉城、星种;
- 12 个科学与文明里程碑;
- 点击采集与自动增长组成的增量循环;
- 本地自动存档与最多四小时离线收益;
- 生态平衡、生命档案、磁场天幕三项结局指标;
- 唯一正式结局“ 两片海的黎明 ”与新世界播种循环;
- 桌面端与移动端自适应界面;
- 无图片、字体、接口等运行时网络依赖。
Vue、Bit 与动画组件
项目参考 Bit 的 Vue 组件开发说明,将界面拆分为职责单一、输入输出明确的 Vue 单文件组件:
EvolutionScene.vue:行星、轨道、星空与主点击交互;MilestoneRail.vue:纪元里程碑、资源门槛与完成状态;SignalLog.vue:文明叙事信号流;EndingOverlay.vue:最终发射结局。
动画层使用 motion-v,为组件提供弹簧入场、手势按压、阶段切换和结局转场;背景呼吸、极光、扫描、城市灯光与发射轨迹使用本地 CSS 动画。组件边界及 Bit 跟踪建议见 docs/bit-components.md。
本地开发
要求 Node.js 20.19+ 或 22.12+。
npm install
npm run dev
质量检查与发行构建:
npm test
npm run build
npm run verify:dist
npm audit
构建会重新生成可直接打开的 dist/index.html。
项目结构
star-seed/
├── dist/index.html # 已编译、自包含、可直接运行的游戏入口
├── docs/ # 组件说明与游戏截图
├── src/components/ # Bit 风格的独立 Vue 动画组件
├── src/game/gameState.js # 纯函数游戏状态与规则
├── src/App.vue # 应用编排、存档与游戏循环
├── src/styles.css # 科幻视觉系统与响应式布局
└── src/**/*.test.js # 状态与界面测试
技术栈
- Vue 3.5
- Vite 8
- Motion for Vue (
motion-v) - Vitest + Vue Test Utils
- Vite SingleFile
许可
MIT
