小惡魔 发表于 2012-4-23 10:42:07

『源码翻译』自动加血脚本 [简单cleo讲解]

本帖最后由 小惡魔A.C.G 于 2012-4-23 13:18 编辑

源码:{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
thread 'C'
:c_11
WAIT 600
0A8D: 0@ = read_memory 9867535 size 4 virtual_protect 0
if
0@ == 1397310464
else_jump @C_11
0A8C: write_memory 9867536 size 4 value 1128354304 virtual_protect 0
wait 0
0A8D: 0@ = read_memory 9867535 size 4 virtual_protect 0
if
   not 0@ == 1397310464
03E5: show_text_box 'CHEAT3'// Cheat activated
jump @c_44
:c_44
wait 100
11@ = 0
18@ = Actor.Health($PLAYER_ACTOR)
jump @c_77
:c_77
11@ += 1
if
11@ > 1000
jf @c_77
18@ += 1
Actor.Health($PLAYER_ACTOR) = 18@
11@ = 0
0A8D: 0@ = read_memory 9867535 size 4 virtual_protect 0
if
0@ == 1397310464
else_jump @C_44
0A8C: write_memory 9867536 size 4 value 1128354304 virtual_protect 0
wait 0
0A8D: 0@ = read_memory 9867535 size 4 virtual_protect 0
if
   not 0@ == 1397310464
03E5: show_text_box 'CHEAT1'// Cheat activated
wait 400
jump @c_11
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
thread 'C'
:C_11
wait 600 //等600ms
0A8D: 0@ = read_memory 9867535 size 4 virtual_protect 0 // 读取内存地址9867535(连续输入4字符的地址) 为4个字节 定义为0@   
if
0@ == 1397310464// 如果输入SID(10进制) 换算:acii码转16进制(取四个字节,可用00代替 eg:53637300)最后转成10进制
else_jump @C_11    // 否者跳回开头
0A8C: write_memory 9867536 size 4 value 1128354304 virtual_protect 0// 将0@写入地址9867535
wait 0
0A8D: 0@ = read_memory 9867535 size 4 virtual_protect 0   // 读取内存地址9867535 为4个字节 定义为0@
if
   not 0@ == 1397310464   // 如果0@不等于 1397310464
03E5: show_text_box 'CHEAT3'//显示作弊字符
jump @C_117
:C_117
wait 100   //等100ms
11@ = 0   // 时间定义为11@并等于0
18@ = Actor.Health($PLAYER_ACTOR)// 主角血量定义为18@
jump @C_143
:C_143
11@ += 1   // 时间11@加1ms再定义为11@(此时11@ = 1)
if
11@ > 1000   // 若11@大于1000ms
else_jump @C_143    // 否则跳回上面的:c_143
18@ += 1    // 18@加1(血加1)
Actor.Health($PLAYER_ACTOR) = 18@   //定义18@为主角血量
11@ = 0   // 重新定义时间为0
{:soso__13096517108827562063_1:}{:soso__13096517108827562063_1:}{:soso__13096517108827562063_1:}分割线{:soso__13096517108827562063_1:}{:soso__13096517108827562063_1:}{:soso__13096517108827562063_1:}

0A8D: 0@ = read_memory 9867535 size 4 virtual_protect 0 // 读取内存地址9867535(连续输入4字符的地址) 为4个字节 定义为0@   
if
0@ == 1397310464// 如果输入SID(10进制) 换算:acii码转16进制(取四个字节,可用00代替 eg:53637300)最后转成10进制
else_jump @C_11    // 否者跳回开头
0A8C: write_memory 9867536 size 4 value 1128354304 virtual_protect 0// 将0@写入地址9867535
wait 0
0A8D: 0@ = read_memory 9867535 size 4 virtual_protect 0   // 读取内存地址9867535 为4个字节 定义为0@
if
   not 0@ == 1397310464   // 如果0@不等于 1397310464
03E5: show_text_box 'CHEAT1'//显示关闭作弊字符
wait 400//等400ms(为了延迟循环,避免无法关闭作弊)
jump @C_11   //跳回开头
----------------------------------

好!!完美的结束了


就那么简单啦!请认真看下{:soso__3788076618484431928_2:}

为主的祥助 发表于 2012-4-23 10:48:05

好帖支持!
PS :内存地址的读取是不是按照那个内存地址表来搞
上面列举了一些内存地址和代表的功能

小惡魔 发表于 2012-4-23 10:49:17

【游骑兵】天涯 发表于 2012-4-23 10:48 static/image/common/back.gif
好帖支持!
PS :内存地址的读取是不是按照那个内存地址表来搞
上面列举了一些内存地址和代表的功能

你发的那个?

kwanz 发表于 2012-4-23 11:26:13

【游骑兵】天涯 发表于 2012-4-23 10:48
好帖支持!
PS :内存地址的读取是不是按照那个内存地址表来搞
上面列举了一些内存地址和代表的功能

恩差不多   长篇教程有讲内存操作 另外我稍后会翻译Seemann的Sa memory handling

为主的祥助 发表于 2012-4-23 11:26:32

外网看到的那个

kami 发表于 2012-4-23 13:57:51

支持大家的努力工作

chaoyi45 发表于 2012-4-23 14:02:40

眼花缭乱!{:soso_e134:}

锁丨眉 发表于 2012-4-23 15:05:58

围观。。。围观不懂。

izzy 发表于 2012-4-23 17:21:21

锁丨眉 发表于 2012-4-23 15:05围观。。。围观不懂。

其實這個腳本原理就是設定時間為0,然後判斷時間是否過600毫秒,是就加血
簡單來說就是每過一段時間自動加一次血
页: [1]
查看完整版本: 『源码翻译』自动加血脚本 [简单cleo讲解]