Cleo[單機遊戲《俠盜獵車手》外掛程式]

Cleo[單機遊戲《俠盜獵車手》外掛程式]
Cleo[單機遊戲《俠盜獵車手》外掛程式]
更多義項 ▼ 收起列表 ▲

CLEO是套用於Rockstar Games出品的單機遊戲《俠盜獵車手》的外掛程式,在遊戲中擴展編碼的可能性。最新版本為CLEO 4.3 ,官方更新於2014年3月。CLEO的腳本是一些擴展名為.cs的sanny builder編寫腳本。

What'sASI

它們(用於GTA的)都是動態程式庫,換了個擴展名。換言之可以使用任何編寫動態程式庫的方法。要編寫asi,建立一個dll工程,修改遊戲的代碼寫在DllMain函式內。

這是C++的寫法

要寫出實用的asi外掛程式,要學習彙編,逆向分析,一門程式語言。--熟悉遊戲引擎和DirectX編程是成為大神的必經之路。

GTA3和VC自身就能載入asi,GTASA需要安裝載入器

功能

opcodes

CLEO為腳本編寫者提供了許多有用的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源碼:

//ThisfilewasdecompiledusingSASCM.INIpublishedbySeemann(files/SASCM.rar)on13.10.2007

{$VERSION3.1.0027}

{$CLEO.cs}

//-------------MAIN---------------

//注意以上代碼不可缺少,它標誌著這是一個CLEO檔案,而不是main.scm檔案

thread'ENGINE'//引號里的是CLEO的名稱,必須保證不會和已有的CLEO重名

:ENGINE_11//這是標籤,為語句跳轉所設

wait10//等待10毫秒

if//如果,條件判斷

Player.Defined($PLAYER_CHAR)//玩家是否定義?真正含義不解,沒有這個判斷也行

jf@ENGINE_11//如果條件不滿足的話跳轉到ENGINE_11,滿足的話繼續執行

ifand//多條件必須同時滿足,表示與的關係

0449:actor$PLAYER_ACTORin_a_car//主角是否在車裡

00E1:player0pressed_key11//是否按下了功能鍵11(遊戲默認是Y鍵)

jf@ENGINE_11//如果以上條件不滿足就跳轉到標籤11

03C0:$CAR_REP=actor$PLAYER_ACTORcar//定義主角所乘車輛的句柄變數,把主角乘坐的車定義為$CAR_REP

0A30:repair_car$CAR_REP//修復自定義車輛$CAR_REP

jump@ENGINE_11//無條件跳轉

0A93:end_custom_thread//結束01B2:give_actor2@weapon28ammo60//Loadtheweaponmodelbeforeusingthis//給對方設定武器01B9:set_actor2@armed_weapon_to0//武器最大彈藥數量

CLEO編寫

當玩家在製作一個CLEO的cs腳本的時候,需要注意一些細節,比如:

1、使用循環時,不能直接jf到條件判斷上,會導致遊戲卡住(沒有提示),請在if之前加等待命令

2、並不是創作一個很好的功能就必須使用大量的變數和各種高端代碼,這是一個誤區,opcode語句就像積木一樣,並非需要把積木用雕刻刀雕琢的活靈活現才能做出好CLEO,積木的更大亮點在於拼接,利用各種語句和循環技巧進行組裝調用,從而獲得更多新的靈感和功能,這才是正規發展方向,然後才是高端技巧的掌握和學習,簡單講,就是CLEO需要創意大於技巧。

3、玩家要隨時注意更新自己的OPCODE語句庫,因為原版的sanny builder並沒有蒐集齊所有的OPCODE指令,這就需要玩家在網上各地尋找自己需要的資源並加以整合了。

4、學會使用障眼法,例如一個汽車發射炮彈的cleo,原理可以是在汽車上面創建一個人物,給人物武器,然後讓人物開炮,最後隱藏人物,以此就達成了汽車開炮的目的。學會“高端技巧”之後,直接調用遊戲製造飛彈的方法。

5、不要在cleo里使用全局變數,會把main.scm里的變數復蓋,主角等唯一物體除外

相關詞條

相關搜尋

熱門詞條

聯絡我們