Cleo

热度:6046138

Cleo的最新歌曲

Cleo的个人资料

Whats ASI

它们(用于GTA的)都是动态链接库,换了个扩展名。换言之可以使用任何编写动态链接库的方法。要编写asi,建立一个dll工程,修改游戏的代码写在DllMain函数内。

#includewindows.h

BOOLAPIENTRYDllMain(HANDLEhDllHandle,DWORDdwReason,LPVOIDlpreserved)
{
if(dwReason==DLL_PROCESS_ATTACH)//不要改条件
{
//修改游戏的代码
}
returnTRUE;
}
这是C++的写法 要写出实用的asi插件,要学习汇编,逆向分析,一门编程语言。--熟悉游戏引擎和DirectX编程是成为大神的必经之路。 GTA3和VC自身就能加载asi,GTASA需要安装加载器


功能

opcodesCLEO为脚本编写者提供了许多有用的opcode(GTA3、VC各27个,SA100个),注意不能在main.scm里用。脚本CLEO的脚本是一些扩展名为.cs(custom script)的文件。用sanny builder编写。开始运行游戏的时候,CLEO会检测cleo文件夹下的所有该类型的文件并加载。成功后,脚本就开始执行其各自的功能了。避免了直接修改main.scm产生的存档不能用的问题。一般cleo脚本的安装非常简单:只需复制所有文件到cleo文件夹即可。删除对应的文件,你就卸载了这些脚本。你可以在网上各种网站或者论坛下载到你所需的插件。目前国内作者已知制作的脚本多达700-800个。插件cleo4提供了SDK让用户编写新opcode,扩展名为.cleo,放在cleo文件夹内即可生效,cleo插件也是动态链接库。


安装

您也可以下载独立的存档或自动安装程序。安装CLEO非常简单,只需解压缩到游戏根目录或运行安装程序,并按照其指示进行。 您还可以安装Sanny Builder。运行Sanny Builder,选择好游戏文件夹。您将会看到CLEO这个词在状态栏显示为红色。阅读许可协议并按下安装按钮。


教程

引言:CLEO的环境和基本说明 通过CLEO可以实现很多以前根本不敢想的功能(但不是CLEO的功劳),比如让游戏主角在天上飞,海里的鲨鱼会吃人,像蜘蛛侠一样爬到墙上,发射六脉神剑等等,可以说是其乐无穷的一种MOD。 想在游戏中使用CLEO功能,首先需要安装CLEO环境,去CLEO的主页下载最新的cleo4,下载后安装到你的游戏目录下,这时打开游戏目录,你会发现多了一个CLEO文件夹。以后你在网上下载的CLEO就可以放在这个文件夹下了。注意只有扩展名为.cs或.cm的文件才能放在CLEO目录,.fxt文件要放在CLEO_TEXT目录下。游戏运行时加载所有cs文件,玩家可以使用全部功能。 CLEO功能主文件的扩展名是cs(CLEO Script),一些任务类CLEO还有扩展名为cm(custom mission)的任务文件,放在CLEO文件夹下;此外还可能有扩展名为fxt的文件,是CLEO中所需要的文本描述,可以用记事本编辑,放在CLEO\CLEO_TEXT文件夹下;如果还有扩展名为txd的,放在游戏目录下的models\txd文件夹或models文件夹下。若还有其余文件请参考该MOD的说明。 在游戏中使用CLEO功能,需要详细阅读帮助文件,知道其功能,使用功能的方法(快捷键或作弊码),使用功能所需要的条件(步行或乘车),以及一些可能导致游戏错误的BUG的说明,尽量避免在这些情况下使用CLEO,这是很重要的,免得你在没存档之前错误退出而捶胸顿足。 CLEO的修改和制作需要一款软件:SannyBuilder(简称SB),在其官网上可以免费下载,安装完成以后就可以使用了。如果出错需要在Tools-Options里设置游戏的安装路径。 SB可以打开main.scm文件,.cs文件,.cm文件以及所有的文本文件。在打开文本文件的时候就是一个纯粹的文本编辑器;在打开CLEO文件和MAIN文件时先自动反编译出源代码存为txt放在当前目录,再打开该txt,我们做好修改以后,需要按下F7键,程序完成三个步骤:保存当前文档(txt),编译成CLEO的cs文件或main.scm文件,复制该文件到游戏目录(如果不在原始目录的话),cs和cm放到CLEO下,main.scm放到Script下,总之各归各位。大概就是这么一个流程。


范例

这是一个代码很简单的CLEO,主文件名是repair.cs,主要功能是在车上的时候,按Y键可以把车修好,就不用去喷漆处了。 以下是该CLEO源码: // This file was decompiled using SASCM.INI published by Seemann (files/SASCM.rar) on 13.10.2007 {$VERSION 3.1.0027} //无关紧要的内容,自己编写不会出现这些 {$CLEO .cs} //它标志着这是一个CLEO文件,编译文件的扩展名是cs //-------------MAIN--------------- thread ENGINE //命名线程,可有可无,起个名字让其他cleo能找到你 :ENGINE_11 //这是标签,为语句跳转所设 wait 10 //等待10毫秒 if //如果,条件判断 Player.Defined($PLAYER_CHAR) //条件:玩家是否定义?死了就是false jf @ENGINE_11 //如果条件不满足的话跳转到ENGINE_11,满足的话继续执行 if and //多条件必须同时满足,表示与的关系 0449: actor $PLAYER_ACTOR in_a_car //主角是否在车里 00E1: player 0 pressed_key 11 //是否按下了功能键11(游戏默认是Y键) jf @ENGINE_11 //如果以上条件不满足就跳转到标签11 03C0: $CAR_REP = actor $PLAYER_ACTOR car // $CAR_REP就代表主角坐着的车了 0A30: repair_car $CAR_REP //修复自定义车辆$CAR_REP jump @ENGINE_11 //无条件跳到开头 注:不同游戏的opcode不同 阅读Sanny Builder的帮助文档学习基本知识,所以英语必须会。


CLEO编写

当玩家在制作一个CLEO的cs脚本的时候,需要注意一些细节,比如: 1、使用循环时,不能直接jf到条件判断上,会导致游戏卡住(没有提示),请在if之前加等待命令

:thread
wait0
if
condition
jf@thread//freeze
2、并不是创作一个很好的功能就必须使用大量的变量和各种高端代码,这是一个误区,opcode语句就像积木一样,并非需要把积木用雕刻刀雕琢的活灵活现才能做出好CLEO,积木的更大亮点在于拼接,利用各种语句和循环技巧进行组装调用,从而获得更多新的灵感和功能,这才是正规发展方向,然后才是高端技巧的掌握和学习,简单讲,就是CLEO需要创意大于技巧。 3、玩家要随时注意更新自己的OPCODE语句库,因为原版的sanny builder并没有搜集齐所有的OPCODE指令,这就需要玩家在网上各地寻找自己需要的资源并加以整合了。 4、学会使用障眼法,例如一个汽车发射炮弹的cleo,原理可以是在汽车上面创建一个人物,给人物武器,然后让人物开炮,最后隐藏人物,以此就达成了汽车开炮的目的。学会“高端技巧”之后,直接调用游戏制造导弹的方法。 5、不要在cleo里使用全局变量,会把main.scm里的变量覆盖,主角等唯一物体除外


Cleo档案之演唱过的歌曲

  • 1970-01-01歌曲: