最近闲来无事发现周围的朋友都在玩《植物大战僵尸》的游戏!于是动了制作这游戏工具的念头!虽然在网上同类工具很多 但是用C#写的我几乎看不到!所以我想用C#写一个!
首先用CE或者OD或者其他反汇编工具找出游戏的内存基址!
游戏内存基址:base = 0x006A9EC0
游戏阳光地址:[base+0x768]+0x5560
游戏金钱地址:[base+0x82C]+0x28
游戏关卡地址:[base+0x82C]+0x24 //关卡如:A-B 实际值为:(A-1)×10+B
至于如何获取这些地址不在我们这论坛研究的范围中!
对了我是用工具vs2008编写的!
新建窗体:
-
C# code
-
using System; using System.Drawing; using System.Text; using System.Windows.Forms; namespace PlantsVsZombiesTool { /// <summary> /// /// </summary> public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load( object sender, EventArgs e) { } // 启动无线阳光 private void btnGet_Click( object sender, EventArgs e) { if (Helper.GetPidByProcessName(processName) == 0 ) { MessageBox.Show( " 哥们启用之前游戏总该运行吧! " ); return ; } if (btnGet.Text == " 启用-阳光无限 " ) { timer1.Enabled = true ; btnGet.Text = " 关闭-阳光无限 " ; } else { timer1.Enabled = false ; btnGet.Text = " 启用-阳光无限 " ; } } private void timer1_Tick( object sender, EventArgs e) { if (Helper.GetPidByProcessName(processName) == 0 ) { timer1.Enabled = false ; btnGet.Text = " 启用-阳光无限 " ; } int address = ReadMemoryValue(baseAddress); // 读取基址(该地址不会改变) address = address + 0x768 ;