| | |
|
组别 | 百姓 |
级别 | 在野武将 |
功绩 | 0 |
帖子 | 12 |
编号 | 545350 |
注册 | 2023-8-27 |
| |
| | |
|
|
|
【6.5特效】盾墙:正面减伤、防突破
新人写的第一个特效,照着白神发的偷袭攻击写的,必须在抄了白神发的【6.5骑马、步兵、偷袭】的基础上改才能生效
盾墙部分
地址 十六进制数据 汇编代码 注释
004D2916 |> \6A 00 push 0 ; /Arg4 = 0
004D2918 |. 6A 01 push 1 ; |Arg3 = 1
004D291A |. 68 00000000 push 0 ; |Arg2 = 0
004D291F |. 68 77000000 push 77 ; |Arg1 = 77
004D2924 |. 8B4D 0C mov ecx,dword ptr [ebp+0C] ; |
004D2927 |. E8 ADD8F3FF call 004101D9 ; \Ekd5盾墙防突破.004101D9
004D292C |. 85C0 test eax,eax
004D292E |. 74 1C jz short 004D294C
004D2930 |. 50 push eax
004D2931 |. FF75 0C push dword ptr [ebp+0C] ; /Arg2 => [Arg2]
004D2934 |. FF75 08 push dword ptr [ebp+8] ; |Arg1 => [Arg1]
004D2937 |. E8 19000000 call 004D2955 ; \Ekd5盾墙防突破.004D2955
004D293C |. 5A pop edx
004D293D |. 0FAFC2 imul eax,edx
004D2940 |. 50 push eax ; /Arg2
004D2941 |. FF75 10 push dword ptr [ebp+10] ; |Arg1 => [Arg3]
004D2944 |. E8 9031F5FF call 00425AD9 ; \Ekd5盾墙防突破.00425AD9
004D2949 |. 2945 10 sub dword ptr [ebp+10],eax
004D294C |> 8B45 10 mov eax,dword ptr [ebp+10]
004D294F |. 8BE5 mov esp,ebp
004D2951 |. 5D pop ebp
004D2952 \. C2 1000 retn 10
6A 00 6A 01 68 00 00 00 00 68 77 00 00 00 8B 4D
0C E8 AD D8 F3 FF 85 C0 74 1C 50 FF 75 0C FF 75
08 E8 19 00 00 00 5A 0F AF C2 50 FF 75 10 E8 90
31 F5 FF 29 45 10 8B 45 10 8B E5 5D C2 10 00
地址 十六进制数据 汇编代码 注释
004D2955 /$ 55 push ebp ; Ekd5盾墙防突破.004D2955(guessed Arg1,Arg2)
004D2956 |. 8BEC mov ebp,esp
004D2958 |. 8B4D 08 mov ecx,dword ptr [ebp+8]
004D295B |. 8079 0E 07 cmp byte ptr [ecx+0E],7
004D295F |. 74 10 je short 004D2971
004D2961 |. BA C2E84800 mov edx,0048E8C2
004D2966 |. 66:813A FFFF cmp word ptr [edx],0FFFF
004D296B |. 74 04 je short 004D2971
004D296D |. FF32 push dword ptr [edx]
004D296F |. EB 03 jmp short 004D2974
004D2971 |> FF71 06 push dword ptr [ecx+6]
004D2974 |> 8B4D 0C mov ecx,dword ptr [ebp+0C]
004D2977 |. 8A41 0F mov al,byte ptr [ecx+0F]
004D297A |. 8BD0 mov edx,eax
004D297C |. 83E2 01 and edx,00000001
004D297F |. 85D2 test edx,edx
004D2981 |. 75 16 jnz short 004D2999
004D2983 |. 8A51 07 mov dl,byte ptr [ecx+7]
004D2986 |. 3A55 FD cmp dl,byte ptr [ebp-3]
004D2989 |. 74 26 je short 004D29B1
004D298B |. 77 06 ja short 004D2993
004D298D |. 3C 00 cmp al,0
004D298F |. 74 24 je short 004D29B5
004D2991 |. EB 1A jmp short 004D29AD
004D2993 |> 3C 02 cmp al,2
004D2995 |. 74 1E je short 004D29B5
004D2997 |. EB 14 jmp short 004D29AD
004D2999 |> 8A51 06 mov dl,byte ptr [ecx+6]
004D299C |. 3A55 FC cmp dl,byte ptr [ebp-4]
004D299F |. 74 10 je short 004D29B1
004D29A1 |. 77 06 ja short 004D29A9
004D29A3 |. 3C 01 cmp al,1
004D29A5 |. 74 06 je short 004D29AD
004D29A7 |. EB 0C jmp short 004D29B5
004D29A9 |> 3C 03 cmp al,3
004D29AB |. 75 08 jne short 004D29B5
004D29AD |> B0 01 mov al,1
004D29AF |. EB 06 jmp short 004D29B7
004D29B1 |> B0 00 mov al,0
004D29B3 |. EB 02 jmp short 004D29B7
004D29B5 |> B0 00 mov al,0
004D29B7 |> 8BE5 mov esp,ebp
004D29B9 |. 5D pop ebp
004D29BA \. C2 0800 retn 8
55 8B EC 8B 4D 08 80 79 0E 07 74 10 BA C2 E8 48
00 66 81 3A FF FF 74 04 FF 32 EB 03 FF 71 06 8B
4D 0C 8A 41 0F 8B D0 83 E2 01 85 D2 75 16 8A 51
07 3A 55 FD 74 26 77 06 3C 00 74 24 EB 1A 3C 02
74 1E EB 14 8A 51 06 3A 55 FC 74 10 77 06 3C 01
74 06 EB 0C 3C 03 75 08 B0 01 EB 06 B0 00 EB 02
B0 00 8B E5 5D C2 08 00
突破攻击部分
地址 十六进制数据 汇编代码 注释
0041110B |. /E9 FEF40100 jmp 0043060E
地址 十六进制数据 汇编代码 注释
0043060E /> \83C4 04 add esp,4
00430611 |. 50 push eax
00430612 |. 8B4D 0C mov ecx,dword ptr [ebp+0C]
00430615 |. 6A 00 push 0 ; /Arg4 = 0
00430617 |. 6A 01 push 1 ; |Arg3 = 1
00430619 |. 68 00000000 push 0 ; |Arg2 = 0
0043061E |. 68 77000000 push 77 ; |Arg1 = 77
00430623 |. E8 B1FBFDFF call 004101D9 ; \Ekd5盾墙防突破.004101D9
00430628 |. 85C0 test eax,eax
0043062A |. 74 14 jz short 00430640
0043062C |. FF75 0C push dword ptr [ebp+0C] ; /Arg2 => [ARG.2]
0043062F |. FF75 10 push dword ptr [ebp+10] ; |Arg1 => [ARG.3]
00430632 |. E8 1E230A00 call 004D2955 ; \Ekd5盾墙防突破.004D2955
00430637 |. 85C0 test eax,eax
00430639 |. 74 05 jz short 00430640
0043063B |. 58 pop eax
0043063C |. 31C0 xor eax,eax
0043063E |. EB 01 jmp short 00430641
00430640 |> 58 pop eax
00430641 |> 3D FF000000 cmp eax,0FF
00430646 \.^ E9 C50AFEFF jmp 00411110
83 C4 04 50 8B 4D 0C 6A 00 6A 01 68 00 00 00 00
68 77 00 00 00 E8 B1 FB FD FF 85 C0 74 14 FF 75
0C FF 75 10 E8 1E 23 0A 00 85 C0 74 05 58 31 C0
EB 01 58 3D FF 00 00 00 E9 C5 0A FE FF
也可直接用普罗小软件打补丁,见附件
感谢水浒星辰群友蓝莓神和假昏神的指点,感谢白神和普罗大神提供的代码,感谢道人大佬提供的资料
如测试有bug或可补充的内容请回帖告知
[ 本帖最后由 鲍三郎 于 2024-8-11 00:57 编辑 ]
附件:
[补丁txt(新)]
6.5盾墙.zip (2024-8-11 00:56, 782 bytes)
该附件被下载次数 49
|
|
|
|