作品简介与玩法
在三个战区建塔、升级,抵御每个战区的十波敌人。浏览器快捷键:1 / 2 / 3 建造,U 升级,空格开波,P 暂停,F 变速,M 音效;出售需要点击画面按钮。手机支持触屏,建议横屏。
依据:starfront/README.md。
部署机械炮塔,抵御异星集群。用有限晶矿搭配速射、破甲与减速火力,守住三大战区的最后前哨。
在三个战区建塔、升级,抵御每个战区的十波敌人。浏览器快捷键:1 / 2 / 3 建造,U 升级,空格开波,P 暂停,F 变速,M 音效;出售需要点击画面按钮。手机支持触屏,建议横屏。
依据:starfront/README.md。
JavaScript CommonJS 模块由 Node.js 脚本打成浏览器 bundle,构建不依赖第三方包。浏览器适配层取得 Canvas 2D 上下文、调度动画帧,并用 localStorage 存储进度。游戏美术由 Canvas 程序绘制。
依据:starfront/package.json、starfront/tools/build.cjs、starfront/src/core/browser-platform.js、starfront/README.md。
仓库未记录具体使用过的 AI 编程工具、模型版本或对话过程,无法据此还原制作工具使用史。
以下是根据现有源码组织的复现与阅读顺序,不是原作者开发过程记录。
src/data/maps.js、towers.js、enemies.js 与 waves.js,对应地图、炮塔、敌人与波次配置。src/game/battle-world.js 阅读战斗逻辑,再看 src/render/canvas-renderer.js 的画面绘制。src/core/browser-platform.js 的浏览器输入和存储接入。starfront/ 运行测试和构建,然后用本地静态服务器查看产物。npm test npm run build python3 -m http.server 8766 --directory dist
依据:上述源码文件、starfront/README.md、starfront/package.json。
browser.js 递归收集相对 require 模块,输出 game.bundle.js 和记录 bundle SHA-256 的 build-info.json。依据:starfront/src/core/browser-platform.js、starfront/src/core/save-store.js、starfront/tools/build.cjs。
浏览器存储不可用时仍可游玩,但进度无法持久保存。音效需要玩家首次操作激活浏览器音频。作品不是暴雪官方游戏。
依据:starfront/README.md。
下面是基于现有模块提出的练习需求,不是历史提示词。
请先阅读 starfront/src/core/browser-platform.js 和 save-store.js,解释指针坐标换算与存档失败处理。在保持现有行为的前提下,为存储写入失败补充一个回归测试,并说明预期反馈。
练习依据:starfront/src/core/browser-platform.js、starfront/src/core/save-store.js。
阅读存档规范化函数,手动构造一个越界的解锁数和星级,预测加载结果,再运行测试核对。只在本地练习副本中修改。
练习依据:starfront/src/core/save-store.js、starfront/tests/save-store.test.js。