starraid/star-raid
JOJO 9edc366cf9 图鉴测试模式+巡飞弹新武器+存档云同步+机库合并+默认无尽
①图鉴隐藏测试模式:连点标题'军'字10次开关,纯内存标志位全部军械可见可演示,不动SAVE.codex(persist/submitRun读它,动了会污染后端),刷新失效
②24件主武器说明文案全部替换(用户提供梗文案);演示页介绍单行显示、去掉类别前缀、删'实战模拟·自动驾驶'提示行
③新主武器'巡飞弹'(loiter):慢攻速追踪导弹(制导引擎新增maxSpd上限5保持中速),命中留火场(zones新kind:fire纯粒子火舌,无圆形区域)+分裂4枚小炸弹快爆;新精灵loms;CODEX_KEYS同步63
④存档云同步:星币/机体/选中机体/永久强化/本地纪录上服务端(player_state表+POST /api/state+vState白名单清洗);login/me/register响应带state;客户端persist()钩子防抖600ms自动上传;服务端整体替换本地防串号,登出全清;老账号首登自动上传本地存档迁移
⑤机体选择/购买从出击准备并入机库强化(buildShips);出击默认无尽模式
服务端已重启生效;/api/state全链路在独立测试库curl验证通过(合法推送/回读/非法拦截清洗/401)
2026-08-06 12:15:17 +08:00
..
css 修复'再来一局'进错模式:b-again/b-restart改用刚结束局自身的mode/ship/diff重开(原读SETUP.mode,玩过无尽后SETUP漂移导致闯关/rush死了都进无尽);rush局重开回同一Boss。大厅布局:排行榜上移flex:1撑满、进入基地/登出沉底、面板按钮全半透明露出背后模拟战。playwright回归:stage/endless/rush三模式再来一局全部正确,布局层级与半透明断言通过 2026-08-06 10:35:12 +08:00
demo 仓库提升至工作区根目录:star-raid成为子目录;gitignore排除.astrion/research;无关项目移至测试1 2026-08-06 01:24:32 +08:00
js 图鉴测试模式+巡飞弹新武器+存档云同步+机库合并+默认无尽 2026-08-06 12:15:17 +08:00
server 图鉴测试模式+巡飞弹新武器+存档云同步+机库合并+默认无尽 2026-08-06 12:15:17 +08:00
.env.example 配置外置:新增 server/env.js 零依赖.env加载器(启动最先加载,真实环境变量优先);数据库迁出源码树至 ~/.starraid(.env 的 DATA_DIR 可配,支持 ~ 展开);star-raid/.env 进 gitignore + .env.example 模板;DEPLOY/AGENTS 同步。教训记录:WAL 模式迁移前必须 checkpoint(本次迁移误删 WAL 丢测试数据,用户确认无所谓) 2026-08-06 11:07:37 +08:00
DEPLOY.md 图鉴测试模式+巡飞弹新武器+存档云同步+机库合并+默认无尽 2026-08-06 12:15:17 +08:00
index.html 图鉴测试模式+巡飞弹新武器+存档云同步+机库合并+默认无尽 2026-08-06 12:15:17 +08:00
package.json 后端化:账号系统+排行榜+图鉴收集同步+飞行员大厅(零依赖Node+SQLite) 2026-08-06 04:20:25 +08:00
README.md 仓库提升至工作区根目录:star-raid成为子目录;gitignore排除.astrion/research;无关项目移至测试1 2026-08-06 01:24:32 +08:00

星尘突击队 STAR RAID

像素风 Roguelike 竖版射击游戏。原单文件版本已按功能拆分为多文件结构。

运行方式

浏览器直接打开 index.html 即可游玩;或启动本地服务器:

cd star-raid
python3 -m http.server 8000
# 访问 http://localhost:8000/

文件结构

star-raid/
├── index.html        # 页面结构:画布 + 各界面覆盖层(标题/机库/图鉴/结算等)
├── css/
│   └── style.css     # 全部样式:像素风 UI、覆盖层、卡片、触屏按钮
└── js/
    ├── config.js     # 工具函数、存档读写、平衡数值总表
    ├── audio.js      # 程序化音频:音效合成 + 背景音乐
    ├── sprites.js    # 像素精灵工坊:战机/敌机/弹幕/道具/图标绘制
    ├── data.js       # 静态数据机体、21 主武器、18 副武器、僚机、被动
    ├── core.js       # 全局状态、输入、玩家移动、武器引擎、爆炸特效
    ├── enemies.js    # 敌人图鉴、敌机行为、突变词缀、波次生成、Boss 战
    ├── combat.js     # 战斗结算、子弹更新、碰撞检测、经验与三选一
    ├── render.js     # 背景渲染、Boss 像素绘制、世界渲染、主循环
    └── ui.js         # 界面流转、机库商店、图鉴、实战模拟演示

加载顺序说明

JS 模块通过全局作用域共享状态,需按 index.html 中的顺序加载: config → audio → sprites → data → core → enemies → combat → render → ui

操作

  • 移动WASD / 方向键 / 触屏拖动
  • 射击:全自动
  • SHIFT精密移动 · P暂停 · M音乐开关