战女神吧 关注:56,668贴子:914,086

照着吃瓜大佬之前给的方法,这次自己试了下找解密

只看楼主收藏回复

喂个度


IP属地:四川1楼2024-03-29 12:13回复
    首先还是在游戏内变动数据,我选择的是装备/解除某个衣服的方法:拆掉→值减小,装备上→值增大.然后找到好几个符合条面的.至于具体是哪一个还是挨个试出来的


    看看是什么访问了这个地址,会出现一个窗口(里面空白的),回到游戏再次装备一次,就出现两个地址.前一个不是我需要的(因为在游戏内鼠标移动到装备上,这个值也在变化,并不是改变装备状态才导致值的变动,所以不是正确地址)

    那么就确定第二个是了,双击查看详细信息,再双击中间红色那条,就跳转到内存查看器,滚动条往上,找到图中那一条eax,[esi+000716AC],设置一个断点


    IP属地:四川2楼2024-03-29 12:16
    收起回复
      再回到游戏改变装备状态,会发现内存查看器右边多了一块,里面有EAX EBX ESI之类的以及其对应的值.设断点的是ESI,所以记下ESI对应的数3A96020,并用CE搜索该值
      搜索结果中就有个AGE.EXE+3358D4

      至此加密解密就找到了 [age.exe+3358D4]+716AC
      然后找一个其他游戏(比如天结2)的CT模板,用记事本打开,把解密部分数值对应修改.红黑框部分
      (其中黑框那里是716B0,比716AC多4.固定操作,其他E社游戏CT里面也是会增加4,照着改就行了)

      然后把改完的存个新CT,用CE加载,就能直接搜索游戏内的值了比如金钱.记得把数值类型改成ACG


      IP属地:四川3楼2024-03-29 12:19
      回复
        可以直接搜索数据但是还不能做成Ct保存,因为存下来的是绝对地址,而不是[AGE.EXE+XXXX]+XXXX
        这样的相对地址那么相对地址该怎么找呢?
        同样先对唯一的金钱地址选择是谁访问了该地址,进游戏战斗一次使金钱变化,得到两个地址,第一个不停变化所以排除,

        双击第二个,再双击红色,出现的窗口中找到eax,[AGE.EXE+334818],其下面那行+7011C我也不知道为什么,反正就是它了... 那么金钱的相对地址就是[[AGE.EXE+3358D4]+7011C]+XXXX

        后面XXXX是多少,可以通过指针计算先随便找个地址,比如搜索1,添加任意一个到下面,再双击地址,弹出更改地址窗口.点一下红圈那个指针,打钩
        再点"添加偏移",使窗口变成如图所示,在对应地方输入图中的值

        黑圈那里不知道填多少(就是前面说的金钱相对地址的XXXX不知道是多少),则通过计算可以得出.
        因为当前该值是0,地址是红圈内的4C0094BC,那么金钱绝对地址在前面看得到 4C448790,二者相差多少?
        43F2D4

        就是说当XXXX为43F2D4时,相对地址写为[[AGE.EXE+3358D4]+7011C]+43F2D4 ,就对应了绝对地址4C448790
        [[AGE.EXE+3358D4]+7011C]+0 → 4C0094BC
        [[AGE.EXE+3358D4]+7011C]+43F2D4 → 4C448790
        这时候把43F2D4填入黑圈代替0,并确定,使其记录为金钱相对地址
        再保存该CT,金钱地址就保存下来了,下次运行游戏直接加载CT,解密之后,就直接可以看到金钱,而不需要再次搜索
        CT制作其实就是这样,找到解密数据([age.exe+3358D4]+716AC)再找到具体某个数的偏移量数据([[AGE.EXE+3358D4]+7011C]+43F2D4)角色各项属性、物品个数等都是像金钱这样添加的,前面[[AGE.EXE+3358D4]+7011C]是一样的,后面+XXXX各不相同,需要按前面方法在游戏内搜索找到唯一地址,再从指针比较地址差值算出XXXX是多少


        IP属地:四川5楼2024-03-29 21:08
        回复
          继续说为啥前一个是[age.exe+3358D4]+716AC,后一个又成了[AGE.EXE+3358D4]+7011C
          前者是解密相关的,后者是游戏内数据所对应地址相关的.
          说明白点就是,前者目的是把内存地址的数变得和游戏内显示的数一致.
          比如某个地址的值在CE内显示1795489319,如何让它显示成游戏内看到的1701,这就是前者解密语句做到的
          而后者是在哪里去找诸如等级、经验、血量所对应的值.
          可以通过游戏内数据增减逐步缩小地址个数最终来确定金钱地址是哪个,但是即便找到,如果没有解密语句,找到的地址所对应的值也是一个N位的数1795489319,而不是游戏内看到的1701
          在已经解密的情况下,才能直接输入游戏内看到的数进行搜索(搜索时要把数据类型由4字节改成AGE:4字节是解密前的数据,以AGE搜索才是游戏内的值),从而找到准确地址.但是这个地址只在当前生效,关掉游戏重开的话,该地址就失效了,因为找到的是绝对地址而不是相对地址.
          =====================================================================
          那么什么是绝对地址什么是相对地址?
          可以把整个内存想象成一片大海,AGE是大海上的一艘船,
          运行程序AGE.EXE时候,AGE在内存中占用了一部分区域,这部分区域不是固定的,每次运行AGE,占用区域都不同.
          即这艘船出现在大海上的时候,每次出现的位置都不固定.
          而金钱地址就像船头的旗杆,是跟着船移动的,旗杆和船的相对位置是固定的,但每次因为船的位置不同,旗杆的位置也不同(相对于大海而言)
          以这个大海为坐标系,找到的地址(比如前面图中的金钱地址4C448790)就是绝对地址,
          如果这次记录下的是绝对地址,自然能够按地址找到旗杆(金钱地址)所在,下次重开游戏,船开到另一个位置去了,旗杆也随着到了另一位置,再到4C448790自然就找不到旗杆了——我愿称之为"逆·刻舟求剑"
          所以需要记录的就是要和AGE相关的相对位置才行,即[[AGE.EXE+3358D4]+7011C]+43F2D4,无论AGE.EXE加载到内存什么地方,根据这个算式,以船(AGE.EXE)为参照物,最终就能得出旗杆所在(金钱地址)


          IP属地:四川6楼2024-03-30 23:15
          回复
            再来说[[AGE.EXE+3358D4]+7011C]+43F2D4 这种地址表示方式是什么意思
            首先要知道它是一个地址,金钱地址,它对应的值就是游戏内显示的金钱数
            而内存地址和值,内存地址就是X行X列,值就是X行X列这个位置对应的那个数.举个简单例子,一个班级中,第3行2列坐着的是阿强,那3行2列就是地址,阿强就是其对应的值
            ========================================================
            再回到前面那一长串逐个说明
            AGE.EXE,这里就是启动程序时AGE在内存里占用的内存区域起点,可以理解为坐标系的(0,0),参照物基准.后面加上3358D4,就是以起点为准,往后偏移3358D4.
            偏移又是什么个意思?把内存看成有无数行、无数列的矩阵(有多少列通常是看把窗口横向拉到多宽,这里为了方便就确定为16列),

            如图,红框里的就是列,从00到0F(F是十六进制下的15,也就是从0到15一共16列).蓝框就是行数,同样是从0开始是第一行,10就是第二行,20是第三行,以此类推可以无限往下计数直到内存尽头
            黑框位置那个数(因为该地址读取不到数所以显示为??),可以数一下就是第12行第8列,其地址就是B7.可以看出来就是横纵坐标加起来.
            橙色框的数是第17行第5列,其地址就是104,同样是横纵坐标加起来.二者相差多少?104-B7=4D,B7+4D=107.
            即是说以黑框第12行第8列为基础,往后数4行13列(D是十六进制的13,也就是往后数13列,超过16就换行到下一行),就可以得到橙框地址第17行第5列.
            以黑框B7为起点,※往后偏移※4D,就可以得到橙框地址107
            再回到前面AGE.EXE+3358D4,它的意思就是以AGE所在的某行某列为起点,向后移动3358D行4列而得到的一个新的地址
            那么[AGE.EXE+3358D4]又是什么意思?加了方括号,就是说以AGE.EXE+3358D4这个地址的值为新的地址.
            再举个简单例子,一个班级中,第8行4列坐着的是一个姓"4行"名"2列"的学生.在8行4列这个地址找到这个4行2列,再以4行2列为新的地址继续进行计算
            你自然会说,哪有人会姓"4行"名"2列"的.确实现实中没有,但内存里无论是地址还是其对应的值,都是一个个数字,数字既可以做为地址,自然也可以作为值,那么以一个值的数作为一个新的地址也没什么毛病
            [AGE.EXE+3358D4]就是这么回事,以AGE.EXE为基础,往后偏移3358D行4列所得到的地址的值,作为一个新的地址.
            [AGE.EXE+3358D4]+7011C 就照前面解释的,这个新的地址,再往后偏移7011行C列,得到第二个新的地址
            [[AGE.EXE+3358D4]+7011C]+43F2D4 依然照前面解释,第二个新的地址所对应的值作为第三个新地址,再在这个新地址基础上往后偏移43F2D行4列,得到的最终地址,就是金钱地址,在CE中改动这个地址,就能改变游戏内的金钱数
            至于其他等级、经验、血量之类的地址,都是以[[AGE.EXE+3358D4]+7011C]为基础,所不同的只有最后+XXXX不一样.
            像这样记录下来的数据地址,所有地址都是以AGE.EXE为基础找到的,就是说和AGE.EXE相对位置是固定的,不会因为重开游戏而发生改变.
            一艘船上,船舵、旗杆、烟囱跟船的位置也是相对固定的,不会船开到别的地方,旗杆还留在原地(以大海为参照物的原地).所以找到绝对地址只能一时有用,保存到CT的话还得找相对地址


            IP属地:四川7楼2024-03-31 00:09
            回复
              还记得前面添加指针吗?添加一次指针,其实就是把一个地址的值作为一个新地址的过程

              如图,可以看到AGE.EXE+3358D4这个地址对应的值就是右侧的03A96020,再以3A96020为地址,往后偏移7011C(右侧也看得到正在计算),得到第3个地址4C0094BC.
              最后以这个地址往后偏移43F2D4,就是金钱地址,也就是左上方高亮的4C448790以及其对应的值金钱数28765436
              在CE保存下来的地址中双击地址一项(P→4C448790),就会打开上图的指针信息.用记事本打开CT文件也会看到对应语句,

              Offsets那里顺序有点反而已,7011C在下,43F2D4在上.属于CT自行记录时的固定格式,不用在意
              还有种记录方法就是直接在地址填[[AGE.EXE+3358D4]+7011C]+43F2D4

              不需要额外点指针.因为方括号已经自行计算了值到地址的转换
              保存之后,CT里面对应语句也会发生改变,

              以上两种记录方式的作用完全一样,任选一种都可以.类型记得一定要是"AGE",因为类型选为AGE才是经过脚本解密的,在CE内显示的数才和游戏内一致


              IP属地:四川8楼2024-03-31 00:16
              回复
                关于解密和地址的区别,其实就可以理解成密码本和加密信的关系.
                有了地址,但是没有解密,就像有了密信却没有密码本,只看信表面文字,内容那是一头雾水完全找不到真实含义
                当然对游戏数据而言不会这么无措,地址有了,改动其值总有可能达成目的.
                比如游戏内金钱123,CE加密显示178415423,如果在CE里把178415423改成178415426,说不定游戏内金钱就从123变成98765432了.即便不知道是怎么对应的,但总归是达到了"修改很多钱出来"的目的.
                这就像不知道信该如何解密,胡乱蒙一个"敌方今晚会来偷袭我方",结果刚好蒙对了的感觉
                如果有了解密,但是没有地址,就如同有了密码本,但是连对方一封加密信都没有截获到,自然也同样获取不到有效情报.
                当然对游戏数据而言同样不会这么无措,有了解密,就可以通过搜索功能搜索游戏内数值变动来找到绝对地址,等同于在全世界和敌人相关的信件中使用上帝模式获取到正确的信件


                IP属地:四川9楼2024-04-05 23:19
                回复
                  再说MOD
                  之前把内存和游戏比作大海和船,这次改改,比作墙和放在幻灯机上的图片.幻灯机想必大家不会陌生,在上面放一张图,通过光影原理投射在空白墙上,就能在墙上看到经过投影了的图片
                  运行AGE.EXE,游戏就将储存在本地文件诸如DATA1.ALF、APPEND02.ALF之类里的相关数据加载到内存里,如同幻灯机将放置在其上的图片投影到空白墙上.
                  使用CE修改数据,如同在墙上对投影过的图进行作画更改.这种更改是不会影响到DATA1.ALF、APPEND02.ALF等本体文件的,等同于在墙上修改投影图不会改变原图本身
                  修改后如果不进行保存就关掉游戏,如同直接关闭电源使投影结束并将墙上的涂改恢复为之前的一片空白
                  下次再运行游戏,就像重新打开幻灯机将图片投影到另一面空白墙上.
                  而存档,就是在关掉幻灯机之前把墙上的画(包括涂改后的部分)都找张纸描绘下来.下次读档,就是开启幻灯机之后,在投影完成的墙上照着那张纸上描绘的内容先涂画一遍,再进行后续操作
                  那么MOD,就是额外做一个小小的图片,不是放在墙上,而是放在幻灯机上,盖住原图的对应部分,使得投影到墙上的对应部分也发生改变,变成额外图片所展示的内容
                  到游戏内就是,MOD文件取代了DATA.ALF内的一个对应文件,让游戏程序忽略DATA.ALF内的那个文件而是以MOD文件内容为准,进而将其加载到内存里.
                  这样即便是没有在内存里用CE修改,因为MOD文件本身就已经是修改过的(比如增加了掉落系数),那读取到游戏内的自然也就是修改后的掉落系数了
                  为什么做MOD,因为这部分东西通常都是不会在游戏内发生变化的,不像金钱、等级、经验值什么的,可以通过数据变动搜索得到准确地址.
                  MOD修改的部分比如武器的攻击力、附加特效、硬直,掉落系数,通常都不容易搜索.
                  前者看得到具体值,但是一把武器的相关数据是固定的并不会改变,就没法搜索.后者可以通过什么水风馆进行提升,但是又不太容易在游戏内看到具体数值导致没法搜索
                  所以直接从文件本身数据构成入手,修改文件本体内的数据将其保存成一个单独文件并让其优先被游戏识别、加载进内存,可以说是一劳永逸的操作.MOD文件就此诞生


                  IP属地:四川10楼2024-04-05 23:20
                  回复
                    虽然看不懂,但我大受震撼


                    IP属地:广东来自Android客户端11楼2024-04-06 09:26
                    回复
                      可以通过ssg功能直接逆推偏移的


                      IP属地:福建来自Android客户端12楼2024-04-06 15:28
                      收起回复
                        我用CE7.5一用是什么访问了这个地址就会强行关闭游戏。请问是什么原因。


                        IP属地:美国13楼2024-04-07 16:41
                        收起回复
                          关于找到解密、地址后,怎么做CT
                          首先随便找个别人做好的CT,比如吃瓜大佬的天结2,打开之后像这样

                          不需要开游戏挂钩进程
                          然后删掉如图中选中部分,删掉后将CT另存一份,为方便使用,文件名可以写"CT模板"之类
                          删掉之后只剩3行

                          然后找到刚保存的那个文件,用记事本打开

                          第16行红线那里就是解密,把找到的 [age.exe+3358D4]+716AC替换掉[007432F0]+60684
                          这一句是对应上图红色那句"解密天結2(使用前需激活此项)"
                          注意前后有单引号别删没了
                          18行那一句直接删掉.估计是和25行那一句来确定地址范围的,属于天结2专用语句,不适用于其他游戏,留着的话会影响解密
                          42行蓝线那里同样修改,不过是用 [age.exe+3358D4]+716B0替换掉[007432F0]+60684
                          最后是+716B0而不是716AC,别问为什么,反正比16行那里的多加4就是了
                          这一句是对应上图第二句"该项不为解密成功时所有项目勿修改"
                          这一组脚本代码其实可以不用,foxofice分享的CT里就没有这一段.如果没有这段脚本的话,解密成功与否不会有上图那样额外提示一句
                          最后是金钱地址

                          第50行的TJ2+2018DC换成前面找到的金钱相对地址[[AGE.EXE+3358D4]+7011C]+43F2D4
                          最后把第6行解密天结换成新游的名字.
                          改完之后保存文本,然后用CE打开,运行新游就可以用CT模板进行搜索了

                          注意手动搜索其他变量比如经验值 血量的时候,数值类型要从4字节改为AGE
                          搜索到的唯一地址,前面说了是绝对地址,需要将其改为相对地址的写法,这里不再多说
                          添加了新地址记得将整个CT再额外保存一下
                          通过不断添加地址,就可以弄出一个适合自己的CT


                          IP属地:四川14楼2024-04-07 20:58
                          回复
                            接下来说如何在CT内添加物品地址
                            首先开局就有5个治愈之水·小,通过战斗扣血再使用之,可以找到其个数的地址,这里不多说

                            接下来,选中该地址按Ctrl+B或者单击右键,选择"浏览相关内存区域",打开内存窗口

                            注意当前是单字节模式,在页面单击右键,显示类型那里改成AGE,就可以显示成游戏内看到的数值了

                            划线部分,87是治愈之水·小,2和1分别是游戏内水色/绿色の木の實
                            也就是说,物品个数这一片就找到了.其他的0对应的就是别的物品的个数,因为尚未获得所以个数是0
                            那是不是把0改成某个数比如33 71,就可以得到相应个数的物品呢?并不是.游戏有个Flag存在,即"获得与否",由另一个地址来决定.当某个物品已经获得时候,那个地址的值就是1,未获得的物品,那个地址的值就是0
                            也就是说,即便把未获得的物品的个数从0改成33,游戏内也不会出现该物品.
                            我在天结2里面试过,改动物品个数之后游戏内不显示,但是如果找个商店,可以看到改出来的物品,将其出售一个使其个数发生变化,它就会显示在游戏内了.将所有物品都出售一遍就能全显示,但是一者是麻烦,要出售几百个东西,二者也不是那么容易找到商店
                            那如何通过CE搜索到那些决定"物品存在与否"的Flag地址呢?这里就要用到群组搜索
                            群组搜索就是找连续几个数,将其视为一个整体进行搜索.
                            如上面的几个物品,可以看出水色/绿色の木の實之后有一个地址没有物品,再之后是治愈之水,也就是说,这四个地址的物品存在与否 其值应该是1 1 0 1 这四个,1是已经有的,0是未获得
                            也就是说将1 1 0 1四个数视为一个整体去搜索

                            数值类型就要先设置为群组
                            然而这样就有另一个问题,之前看到的87 1 0 等都是在数值类型为AGE的情况下显示的(也就是经过解密了的数据),如果数值类型改为群组,就不是在AGE格式下,值就是经过加密了的.也就是说,需要找到1和0解密之前所对应的数,才能在群组模式下正常搜索到
                            那么也很好办,前面不是改过显示类型为AGE吗?同样在那里面,把显示类型改成4字节(DEC)即可
                            注意前图黑线部分2和1,之后不是有个0吗?那就记住1和0的那两个位置,看显示类型从AGE变成4字节(DEC)之后,1和0分别变成了多少
                            如图,1和0对应位置的数分别变成了3083552992和3083536608

                            那么,在群组搜索中,需要搜索的四个数就是3083552992 3083552992 3083536608 3083552992
                            像这样,其中"4:3083552992"的意思就是4字节显示下的3083552992(前面显示类型就是改成的4字节(DEC),所以需要对应上)

                            然后找出了45组与该数组匹配的,其中只有一组是我们要的,没办法,挨个试吧.已经知道治愈之水地址是305A924C
                            那么与之相关的"是否存在的Flag"地址也不会太远,可以从30453A24那一组开始
                            首先得把一些尚未获得的物品的个数从0改成别的.显示类型从4字节(DEC)改成AGE,然后把治愈之水87之后的0们的值改动,像这样,暂且改了5个数:33 44 55 66 77

                            接下来就是在搜索到的45个结果中逐个查看.选中30453A24,右键单击选择浏览相关内存区域


                            最左上角开始11 0 1就是已知的那四个,将其后面5个都从0改成1
                            这样如果这组地址是正确的,那游戏内就会出现新的物品,个数是33 44 55 66 77其中一个或几个
                            如果游戏内没有出现新物品就说明该组地址不正确,先将5个都还原成0免得出错,再继续按相同方法修改下一组
                            这里我试到第二组305AB180,就找到了

                            然后就得赶紧记下来找到的地址 注意是相对地址!!!
                            根据之前说的,地址都是以[[AGE.EXE+3358D4]+7011C]+XXXX的格式保存.可以根据需要保存的地址和已知得金钱地址作对比来得到
                            金钱绝对地址3045A5F4,治愈之水·小地址305A924C,前者+14EC58得到后者
                            而金钱相对地址[[AGE.EXE+3358D4]+7011C]+43F2D4
                            那么治愈之水·小的个数的相对地址就是[[AGE.EXE+3358D4]+7011C]+43F2D4+14EC58
                            即[[AGE.EXE+3358D4]+7011C]+58DF2C
                            治愈之水·小的"存在与否"的相对地址就是[[AGE.EXE+3358D4]+7011C]+58FE6C
                            将地址填进去并保存CT以便下一次使用.可以另存为一份CT,和模板区别开
                            通过地址偏移也可以发现,某个物品个数地址往后偏移1F40就可以得到该物品的"是否存在与否"的地址
                            那么批量添加物品个数地址之后,再批量进行偏移就能省很多事,这部分之后再说


                            IP属地:四川15楼2024-04-07 22:43
                            收起回复
                              关于如何批量添加地址
                              还是以治愈之水·小的个数地址为例
                              最笨的方法就是选中该地址,按Ctrl+C复制一下,再按Ctrl+V粘贴.再双击复制出来的那一条,把地址那一串最后的58DF2C改成58DF30,这就是下一个物品的个数的地址


                              一个个的复制、粘贴、手动修改,太累.有没有简便的方法?当然有.看到上图中红框部分没?写的是校正地址,这就是用来填入偏移量的.
                              按下粘贴之前,先把红框里的数从0改成4再粘贴,就会发现复制出来的地址已经是向后偏移了4的
                              但是!这样复制出来的地址是绝对地址!重开游戏之后就没用了,那又该如何以相对地址的方式进行复制呢?
                              这就需要先改变相对地址记录的方式.前面第8L说过相对地址可以记录成指针模式,现在就要先将地址改成那种模式

                              如图,首先还是复制一个地址出来,双击之后出现"更改地址"这个窗口.然后将地址那一串全选、剪切.
                              在左下指针前面的方格打勾,再点一次"添加偏移".再把之前剪切那一串粘贴到图中位置.把那一串的两个方括号外的数分别填到指针那一开始为0的地方,最后点确定即可
                              这样一来,地址就变成了 P->XXXXXX ,和之前不一样了
                              然后再复制这个地址,按Ctrl+V粘贴.之前是在红框那里填入4作为偏移量,这次不能填在红框,而是要填在蓝框 ,粘贴之后就出现新的已做了偏移4的新地址,而且也是相对地址!


                              顺便说下,如果仍旧填在红框会出现什么情况.一开始目的是将地址往后偏移4,也就是由[[AGE.EXE+3358D4]+7011C]+58DF2C 再加+4 变成[[AGE.EXE+3358D4]+7011C]+58DF30,
                              如果填在红框,就是把4加在了AGE.EXE+3358D4的后面,变成了[[AGE.EXE+3358D8]+7011C]+58DF2C,这样出现的就是错误地址
                              好了,这样就出现了两个相邻的相对地址,接下来还是一个个复制,再填偏移4,再粘贴?同样麻烦.这时候就要把这两个地址一起选中,然后一起复制粘贴,偏移量要设为8!
                              举个简单例子:想把1通过增量复制粘贴得到1 2 3 4 ... 64 该怎么办?把1变成2,需要增量是1,如果把1和2一起选中,同时增加1,那出现的就是2和3,其中2就重复了.这时候增量就要变成2,才能得到3和4.
                              再把1 2 3 4复制,增量为4,就可以得到5 6 7 8 ,再把1到8一起复制,增量8,就能得到9到16....每全选一次,增量翻1倍,就能获得连续的且不重复的数
                              地址也是一样,因为地址都是4字节,也就是以4为基础增量(地址最后一位都是4的倍数 0 4 8 C ,不会有其他数!)
                              所以上面复制粘贴时候,1个地址复制成2个,增量填4,2个复制成4个增量就要填8,4个复制成8个,增量填10(这里增量都是十六进制下的数,所以8的2倍是十六进制的10,对应十进制的10)
                              8个复制成16个,增量填20,16个复制成32个,增量填40,32个复制成64个,增量填80,64个复制成128个,增量填100,128个复制成256个,增量填200......
                              就这样,多复制几次,几百个连续地址就都有了 .每次复制完都可自行查看下地址是否连续,如果出现不连续的情况那就是增量填错了

                              然而还有个问题就是,地址多了比如64个,要从头到尾全选到,滚动条都要拉好久,也很麻烦,这时候又怎么办呢?
                              在任意地方点右键,选择最后个"创建表头",会生成一个名为"群组X"的新地址.然后将之前得到的几十个地址一起选中,拖到这个群组上面,使它们成为群组X的子项
                              右键单击群组X,照图中那样把其中两项打钩.



                              这样就弄出一个可折叠/展开的树形目录,点击群组前面的"田"就可以折叠子项
                              接着按照之前方法,直接复制这个群组,就可以将其中所有子项批量复制了,注意增量!!要和群组内的地址个数匹配.这个群组里面有64个地址的话,复制时候增量就要填100!
                              缺点就是,每个地址的命名都是一样的,毕竟是复制出来的,所以到时候挨个改也很痛苦.所以我习惯是把所有物品什么的一起改出来,就不需要给每个地址分别注明哪一个对应哪个物品
                              前面不是打勾了两项么?其中一项是用来折叠子项,另一个就是批量改个数.
                              看到群组X右边,数值那里是没有数的,因为它已经不是一个地址而是包含了64个地址的目录.但是可以在红圈位置双击,同样可以输入数值
                              输入数值后,其下64个地址的值都会一起变成刚才输入的数,这就达到了批量修改的目的

                              这样就找到了物品个数的N个地址,在通过前面得到的"存在与否"的地址是个数地址+1F40,将个数地址们全选并偏移1F40,就能得到与他们相对应的"存在与否"的地址
                              再把"存在与否"的地址们批量改为1,那所有物品也就全得到了


                              IP属地:四川16楼2024-04-09 00:29
                              收起回复