用CE易语言修改植物大战僵尸详细步骤及代码编写 本教程用到的工具:CE 植物大战僵尸中文版(具体哪个版本搞不懂了,好像是2的吧~.~) 易语言(记得下载超级模块哦,不然。。。好像没作用~.~)
关于CE找基址的问题我就不多说了,网上好多的,比我自己说的要强多了。 下面是我找到的基址
智慧树 6AA00C 82C 230
花肥 6A9F78 82C 1F8
杀虫剂 6A9F38 82C 1FC
金钱 6A9EC0 82C 28
阳光 6AA00C 768 5560
巧克力 6A9F38 82C 228
无冷却 基址 偏移 偏移 偏移
第一格:6A9EC0 768 144 70
第二格:6A9EC0 768 144 C0 (70+50 (十六进制) )
第三格:6A9EC0 768 144 110 (C0+50 (十六进制) )
第四格:6A9EC0 768 144 160 (110+50 (十六进制) )
第五格:6A9EC0 768 144 1B0 (160+50 (十六进制) )
第六格:6A9EC0 768 144 200 (1B0+50 (十六进制) )
第七格:6A9EC0 768 144 250 (200+50 (十六进制) )
第八格:6A9EC0 768 144 2A0 (250+50 (十六进制) )
第九格:6A9EC0 768 144 2F0 (2A0+50 (十六进制) )
第十格:6A9EC0 768 144 340 (2F0+50 (十六进制) )
最后把所有指针指向的地址的数值改为1即可实现无冷却.
下面这些是用易语言编写的代码部分: 直接截图吧~~
记得在添加时钟的时候先把时钟周期设为‘0’哦
!
好了 教程到此结束,写这个文章是为了让新手少走点弯路,快速掌握方法。我也是新手,勿喷!
第二篇:植物大战僵尸全属性修改
本文转载自7k7k.com
一、基本配备
我们不需要修改器,那个没什么用。需要的工具是文件16进制编辑软件或者说磁盘编辑软件,比如 Winhex 我们的目的是对用户数据记录文件进行编辑,因此需要找到用户记录文件。98/ME/XP下比较好找,储存在Plants vs. Zombies/userdata/文件夹下。VISTA/WIN7位置比较诡异,在C:/Programme Files/Popcap/文件夹下面的一个什么子文件夹里面,在系统盘搜索Popcap应该会比较容易找到。
用户记录文件有N+1个,N个用户就有N个user?.dat的文件,?代表数字,对应用户列表。最后剩下的users.dat则存放了用户列表和用户名称。
二、数据修改
好了,知道用户文件后就用Winhex打开对应文件,比如以user1.dat为例。
这个文件至少含有820个字节。在后面的叙述中,文件的第一个字节对应的字节号是0,那么第800个字节对应的字节号就应该是799,小学生的算术题而已。以下是本人经多次测试得出的数据所代表的意义:
记录文件user?.dat
-------------------------------------------------------------------------------------------
字节(Dec) 长度(Dec) 说明(Hex)
---------- 基本数据
----------------------------------------------------------------------- 00 4 不明(定值0C)
04 4 Adventure 当前关(01-32)
08 4 金钱
12 4 Adventure 完成次数
---------- Survival 数据
------------------------------------------------------------------
16 4 Survival 01 已完成(00-05)Flags
20 4 Survival 02 已完成(00-05)Flags
24 4 Survival 03 已完成(00-05)Flags
28 4 Survival 04 已完成(00-05)Flags
32 4 Survival 05 已完成(00-05)Flags
36 4 Survival 06 (Hard) 已完成(00-0A)Flags
40 4 Survival 07 (Hard) 已完成(00-0A)Flags
44 4 Survival 08 (Hard) 已完成(00-0A)Flags
48 4 Survival 09 (Hard) 已完成(00-0A)Flags
52 4 Survival 10 (Hard) 已完成(00-0A)Flags
64 4 Survival:Endless 最高记录
---------- Mini Game 数据
----------------------------------------------------------------- 76 4 Mini Game 01 完成次数
80 4 Mini Game 02 完成次数
84 4 Mini Game 03 完成次数
88 4 Mini Game 04 完成次数
92 4 Mini Game 05 完成次数
96 4 Mini Game 06 完成次数
100 4 Mini Game 07 完成次数
104 4 Mini Game 08 完成次数
108 4 Mini Game 09 完成次数
112 4 Mini Game 10 完成次数
116 4 Mini Game 11 完成次数
120 4 Mini Game 12 完成次数
124 4 Mini Game 13 完成次数
128 4 Mini Game 14 完成次数
132 4 Mini Game 15 完成次数
136 4 Mini Game 16 完成次数
140 4 Mini Game 17 完成次数
144 4 Mini Game 18 完成次数
148 4 Mini Game 19 完成次数
152 4 Mini Game 20 完成次数
---------- The Tree of Wisdom 数据
-------------------------------------------------------- 212 4 The Tree of Wisdom 生长/高度
---------- Puzzle 数据I: Vasebreaker
------------------------------------------------------
216 4 Puzzle:Vasebreaker 01 完成次数
220 4 Puzzle:Vasebreaker 02 完成次数
224 4 Puzzle:Vasebreaker 03 完成次数
228 4 Puzzle:Vasebreaker 04 完成次数
232 4 Puzzle:Vasebreaker 05 完成次数
236 4 Puzzle:Vasebreaker 06 完成次数
240 4 Puzzle:Vasebreaker 07 完成次数
244 4 Puzzle:Vasebreaker 08 完成次数
248 4 Puzzle:Vasebreaker 09 完成次数
252 4 Puzzle:Vasebreaker:Endless 最高记录
---------- Puzzle 数据II: I,Zombie
--------------------------------------------------------
256 4 Puzzle:I,Zombie 01 完成次数
260 4 Puzzle:I,Zombie 02 完成次数
264 4 Puzzle:I,Zombie 03 完成次数
268 4 Puzzle:I,Zombie 04 完成次数
272 4 Puzzle:I,Zombie 05 完成次数
276 4 Puzzle:I,Zombie 06 完成次数
280 4 Puzzle:I,Zombie 07 完成次数
284 4 Puzzle:I,Zombie 08 完成次数
288 4 Puzzle:I,Zombie 09 完成次数
292 4 Puzzle:I,Zombie:Endless 最高记录
SHOP 出售数据
------------------------------------------------------------------------------- 416 4 Gatling Pea 升级卡片已购买(00-01)
420 4 Twin Sunflower 升级卡片已购买(00-01)
424 4 Gloom-shroom 升级卡片已购买(00-01)
428 4 Cattail 升级卡片已购买(00-01)
432 4 Winter Melon 升级卡片已购买(00-01)
436 4 Gold Magnet 升级卡片已购买(00-01)
440 4 Spikerock 升级卡片已购买(00-01)
444 4 Cob Cannon 升级卡片已购买(00-01)
448 4 Imitater 卡片已购买
456 4 Marigold Sprout I 已购买(2000.1.1至今天数,2000.1.1为0)日期 460 4 Marigold Sprout II 已购买(2000.1.1至今天数,2000.1.1为0)日期 464 4 Marigold Sprout III 已购买(2000.1.1至今天数,2000.1.1为0)日期 468 4 Golden Watering Can 升级已购买(00-01)
472 4 Fertilizer 已购买(03E8-03FC,未开启为0000)剩余
476 4 Bug Spray 已购买(03E8-03FC,未开启为0000)剩余
480 4 Phonograph 升级已购买(00-01)
484 4 Gardening Glove 升级已购买(00-01)
488 4 Mushroom Garden 已购买(00-01)
492 4 Aquarium Garden 已购买(00-01)
496 4 Snail 已购买(4字节,未明,状态相关)
500 4 Seed Slot 已升级(00-04)
504 4 Pool Cleaners 升级已购买(00-01)
508 4 Roof Cleaners 升级已购买(00-01)
512 4 Roof Rake 已购买(00-03)剩余
520 4 Chocolate 已获得(03E8-03FC,未开启为0000)剩余
524 4 The Tree of Wisdom 已购买(00-01)
528 4 Tree Food 已购买(03E8-03FC,未开启为0000)剩余
532 4 Wall-nut First Aid 升级已购买(00-01)
---------- 其他数据
----------------------------------------------------------------------- 748 4 未知(00-01)
752 12 未知,可能与 The Tree of Wisdom 有关
768 4 Mini Game 开启提示标记(00-01)
788 4 Survival 开启提示标记(00-01)
796 4 Adventure 完成提示标记(00-01)
---------- Zen Garden 数据
----------------------------------------------------------------
816 4 Zen Garden 模式拥有花总数
820字节开始是 Zen Garden 模式下花的具体数据,每个花需要88字节
很多是吧,一点点慢慢来。
0字节就别改了,第8字节开始的4个字节记录的是你的金钱。这是个16进制的数据,比如你看到显示的值是FE 03 00 00,你读的时候要读成(Hex)000003FE,换算成十进制就是(Dec)1022。这里的1代表游戏中10的钱(最小的单位,一个银币是10)。也就是说,这个例子里你还有10220的余额。剩下的每个数都是如此。如果你觉得不可理解,建议去补习以下16进制的内容和文件的数据记录顺序。
里面有些数据,如巧克力的剩余量,由520字节开始的4个字节存储。在你还没有巧克力时,这个值是00 00 00 00,当你拾取第一个时,数据变成E9 03 00 00,就是十进制的1001。以后你用完巧克力,这个值最低也只降到E8 03 00 00,也就是十进制的1000。这要注意。还有些开关变量数据,都是布尔型的,只要设成1就OK。
其他还有一些Mini Game的数据,从文件中可以看到,当你第二次,第三次完成某一关卡时,这个数据会更新的,尽管从游戏中我们看不出任何不同。
游戏中植物卡片和道具如SHOP钥匙、图鉴的获得是ADVENTURE当前关卡有关,是自动获得的。
最后要说Zen Garden的花的数据,一个花需要88字节。
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 (00)00 00 00(00)00 00 00 (00)00 00 00(00)00 00 00
16 (00)00 00 00 00 00 00 00 FF FF FF FF 00 00 00 00
32 (00)00 00 00(00)00 00 00 00 00 00 00 00 00 00 00
48 00 00 00 00 00 00 00 00 FF FF FF FF 00 00 00 00
64 FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00
80 00 00 00 00 00 00 00 00
关注第 0 4 8 12 32 36 字节,也就是有括号的那些。0字节代表花的主类型,32字节代表花的亚类型,就是Marigold的颜色。TYPE(B1:L1) TYPE(VISI) TYPE(VISI,CN) SUBTYPE(B33:L1) SUBTYPE(VISI)
00(Hex) Peashooter 豌豆炮
01(Hex) Sunflower 太阳花
02(Hex) Cherry Bomb 樱桃炸弹
03(Hex) Wall-nut 小坚果
04(Hex) Potato Mine 地雷
05(Hex) Snow Pea 冰冻豌豆炮
06(Hex) Chomper 食人花
07(Hex) Repeater 连发豌豆炮
08(Hex) Puff-shroom 紫矮蘑菇
09(Hex) Sun-shroom 太阳蘑菇
0A(Hex) Fume-shroom 毒气蘑菇
0B(Hex) Grave Buster 坟墓杀手
0C(Hex) Hypno-shroom 迷乱蘑菇
0D(Hex) Scaredy-shroom 畏缩的蘑菇
0E(Hex) Ice-shroom 冰冻蘑菇
0F(Hex) Doom-shroom 末日蘑菇
10(Hex) Lily Pad 荷叶
11(Hex) Squash 跳瓜
12(Hex) Threepeater 三联豌豆炮
13(Hex) Tangle Kelp 海带
14(Hex) Jalapeno 辣椒
15(Hex) Spikeweed 棘刺草
16(Hex) Torchwood 燃烧的木桩
17(Hex) Tall-nut 大坚果
18(Hex) Sea-shroom 水生蘑菇
19(Hex) Plantern 灯
1A(Hex) Cactus 仙人掌
1B(Hex) Blover 三叶草
1C(Hex) Split Pea 双向豌豆炮
1D(Hex) Starfruit 星果
1E(Hex) Pumpkin 南瓜
1F(Hex) Magnet-shroom 磁力蘑菇
20(Hex) Cabbage-pult 卷心菜
21(Hex) Flower Pot 花盆
22(Hex) Kernel-pult 玉米
23(Hex) Coffee Bean 咖啡豆
24(Hex) Garlic 大蒜
25(Hex) Umbrella Leaf 遮蔽叶
26(Hex) Marigold 万寿菊
27(Hex) Melon-pult 西瓜
28(Hex) Gatling Pea 机枪豌豆炮
29(Hex) Twin Sunflower 孪生太阳花
2A(Hex) Gloom-shroom 爆毒蘑菇
2B(Hex) Cattail 猫尾花
2C(Hex) Winter Melon 冰冻西瓜
2D(Hex) Gold Magnet 金磁草
2E(Hex) Spikerock 石化棘刺
2F(Hex) Cob Cannon 玉米大炮
30(Hex) Imitater 拟形种子
31(Hex) Explode-o-nut 炸弹坚果
32(Hex) Gaint Wall-nut 巨型坚果
33(Hex) Sprout 花苗
而Marigold花的颜色
00(Hex) 白
01(Hex) #(无色)
02(Hex) 白
03(Hex) 品红
04(Hex) 橙
05(Hex) 浅红
06(Hex) 天青
07(Hex) 红
08(Hex) 蓝
09(Hex) 紫
0A(Hex) 浅紫
0B(Hex) 黄
0C(Hex) 浅绿
虽然此字节值为00和01是不会出错的,但是正常游戏都从02开始到0C的值,一共11种颜色。除了Marigold的花,这个值一律是0。
4字节的数据是花所在的花园。00是第一个花园,01是蘑菇园,02是水族馆。
8字节指的是位置。在蘑菇园和水族馆中,这个字节就代表了位置,大家可以尝试下每个值对应游戏中显示的位置。而在第一个花园里,这个字节和第12字节共同组成Grid坐标。左上是00,00,右下是07,03,一共8*3=32个格子。
36字节指的是花的状态。00表示幼苗,01是刚成长,02是第二次长大,03是最大。 最后就是那些被我标记成FF的区域,一共有3个,对此机制不明,只知道这个数据与浇花、施肥、长大、和满足的具体时间有关。这个数据的不当修改会导致花永远无法长大或者高兴。总之,这个值照抄其他正常花就可以了。