吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4273|回复: 48
收起左侧

[易语言 转载] 植物大战僵尸杂交版V3.12修改器源码(小白自编)

  [复制链接]
CGQC 发表于 2025-11-21 14:12
本帖最后由 CGQC 于 2025-11-21 14:31 编辑

各位52的大佬朋友们好,自从注册52论坛账号以来,学习了一丢丢反汇编知识,还有些许易语言汇编。
(只能算是为入门的小白罢了,第一次发帖不足地方大家见谅,海涵。。)

  斗胆呢?自己做了一份关于“植物大战僵尸杂交版V3.12”的辅助修改,可能源码部分格式、排版啦等等比不上各位大佬,但我会继续努努力向各位前辈学习、看齐,希望不足的地方大佬们多多“点名、批评”,

那以下部分就是分享内容啦,解析不到位的地方望各位谅解,毕竟这些也不算是正宗源码,网页、平台等到处都有类似源码,只是将自己学习的心得与各位分享啦。。。

本次汇编使用易语言V5.95版,加载超级模块、超级列表模块、超级汇编模块(毕竟是小白只能借以往前辈们的东西用用啦...)配合CheatEngin 6.7版动态分析、反汇编功能






  • 基础地址部分(以下简称“基址”)


首先阅读过“植物大战僵尸”系列的朋友们都知道,该游戏都有着内存’基址‘加上”xxx“偏移量,再加上第二次的“xxx”偏移量为固定“地址”



(这些都是"老生常谈"了我也不好意思班门弄斧)

通过CheatEngin搜索找打的数值为"006A9EC0"以4字节表示


基础地址

基础地址



在易语言中自定义函数名为:"植物大战僵尸"后赋值获取进程ID读取内存

自定义函数

自定义函数



  • 偏移量增加


偏移量在"基址"中加上指针偏移"000768"得到地址,
在易语言中同样自定义函数名为:"阳光偏移1"、"阳光偏移二",将"基址"+"000768"赋值于"阳光偏移1"获得
再重复以上将”阳光偏移二“赋值


阳光偏移

阳光偏移



易语言汇编"写内存"更改数值,方便自定义修改的数值内容,便在下段代码中加了块"阳光编辑框"用于输入数值


  • 锁定阳光、植物冷却


这两个板块就不过多阐述了,各位大佬也知道很多中修改方法,我采用的是配合"CE"地址分析找到反汇编代码处


在易语言中采用”字节集“模块修改了内容,具体可以参考源码内容


阳光、冷却

阳光、冷却



  • 一击必杀


这个板块比较有趣,本以为汇编内容可以同上面的"锁定阳光、植物冷却"一样反汇编修改赋值,可却发现"僵尸"的品种千奇百怪
对于小白来说可谓难度"大大滴"增加,后面通过摸索借助这个版本中自带的"内挂"找到了"僵尸"血量才摸索到的动态地址
其中"僵尸"可以大致分为三类:1.普通僵尸 2.障碍物僵尸 3.铁网僵尸
三个品种僵尸的"防御值"所对应的反汇编码各不相同,不过找到了"普通僵尸"那就好办了,不就是"俄罗斯套娃"喽!!


僵尸

僵尸







  • 结语



最后几个修改的地方就不过多阐述了,毕竟只是反汇编"小白自我学习"的内容罢了,在各位大佬面前可不能"耍大刀"
以下是源码内容及可执行文件附件(双手奉上)
望各位大佬多多指点!!

  


image.png










=======================================================================================================================================================

源码部分

.程序集 窗口程序集_启动窗口
.程序集变量 植物大战僵尸, 整数型
.程序集变量 基础地址, 整数型, , , 6A9EC0
.程序集变量 阳光偏移一, 整数型, , , 005560
.程序集变量 阳光偏移二, 整数型, , , 000768

.子程序 __启动窗口_创建完毕

植物大战僵尸 = 取进程ID (“PlantsVsZombies.exe”)
.如果 (植物大战僵尸 > 0)
' 调试输出 (获取进程)
基础地址 = 读内存整数型 (植物大战僵尸, 十六到十 (“6A9EC0”))
.否则
信息框 (“请打开植物大战僵尸杂交版游戏,再使用辅助器!”, 0, , )
.如果结束
返回 ()

.子程序 _阳光编辑框_内容被改变, , , 阳光

.子程序 _阳光修改_被单击

阳光偏移一 = 读内存整数型 (植物大战僵尸, 基础地址 + 十六到十 (“000768”))
阳光偏移二 = 读内存整数型 (植物大战僵尸, 阳光偏移一 + 十六到十 (“005560”))

.如果 (阳光编辑框.内容 = “”)
信息框 (“请输入阳光数值!!”, 0, , )
.否则
写内存整数型 (植物大战僵尸, 阳光偏移一 + 十六到十 (“005560”), 到整数 (阳光编辑框.内容))
.如果结束
返回 ()

.子程序 _锁定阳光_被单击, , , 锁定阳光

.如果 (锁定阳光.选中 = 真)
写内存字节集 (植物大战僵尸, 十六到十 (“008AF800”), 还原字节集2 (“90 90 90 90 90 90 ”))
.否则
写内存字节集 (植物大战僵尸, 十六到十 (“008AF800”), 还原字节集2 (“89 B7 60550000”))
.如果结束
返回 ()

.子程序 _植物冷却_被单击

.如果 (植物冷却.选中 = 真)
写内存字节集 (植物大战僵尸, 十六到十 (“00488E73”), 还原字节集2 (“C6 45 48 01”))
.否则
写内存字节集 (植物大战僵尸, 十六到十 (“00488E73”), 还原字节集2 (“C6 45 48 00”))

.如果结束
返回 ()

.子程序 _一击必杀_被单击

.如果 (一击必杀.选中 = 真)  ' 适用普通僵尸
写内存字节集 (植物大战僵尸, 十六到十 (“00531319”), 还原字节集2 (“89 B5 C8 00 00 00 ”))
.否则
写内存字节集 (植物大战僵尸, 十六到十 (“00531319”), 还原字节集2 (“89 BD C8 00 00 00 ”))
.如果结束

.如果 (一击必杀.选中 = 真)  ' 适用帽子、报纸、冰车僵尸等
写内存字节集 (植物大战僵尸, 十六到十 (“0053104D”), 还原字节集2 (“89 95 D0 00 00 00 ”))
.否则
写内存字节集 (植物大战僵尸, 十六到十 (“0053104D”), 还原字节集2 (“89 8D D0 00 00 00 ”))
.如果结束

.如果 (一击必杀.选中 = 真)  ' 适用栅栏僵尸等
写内存字节集 (植物大战僵尸, 十六到十 (“00530CA1”), 还原字节集2 (“89 96 DC 00 00 00 ”))
.否则
写内存字节集 (植物大战僵尸, 十六到十 (“00530CA1”), 还原字节集2 (“29 86 DC 00 00 00 ”))
.如果结束
返回 ()

.子程序 _破除迷雾_被单击

.如果 (破除迷雾.选中 = 真)
写内存字节集 (植物大战僵尸, 十六到十 (“0041A693”), 还原字节集2 (“89 29 ”))
.否则
写内存字节集 (植物大战僵尸, 十六到十 (“0041A693”), 还原字节集2 (“89 11 ”))
.如果结束
返回 ()

.子程序 _银币编辑框_内容被改变

.子程序 _银币修改_被单击
.局部变量 银币偏移1, 整数型
.局部变量 银币偏移2, 整数型

银币偏移1 = 读内存整数型 (植物大战僵尸, 基础地址 + 十六到十 (“00082C”))
' 银币偏移2 = 读内存整数型 (植物大战僵尸, 银币偏移1 + 十六到十 (“000208”))
.如果 (银币编辑框.内容 = “”)
信息框 (“请输入修改数量!”, 0, , )
.否则
写内存整数型 (植物大战僵尸, 银币偏移1 + 十六到十 (“000208”), 到整数 (银币编辑框.内容))
.如果结束
返回 ()

.子程序 _金币编辑框_内容被改变

.子程序 _金币修改_被单击
.局部变量 金币偏移1, 整数型
.局部变量 金币偏移2, 整数型

金币偏移1 = 读内存整数型 (植物大战僵尸, 基础地址 + 十六到十 (“00082C”))
' 金币偏移2 = 读内存整数型 (植物大战僵尸, 金币偏移1 + 十六到十 (“00020C”))
.如果 (金币编辑框.内容 = “”)
信息框 (“请输入修改数量!”, 0, , )
.否则
写内存整数型 (植物大战僵尸, 金币偏移1 + 十六到十 (“00020C”), 到整数 (金币编辑框.内容))
.如果结束
返回 ()

.子程序 _钻石编辑框_内容被改变

.子程序 _钻石修改_被单击
.局部变量 钻石偏移1, 整数型
.局部变量 钻石偏移2, 整数型

钻石偏移1 = 读内存整数型 (植物大战僵尸, 基础地址 + 十六到十 (“00082C”))
' 钻石偏移2 = 读内存整数型 (植物大战僵尸, 钻石偏移2 + 十六到十 (“000210”))
.如果 (钻石编辑框.内容 = “”)
信息框 (“请输入修改数量”, 0, , )
.否则
写内存整数型 (植物大战僵尸, 钻石偏移1 + 十六到十 (“000210”), 到整数 (钻石编辑框.内容))
.如果结束
返回 ()


植物大战僵尸杂交版修改器(付源码)V1.0.rar (145.69 KB, 下载次数: 251)

免费评分

参与人数 10吾爱币 +8 热心值 +9 收起 理由
fengyingdianxia + 1 + 1 我很赞同!
康康认真的 + 1 + 1 热心回复!
wanshu007 + 1 + 1 我很赞同!
Jokerboxs + 1 谢谢@Thanks!
桃白白123 + 1 + 1 写的很棒,不要这么谦虚
jf4016 + 1 谢谢@Thanks!
tbwin658 + 1 + 1 我很赞同!
ShloanElvin + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
mrjian + 1 + 1 谢谢@Thanks!
pptx + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| CGQC 发表于 2025-11-21 14:42
目前测试杂交版V3.12,其他非杂交版不适用
kongyueshang 发表于 2025-11-21 18:43
CREEK4 发表于 2025-11-21 19:02
heykuz 发表于 2025-11-21 19:33
有空研究一下,不错的东西
xiaoyao888 发表于 2025-11-21 19:36
谢谢楼主分享,学习下
小乖乖 发表于 2025-11-21 20:53
源代码不带模块...根本用不了啊
zdmin 发表于 2025-11-21 21:04
不错!正是需要的
lingdo 发表于 2025-11-21 21:07
先下载下来,有空的时候去试试好用不。
zxxiaopi 发表于 2025-11-21 21:19
还是写个融合版的吧,大佬
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - 52pojie.cn ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2026-4-24 12:59

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表