跳至內容
RA2DIY-WIKI 当前处于维护模式:页面上的内容随时可能发生更改且不会事先告知。

5.武器系統全解


關於擴展引擎的相關機制請查詢其說明書。

對於軍事愛好者而言的兵器裝備,以遊戲來看,都稱為單位:一切飛機坦克建築士兵都被稱為『單位』而不是武器,統稱TechnoTypes。

武器:指WeaponTypes。武器系統由三大組件構成。對於基礎入門而言,姑且可以認為是Primary,Secondary,ElitePrimary,EliteSecondary,DeathWeapon,Weapon12345678里填寫的註冊名。

如果不涉及部署,則主武器副武器的區分,能,且只能,區分對空對地誰開火,以及根據彈頭比例判定誰開火,如果主武器不能就用副武器

GI,GGI,SCHP通過部署切換主副武器

YURI,DESO,CAOS,YURIPR通過部署釋放武器

2.三大組件

簡單說來,武器系統的組成是這樣


          /拋射體

武器名

          \彈頭

三個組件設定範圍如下

在武器里設定:攻擊力,射程,開火頻率,開火聲音,   並指定關聯的拋射體和彈頭。

在拋射體裡設定:主要是有形拋射體的圖形,攻擊範圍,可選的濺射和空爆武器

在彈頭裡設定:主要是裝有此彈頭的武器對於不同裝甲類型的傷害值比例,爆炸動畫,步兵死亡動畫,影響範圍。

詳細注釋可以參考武器系統代碼詞典。

一切遊戲內出現的動畫都在ART里,所有對於動畫的引用都必須填寫ART里的註冊名,動畫要在rules里的[Animations]註冊。

不知道什麼是什麼的話,直接複製你看上的某單位的武器的彈頭的動畫代碼AnimList。更加詳細的做法請看2019年版教程。

原版注釋提供的語句並非每一句都適合於RA2引擎,有些是TS引擎殘留,已經失效了。建議查代碼詞典弄清楚具體的效果。

真實武器中最重要的殺傷範圍、射程、射速等屬性,在給武器代碼賦值時候都是最簡單的一個數字,拿去人前顯聖就是你厲害。

在每一部分的代碼里又可以分成兩類,圖像控制代碼和屬性代碼,很多絢麗的武器只是使用了華麗的爆炸動畫而已,和殺傷力無關。圖形控制代碼完全不影響武器的威力,可以一拳打出一個核彈,也可以默不作聲殺人於無形之中。真正起效的代碼都是屬性代碼。所以,為了寫出絢麗的武器,只要學會運用圖形控制代碼就可以了。

查看武器的途徑是首先根據某個單位的註冊名找到單位代碼,然後由primary=之類找到武器名,再由武器名中的Projectile=和Warhead=找到拋射體和彈頭。

如此操作一次,弄清楚這三個組件的查找方式即可。單位-武器-拋射體和彈頭

3.武器設計

在你完全弄清楚了武器系統的結構之後,你就可以寫出自己的武器了。最最簡單的辦法是複製一段原來的武器代碼的所有部分,然後更改註冊名,這已經是一個全新的武器了。

把某個單位的武器關聯改成它,就是換好了武器。當然,因為是完全複製,實際運用起來並無任何區別。

然後你就可以試試修改射程,傷害值,這樣進入遊戲時候已經有所不同了。

然後你可以試試修改拋射體,也就是找一個自己喜歡的單位,把它的武器的拋射體名字抄下來,換到剛才寫的武器拋射體裡。

同樣,你也可以複製一個拋射體,改名,做出一個新的。彈頭同理。不過彈頭要在[Warheads]下面登記。。

參考以上內容,自己弄出一個帶有全新拋射體和彈頭的武器就算合格。

***************************************************************************************************************************************

這已經完成了武器系統的掃盲,下面是進階內容。

1.四大拋射體類型

帶有Inviso=yes的拋射體為無形拋射體。特性是瞬間擊中,典型如原版中所有機槍類武器,不會miss也不存在飛行時間

帶有Arcing=yes的拋射體為弧線拋射體。特性是速度不可控制,攻擊移動目標時可能miss。典型如原版所有炮類武器

帶有ROT=(數字大小)的拋射體為導彈類武器,特性是可以追蹤。

帶有Vertical=yes的拋射體為垂直拋射體,就是飛艇的炸彈。

如果你實在搞不清這些概念,和別人對話時儘量使用原代碼,不會導致誤解。

四大類型互相衝突,一個拋射體只能有一種性質。性質和圖像毫無關係,圖形是炮彈的拋射體也可以追蹤,只要把Arcing換成ROT。

沒有看得見圖像的炮彈也不會瞬間擊中,只要它的拋射體還是Arcing。

Inviso=yes和Image=INVISO不是一回事,前者是拋射體性質,後者僅僅是個圖形控制代碼。

2.非彈頭特效

激光,電流,輻射,電波並非是拋射體性質,它們是武器代碼的一部分,表示此武器除了使用拋射體部分中寫的圖形之外還使用這些系統繪製的武器特效。

通常這些武器都是瞬間拋射體。當然,一個帶有短暫激光效果的導彈也能做出什麼「激光制導」的效果來。

在Art中可以設定拋射體尾煙。關鍵詞Trailer。可以是線性尾煙,如普通的導彈的白煙,也可以是連續動畫尾煙,如V3的動畫煙霧。

3.原版特殊武器

濺射,空爆武器    典型的濺射武器為光棱,特點是在主武器擊中敵人後產生幾個預先設定好的子武器隨機攻擊周圍物體。關鍵代碼ShrapnelWeapon=和ShrapnelCount=。

濺射武器必須擊中步兵(Infantry)或載具(Vehicle)和戰機(Aircraft)類或樹木和路燈(Terrain)才能產生子武器。

典型的空爆武器原版中並沒有直接體現。關鍵代碼Airburst=yes和AirburstWeapon=。

Cluster=在原版引擎空爆中無效,鎖定為⑨。兩類都填武器名。

Ares新增一類分裂武器Splits,實際上是特殊的空爆,詳見Ares說明書

注意,空爆和濺射的子武器必須作為某單位的某一武器。

這是因為引擎並不會去登記每一個看起來像一段武器INI的東西,而是順着單位去查看單位使用的武器。只有一個武器被單位使用,遊戲內才存在這個武器,而ShrapnelWeapon和AirburstWeapon後的武器如果沒有被直接使用,遊戲內就不存在這些東西,導致遊戲試圖創建一個它自己不知道屬性的武器,於是就崩潰了。

Ares提供了可新增的WeaponTypes註冊列表來解決問題

動畫傷害:ART里的動畫也是可以填寫Damage=的,但是動畫傷害在原版引擎開放度極低。動畫彈頭被鎖定為Fire2,如果動畫名字是INVISO的話就鎖定為Super。

ARES里Warhead在動畫裡也有效了。動畫傷害的作用方式是每幀都產生damage中寫的傷害,可以用一個一幀空動畫產生傷害,用Next=來播放真正需要的動畫。也可以在動畫傷害中直接調用武器。可以參考Ares說明書。

比如在某個武器的開火動畫上寫上很大的傷害,這個單位就會在開火的同時殺死自己。

這樣可以做一個「自殺」武器。或者是開火後用一個空白動畫Loop若干幀後Next出一個有效殺傷動畫自殺,是延時自殺。當然這已經是過時的做法了!

                             

子機發射器:這些武器並非真正的造成傷害的武器,而是發射一種飛機,由這種飛機來攻擊。

子機有兩種模式,導彈型和戰機型。導彈型子機和一般武器型導彈的區別就是子機導彈是可以攔截的。

子機導彈的傷害數據和飛行數據在rules的general部分里,在原版引擎下你絕不可能添加任何新的子機導彈,在ares的基礎上才可以。

普通的戰機發射器參考原版航母。

航母在原版不可以是飛行的,回收必須落地。ares可使用飛行航母。

子機發射器武器發射的子機和武器本身無關,子機的類別在發射器使用者里指定。子機發射器設定對空的話航母會對空軍發射子機,當然子機自身需要也能對空才會攻擊。

子機導彈和普通子機的區別在於普通子機有Fighter=yes

輻射:輻射兵展開。輻射代碼是RadLevel=,原版中不得小於100。輻射是獨立於三大組件的,只是必須寫在武器主體部分。

輻射的爆發面積由帶有輻射代碼的武器主體的彈頭面積決定。

ARES暫不支持自定義輻射,phobs支持。

混亂,心控武器:神經車和尤里的彈頭決定。混亂彈頭的武器傷害為混亂幀數,控制彈頭的武器傷害為控制數目,僅對YR引擎有效。 蓋特系統:

蓋特系統:

每個使用蓋特系統的單位都有一個計數器,當單位保持在攻擊狀態時,計數器每幀增加RateUp的數值,反之,每幀減少RateDown。

如果RateDown的數值為0,則只要停止攻擊立刻回到初始檔位。

單位在計數器到達第一檔之前使用12武器,第二檔之前用34武器,第三檔之前56武器,第四檔之前……同理。

只要越過倒數第二檔的計數器值,就會開始最終武器。最高檔位的數值只不過和ratedown一起決定了如果進入最後階段,停止攻擊後多久掉檔。

如果是NPEXT或Ares的循環蓋特,則決定下一循環開始之前保持最高檔多久。

蓋特系統最高支持到12武器,也就是最多Stage6。

單數序列武器對地,雙數序列武器對空。

但是蓋特系統作為一個時序性控制器已經非常原始,堅持用蓋特的話你還是山頂洞人。

粒子武器:最最熟悉的就是共灰的噴火碉堡。那就是一個最最典型的純火焰粒子武器。其他類型如病狙的死亡動畫刷粒子,還有維修車的維修火花,都是帶有粒子的武器。

能作為傷害的是軌道炮(Railgun),火焰(Fire)和毒氣(Gas)。注意這三種名字是一類表現模式的描述,而不是對其動畫的說明。

像病狙的毒氣一樣亂飄的火苗是gas而不是fire。粒子系統鑑定的唯一依據是運行模式。

粒子系統說明http://bbs.ra2diy.com/forum.php?mod=viewthread&tid=12917

粒子系統的調用參考原有的武器:FireballLauncher,LtRail,而病狙刷粒子的關鍵在於VIRUSD的ART設定中。

動畫刷粒子的語句適合一切動畫。開火動畫刷粒子的話開火動畫最多一幀。這種情況就是1幀空動畫刷粒子然後Next的事情了。粒子都不存在所有者,被粒子殺死的單位不計經驗。

聲波武器:海豚,特色是穿透,經過的體積越大傷害越大。注意,RA2引擎中不存在物理體積,看起來再大的坦克占地都只有一格。有體積的只有建築。

運動模式波:磁電,強制將對方的運動模式修改為彈頭裡寫的那一種,無視speed。

見http://tieba.baidu.com/f?kz=153865085。jumpjet和超時空有效,因為這兩種模式剛好無視speed。

飛碟吸:只有jumpjet載具可以有效使用飛碟吸

伊文炸彈:只有步兵類單位可以有效使用伊文炸彈。Ares已經解鎖。

**************************************************

特殊武器

碎片武器:除了上述幾種非常規武器之外還有更加非常規武器,因為碎片本身根本就不是拿來做武器的,這是一種「超常運用」。當然2025年你還在玩碎片當武器的話你就是山頂洞人。

詳細內容在DIY。http://bbs.ra2diy.com/forum.php?mod=viewthread&tid=878和http://bbs.ra2diy.com/forum.php?mod=viewthread&tid=14036

多重彈頭武器(適用於ARES環境)

在ARES中,空爆拋射體的數量不再恆定為⑨了,而是可以定義空爆覆蓋範圍,所以可以空爆出一種垂直拋射體的武器,讓其原地爆炸。

這就是爆出第二種彈頭了。這樣你可以做出帶有混亂效果又有常規傷害的武器,之類。

更巧妙的是,拋射體可以通過空爆套上第二武器,第二武器又可以刷出第三武器,……就是無限彈頭。

當然,這已經是十年前的把戲了。現代擴展引擎中有的是辦法來製造多重效果。可以參照kratos或phobos說明書。

多層濺射武器

常規的濺射武器的子武器再設定濺射就是多層濺射。SuperComet就是個兩層濺射。無聊的話,做個10層濺射都沒問題。

濺射和空爆的武器如果寫的還是自己,自體濺射的話,會產生可怕的後果,不怕死機的可以自己試試。

刷兵武器(僅限於非原版引擎)

即基因突變的原理,動畫生成單位,可在全局新增

用多重彈頭武器,第一層刷出一個兵,後續層把這個兵殺死突變為自己的兵,因為過程是瞬間完成的,看起來刷的其實是自己的兵。

Ares可直接刷出自己的兵。

注意,如果主武器是自殺武器,開火後單位立刻死亡,多層武器將不會展開。這種情況只能用動畫延時自殺。此外,刷出來的兵可以作為濺射物。

這是十年前的把戲了。Phobos的動畫可以直接生成單位,kratos可以直接讓拋射體變單位。

補充材料.障眼法

是什麼讓我們區分一個單位?從一個玩家的角度來看,不過是單位本身素材,語音,運動方式,載具運動聲音,開火聲音,炮彈,彈頭動畫。

所謂障眼法,就是對這些東西的修改,從而達成完全不同的效果。典型的例子是狂風和灰熊,兩者本質上沒有任何區別,只是車的素材和開火report不同而已。絕大多數mod中的絕大多數單位都只是換皮犀牛和換皮動員兵,不要認為它們有任何獨特之處。

記住幾條關鍵代碼,就是report,animlist和image。替換了這些東西,就能做出看似完全不同的單位。

所以,如果我要油井可以自己建造,單純啟用了可能很多不足;想讓曾哥進入遊戲卻苦於他的平民屬性,如果沒有耐心逐句解析代碼,就是障眼法的所用之處。

複製一個電廠之類,給他加上油井關鍵代碼,足夠了。要做一個新單位曾哥,直接複製一個動員兵,替換音效武器生命護甲,結束了。

我們最要擺脫的一個誤區,就是觀念中把單位的聲音圖形等外在效果和單位本身綁定,認為有犀牛坦克開火聲音的武器一定是犀牛坦克炮,核彈的動畫一定代表着極高殺傷力,等等。

他們只是可以調用的動畫而已!明白這一點,就是障眼法的第一步。然後,想要創建具有某個屬性的單位,只要複製一個差不多那個屬性的單位,替換障眼法的代碼,行了。

這樣,就有了創造無數單位的鑰匙。不需要真的做到,只要遊戲裡面看起來是那個樣子,ok

單位的障眼法就在於主體素材的調用,即車身,炮塔,語音。對於玩家來說,只有這些是外在的。內在的屬性比如生命值,護甲是無法看出的,畢竟紅警不是星際。

也就是說,這些東西的變化就足以令玩家認為障眼法做出的新單位是完全不同的了。

武器的障眼法在於武器主體的炮口動畫、開火音效和可能使用的繪圖特效(見武器掃盲教程),射彈的彈體圖形,彈頭的爆炸動畫。

通常來說,使用不同的動畫不會對武器本身屬性有任何影響。moder就算再沒有創意,做東西全是障眼法,只要素材不一樣,效果不一樣,就能給人新意的感覺。

所以即使是只會通過複製來新增單位的菜鳥,也可以用這種方法開創自己的天地。

補充材料.護甲

RA2體系的護甲並非星際一樣精確地可以減少若干點傷害,而是在武器傷害值的處理上做手腳。某彈頭的武器擊中某護甲的單位後,單位受到的傷害是武器傷害X彈頭裡對於此護甲的比例。

內定護甲共11種,Ares可以添加新的護甲類型。

護甲類型沒有任何使用限制,只是通常某種類型的護甲用在建築,某種用於步兵,某種用於建築罷了。

完全可以給一個步兵裝上載具甲,使他完全不怕海豹的槍,卻很容易被坦殺消滅、

補充材料.

子機導彈(V3、無畏、雷鳴)類的控制請參閱全局代碼:

V3RocketPauseFrames=0

傾斜開始前滯留0楨

V3RocketTiltFrames=60

傾斜到發射位置(角度)需要60幀

V3RocketPitchInitial=0.21

導彈初始傾斜為0.21*90度

V3RocketPitchFinal=0.5

導彈點火傾斜為0.5*90度

V3RocketTurnRate=0.05

導彈拐彎速率

V3RocketRaiseRate=1

巡航導彈每次升高多少

V3RocketAcceleration=0.4

發射加速度0.4

V3RocketAltitude=768

巡航導彈達到這麼高后水平移動

V3RocketDamage=200

傷害200

V3RocketEliteDamage=400

精英傷害400

V3RocketBodyLength=256

導彈長256Leptons

V3RocketLazyCurve=yes

是否是拋物線彈道,也就是不使用巡航導彈使用的RaiseRate和Altitude兩個參數。並且如果PitchFinal設定成了垂直於地面的90°,那麼即便是初中生也知道這會導致導彈再也飛不回來

V3Warhead=V3WH

V3火箭的彈頭

V3EliteWarhead=V3EWH

精英V3火箭的彈頭

原版無法新增子機導彈,ares可新增

方法是將Ares提供的語句添加在你新增子機導彈本體上,不是發射者上

更不是給Ares代碼隨便改個名字然後寫在全局裡,我見過無數菜逼這麼亂搞了,引以為戒。

子機導彈飛行方式解析http://bbs.ra2diy.com/forum.php?mod=viewthread&tid=9795

子機導彈如何發射常規拋體武器http://bbs.ra2diy.com/forum.php?mod=viewthread&tid=11757

特殊應用:

當PitchFinal為0,且導彈發射時的高度低於Altitude,導彈會平行於發射者和目標的連線持續飛行而不會命中。

當Altitude和BodyLength為0,TurnRate為0.01,PitchFinal不低於0.13時,導彈會飛過目標並持續飛行而不命中。