|
不知道众喜欢这个修改器的朋友看到这个修改会怎么想
由于AI不懂得跟随修改器的自定规则, 所以个人找了一些代码, 尝试让AI的编队符合修改器的自定规则.
AI派出部队时决定由谁当主将的部份代码如下
005F6D4E - e8 5d f0 ff ff - call 005f5db0计算武将适性+势力技术加成值
005F6D53 - 8b d8 - mov ebx,eax ebx=武将适性+势力技术加成值
005F6D55 - 83 c3 07 - add ebx,07
005F6D58 - 8b cd - mov ecx,ebp ebp=武将地址
005F6D5A - 89 1e - mov [esi],ebx
005F6D5C - e8 1f 23 e9 ff - call 00489080读取武力
005F6D61 - 8b 54 24 18 - mov edx,[esp+18] [esp+18]=兵装数据地址
005F6D65 - 0f b6 c0 - movzx eax,al
005F6D68 - 0f af 06 - imul eax,[esi]
005F6D6B - 89 06 - mov [esi],eax
005F6D6D - 0f b6 4a 55 - movzx ecx,byte ptr [edx+55] 兵种攻击力
005F6D71 - 0f af c8 - imul ecx,eax
005F6D74 - b8 d3 4d 62 10 - mov eax,10624dd3
005F6D79 - f7 e9 - imul ecx
005F6D7B - c1 fa 06 - sar dl,06
005F6D7E - 8b c2 - mov eax,edx
005F6D80 - c1 e8 1f - shr eax,1f
005F6D83 - 03 c2 - add eax,edx
005F6D85 - 69 c0 d0 07 00 00 - imul eax,eax,000007d0
005F6D8B - 89 06 - mov [esi],eax
[esi]=兵种攻击力*武力*(武将适性+势力技术加成值+7)*0.001*2000=部队攻击力参数(用来比较并决定主将)
把读取武力的函数改为读取统率, 或者读取两者并由自定百分比计算两者所占比例然后加总,
就可让AI由自定的规则来决定主将.
AI决定好主将之后, 挑选副将时有一些限制, 副将的带兵量or统率or武力or功绩必须低于主将(前者已满足则后面项目无影响),
如果想让AI也会倾向搭配高武力的副将, 这里要先解除一些限制.
004CF1E9改为0, 副将的武力与功绩限制取消.
AI挑选副将时, 当部队最高智力未满75, 会以智力为考虑的依据, 这条规则应该不用改.
下一规则是当目前队中最高武力未满50时会以武力为考虑的依据,
005EE5F4改为0可以保持以武力为考虑的依据.
以上只是很粗略的修改, 不可能让AI编队变得聪明绝顶, 只是改变编队的方向性而已.
这是百度贴吧某个神秘IP发的修改方案,疑似sergi |
|