您的位置: 單機 > 攻略 > 圖文攻略 > 攻略詳情

哥薩克3基礎(chǔ)MOD教程 哥薩克3單位屬性修改教程

時間:2016-10-09 14:51:19
  • 來源:3DM論壇-yythero
  • 作者:Viiaa
  • 編輯:Viiaa
0

無聊研究了一下哥薩克的MOD制作,由于官方論壇上也沒有給出完整的教程所以,這算是第一篇教程了吧。無聊可以改改單位數(shù)據(jù)自己用地圖編輯器玩。

由于哥薩克3是用Delphi開發(fā)的,因此和平常用C++開發(fā)的游戲完全不一樣,你需要一點Delphi的基本語法知識免得出現(xiàn)代碼錯誤。

推薦使用notepad++或者其他能夠高亮Pascal語言的編輯器。

哥薩克3單位屬性修改教程

目前我還沒研究出如何修改單位移動速度,不過你可以修改單位的攻擊力、生命、護甲、射程、射速和散布等屬性。

首先打開X:\steam\steamapps\common\Cossacks 3\data\scripts\lib文件夾,盜版自己找下對應(yīng)的目錄。這里是存儲的游戲基本數(shù)據(jù),根據(jù)文件名稱可以判斷文件的功能。

打開unit.script文件,搜索你需要修改的單位名稱,這里以“阿爾及利亞弓箭手”為例objbase.maxhp := 30;為單位的生命值。

找到SetObjBaseWeapon(objprop, objbase, 0, 199, 295, 300, 500, 0, 100000, gc_obj_weapon_kind_arrow, True);

這個就是阿爾及利亞弓箭手的主武器,即普通弓箭如果你不知道非數(shù)字文字的意思,你不深入就不要去改了,你也可以自行去研究相關(guān)腳本關(guān)聯(lián)的關(guān)鍵字。

橙色文字對應(yīng)的屬性從左到右為“武器索引”、“傷害”、“攻擊間隔”、“最小射程”、“最大射程”、“最小搜敵范圍”、“最大搜敵范圍”。

范圍有關(guān)的單位都是像素,攻擊間隔單位為幀。

往下有3個屬性

objprop.weapon[0].weaponsid := 'STRELA';

objbase.weapon[0].dispertion := _misc_PixelsToTiles(250);

objprop.weapon[0].addradius := _misc_PixelsToTiles(32);

以上3個屬性,0對應(yīng)的武器索引。

第一個為聲音即武器音效,不建議修改除非你知道關(guān)聯(lián)名稱

第二個為武器散布程度250像素

第三個為附加范圍,估計是指的武器的碰撞體積單位也是像素

阿爾及利亞弓箭手有兩種武器,第二種是對付建筑使用的火箭

objprop.weapon[1].attmask := objprop.weapon[1].attmask or (1 shl gc_obj_material_building);

objprop.weapon[1].attmask := objprop.weapon[1].attmask or (1 shl gc_obj_material_wood);

objprop.weapon[1].attmask := objprop.weapon[1].attmask or (1 shl gc_obj_material_woodwall);

這里只介紹以上3個新的屬性

這是武器篩選遮罩,即限定第二種武器可以攻擊建筑、木頭和木頭城墻

以上就是基本武器數(shù)值修改

SetObjBasePrice(objbase, 10, 2, 0, 0, 0, 0);

為設(shè)定單位成本,數(shù)字對應(yīng)游戲的6種資源,順序木頭、糧草、石頭、金子、鐵、煤炭

SetObjBaseSearchBuildVisionScore(objprop, objbase, 550, 25, 2, 15);

為設(shè)定搜索范圍(像素),建造時間(毫秒),單位視野和得分

SetObjBaseProtection(objbase, 2, 2, 5, 255, 1, 7);

設(shè)置單位護甲,弓箭手沒有這條因此所有屬性都是0。

數(shù)值對應(yīng)劈砍防護、長矛防護、火槍防護、葡萄彈防護、弓箭防護和炮彈防護。

if (bmercenary) then至else區(qū)塊內(nèi)的函數(shù)為設(shè)置傭兵單位的屬性,傭兵可以通過bmercenary進行判斷。

以上就是修改的基本教程,你也許發(fā)現(xiàn)了修改完畢后4種弓箭手都變了。沒錯哥薩克把4種弓箭手放在了一個定義里。


你可以通過拆分的方式將4種弓箭手拆分為多個過程進行,這需要一點Pascal語言的語法了。你可以參照其他單位的設(shè)定進行修改。

特別注意的是國家判斷只能判斷后綴帶有國家后綴的單位比如archertur后面的tur就是土耳其的代碼可以通過case nation of進行判斷。

但是如果單位沒有那種后綴是沒法進行國家判定的。


就是這樣,祝大家游戲開心,萬事順意。

8.3
已有6人評分 您還未評分!
  • 類型:即時戰(zhàn)略
  • 發(fā)行:GSC Game World
  • 發(fā)售:2016-09-20
  • 開發(fā):GSC Game World
  • 語言:英文
  • 平臺:PC
  • 標簽:戰(zhàn)爭,歷史

玩家點評 0人參與,0條評論)

收藏
違法和不良信息舉報
分享:

熱門評論

全部評論

3DM自運營游戲推薦 更多+