寫在前面:v2.17,我們又往前了一步
25 年前,你們在頂客論壇養了一隻文字寵物。25 年後,我們把牠找回來了,而且還在持續進化。
2026 年 10 月 22 日,寵物遊戲從 v2.16 升級到 v2.17。這次不是大改版,是一次「讓戰鬥更公平、讓版本更透明」的紮實更新。這份報告,就是寫給你們看的——告訴你我們做了什麼、改了什麼、你會在打怪場感覺到什麼不同。
這三件事看起來小,但它們是這套系統能走 25 年的地基。」
這次更新只做三件事:技能不再無腦連放、版本號三處同步、每個改動都留下紀錄。這份報告寫給百萬會員,也寫給下一個接手的人。
25 年前,你們在頂客論壇養了一隻文字寵物。25 年後,我們把牠找回來了,而且還在持續進化。
2026 年 10 月 22 日,寵物遊戲從 v2.16 升級到 v2.17。這次不是大改版,是一次「讓戰鬥更公平、讓版本更透明」的紮實更新。這份報告,就是寫給你們看的——告訴你我們做了什麼、改了什麼、你會在打怪場感覺到什麼不同。
不講技術,先講你玩起來的差別。
以前火焰爪可以每回合狂放,現在放完要等冷卻回合。戰鬥更有節奏,不再一招打天下。
打開打怪場、戰績牆,標題就寫著 v2.17。你隨時知道自己在玩哪一版。
技能冷卻中時,畫面會顯示「普通攻擊(火焰爪 冷卻中)」,你可以決定要不要換招。
這次更新全程備份、全程驗證,測試資料精準清理,你的寵物資料完好無損。
以前:技能沒有冷卻,火焰爪(威力 15)和烈焰衝擊(威力 25)可以每回合輪流放,戰鬥變成「誰威力高誰贏」。
現在:每個技能依 pet_skills.cooldown 欄位設定冷卻回合數(火焰爪 3、烈焰衝擊 5、深淵吞噬 6…)。放完技能後,接下來幾回合只能用普通攻擊,冷卻結束才能再放。
| 技能 | 威力 | 冷卻回合 |
|---|---|---|
| 火焰爪 / 水彈 / 藤鞭 | 15 | 3 |
| 烈焰衝擊 / 海嘯 / 森羅萬象 | 25 | 5 |
| 聖光 / 暗影球 | 20 | 4 |
| 神聖審判 / 深淵吞噬 | 30 | 6 |
| 回合 | 狀態 | 傷害 |
|---|---|---|
| 1 | 技能(冷卻 0) | 26 |
| 2~4 | 普攻(冷卻 3→2→1) | 6 |
| 5 | 技能恢復 | 26 |
這個邏輯我們在部署前用本地模擬驗算過 7 回合,確認冷卻遞減、重置都正確,才推上線。
以前版本號只寫在後端,前端標題還是舊的。現在我們做到三處同步:
| 位置 | 顯示內容 |
|---|---|
| Worker 根目錄 | ahpal-pet-d1 v2.17 is running |
| 打怪場標題 | 🦞 雅寶打怪場 v2.17 · 單頁密集式 |
| 戰績牆標題 | 🏆 雅寶戰績牆 v2.17 · 排行榜與留言 |
從 v2.17 起,每次版本更新,這三處一定一起改。你打開任何一頁,都能確認自己在玩最新版。
| 類別 | 變更 | 部署方式 |
|---|---|---|
| Worker 邏輯 | /api/pet/battle 加入技能冷卻判斷,回傳 cooldownRemaining、cooldownSkillId | wrangler deploy |
| Worker 版本字串 | v2.3 → v2.17,API 清單補 /api/pet/battles(16 個) | wrangler deploy |
| 前端版號 | pet-index.html、wall.html title 改 v2.17 | git push |
| D1 資料 | 清理 4 個測試帳號與關聯資料(FK 掃描後依序刪) | d1 execute |
| 備份 | 7 份備份(patch×2、predeploy、cleanup×2、version×2) | ops/backups/ |
未變動:11 張表結構、裝備 30 件、怪物 10 隻、屬性克制 ×1.5、寵物升級學技能邏輯,全部保持原樣。
第一次 patch 猜 petDmg,實際是 rawDmg,替換失敗。解法:先唯讀提取目標區塊,看到真實碼再動手。
抓 pet.ahpal.com/ 得到的是 226 bytes 轉址頁,title 無版號。實際打怪場在 /pet-index.html。解法:驗證前先確認「這個 URL 回應的是哪個檔」。
直接刪 players 被 FK 擋。解法:先查 6 張子表依賴數,按 pet_battle_logs→player_skills→player_equipment→battles→comments→pets→players 順序刪。
下一步是戰鬥動畫——純前端,不碰後端、不碰資料庫,風險最低。
做完一樣會發一份進度報告,讓你們知道改了什麼。