一个程序员梗向的 VS Code 桌面幸存者小游戏原型。
玩家控制 VS Code 图标,在编辑器战场中躲避 Windows 更新、Edge 弹窗、Teams 会议、OneDrive 冲突、npm 黑洞和蓝屏合并冲突。原来的代码植物不再种在格子里,而是变成围绕主角成长的武器;上方保留三国杀式锦囊手牌,用 Ctrl+S、kill -9、Git Stash、Docker Build 等卡牌在关键时刻救场。
游戏里的 already deleted 是模拟效果,只会改变界面状态和战斗日志,不会删除、修改或移动真实磁盘文件。
仓库目前包含:
- 一个可玩的 HTML 原型:
微软大战代码_HTML原型/ - 一套中文策划文档:
微软大战代码_游戏策划/ - SVG 贴图素材、代码植物图标、微软怪物贴纸和系统 UI 梗图:
微软大战代码_素材库/ - 一个 VS Code Webview 扩展入口,可从 VS Code 命令面板打开原型
当前可玩版本已经从路线塔防改为:
VS Code 主角移动生存
+ 植物武器自动攻击
+ coffee 掉落与升级三选一
+ 锦囊抽卡与快捷技能
+ 微软弹窗干扰
+ Explorer 文件生命
+ 3 分钟蓝屏 Boss在项目根目录运行:
npm start终端会输出本地地址,例如:
http://127.0.0.1:8000/如果 8000 端口被占用,脚本会自动换到下一个可用端口。打开终端输出的地址即可开始游戏。
停止服务时,在终端按 Ctrl+C。
WASD / 方向键 移动 VS Code 主角
Space Ctrl+S 保存冲击波
Q kill -9 最危险事故
E Alt+F4 关闭弹窗
鼠标点击手牌 打出锦囊牌
鼠标点击弹窗 手动关闭桌面弹窗击败敌人会掉落 coffee。拾取 coffee 会获得经验,经验满后弹出 3 个植物武器升级选项。
玩家控制的是 VS Code 图标。主角会在编辑器区域中移动,躲避不断涌来的微软和开发事故。
主角周围会显示已解锁的植物武器图标和等级,例如开局默认的 print 炮 Lv.1。
植物现在不是防御塔,而是自动攻击武器:
| 武器 | 定位 |
|---|---|
print 炮 |
默认主武器,自动喷出字符弹 |
coffee 机 |
提高 coffee 收益,并缓慢回血 |
bug 雷 |
周期性丢出高伤害地雷 |
rollback |
定期释放回滚脉冲,推开事故 |
函数炮 |
发射曲线函数弹 |
Docker |
生成容器护盾,贴身伤害敌人 |
TypeScript |
锁定高威胁目标,发射类型检查蓝弹 |
JavaScript |
高频随机热修复飞镖 |
Python |
自动化脚本扫场 |
IDEA |
重构激光优先打精英怪 |
Tomcat |
喷出 8080 火球 |
Spring Boot |
健康检查回血,并恢复文件状态 |
上方手牌保留卡牌玩法。抽卡和出牌都消耗 coffee。
| 锦囊 | 类型 | 效果 |
|---|---|---|
Ctrl+S |
闪 | 保存冲击波,击退并伤害周围敌人 |
kill -9 |
杀 | 强制终止最危险的事故进程 |
Stack Overflow |
锦囊 | 全屏答案弹幕,但会招来隐藏 bug |
Git Stash |
锦囊 | 短暂无敌,并恢复最危险文件 |
Docker Build |
装备 | 立刻获得容器护盾,并解锁或升级 Docker |
热咖啡 |
桃 | 回血并获得 coffee |
CI Pipeline |
延时锦囊 | 3 秒后全屏扫描小怪 |
Alt+F4 |
闪 | 关闭全部弹窗,并打断 Edge |
左侧 Explorer 里的文件是本局生命线:
src/main.ts
src/defense.ts
src/waves.json
assets/plants.svg
README.md
package.json
毕业设计-最终版.zip事故会擦伤文件。文件生命归零后会显示 already deleted。这只是游戏状态,真实文件安全。
当前原型包含:
- Windows 更新
- Edge 弹窗
- Teams 会议
- OneDrive 冲突
- npm 黑洞
- Defender 误杀
- YAML 缩进
- 需求变更
- 蓝屏合并冲突 Boss
敌人从编辑器边缘涌入。弹窗会覆盖战场并倒计时,如果不手动关掉或用 Alt+F4 清掉,会污染一个工作区文件。
.
├── README.md
├── package.json
├── extension.js
├── scripts/
│ └── start.js
├── 微软大战代码_HTML原型/
│ ├── index.html
│ ├── styles.css
│ └── game.js
├── 微软大战代码_游戏策划/
│ ├── README.md
│ ├── 01_核心玩法.md
│ ├── 02_资源与组合系统.md
│ ├── 03_代码植物图鉴.md
│ ├── 04_微软怪物图鉴.md
│ ├── 05_关卡与事件.md
│ ├── 06_MVP原型范围.md
│ ├── 07_梗库与资料来源.md
│ └── 08_程序员工具链卡牌克制系统.md
└── 微软大战代码_素材库/
├── README.md
├── 怪物与植物设定/
└── 图片资源/如果想作为 VS Code Webview 扩展调试:
- 用 VS Code 打开项目根目录。
- 按
F5启动 Extension Development Host。 - 在新窗口里按
Ctrl+Shift+P。 - 运行命令:
微软大战代码:守护你的代码文件。
这个方式会打开一个新的扩展开发窗口,是 VS Code 调试扩展的默认行为。平时直接用 npm start 更方便。
修改游戏逻辑后可以先检查 JavaScript 语法:
node --check 微软大战代码_HTML原型/game.jsgit@github.com:nothingyuancando/Misrosoft-VS-code.git