您当前的位置:首页 > 奇迹技术

原创奇迹私服多属性卓越物品掉落修改

本文出处:网游动力作者:本站发布时间:2008-11-04阅读次数:
需要的请测试一下,我没有条件测试
掉落的概率大约是(1属性为100的话)
2属性:33
其他属性:11

全属性应该可以掉出,但是概率不大

修改方法:从gs文件偏移地址009193开始,
原数据为:
88 45 FC 8A 45 FC 5F 5E 5B 8B E5 5D C3 CC CC CC。。。
替换为:
EB 0B 90 8A 45 FC 5F 5E 5B 8B E5 5D C3 
88 45 FC E8 15 43 09 00 24 03 75 EA 8A
45 FC 08 E0 88 45 FC 75 E0


下面是修改后的反汇编代码(红色部分为修改添加内容):
00409100 <>  55          push ebp
00409101    8BEC        mov ebp,esp
00409103    83EC 44      sub esp,44
00409106    53          push ebx
00409107    56          push esi
00409108  |. 57          push edi
00409109  |. C645 FC 00    mov byte ptr ss:[ebp-4],0
0040910D  |. E8 AB430900    call <GAMESERV.getPosRadom>
00409112  |. 99          cdq
00409113  |. B9 06000000    mov ecx,6
00409118  |. F7F9        idiv ecx
0040911A  |. 8BCA        mov ecx,edx
0040911C  |. BA 01000000    mov edx,1
00409121  |. D3E2        shl edx,cl
00409123  |. 8855 FC      mov byte ptr ss:[ebp-4],dl
00409126  |. 8B45 FC      mov eax,dword ptr ss:[ebp-4]
00409129  |. 25 FF000000    and eax,0FF
0040912E  |. 83E0 02      and eax,2
00409131  |. 85C0        test eax,eax
00409133  |. 74 2E        je short GAMESERV.00409163
00409135  |. E8 83430900    call <GAMESERV.getPosRadom>
0040913A  |. 25 01000080    and eax,80000001
0040913F  |. 79 05        jns short GAMESERV.00409146
00409141  |. 48          dec eax
00409142  |. 83C8 FE      or eax,FFFFFFFE
00409145  |. 40          inc eax
00409146  |> 85C0        test eax,eax
00409148  |. 74 19        je short GAMESERV.00409163
0040914A  |. E8 6E430900    call <GAMESERV.getPosRadom>
0040914F  |. 99          cdq
00409150  |. B9 06000000    mov ecx,6
00409155  |. F7F9        idiv ecx
00409157  |. 8BCA        mov ecx,edx
00409159  |. BA 01000000    mov edx,1
0040915E  |. D3E2        shl edx,cl
00409160  |. 8855 FC      mov byte ptr ss:[ebp-4],dl
00409163  |> E8 55430900    call <GAMESERV.getPosRadom>
00409168  |. 25 03000080    and eax,80000003
0040916D  |. 79 05        jns short GAMESERV.00409174
0040916F  |. 48          dec eax
00409170  |. 83C8 FC      or eax,FFFFFFFC
00409173  |. 40          inc eax
00409174  |> 85C0        test eax,eax
00409176  |. 75 1E        jnz short GAMESERV.00409196
00409178  |. E8 40430900    call <GAMESERV.getPosRadom>
0040917D  |. 99          cdq
0040917E  |. B9 06000000    mov ecx,6
00409183  |. F7F9        idiv ecx
00409185  |. 8BCA        mov ecx,edx
00409187  |. BA 01000000    mov edx,1
0040918C  |. D3E2        shl edx,cl
0040918E  |. 8A45 FC      mov al,byte ptr ss:[ebp-4]
00409191  |. 0AC2        or al,dl
00409193    EB 0B        jmp short GAMESERV.004091A0
00409195    90          nop
00409196  |> 8A45 FC      mov al,byte ptr ss:[ebp-4]
00409199  |. 5F          pop edi
0040919A  |. 5E          pop esi
0040919B  |. 5B          pop ebx
0040919C  |. 8BE5        mov esp,ebp
0040919E  |. 5D          pop ebp
0040919F  . C3          retn
004091A0    8845 FC      mov byte ptr ss:[ebp-4],al
004091A3    E8 15430900    call <GAMESERV.getPosRadom>
004091A8    24 03        and al,3
004091AA  ^ 75 EA        jnz short GAMESERV.00409196
004091AC    8A45 FC      mov al,byte ptr ss:[ebp-4]
004091AF    08E0        or al,ah
004091B1    8845 FC      mov byte ptr ss:[ebp-4],al
004091B4  ^ 75 E0        jnz short GAMESERV.00409196