aardio是专用于桌面软件快速开发的新一代混合型编程语言 – 具有动态语言轻便、灵活的特性,而且又可以同时支持静态类型开发,象静态语言那样使用。aardio可以直接支持原生DLL,即使是外部EXE进程中的函数,也可以使用一句代码声明为普通的aardio函数对象( 原生call支持 ),aardio支持非常多的标准调用约定,例如 stdcall,cdecl,thiscall,fastcall,regparm(n) 等调用约定都可以支持。aardio虽然小,但支持的接口很丰富、可以支持com静态动态双接口,象VBS一样原生支持com对象。
以下是使用aardio写的修改单机游戏死亡阴影3的游戏数据源码,仅供学习aardio使用!新建一个aardio代码文件,把下面代码复制到代码文件中,就可直接运行!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| import win.ui; import process;
var hero3,jz; hero3=process.find("Heroes3.exe") if(hero3){ jz=hero3.readNumber(0x82B0BC) } else { win.msgbox("请您先运行游戏") }
var winform = win.form(text="死亡阴影修改器";left=300;right=440;bottom=247;max=false;parent=...) winform.add( button={cls="button";text="修改";left=33;top=202;right=105;bottom=237;z=1} )
bqm = { "水晶:";"水银:";"石头:";"金钱:";"木材:";"宝石:";"硫磺:" } py = { sj=Oxac;sy=Oxa0;st=Oxa4;jq=0xb4;mc=Ox9c;bs=0xb0;lh=Oxa8 } bjk = { "sj";"sy";"st";"jq";"mc";"bs";"lh" } tab = { } winform.button.oncommand = function(id,event){ for(i=1;#bjk;1){ if(winform["edit_"+bjk[ i ]].text != 0&&winform["edit_"+bjk[ i ]].text !=""){ table.push(tab,bjk[ i ]) } } for(i=1;#tab;1){ hero3.writeNumber(jz+py[tab[ i ]],winform["edit_"+tab[ i ]].text) } tab={} } var topp = 5 var bott = 25 for(i=1;#bqm;1){ winform.add( ["edit_"+bjk[ i ]]={num=1;bottom=bott;text="999";left=50;top=topp;z=3;right=114;edge=1;cls="edit" }) winform.add( ["static"+i]={ bottom=bott;right=52;left=16;text=bqm[ i ];top=topp;z=1;transparent=1;cls="static"}) topp+=24 bott+=24 } winform.show() win.loopMessage();
|
其中的基址0x82B0BC,及偏移量为什么是这个数据,就需要你使用ce自己分析了! 对aardio不熟悉可以查看在线手机 aardio使用手册