中文字幕亚洲欧美日韩在线不卡,亚洲欧美日产综合在线网性色,思思久久精品6一本打道,综合视频中文字幕

    <sub id="dxmnt"><ol id="dxmnt"></ol></sub>

      1. 《仙劍奇?zhèn)b傳4》修改原理之天卷

        更新時間:2022-03-30 09:04:27作者:未知

        《仙劍奇?zhèn)b傳4》修改原理之天卷

        會員:sunbeyond<原創(chuàng)>

        仙劍4數(shù)據(jù)存儲原理和地址規(guī)律
        不想看原理的可以直接看最下面。首先,系統(tǒng)下程序可用的內(nèi)存地址是00400000-7FFFFFFF
        但這回仙4的大部分人物屬性相關(guān)地址都保存在7F966880之后……而且到現(xiàn)在為止都是雙字節(jié),裝備是4字節(jié),所以最大值是65535,但在一些情況下最好別取這個值,后面再說。
        仙4的人物屬性數(shù)據(jù)分4塊
        戰(zhàn)斗臨時數(shù)據(jù):仙4中戰(zhàn)斗時所調(diào)用的地址,但是這個地址是會變的,地址范圍也是很靠后,但應(yīng)該在7F966880之前,這個等地卷解決。
        人物基礎(chǔ)數(shù)據(jù)
        人物現(xiàn)有MAX數(shù)據(jù)(就是在人物屬性界面所看到的,但精氣神保存的是最大值)
        人物現(xiàn)有數(shù)據(jù)(同上,但精氣神保存的是現(xiàn)有值)
        接下來重點說每個部分,這里按云天河的內(nèi)存地址為例(這里數(shù)據(jù)采用了2次收錄,數(shù)據(jù)有差異,但位置沒變)以下地址我試了2次,50%認(rèn)為地址是不變的。人物基礎(chǔ)數(shù)據(jù),人物最基礎(chǔ)的幾個屬性,這里的屬性是人物的原始值,就是沒加裝備前的。依我判斷,這里的值加上裝備的加成就生成了[人物現(xiàn)有MAX數(shù)據(jù)]中的攻擊。修改這里最有效,但升級后是加成還是新算還待確認(rèn),但也可以直接鎖定掉。前面還有一些數(shù)據(jù),沒仔細(xì)研究。
        7F96688000000000AA060000050000006D000000
        ----------------------精----------?-----------氣
        7F966890F7000000AF000000CB000000DC000000
        ----------功----------防----------速-----------運
        由于這里的功是人物基礎(chǔ)值,基礎(chǔ)值+裝備加成才會=真正的輸出攻擊力,所以推薦這里基礎(chǔ)值不要設(shè)到65535,容易溢出。如果想最大攻擊輸出,那就FFFF減該人物拿著的武器攻擊力的16位值,得出來的就可以添在這。
        7F9668A099000000CDCC4C3EAE47E13D00000000
        ----------靈----------4字節(jié)為一組的數(shù)據(jù),暫時還不知道是什么
        7F9668B000000000000000000000000000000000
        7F9668C000000000000000000000000000000000
        7F9668D000000000000000000000000000000000
        7F9668E000000000000000000000000000000000
        7F9668F000000000000000000000000000000000
        7F96690000000000000000000000001300000000
        -------------------------------------------待確認(rèn)
        7F96691000000000000000000000000000000000
        7F96692000000000000000000000000000000000
        7F96693000000000000000000000000000000000
        7F96694000000000000000000000000000000000

        人物現(xiàn)有MAX數(shù)據(jù),這里的值都是按照人物基礎(chǔ)值+裝備加成后的值,所以大部分都是動態(tài)生成的,比如功,防,在這里修改是沒用的,因為這里只是顯示在游戲中人物狀態(tài)里的結(jié)果,當(dāng)進(jìn)入新的戰(zhàn)斗后,戰(zhàn)斗中的攻擊會重新計算,而不是直接調(diào)用這里值。
        7F96695000000000000000000000000014000000
        ----------------------------------------------等級
        7F966960998E0000000000000000000000000000
        ----------總經(jīng)驗值
        7F966970000000000000803F0000803F0000803F
        7F9669800000803F000000000000803F0000803F
        7F9669900000803F0000803F0000803F0000803F
        7F9669A00000803F000000000000000000000000
        這一大段可能是分割符的作用
        7F9669B000000000000000000000000000000000
        7F9669C000000000000000000001000000000000
        ----------------------------------未知
        7F9669D000000000090600000500000061000000
        ----------------------精MAX------?----------氣MAX
        7F9669E021010000AF000000B3000000BF000000
        ----------攻值--------防值---------速值--------運值
        7F9669F0840000009A99993ECDCCCC3D00000000
        ----------靈值--------這4個字節(jié)是武器,后4個字節(jié)就不知道了,而且這個武器我覺得,可能只是調(diào)用位置,而不是武器代碼。
        比如CDCC4C3E鑄云鐵,9A99993E峰嶺刃,但下面有個土屬性戒指也是9A99993E。
        7F966A0000000000000000000000000000000000
        7F966A1000000000000000000000000000000000
        7F966A2000000000000000000000000000000000
        7F966A3000000000000000000000000000000000
        ----------------------------------水裝備加成---火裝備加成
        這里是指環(huán)的裝備地址,4字節(jié),9A99993E是2個相同裝備,9A99193E是1個,但到底還有什么規(guī)律呢?
        7F966A4000000000000000009A99993E00000000
        ----------雷裝備加成---風(fēng)裝備加成---土裝備加成--水屬性值
        各屬性值就是5靈的值,雙字節(jié),之間間隔2個字節(jié),但直接改這里仍然對戰(zhàn)斗中無影響
        7F966A500000000000000000000000001F000000
        ----------火屬性值-----雷屬性值----風(fēng)屬性值-----土屬性值
        7F966A6000000000000000000000000000000000
        7F966A7000000000000000000000000000000000
        7F966A8000000000000000000000000000000000
        7F966A9000000000000000000000000000000000

        人物現(xiàn)有數(shù)據(jù),是人物現(xiàn)有的狀態(tài),比如還剩多少血就在這里。也就是鎖定這里的最大精就可以戰(zhàn)斗結(jié)束后自動滿精了。
        7F966AA000000000000000000000000014000000
        ----------------------------------------------現(xiàn)在等級
        7F966AB0998E0000000000000906000064000000
        ----------現(xiàn)有總經(jīng)驗---------------現(xiàn)有精------現(xiàn)有氣
        7F966AC0520000000000803F0000803F0000803F
        ----------現(xiàn)有神

        戰(zhàn)斗臨時數(shù)據(jù),是隨機產(chǎn)生的,但應(yīng)該有個范圍,我抓了2次,分別在6FB2CB94,78BD2FdC附近。數(shù)據(jù)的結(jié)構(gòu)和人物現(xiàn)有MAX數(shù)據(jù)里的一樣,可以參考。
        如果你在戰(zhàn)斗臨時數(shù)據(jù)中修改了人物的攻擊力,之后受到加攻擊或減攻擊等法書的影響,那這個值將會從人物基礎(chǔ)數(shù)據(jù)處+裝備加成+法術(shù)中得出,再賦值給戰(zhàn)斗臨時數(shù)據(jù)。而且戰(zhàn)斗臨時數(shù)據(jù)在結(jié)束戰(zhàn)斗后就消失,下場開始時再動態(tài)生成一個新的地址范圍,所以鎖定無用。

        所以,仙4的人物數(shù)值可以這么來理解:
        人物基礎(chǔ)數(shù)據(jù)+裝備加成=人物現(xiàn)有MAX數(shù)據(jù)里顯示的
        人物現(xiàn)有數(shù)據(jù)<->戰(zhàn)斗臨時數(shù)據(jù)是互導(dǎo)的關(guān)系,也就是戰(zhàn)斗結(jié)束后HP為1004,會保存在人物現(xiàn)有數(shù)據(jù)中的7F966AB8,然后再次進(jìn)入戰(zhàn)斗模式時,會把這個值賦回給戰(zhàn)斗臨時數(shù)據(jù)中的HP地址。那么戰(zhàn)斗中的數(shù)值是賦值給動態(tài)地址的,所以還沒辦法戰(zhàn)斗中進(jìn)行鎖定。
        對于其他人物,他們之間的間隔為B14,也可以說一個人物的所有數(shù)據(jù)占用了B14,就是2836字節(jié)。
        按照這個可以想到,如果你想建立一個已經(jīng)離隊的人物,你起碼得自己建起2836字節(jié)的數(shù)據(jù)。
        那么,其他人的地址分別如下,如果想要韓菱紗的攻擊,只要云天河的攻擊地址7F966890+B14=7F9673A4,就是韓菱紗的基礎(chǔ)攻擊地址。
        韓菱紗7F967394
        柳夢璃7F967EA8
        慕容紫英7F9689BC
        現(xiàn)在還沒確認(rèn)的就是這個排列是否固定,我現(xiàn)在玩得人物少一個慕容紫英。

        以下都為雙字節(jié),數(shù)值最大65535,但避免溢出,不推薦設(shè)成那么大的值。不用鎖定,但暫時還不知道升級后是不是又重新算了。
        7F966890云天河的攻
        7F966894云天河的防
        7F966898云天河的速
        7F96689C云天河的運
        7F9668A0云天河的靈
        7F9673A4韓菱紗的攻
        7F9673A8韓菱紗的防
        7F9673BC韓菱紗的速
        7F9673B0韓菱紗的運
        7F9673B4韓菱紗的靈
        7F967EB8柳夢璃的攻
        7F967EBC柳夢璃的防
        7F967EC0柳夢璃的速
        7F967EC4柳夢璃的運
        7F967EC8柳夢璃的靈
        7F9689CC慕容紫英的攻
        7F9689D0慕容紫英的防
        7F9689D4慕容紫英的速
        7F9689D8慕容紫英的運
        7F9689DC慕容紫英的靈

        還不肯定這個4個人物范圍是固定排列還是剩誰就排在前面。

        如果要真正能夠鎖定精,氣,神,則需要找到戰(zhàn)斗臨時數(shù)據(jù)地址生成的規(guī)律,鎖定了就可以。對了,如果HP鎖定后被一擊必殺打中(比如淮南王的奪魂)……不死亡(可以想到必殺的方程式不是,怪物攻擊輸出的值(顯示用)=人物的剩余血量,狀態(tài)=死亡(直接死亡);可能是怪物攻擊輸出的值=人物的剩余血量,人物的剩余血量=人物的剩余血量-怪物攻擊輸出的值,再if人物的剩余血量=0then狀態(tài)=死亡)

        地卷待解決的問題
        1。對于64位系統(tǒng)而言,是否地址會隨著變更?
        2。在32位對于XP和VISTA的內(nèi)存地址是否會變更?(可能性小)
        3。戰(zhàn)斗時的內(nèi)存地址范圍是多少,只見是否有個規(guī)律?
        4。在7F966880修改的數(shù)值,人物升級后是在7F966880得值上修改加成還是被替換掉?
        5。游戲的地址是不是固定的?