{
  "schemaVersion": 1,
  "asOf": "2026-09-20",
  "generator": "tools/build-verified-guide.js",
  "sources": {
    "har": {
      "file": "mydoujin.online_Archive [26-09-19 19-32-23].har",
      "sha256": "24b536a9abde9fa2840e003a0ac349eb1bff644346a8016904dc69af5e72cab8",
      "entries": 76
    },
    "bundle": {
      "file": "index-BAc9e_I0.js",
      "sha256": "eb8aad402511fa253c10f3651863489fe4eba7c38f9c3b0d2fe8f5d881c1e67d",
      "bytes": 747494
    }
  },
  "facts": [
    {
      "id": "stats-description",
      "claim": "技巧影響命中、爆擊傷害與反擊；智力影響法術傷害與治療。這是遊戲的能力說明，未提供計算公式。",
      "evidence": [
        {
          "type": "bundle",
          "file": "index-BAc9e_I0.js",
          "sha256": "eb8aad402511fa253c10f3651863489fe4eba7c38f9c3b0d2fe8f5d881c1e67d",
          "byteOffset": 670171,
          "excerpt": "中。`,spd:`決定先攻、連擊次數，以及額外回合。`,tec:`影響命中、爆擊傷害，以及反擊機率。`,int:`影響法術傷害與治療量。`,luk:`最神奇的屬性，能在戰鬥中造成意想不到的效果。`},yO={hp:30},bO=e=>yO[e]??1,xO=e=>gO[e]||e;function SO(e,{includeZero:t=!1}={}){return e?_O.filter(n=>t||(e[n]||0)!==0).map(t=>`${xO(t)} +${e[t]||0}`).join(`　`):``}function CO(e,t,n=Date.now){let r=0,i=!1;function a(){try{let n=Number(t?.getItem(e));Number.isFinite(n)&&(r=Math.max(r,n))}catch{}return Math.max(0,Math.ceil((r-n())/1e3))}return{remaining:a,begin(){return i||a()>0?!1:(i=!0,!0)},end(){i="
        }
      ]
    },
    {
      "id": "reincarnation-allocation",
      "claim": "轉生退回舊配點、從零重配；未配點數保留。Lv.16 起每級取得 1 點，累計上限 100 點。",
      "evidence": [
        {
          "type": "bundle",
          "file": "index-BAc9e_I0.js",
          "sha256": "eb8aad402511fa253c10f3651863489fe4eba7c38f9c3b0d2fe8f5d881c1e67d",
          "byteOffset": 728391,
          "excerpt": "{as:`span`,color:`teal.300`,fontWeight:`bold`,children:w}),` 點 （已累積 `,g.total||0,` 點，本次分配 `,C,` 點）。 每次轉生都會退回全部舊配點，從零重新分配；未分配的點數會保留。 角色每升到 16 等以上的每一級可獲得 1 點，上限 100 點。`,(0,F.jsx)(U,{as:`span`,color:`gray.300`,children:`　按住 + 或 - 可以連續加減點。`})]}),(0,F.jsx)(`table`,{className:`rp-table`,children:(0,F.jsx)(`tbody`,{children:_O.map(e=>{let t=bO(e),n=g.allocated?.[e]||0;return(0,F.jsxs)(`tr`,{children:[(0,F.jsx)(`td`,{className:`label`,children:xO(e)}),(0,F.jsxs)(`td`,{className:`ctrl`,children:[(0,F.jsx"
        }
      ]
    },
    {
      "id": "hp-points",
      "claim": "轉生點每點 HP +30，其餘能力 +1。",
      "evidence": [
        {
          "type": "bundle",
          "file": "index-BAc9e_I0.js",
          "sha256": "eb8aad402511fa253c10f3651863489fe4eba7c38f9c3b0d2fe8f5d881c1e67d",
          "byteOffset": 670171,
          "excerpt": "中。`,spd:`決定先攻、連擊次數，以及額外回合。`,tec:`影響命中、爆擊傷害，以及反擊機率。`,int:`影響法術傷害與治療量。`,luk:`最神奇的屬性，能在戰鬥中造成意想不到的效果。`},yO={hp:30},bO=e=>yO[e]??1,xO=e=>gO[e]||e;function SO(e,{includeZero:t=!1}={}){return e?_O.filter(n=>t||(e[n]||0)!==0).map(t=>`${xO(t)} +${e[t]||0}`).join(`　`):``}function CO(e,t,n=Date.now){let r=0,i=!1;function a(){try{let n=Number(t?.getItem(e));Number.isFinite(n)&&(r=Math.max(r,n))}catch{}return Math.max(0,Math.ceil((r-n())/1e3))}return{remaining:a,begin(){return i||a()>0?!1:(i=!0,!0)},end(){i="
        }
      ]
    },
    {
      "id": "reincarnation-request",
      "claim": "轉生使用 POST /api/characters/reincarnate，前端傳 userCharacterId、allocation、jumpToFirstFloor、jumpToFloor。",
      "evidence": [
        {
          "type": "bundle",
          "file": "index-BAc9e_I0.js",
          "sha256": "eb8aad402511fa253c10f3651863489fe4eba7c38f9c3b0d2fe8f5d881c1e67d",
          "byteOffset": 730963,
          "excerpt": ":6,children:(0,F.jsx)(Q,{size:`lg`,px:10,w:`100%`,onClick:async()=>{if(i){s(!0);try{let e=await ZD(`/api/characters/reincarnate`,{method:`POST`,body:JSON.stringify({userCharacterId:i,allocation:v,jumpToFirstFloor:c,jumpToFloor:f})}),t=await e.json();e.ok?(t.gainCharacters?.length&&t.gainCharacters.forEach(e=>Vw.create({title:`你已解鎖 ${e.name} (${e.title})`,description:`將可於下次轉生時使用。`,type:`success`,duration:12e3,meta:{closable:!0}})),await b(),x(`/`)):alert(t.error||`轉生失敗`)}catch(e){console.error(`E"
        }
      ]
    },
    {
      "id": "training-request",
      "claim": "修行使用 POST /api/action/train {minutes}；目前 30～480 分鐘，每 30 分鐘一階。",
      "evidence": [
        {
          "type": "bundle",
          "file": "index-BAc9e_I0.js",
          "sha256": "eb8aad402511fa253c10f3651863489fe4eba7c38f9c3b0d2fe8f5d881c1e67d",
          "byteOffset": 682799,
          "excerpt": "finally{ee.end(),h(null)}}},k=e=>oe(e,`/api/action/explore`,{actionId:e}),A=e=>(C(null),oe(`train`,`/api/action/train`,{minutes:e})),se=b?.trainingSpec,ce=se?Math.min(Math.max(w,se.minMinutes),se.maxMinutes):w,j=E>0||!!v||!!m;if(c)return(0,F.jsx)(I,{minH:`100vh`,bg:`#1a202c`,display:`flex`,alignItems:`center`,justifyContent:`center`,children:(0,F.jsx)(rC,{size:`xl`,color:`teal.500`})});let le=s?.stats||{},M=s?.combatStats||{},N=s?.totalCombatStats||{};return(0,F.jsxs)(I,{minH:`100vh`,bg:`#1a202c"
        },
        {
          "type": "live-api",
          "endpoint": "/api/action/status",
          "file": "logs/data/20260920-account-audit.json",
          "sha256": "171774c25f866a2e3ff5d4dc7bb73b64fbca811401b5ea42fd1ae02f16e20287",
          "jsonPointer": "/records/0/status/trainingSpec",
          "value": {
            "minMinutes": 30,
            "maxMinutes": 480,
            "stepMinutes": 30
          },
          "accountsChecked": 9
        }
      ]
    },
    {
      "id": "death-status",
      "claim": "以現役角色 isDead 判定死亡；本次三個死亡角色仍保留 Lv.100，死亡不等於立即把等級改為 0。",
      "evidence": [
        {
          "type": "live-api",
          "endpoint": "/api/characters/active",
          "file": "logs/data/20260920-account-audit.json",
          "sha256": "171774c25f866a2e3ff5d4dc7bb73b64fbca811401b5ea42fd1ae02f16e20287",
          "observations": [
            {
              "characterId": "frieren",
              "level": 100,
              "isDead": true
            },
            {
              "characterId": "zoro",
              "level": 100,
              "isDead": true
            },
            {
              "characterId": "linie",
              "level": 100,
              "isDead": true
            }
          ]
        }
      ]
    },
    {
      "id": "recovery-frieren",
      "claim": "芙莉蓮 本次轉生後 Lv.1、存活、HP 3330；100 點配 HP，保留第 11 層。",
      "evidence": [
        {
          "type": "live-api",
          "file": "logs/data/20260920-recovery-ArcGrove.json",
          "sha256": "3c4fabcadd0dcaaaf60a13dbae5dbbcc70fa5a7190b83f87061230332dac26ab",
          "before": {
            "characterId": "frieren",
            "name": "芙莉蓮",
            "level": 100,
            "isDead": true,
            "stats": {
              "hp": 6650,
              "atk": 22,
              "def": 163,
              "sta": 364,
              "agi": 385,
              "spd": 217,
              "tec": 713,
              "int": 1045,
              "luk": 127
            },
            "reincarnationCount": 7
          },
          "after": {
            "characterId": "frieren",
            "name": "芙莉蓮",
            "level": 1,
            "isDead": false,
            "stats": {
              "hp": 3330,
              "atk": 7,
              "def": 11,
              "sta": 27,
              "agi": 10,
              "spd": 16,
              "tec": 25,
              "int": 40,
              "luk": 9
            },
            "reincarnationCount": 8
          },
          "allocation": {
            "hp": 100,
            "atk": 0,
            "def": 0,
            "sta": 0,
            "agi": 0,
            "spd": 0,
            "tec": 0,
            "int": 0,
            "luk": 0
          },
          "afterFloor": 11
        }
      ]
    },
    {
      "id": "recovery-melina",
      "claim": "梅琳娜 本次轉生後 Lv.1、存活、HP 3300；100 點配 HP，保留第 11 層。",
      "evidence": [
        {
          "type": "live-api",
          "file": "logs/data/20260920-recovery-Jun184-melina.json",
          "sha256": "ed8cc0ce3f782bd1246b87da635649d9e09a67e1dc0d0229d213c60ebbfc4ea2",
          "before": {
            "characterId": "zoro",
            "name": "羅羅亞·索隆",
            "level": 1,
            "isDead": false,
            "stats": {
              "hp": 3390,
              "atk": 22,
              "def": 15,
              "sta": 20,
              "agi": 12,
              "spd": 18,
              "tec": 20,
              "int": 6,
              "luk": 8
            },
            "reincarnationCount": 9
          },
          "after": {
            "characterId": "melina",
            "name": "梅琳娜",
            "level": 1,
            "isDead": false,
            "stats": {
              "hp": 3300,
              "atk": 14,
              "def": 9,
              "sta": 16,
              "agi": 15,
              "spd": 18,
              "tec": 20,
              "int": 24,
              "luk": 12
            },
            "reincarnationCount": 10
          },
          "allocation": {
            "hp": 100,
            "atk": 0,
            "def": 0,
            "sta": 0,
            "agi": 0,
            "spd": 0,
            "tec": 0,
            "int": 0,
            "luk": 0
          },
          "afterFloor": 11
        }
      ]
    },
    {
      "id": "recovery-linie",
      "claim": "莉妮耶 本次轉生後 Lv.1、存活、HP 3270；100 點配 HP，保留第 11 層。",
      "evidence": [
        {
          "type": "live-api",
          "file": "logs/data/20260920-recovery-LeoTek.json",
          "sha256": "23dfbc48d3e08c132c6935e8d30840428b0fcf285d465c9030b3fcac36053bbc",
          "before": {
            "characterId": "linie",
            "name": "莉妮耶",
            "level": 100,
            "isDead": true,
            "stats": {
              "hp": 3890,
              "atk": 565,
              "def": 82,
              "sta": 264,
              "agi": 206,
              "spd": 461,
              "tec": 701,
              "int": 649,
              "luk": 198
            },
            "reincarnationCount": 10
          },
          "after": {
            "characterId": "linie",
            "name": "莉妮耶",
            "level": 1,
            "isDead": false,
            "stats": {
              "hp": 3270,
              "atk": 22,
              "def": 8,
              "sta": 18,
              "agi": 15,
              "spd": 21,
              "tec": 25,
              "int": 22,
              "luk": 12
            },
            "reincarnationCount": 11
          },
          "allocation": {
            "hp": 100,
            "atk": 0,
            "def": 0,
            "sta": 0,
            "agi": 0,
            "spd": 0,
            "tec": 0,
            "int": 0,
            "luk": 0
          },
          "afterFloor": 11
        }
      ]
    }
  ],
  "characters": [
    {
      "id": "agil",
      "name": "艾基爾",
      "base": {
        "hp": 600,
        "atk": 24,
        "def": 20,
        "sta": 20,
        "agi": 8,
        "spd": 10,
        "tec": 12,
        "int": 12,
        "luk": 12
      },
      "observations": 9
    },
    {
      "id": "ashen_one",
      "name": "灰燼",
      "base": {
        "hp": 360,
        "atk": 16,
        "def": 15,
        "sta": 19,
        "agi": 16,
        "spd": 14,
        "tec": 26,
        "int": 10,
        "luk": 9
      },
      "observations": 5
    },
    {
      "id": "asuna",
      "name": "亞絲娜",
      "base": {
        "hp": 330,
        "atk": 20,
        "def": 11,
        "sta": 12,
        "agi": 18,
        "spd": 26,
        "tec": 16,
        "int": 13,
        "luk": 10
      },
      "observations": 9
    },
    {
      "id": "brick",
      "name": "磚頭",
      "base": {
        "hp": 720,
        "atk": 0,
        "def": 50,
        "sta": 0,
        "agi": 0,
        "spd": 0,
        "tec": 0,
        "int": 0,
        "luk": 0
      },
      "observations": 9
    },
    {
      "id": "dung_eater",
      "name": "食糞者",
      "base": {
        "hp": 510,
        "atk": 23,
        "def": 22,
        "sta": 22,
        "agi": 7,
        "spd": 9,
        "tec": 11,
        "int": 9,
        "luk": 8
      },
      "observations": 5
    },
    {
      "id": "frieren",
      "name": "芙莉蓮",
      "base": {
        "hp": 330,
        "atk": 7,
        "def": 11,
        "sta": 27,
        "agi": 10,
        "spd": 16,
        "tec": 25,
        "int": 40,
        "luk": 9
      },
      "observations": 8
    },
    {
      "id": "garlic",
      "name": "蒜頭",
      "base": {
        "hp": 900,
        "atk": 0,
        "def": 40,
        "sta": 0,
        "agi": 0,
        "spd": 0,
        "tec": 0,
        "int": 30,
        "luk": 0
      },
      "observations": 9
    },
    {
      "id": "goblin_hero",
      "name": "哥布林英雄",
      "base": {
        "hp": 420,
        "atk": 18,
        "def": 14,
        "sta": 16,
        "agi": 14,
        "spd": 18,
        "tec": 18,
        "int": 8,
        "luk": 10
      },
      "observations": 5
    },
    {
      "id": "gu_bird",
      "name": "咕鳥",
      "base": {
        "hp": 270,
        "atk": 12,
        "def": 8,
        "sta": 18,
        "agi": 30,
        "spd": 24,
        "tec": 17,
        "int": 6,
        "luk": 24
      },
      "observations": 9
    },
    {
      "id": "hachiware",
      "name": "小八",
      "base": {
        "hp": 330,
        "atk": 17,
        "def": 11,
        "sta": 17,
        "agi": 15,
        "spd": 18,
        "tec": 20,
        "int": 14,
        "luk": 15
      },
      "observations": 8
    },
    {
      "id": "kibaou",
      "name": "牙王",
      "base": {
        "hp": 405,
        "atk": 20,
        "def": 15,
        "sta": 16,
        "agi": 12,
        "spd": 12,
        "tec": 12,
        "int": 8,
        "luk": 10
      },
      "observations": 7
    },
    {
      "id": "kirito",
      "name": "桐人",
      "base": {
        "hp": 360,
        "atk": 18,
        "def": 12,
        "sta": 12,
        "agi": 16,
        "spd": 22,
        "tec": 14,
        "int": 12,
        "luk": 8
      },
      "observations": 9
    },
    {
      "id": "kurapika",
      "name": "酷拉皮卡",
      "base": {
        "hp": 330,
        "atk": 17,
        "def": 11,
        "sta": 16,
        "agi": 17,
        "spd": 20,
        "tec": 22,
        "int": 26,
        "luk": 9
      },
      "observations": 7
    },
    {
      "id": "linie",
      "name": "莉妮耶",
      "base": {
        "hp": 270,
        "atk": 22,
        "def": 8,
        "sta": 18,
        "agi": 15,
        "spd": 21,
        "tec": 25,
        "int": 22,
        "luk": 12
      },
      "observations": 8
    },
    {
      "id": "lisbeth",
      "name": "莉茲貝特",
      "base": {
        "hp": 390,
        "atk": 16,
        "def": 18,
        "sta": 18,
        "agi": 12,
        "spd": 12,
        "tec": 18,
        "int": 12,
        "luk": 12
      },
      "observations": 3
    },
    {
      "id": "lone_bird_greatsword_lbg",
      "name": "孤鳥",
      "base": {
        "hp": 360,
        "atk": 21,
        "def": 13,
        "sta": 20,
        "agi": 14,
        "spd": 16,
        "tec": 24,
        "int": 20,
        "luk": 10
      },
      "observations": 9
    },
    {
      "id": "melina",
      "name": "梅琳娜",
      "base": {
        "hp": 300,
        "atk": 14,
        "def": 9,
        "sta": 16,
        "agi": 15,
        "spd": 18,
        "tec": 20,
        "int": 24,
        "luk": 12
      },
      "observations": 6
    },
    {
      "id": "roxy",
      "name": "洛琪希·米格路迪亞",
      "base": {
        "hp": 270,
        "atk": 8,
        "def": 8,
        "sta": 20,
        "agi": 12,
        "spd": 16,
        "tec": 22,
        "int": 32,
        "luk": 11
      },
      "observations": 8
    },
    {
      "id": "ruijerd",
      "name": "瑞傑路德·斯佩路迪亞",
      "base": {
        "hp": 420,
        "atk": 21,
        "def": 15,
        "sta": 17,
        "agi": 15,
        "spd": 18,
        "tec": 23,
        "int": 7,
        "luk": 8
      },
      "observations": 5
    },
    {
      "id": "shanks",
      "name": "香克斯",
      "base": {
        "hp": 390,
        "atk": 20,
        "def": 12,
        "sta": 16,
        "agi": 13,
        "spd": 16,
        "tec": 24,
        "int": 8,
        "luk": 15
      },
      "observations": 9
    },
    {
      "id": "sinon",
      "name": "詩乃",
      "base": {
        "hp": 300,
        "atk": 24,
        "def": 9,
        "sta": 12,
        "agi": 15,
        "spd": 16,
        "tec": 24,
        "int": 16,
        "luk": 10
      },
      "observations": 9
    },
    {
      "id": "solaire",
      "name": "索拉爾",
      "base": {
        "hp": 420,
        "atk": 20,
        "def": 22,
        "sta": 21,
        "agi": 11,
        "spd": 13,
        "tec": 18,
        "int": 11,
        "luk": 8
      },
      "observations": 1
    },
    {
      "id": "stone",
      "name": "石頭",
      "base": {
        "hp": 900,
        "atk": 0,
        "def": 60,
        "sta": 0,
        "agi": 0,
        "spd": 0,
        "tec": 0,
        "int": 0,
        "luk": 40
      },
      "observations": 9
    },
    {
      "id": "taro",
      "name": "芋頭",
      "base": {
        "hp": 780,
        "atk": 0,
        "def": 0,
        "sta": 0,
        "agi": 0,
        "spd": 0,
        "tec": 0,
        "int": 35,
        "luk": 0
      },
      "observations": 8
    },
    {
      "id": "tian_fang_ye",
      "name": "天方夜",
      "base": {
        "hp": 400,
        "atk": 9,
        "def": 3,
        "sta": 12,
        "agi": 8,
        "spd": 23,
        "tec": 25,
        "int": 99,
        "luk": 1
      },
      "observations": 2
    },
    {
      "id": "valorant_viper",
      "name": "薇蝮",
      "base": {
        "hp": 330,
        "atk": 19,
        "def": 10,
        "sta": 18,
        "agi": 13,
        "spd": 15,
        "tec": 22,
        "int": 24,
        "luk": 9
      },
      "observations": 4
    },
    {
      "id": "zoro",
      "name": "羅羅亞·索隆",
      "base": {
        "hp": 390,
        "atk": 22,
        "def": 15,
        "sta": 20,
        "agi": 12,
        "spd": 18,
        "tec": 20,
        "int": 6,
        "luk": 8
      },
      "observations": 9
    }
  ],
  "unverified": [
    {
      "claim": "幸運 128 保證免疫災難",
      "reason": "有限樣本的零次觀測不能證明免疫，也不能確定 128 的門檻；bundle 僅有能力說明。"
    },
    {
      "claim": "攻擊 × HP 超過歷史死亡者即可當作零風險",
      "reason": "沒有這個區間的樣本分母與可信區間，也不是伺服器規則。"
    },
    {
      "claim": "所有權重 0 的能力永遠不成長",
      "reason": "倉庫自己的天方夜 charity 成長紀錄與這個通則矛盾。"
    },
    {
      "claim": "技能無視防禦、246 防禦常數、固定暴擊率／倍率",
      "reason": "目前 HAR／bundle 未給出後端公式；不能將舊擬合寫成確定規則。"
    },
    {
      "claim": "事件旗標為必要且充分條件",
      "reason": "歷史路線由共同出現的選項推導，未取得伺服器旗標邏輯。"
    }
  ]
}
