三国志5吧 关注:7,817贴子:142,681

三国5占卜技能初解

只看楼主收藏回复

首先是技能表:
00 火计 01 混乱 02 内讧 03 收拾 04 仙术 05 鼓舞 06 治疗 07 祈雨
08 天变 09 灭火 0A 落石 0B 占卜 0C 伏兵 0D 幻术 0E 妖术 0F 激励
10 水计 11 火箭 12 奋发 13 乱射 14 速攻 15 藤甲 16 无双 17 远箭
18 强行 19 沉着 1A 布阵 1B 水神 1C 反计 1D 落沙 1E 回射 1F 骑射
再次是天气代号:00晴 01阴 02雨 03豪雨
……………………………………………………华丽黑粗的分割线………………………………………………
括号里是十六进制编辑器打开exe执行文件的地址,似乎简体版普及面比较大,以后基本以简体版为例子
A、确认是否有占卜技能(0x30266的0B,为技能代号);
B、确认体力是否可以显示占卜的最小体力50(0x30277的32H)
C、选择占卜后,首先用一个随机数除以11求余数numRand,那么余数numRand一定在0~0AH(就是0~10)之间,
这个直接关系到占卜的基本结果;每次出征即使条件完全相同,numRand也会变;
D、占卜的动画,台词;
E、减少32H(50)的战场体力;
F、进行占卜结果判断,直接根据numRand的值进入相应位置进行处理,以numRand从0~0AH顺序如下:
【numRand=0】:占卜结果为天气和风向(以下简称【占卜天气】),这个没什么好说的,值得一提的有:
1、南蛮(建宁、云南)地区下雨的概率相当大(亚热带气候??),而西凉(安定、天水、西凉)地区晴天
的概率相当大(西部高原??),其他没有特殊;
2、如果本回合有人已经先占卜得到天气和风向结果了,那么这次的占卜如果结果的天气和风向,都一模一样,真神哪;
【numRand=1】:占卜结果为有敌人撤退,这个要求敌人大于1个(0x333D5的01),然后随机从其中抓一个让他回家吃饭;
如果敌人为1个,就转去【占卜天气】;
【numRand=2】:占卜结果为我军全员士气的升降,提升士气的概率为50(0x33479的32H),改小则降低士气概率增大;
士气变化为15点(0x334D8的0FH)
【numRand=3】:占卜结果为我某一个武将寿命增减,首选要求除占卜者外,至少有一个我军武将,否则就去【占卜天气】;
然后从中随机抓取一个来调戏,寿命增加概率为50(0x335C5的32H),改小则减少寿命概率增加;
增加幅度为1(多活差不多6年,0x335EE的01,PS:寿命最小0最大7)
【numRand=4】:占卜结果为敌人全军起火,要求天气必须为晴天或者阴天(天气代号小于2,0x3364E的02),不满足条件就去【占卜天气】;
【numRand=5】:占卜结果为敌军水上部队遭受水灾,要求敌人至少1个部队在水里,不然就去【占卜天气】;
值得一提的有:
1、水神不能免疫这个伤害;
2、伤害最小为100(0x337CD的64H),然后有理论上0~1400(0x337BF的7805,即0578H)的随机加成
【numRand=6】:占卜结果为有敌军受重伤,要求敌军至少1个,否则就去【占卜天气】(这个条件有点奇怪,
如果敌军小于1个,战斗肯定结束了%¥#¥#@);
然后随机抓一个敌军来捅一刀,受伤程度为最严重等级7(0x33888的07,跟寿命一样是0~7,0不受伤,每增加1伤害等级,
武力多降4点,本次武力降28点,比单挑的超大绝杀降16武力都厉害的多),
同时战场上体力变0(0x33893的00),平时操作内政界面的体力也变0;
【numRand=7】:占卜结果为增加我某个武将能力,同样要求我方除占卜武将外至少1人,否则就去【占卜天气】;
然后随机抓取我军一个武将,看他四维的哪一属性没有达到上限要求(这个直接在exe文件搜索59 4F 63 63就可以了,
是智力89,政治79,武力99,魅力99的上限,各个版本通用);
如果没有可以提升的属性,就去【占卜天气】;
选中某一维可增加后给它增加1(0x33989的01);
【numRand=8】:占卜结果为战场体力恢复,伤势恢复,同样要求我方除占卜武将外至少2人并且体力小于100,否则就去【占卜天气】;
然后给其中某个武将恢复到100体力(0x33ACC的64H),同时受伤状态全部解除;
【numRand=9】:占卜结果为雷击战场某1人,要求敌我人数除去占卜者外不能为0,否则就去【占卜天气】;
对我方雷击的概率为30(0x33B7B的1E),改0则雷击敌人;
也是随机抓取一个武将,减少兵力,减少5~9点士气,同时陷入混乱,由于这个伤害等相关计算被4大隐藏特技
(雷光火壁陨石大蛇)之一的【雷光】同样调用,所以这事暂时不能说太细,以后再说;
【numRand=0AH】:占卜结果为城池起火,首先要求天气代号小于等于2(0x33C5E的02),即不非豪雨天即可;
不然就去【占卜天气】;
然后设置城池着火状态,城市里有武将即受到伤害;
……………………………………………………华丽黑粗的分割线………………………………………………
占卜增加经验300(0x33E1B的2C01,即012CH);
占卜置武将行动结束标志01(0x33E29的01),改00则占卜不算行动结束;
如果简单的想只要其中某一个结果,可以把0x33DB5的83 F8 0A 77 60改成B8 0X 00 00 00,
其中的X就表示上边的numRand的值,这样直接去处理对应的numRand结果;



1楼2010-03-02 09:26回复
    继续拜达人


    IP属地:广西2楼2010-03-02 10:18
    回复
      我现在用的dospk就是根据达人的指南让占卜只加能力,每次体力10


      IP属地:广西3楼2010-03-02 10:20
      回复
        D、占卜的动画,台词;
        E、减少50(0x33DA7的32H)的战场体力;
        占卜减少体力地址上边忘记给了;
        完美的修改是把能显示占卜的体力、实际消耗体力和提示同时改相同,前2个好改,上边都有地址,游戏提示文字在message文件里,数据压缩了,改着不方便,不过一般玩玩也就凑活了,呵呵


        4楼2010-03-02 11:26
        回复
          最喜欢占卜只加能力以及长寿补丁了:)


          IP属地:北京5楼2010-03-02 15:24
          回复
            原则是只改动最少字节的话
            如果只想加能力和增加寿命,首先把增加寿命概率改到100(64H),然后可以这样改:
            由于增加寿命和增加能力刚好是numRand为3(0011B)和7(0111B),这个巧合太利于我们修改了;而且已经知道numRand只能在0~10之间,必定小于255,高位必定都是0,从而可以借助AL寄存器来实现,先把它变成不大于7的数(AND AL,7),再跟3做OR运算(OR AL,3),还多余一个字节,我们NOP掉它
            结果:
            0x33DB5的83 F8 0A 77 60改成24 07 0C 03 90
            这样如果numRand出现0~10的概率一样的话,结果会是占卜增加能力占40%,增加寿命占60%


            6楼2010-03-02 16:29
            回复
              • 122.83.68.*
              如果是在PS或SS实体机上的话,有没有方法让占卜的结果只加能力或延寿呢?哪怕只是增加概率也行啊。


              7楼2010-03-03 18:04
              回复
                如果没有办法修改的话只能靠平时扶老奶奶过马路来增加人品咯,呵呵


                8楼2010-03-03 19:53
                回复
                  10的十六进制是0A
                  这是十六进制换算的问题
                  你打开屏幕左下角开始,运行,在里边输入calc,回车,跳出windows计算器;
                  输入10,点十六进制,结果是A,由于要补足2位,需要前面加0,就是0A


                  10楼2010-04-19 18:34
                  回复
                    • 61.185.128.*
                    SANGUOV请问有没有战车、强骑兵等研究加成攻击或防御的地址,另外,有没有战斗中那个加成伤害(攻击时,咔咔两闪)出现概率的地址?
                    2010-3-22 16:11 回复
                    都有的,我回去后给你看看,我现在外边,要估计二十来天呢
                    你说的第二个是暴击吧,暴击可以让伤害加倍,对弓箭和直接攻击有效;
                    但战斗暴击是在计算所有伤害之后,才另外计算概率的
                    影响到暴击率的是勇名,偃月阵效果是让勇名引起暴击的概率翻倍;
                    请问SANGUOV回去了吗?按照20天来算,应该到了啊!28天啦!一直期待“技能和战场相关待以后整理;最近要出去将近一个月”
                    


                    11楼2010-04-20 08:39
                    回复
                      我已经差不多一个月了,还没回去
                      最近比较忙    


                      12楼2010-04-20 15:52
                      回复
                        BS    用 修改器


                        IP属地:上海13楼2010-04-28 16:57
                        回复
                          回复:6楼
                          我已把0x33DB5的83 F8 0A 77 60改成24 07 0C 03 90
                          结果占出来的老是缩短寿命和增加能力,请问还要怎么改才能长寿?
                          因为我对修改一个不懂,改哪一行怎么改请说细点.


                          14楼2010-04-30 08:17
                          回复
                            还有如果只想占出的结果为增加能力,应该怎么改?


                            15楼2010-04-30 08:32
                            回复
                              唉,算了
                              我还是提高效率,把0*33989中的01改成了0A,占一下能增加能力10点,这样来得快


                              16楼2010-04-30 10:27
                              回复