偽寒冰啟示錄 Fake Whiteout Survival
把《寒霜啟示錄》買量廣告裡不存在的「雪地賣肉舖」假玩法做成真遊戲:獵牛取肉→擺攤賣錢→買自動化員工→撐過 30 波殭屍塔防終局。
七大面向
memory技術深度 7/10
量測驅動而非套模板的紮實 Babylon.js 效能工程:BackStack 模組用單一 thin-instance mesh+手寫 Float32Array matrix buffer(零配置熱路徑)畫背上 200 層肉;tree-field.ts 記錄了從 thin instance 改回 InstancedMesh 的決策(逐棵視錐剔除更省)。殭屍池延遲建立、靜態物 freeze、Draco 24→11MB 自帶解碼器。無 LOD、無空間分割——碰撞是 O(n·m) 暴力迴圈。
stadia_controller遊戲設計 7/10
有真實中後期轉折的完整循環:經營期→自動化期(狗/獵人/收銀員)→30 波塔防終局(每 3 波 Boss、含無傷害純減速塔)。git 歷史可見真實設計迭代——砍掉「房子血量」改成更易讀的 breach 判定(殭屍攻入 10 隻判負)。弱點:升級樹只有一項、無中途存檔、流程偏短。
security後端與安全 6/10
防護高於平均:SQL 全參數化、依 IP 的 D1 限流(各動作 4–8 秒)、髒話過濾、wave 鎖 30 且「未達 30 波宣稱通關一律改記未通關」、ADMIN_KEY 走 Pages Secret。但破口在前端:硬編碼 debug 密碼 '19840501' 且註解自曝=留言板刪除碼——讀 bundle 就能刪留言+開作弊面板。限流有 SELECT-then-UPSERT race,rate 表永不清理。
code程式品質 6.5/10
TS strict 且全案零 any、build 前強制 vue-tsc、參數集中在 349 行帶註解的 config.ts。反面:game.ts 3,837 行——一個 createGame() 閉包包下幾乎全部邏輯,「站框付款」邏輯複製貼上六處、攻擊邏輯兩處。
experiment測試 1.5/10
零自動化測試、無測試依賴、無 CI。唯一閘門是 build 內的型別檢查——DEVLOG 倒是記載了「改完一律先型別檢查再 build」的紀律。
verified完成度 8/10
以個人小遊戲標準近乎滿配:線上可玩+全球排行榜+巢狀回覆留言板+7 天在線折線圖+全服統計、11 項成就(有 commit 專門驗證全部可觸發)、5 軌合成 BGM、四份文件(README/BACKEND/DEVLOG 踩雷集/README_AI),且到處優雅降級——模型載入 fallback、離線 localStorage 模式、社群呼叫 fire-and-forget。
emoji_objects原創性 4.5/10
題材直白承認山寨——複刻「只存在於騙人廣告裡的遊戲」,這個 meta 前提本身有巧思。但機制層面是「放置經營+塔防」兩個極成熟類型的拼接;breach 判定、減速塔與社群層是自己長的,並無新機制發明。
trending_up亮點
- BackStack thin-instance 背堆——200 層視覺零 FPS 損耗,含平滑生長動畫與隨步伐擺動(
back-stack.ts) - 踩雷文件化——DEVLOG 列出 iOS 雙擊放大的 5 種無效解法與最終解,外加 thin-instance 對合併 mesh 失效、TDZ bug 根因(
DEVLOG.md) - 教科書級配額事故應對——先降流量、再瘦身、最後用可逆的
_routes.json斷路器,全程寫進 commit message - 零外部依賴的韌性——自帶 Draco、合成音樂、API 掛掉自動回退 localStorage,斷網也能完整遊玩
- 伺服器端合理性驗證——wave 鎖 30、假通關降級記錄,比多數小遊戲「照單全收」認真(
run.ts:14-24)
trending_down弱點
- 管理密鑰實質外洩——前端硬編碼
'19840501',註解自曝與後端 ADMIN_KEY 相同(game-view.vue:270) - 3,837 行 god function——六處複製貼上的付款邏輯、兩處重複的攻擊邏輯(
game.ts) - 零測試零 CI——連 D1 限流、排行榜 clamp 這種純函式都沒單元測試
- 限流 race(SELECT-then-UPSERT 非原子)且
rate表永不清理(_lib.ts:46-62) - 排行榜仍可腳本灌榜——無任何 client 證明機制,每 IP 每 4 秒可寫一筆滿分成績
事件還原:kill-switch 之日
2026-07-13:真實流量把帳號共用的 Cloudflare Functions 免費額度(每日 10 萬)逼到臨界——使用者留在背景的舊分頁還在跑已淘汰的 60 秒心跳輪詢,無法遠端叫停。
當天三步:(1) 09:05 心跳制改「進場制」;(2) 14:17 首頁請求 5 個瘦身到 2 個;(3) 15:42 緊急止血——新增 _routes.json 把 /api/* 排除出 Functions 路由,犧牲社群功能、遊戲本體靠 localStorage 照常可玩,commit message 還寫明恢復方式。
隔天確認額度重置後移除 kill-switch。可逆斷路器+完整時間線記錄——對上線不到一個月的 hobby 專案是超齡的營運成熟度(雖然最初的天真心跳輪詢是自己埋的雷)。
smart_toyAI 輔助開發跡象
公開且極端:全部 96 個 commit 都帶 Claude Opus 4.8 共同作者(92 個標註 1M context);作者品牌就叫「Book AI」;README_AI 自述由 AI 讀完整個程式碼後整理。節奏是全速的「人指揮 AI」迴圈——單日 63 commits,其中連續 12 個 commit 在跟 iOS 雙擊放大纏鬥:人在真機驗證、AI 快速迭代。
summarize統計
| 技術棧 | Vue 3 · TypeScript · Babylon.js 9 · Tailwind 4 · Vite 6 · CF Pages Functions · D1 |
|---|---|
| 類型 | 放置經營 × 塔防混合 |
| 開發期間 | 2026-06-18 → 2026-07-14 |
| 實際開發天數 | 4 天 |
| Commit 數 | 96 |
| 程式碼行數 | ~7,000 |
| 作者 | craig7351(Book AI) |
總評
系列中「營運故事」最強的一作:量測後的渲染取捨、文件化的踩雷、像職業團隊一樣處理的配額事故。債務與兄弟作相同——god file、零測試——再加一個前端 bundle 裡自曝的密鑰。