Like Share Discussion Bookmark Smile

J.J. Huang   2022-05-28   天堂私服 9.變身檔分析/修改   瀏覽次數:

天堂私服 | 變身檔-僵直分析與修改

章節用意

此章將會針對變身檔中的2.damage空手被打動作,進行分析與修改,進而瞭解其特性與限制。

版本資訊

  • 客戶端版本
    • 天堂(Lineage 3.81C)
  • 核心版本
    • L1J-3.80c
  • 登入器版本
    • L1J-3.80c

前言

在開始前,請務必先將以下文章閱讀與實際操作過。

分析

  • 圖片張數數量分析<根據TW13081901.txt>
    • 有向性:
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      // 動作編碼   = 共有幾個編號使用 → 說明

      2.damage(1 0) = 0 → 無,理論上不可能沒有圖片。
      2.damage(1 1) = 3 → 使用了3張圖,例:寶箱、包裝工NPC。
      2.damage(1 2) = 100 → 使用了2張圖,例:骷髏、長老、舊版狼人、人形殭屍..等等。
      2.damage(1 3) = 1509 → 使用了3張圖,例:王子、公主、女妖精、漂浮之眼..等等。
      2.damage(1 4) = 1359 → 使用了4張圖,例:很多奇怪的NPC..等等。
      2.damage(1 5) = 8 → 使用了5張圖,例:海馬、鯊魚、海星..等等。
      2.damage(1 6) = 15 → 使用了6張圖,例:遊戲管理員..等等。
      ...剩餘自行搜尋...
    • 無向性:
      1
      2
      3
      4
      5
      6
      7
      8
      9
      // 動作編碼   = 共有幾個編號使用 → 說明

      2.damage(0 0) = 0 → 無,理論上不可能沒有圖片。
      2.damage(0 1) = 2 → 叉叉符號、守護者之塔。
      2.damage(0 2) = 2 → 倉庫侏儒(後面有寶箱)。
      2.damage(0 3) = 7 → 史萊姆、海葵。
      2.damage(0 4) = 9 → 海葵、怪物蛋。
      2.damage(0 5) = 2 → 回收壇。
      2.damage(0 15) = 2 → 軍艦炮。

      註:以上僅自己透過分析變身檔整理出來的資訊,並不表示就是最正確與完整。
      註:攻擊的部分不僅僅只有空手被打動作,還有拿不同武器的被打動作,這邊就不特別列出。


  • 以下盡量提供各個2.damage的範例:
    • 王子#0
      • 圖片張數 = 3
      • 時間總合 = 4 + 6 + 4 = 14
    • 人形殭屍#52
      • 圖片張數 = 2
      • 時間總合 = 3 + 2 = 5
    • 狼人#1110
      • 圖片張數 = 3
      • 時間總合 = 4 + 6 + 3 = 13
    • 活鎧甲#1578
      • 圖片張數 = 3
      • 時間總合 = 4 + 4 + 4 = 12

實驗修改

  • 以下使用王子#0,實驗修改。

    1
    2.damage(1 3,8.0:4 24.0:6[1537[1538 24.1:4)
  • 移除`2.damage:

    • 移除後,被打動作會為空手走路的第0.0張圖。(叉開雙腿)
      • 但是容易遊戲崩潰,不建議移除。
  • 改變圖片張數:

    • 分別為012、時間總合都維持原來的14
      • 0 = 遊戲崩潰。
      • 1 = 人物有被打動作以及被打聲音。(8.0,這張圖為站著不動的呼吸圖,所以看起來像是沒有被打動作)
      • 2 = 人物有被打動作以及被打聲音。
        1
        2
        3
        2.damage(1 0)
        2.damage(1 1,8.0:14[1537[1538)
        2.damage(1 2,8.0:7 24.0:7[1537[1538)
  • 改變時間總合:

    • 分別為1073,圖片張數維持原來的3
      • 數字越小,可以觀察到僵直的時間越來越短。
        1
        2
        3
        2.damage(1 3,8.0:3 24.0:4[1537[1538 24.1:3)
        2.damage(1 3,8.0:2 24.0:3[1537[1538 24.1:2)
        2.damage(1 3,8.0:1 24.0:1[1537[1538 24.1:1)

    • 時間總合修改為0,圖片張數1
      • 可以說是僵直狀態,目前伺服器沒有偵測僵直的設定。
        1
        2.damage(1 1,8.0:0[1537[1538)

        註:每個伺服器偵測的基準與演算法請自行研究分析。

被打無動作

  • 以下使用王子#0被打無動作修改。
    • 為何需要施法無動作修改?因為可以達到,幾乎無動作的效果,在走位時比較不會受到僵直影響。
  • 修改編碼內容:
    • 第一種方式,移除2.damage
    • 第二種方式,2.damage的圖片張數改為1,時間總和保持不變。

      註:建議使用第二種方式。

被打無動作 + 殘影修改

總結

  • 針對2.damage被打動作 -

    • 最少需要1幾張圖。
    • 圖片張數建議兩張,由第二張觸發人物被打動作與聲音。
    • 被打動作包含的觸發包含近戰攻擊遠距攻擊魔法攻擊

    注意:被打動作的部分不僅僅只有空手,還有拿不同武器的被打動作。

結語

原創文章真的不易,希望多多支持,感謝。
最後建議回顧一下首章天堂私服 | 天堂私服架設教學,了解其章結目錄。

免責聲明

  • 本部落格文章中皆不提供任何所謂的遊戲「主程式」、「模擬器」、「登入器」…等等相關程式的下載點。
  • 本部落格文章中所見之遊戲主程式和服務器端程序均來自網路發佈,版本歸原作者所有
  • 本部落格文章為研究SQL資料庫與修改JAVA語法使用,非商業用途,亦無做營運事實等任何一切商業行為
  • 本部落格文章內容是為研究學習設計思想和原理為目的,絕沒有故意侵權或惡意抄襲、篡改其他遊戲內容

註:以上參考了
Linhelper論壇 - [教學] [彙整]List.spr變身檔網路教學彙整