DUNGEON REBORN 外掛(v3)
DUNGEON REBORN 的 Tampermonkey 外掛。v3 起支援作者 2026-10-15 之後加了混淆的新版遊戲;請用 3.1.0 以上,3.0.0 在 Tampermonkey 裡會讓遊戲無法開始。目前版本 3.2.0。
完整的逆向紀錄寫在 Blog:https://blog.siao.ai/dungeon-reborn-userscript
功能
- 基本:無敵(含 Boss 的劇毒詛咒與時限)、傷害/攻速/移速/吸取範圍/暴擊/經驗倍率、遊戲加速、防止暫停、自動選升級。
- 寶箱:指定掉落(塔盾、古老金幣、肉塊、騎士頭盔)、自動打開、出現速度與場上上限、直接取得任一種效果。
- 塔盾與分身:塔盾常駐、分身常駐、分身數量 1~12(原版 2),分身的傷害與攻速也吃倍率。
- Boss:詛咒無效(不中毒、方向不反轉、沒有時限)、刷王。
- 升級卡:必定幸運(含 Boss 獎勵卡)。
- 刷怪:持續刷怪、定量刷怪,怪種包含哥布林。
- 能力等級:直接調整玩家等級、武器、道具、技能、終極技能、屬性。
- 其他:狀態列(波次、時間、血量、Boss 倒數、寶箱、塔盾與分身剩餘秒數)、各區塊可收合、倍率一鍵重設、熱鍵(Alt+G 無敵、H 回滿血、K 清怪、N 下一波、C 生成寶箱、X 加速開關)、用了外掛的那局可選擇不寫入最佳紀錄、手機版面板。
安裝
- 裝 Tampermonkey。 Chrome 還要到
chrome://extensions→ Tampermonkey「詳細資料」→ 打開「允許使用者指令碼」(找不到就先開「開發人員模式」)。 - 點一鍵安裝,在 Tampermonkey 跳出的畫面按「安裝」。已經裝過 v2.5 的話,Tampermonkey 會顯示「更新」。
- 打開遊戲,右上角出現面板就成功了。桌面版按
`收合,手機點標題列展開。
面板沒出現的話:
- 先檢查第 1 步的開關,再確認網址是上面那個遊戲網址(
@match只對它生效)。 - 打開 Console,應該要看到「
[DUNGEON REBORN 外掛 v3] 已攔截頁面載入」和「執行位置:頁面」。如果顯示「Tampermonkey 沙盒」也可以正常玩,只是 Console 裡摸不到G。 - 版本是 3.0.0 的話請更新:3.0.0 在真正的 Tampermonkey 裡會被頁面的 CSP 擋住,裝了以後遊戲按「開始遊戲」沒反應。
- 畫面底部出現紅色的「遊戲已更新,外掛尚未支援這個版本」:作者又更新了遊戲,這時候跑的是原版遊戲,等外掛更新就好。
只想看原始碼、不安裝:DungeonRebornMod.user.js。這個連結只會打開檔案頁,會跳安裝畫面的只有「一鍵安裝」。
檔案
| 路徑 | 內容 |
|---|---|
DungeonRebornMod.user.js |
安裝用的外掛,由 reverse/build-mod.mjs 產生 |
src/mod-core.js |
外掛本體(面板與所有功能)。3.1 以前跟 v2.5 一樣,3.2 起補上寶箱、分身、Boss 詛咒等新機制。第 3 行的 NEEDS 列出用到的遊戲名稱,自動更新時會檢查新版都還在 |
reverse/ |
把混淆版 game.js 還原成可讀程式碼的工具、命名對照表、更新流程,說明見 reverse/README.md |
v3 怎麼運作
新版遊戲整包放進一個立即執行的函式(IIFE),G、hurtPlayer 這些都摸不到了,index.html 也加了 CSP 擋掉注入。v3 的做法:
- 頁面一開始載入就用
document.open()接手,重寫成拿掉原本<script src="game.js">的頁面。 - 抓官方的
game.js,在 IIFE 結尾前插入一小段匯出程式,用 getter/setter 把閉包裡的函式和狀態掛到window。混淆後的名稱跟有意義名稱的對照表,是reverse/的工具產生的。 - 用 Tampermonkey 的
GM_addElement把改過的遊戲和src/mod-core.js放進頁面執行。Tampermonkey 注入時,index.html的 CSP(script-src 'self')通常已經生效,而且document.open()清不掉它,一般的<script>和eval都會被擋;GM_addElement用擴充功能權限執行,不受這個限制。萬一不行,就改在 Tampermonkey 的沙盒裡執行,再不行就只載入原版遊戲。 mod-core.js換掉window.hurtPlayer的時候,setter 直接改掉閉包裡的綁定,遊戲之後的呼叫就會走到新的函式。
這支腳本不含任何遊戲程式碼,遊戲本身都是執行時從官方網址抓的。game.js 的 hash 對不上對照表時,就只載入原版遊戲,不會亂掛。
提醒
這是單機遊戲的學習練習。不要拿去刷有線上排行榜、或會影響到別人的遊戲。