3DMGAME 3DM首页 新闻中心 前瞻 | 评测 游戏库 热门 | 最新 攻略中心 攻略 | 秘籍 下载中心 游戏 | 汉化 购买正版 论坛

注册 登录

QQ登录

只需一步,快速开始

查看: 24546|回复: 31
打印 上一主题 下一主题

[原创] 战锤MOD详细教程 绝对原创 绝对详细 本教程随时更新,本帖为抛砖引玉贴,求大神指点,求各路同好交流

  [复制链接]

10

主题

745

帖子

1218

积分

游戏狂人

Rank: 6Rank: 6

贡献度
141
金元
6438
积分
1218
精华
1
注册时间
2005-1-1
QQ
跳转到指定楼层
主题
发表于 2014-9-26 18:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 121411370 于 2014-9-27 22:01 编辑

首先感谢各位战锤MOD的先驱们!


没有他们根本就不会有这么个教程出来。


另外感谢各种在线翻译!虽然翻译效果是个渣,但是没有在线翻译就绝对没有任何的进展!


本文发出的内容随时更新,一楼预留各种求助内容。


现阶段主要以战争黎明2为主,混沌崛起+报应这俩坑暂时不知道合适能填上。


最后借用下一位MOD前辈的言论:
本着"授人以鱼不如授人以渔"的无上宗旨,"写好写坏由我,烂不烂尾由天"的崇高精神
特开此教程


首先说下使用的工具:

目前手头上的工具有
DoW2_ToolBox_1.992    RbfConv_080309   RBFConv Shell_v0.1.3       SgaReader2_150209        ModTools

目前修改的版本是战争黎明原版+混沌崛起

好吧,由于我英文太烂,上述工具基本没一个简单好使的,不过也可能是游戏版本的问题
目前游戏版本是2.1

所有经过DoW2_ToolBox_1.992直接修改的文件加载跳出。放弃!
另外一个可以直接修改的软件RBF Editor同样加载跳出。放弃!

好吧,哥们没办法省事,只能按照不省事的来

先说下大概的修改流程:
1.首先解包SGA文件得到RBF文件。用的是\ModTools\Tools文件夹里“SGA生成和解包.EXE”,这样可以把整个SGA文件解开方便下一步修改。(解包办法参照\ModTools内说明)
2.然后是转换rbf文件成为TXT文件,这样我们才能进行修改。这个需要用到\ModTools\Tools\Rbf to Txt目录下的“DoW2Assistant.EXE”软件(转换办法\ModTools内说明)
3.接下来就是对转换好的TXT文件进行修改了(具体修改参照下面)
4.修改完成后,需要把TXT文本转换成rbf文件(转换办法\ModTools内说明)
5.然后把转换好的rbf文件放回DATA对应的文件夹内
6.然后运行游戏,修改成功就能进游戏嗨皮,修改失败多半会弹出游戏。

PS:如果弹出游戏,直接删除掉DATA目录下修改过的文件,再重复2-5步骤,并且加强步骤3的检查。
    上述步骤是针对初次修改的朋友,二次修改直接重复2-6步骤就好。

修改工具我压缩了一个包
http://pan.baidu.com/s/1ntHTJct


以防万一还是有朋友不清楚,我把我的修改步骤写给大家

准备工作:
首先把整个gameattrib.sga文件给解压到电脑的E盘根目录下,得到名字为simulation的文件夹,里面有所有的rbf文件。
然后复制E:\simulation文件夹到游戏文件夹\GameAssets\Data\目录下。
然后在E盘下面新建名字为MOD的文件夹。

接下来需要修改那个文件,就在E:\simulation\文件夹下面找到需要修改的rbf文件,拷贝到e:\mod文件夹里。
执行上面的步骤2、3、4
然后把执行完第4步后得到的rbf文件复制到游戏文件夹\GameAssets\Data\目录下相对应的文件夹内。

修改完了如何让修改生效问题,我是用的-DEV进入游戏,具体操作如下:

先确定你游戏目录下有没有rev.ini这个文件
如果有,执行下面的操作,如果没有,去ModTools文件夹里找然后拷贝到你游戏目录下
首先建立游戏执行程序的快捷方式
右键点快捷方式
选择属性
找到目标那一行,在exe"后加 空格-dev  比如:DOW2.exe" -dev
确定就好了



下面开始实战,本次目标是修改战役模式下小队的人数。
那么我们首先要知道去哪找装载数据的文件。下面是战役模式路径

原版调用的小队数据文件在simulation\attrib\sbps\campaign\playable\race_marine\troops目录下
混沌崛起调用的数据文件在simulation\attrib\sbps\campaign\playable\race_marine\xp1\troops目录下

首先来修改下原版战争黎明战役
找个实验对象~
战役第一关上场的是指挥官+塔库斯战术小队
我们的目标是修改战役模式下小队成员,那就塔库斯没跑了。
先找到rbf文件,打开 simulation\attrib\sbps\campaign\playable\race_marine\troops目录

sm_apothecary_gordian.rbf
sm_assault_marine.rbf
sm_assault_marine_thaddeus.rbf
sm_assault_terminator.rbf
sm_assault_terminator_thaddeus.rbf
sm_davian_thule.rbf
sm_devastator_marine.rbf
sm_devastator_marines.rbf
sm_devastator_marine_blood_ravens.rbf
sm_devastator_marine_lucanus.rbf
sm_force_commander.rbf
sm_gabriel_angelos.rbf
sm_scout_marine.rbf
sm_scout_marine_cyrus.rbf
sm_tactical_marine.rbf
sm_tactical_marines.rbf
sm_tactical_marine_blood_ravens.rbf
sm_tactical_marine_tarkus.rbf
sm_techmarine_arkellius.rbf
sm_terminator.rbf
sm_terminator_force_commander.rbf
sm_terminator_lucanus.rbf
sm_terminator_tarkus.rbf
sm_terminator_tarkus_only.rbf

第一次看到这么个目录我第一反应就是:卧槽这是个啥!
当然我感叹早了,等我随便打开一个文件看到内容后反应为:卧槽这又是个啥!!
当然对于英语能力不错的人来说这根本就是个渣,但是对于我这个英语白痴来说...都是泪啊...

后来戳度娘,戳谷姐,顺便折腾有道婶跟金山婶~先机翻后人肉补全,大概整理出来一个对比表
simulation\attrib\sbps\campaign\playable\race_marine\troops目录下的文件中英文对比

sm_apothecary_gordian.rbf                      医护兵哥迪恩         <===战役中剧情人物
sm_assault_marine.rbf                      突击小队     <===暂时不明
sm_assault_marine_thaddeus.rbf           突击小队撒迪厄斯        <===战役中你控制的突击小队
sm_assault_terminator.rbf                        终结者突击小队     <===暂时不明
sm_assault_terminator_thaddeus.rbf   终结者突击小队撒迪厄斯      <===战役中你控制的终结者突击小队
sm_davian_thule.rbf                    戴维恩‧多勒      <===战役中被虫子搞残后来坐无畏出来的
sm_devastator_marine.rbf             毁灭者小队     <===暂时不明
sm_devastator_marines.rbf           毁灭者小队   <===暂时不明
sm_devastator_marine_blood_ravens.rbf     血鸦毁灭者小队      <===可能是战役中的龙套小组,我记得后期空降下来若干小队
sm_devastator_marine_lucanus.rbf       毁灭者小队路卡那斯     <===战役中你控制的重武器小队
sm_force_commander.rbf               指挥官               <===战役中你控制的指挥官
sm_gabriel_angelos.rbf              加百列‧安洁罗          <===战役中剧情人物
sm_scout_marine.rbf                                  哨兵小队    <===暂时不明
sm_scout_marine_cyrus.rbf                      哨兵小队席拉     <===战役中你控制的侦察兵小队
sm_tactical_marine.rbf                              战术小队   <===暂时不明
sm_tactical_marines.rbf                                      战术小队     <===暂时不明
sm_tactical_marine_blood_ravens.rbf   血鸦战术小队      <===可能是战役中的龙套小组,我记得后期空降下来若干小队
sm_tactical_marine_tarkus.rbf                战术小队塔库斯     <===战役中你控制的战术小队
sm_techmarine_arkellius.rbf                    科技战士亚克里斯         <===战役中剧情人物,如果混沌崛起中全员保持纯洁,那么他就会成为叛徒下去开战
sm_terminator.rbf                                        终结者小队          <===暂时不明
sm_terminator_force_commander.rbf   终结者小队指挥官     <===战役中你控制的终结者指挥官
sm_terminator_lucanus.rbf                       终结者小队路卡那斯     <===战役中你控制的终结者重武器小队
sm_terminator_tarkus.rbf                         终结者小队塔库斯     <===战役中你控制的终结者战术小队
sm_terminator_tarkus_only.rbf               终结者小队塔库斯 唯一   <===暂时不明

一个简单的文件夹名字足足花了我一个多小时,而且还不知道究竟对不对!

最大的一个疑问就是

sm_devastator_marine.rbf             毁灭者小队
sm_devastator_marines.rbf           毁灭者小队
sm_tactical_marine.rbf                              战术小队
sm_tactical_marines.rbf                                      战术小队

你大爷的多了一个S到底是个啥意思嘛!
我从DOW2.ucs里面找了N遍死活就是一个意思!

还有最后一个
sm_terminator_tarkus_only.rbf      终结者小队塔库斯 唯一

这尼玛后面加了个only是啥情况?
单独的塔库斯?

以上求高人解答。

好了,言归正传,知道了名字的意思,我们就可以下手改了。

既然我们确定了要修改塔库斯小队人数,那么就找到
sm_tactical_marine_tarkus.rbf
这个文件对应的就是
战术小队塔库斯
应该就是第一关里面出现的塔库斯小队了

用Rbf to Txt转码成sm_tactical_marine_tarkus.txt文件
然后记事本直接打开
好了,又到了卧槽这是个啥的时间了!
根据网上找的教程,以及前期修改战争黎明的经验
可以找到如下字段
| squad_loadout_ext: {
| | $REF: "squad_extensions\squad_loadout_ext";
| | max_leaders: 0;
| | squad_type: "tactical_marine";
| | terminator_mode_sbp: "sbps\campaign\playable\race_marine\troops\sm_terminator_tarkus";
| | unit_list: {
| | | squad_loadout_unit_entry: {
| | | | $REF: "squad_loadout_unit_entry";
| | | | max: 1;
| | | | num: 1;
| | | | type: "ebps\campaign\playable\race_marine\troops\sm_tactical_marine_tarkus";
| | | };
| | | squad_loadout_unit_entry: {
| | | | $REF: "squad_loadout_unit_entry";
| | | | max: 1;
| | | | num: 1;
| | | | type: "ebps\campaign\playable\race_marine\troops\sm_tactical_marine_t1_larry";
| | | };
| | | squad_loadout_unit_entry: {
| | | | $REF: "squad_loadout_unit_entry";
| | | | max: 1;
| | | | num: 1;
| | | | type: "ebps\campaign\playable\race_marine\troops\sm_tactical_marine_t2_willy";
| | | };
| | | squad_loadout_unit_entry: {
| | | | $REF: "squad_loadout_unit_entry";
| | | | max: 1;
| | | | num: 1;
| | | | type: "ebps\campaign\playable\race_marine\troops\sm_tactical_marine_t3_tenderfoot";
| | | };
| | };
| };

我们知道初始塔库斯小队人数为4
对比上面字段我们能看到这个小队里面调用了4个单位文件
(单位文件在\attrib\ebps\campaign\playable\race_marine\troops\目录下)

\attrib\ebps\campaign\playable\race_marine\troops\sm_tactical_marine_tarkus
\attrib\ebps\campaign\playable\race_marine\troops\sm_tactical_marine_t1_larry
\attrib\ebps\campaign\playable\race_marine\troops\sm_tactical_marine_t2_willy
\attrib\ebps\campaign\playable\race_marine\troops\sm_tactical_marine_t3_tenderfoot

这样这个小队组成年人员分别为:队长tarkus,队员larry,willy,tenderfoot

对应的能看到每个文件路径上面的项目

| | | | max: 1;最大人数
| | | | num: 1;最小人数

接下来就很简单了,看你自己的鬼畜程度,如果你觉得机器够强劲,改个百八十人也没问题。
比如我修改的就是下面三个每个数值+1

ebps\campaign\playable\race_marine\troops\sm_tactical_marine_t1_larry
ebps\campaign\playable\race_marine\troops\sm_tactical_marine_t2_willy
ebps\campaign\playable\race_marine\troops\sm_tactical_marine_t3_tenderfoot

意思就是塔库斯的数值仍然是
| | | | max: 1;
| | | | num: 1;
下面三个数值改成了
| | | | max: 2;
| | | | num: 2;

这样进游戏后就会发现塔库斯小队登场人数由4人变成了7人。
小队成员则变成了一个队长tarkus,两个队员larry,两个队员willy,两个队员tenderfoot

但是需要注意的是如果只是简单的修改了小队人数,而不去修改单位文件的话,那么很容易小队死一片。
按照我大概的理解,战役模式下塔库斯可以使用装备,但是装备的效果估计对小队成员无效。

举个例子:
我修改了件盔甲,防御+300,血量+900,攻击+300等等等等各种不和谐属性。
然后进游戏吧这件盔甲给塔库斯小队装备上,按说这个小队应该无敌了~
但是进游戏找个BOSS调戏下队员直接死一片,甚至死到塔库斯光杆司令。所以装备的加成可能无法扩展到小队成员身上。

所以求教高人,如何能让小队成员同样享受到装备的加成。

至此,小队成员修改完毕,保存文件。

把txt文本转换成rbf文件,然后把转换好的rbf文件丢回游戏目录\GameAssets\Data\simulation\attrib\sbps\campaign\playable\race_marine\troops下面

进游戏,选择新战役,就会看到登场的塔库斯小队人数变成了你希望的人数。


最后附上小队文件内的主要项目,另外抛砖引玉,求大神赐教这里面都TM的是个啥!

squad_ability_ext    小队技能设置
应该是小队能使用的技能,具体看了下正好对应塔库斯小队所有的主动技能。

squad_capture_strategic_point_ext       小队占点设置
小队占点的时间,看数据capture_rate_multiplier: 1f应该是百分比默认1F 应该是100%速度,改成2F应该是200%吧

squad_combat_behaviour_ext        小队战斗行为设置
| | $REF: "squad_extensions\squad_combat_behaviour_ext";
| | accuracy_windup: {    可能跟准确度有关吧
| | | initial: 1f;      
| | | windup: 0f;     
| | };
| | call_for_help_distance: 0f;
| | can_retreat: true;      是否可以撤退?
| | idle_leash_distance: 0f;
| | melee_idle_leash_distance: 40f;
| | melee_leash_distance: 14f;
| | plans: {        不清楚啥意思
| | | idle_retaliation_plan: "squad_plan\idle_retaliation_default";
| | | melee_plan: "squad_plan\melee_plan_default";
| | | ranged_attack_plan: "squad_plan\sm_tac_range";
| | | setup_weapon_attack_plan: "";
| | };
| | suppression: {      应该是压制选项
| | | can_be_suppressed: true;   这个应该是是否能被压制,改成false就不能被压制了。
| | | courage_regen_rate: 10f;
| | | disable_moving_firing_while_suppressed: true;   这个应该是被压制到无法移动也无法开火的项目,同上改成false不能被压制到无法移动也无法开火
| | | starting_courage: 100f;
| | | suppression_resistance: 0f;
| | };
| | weapon_stance: "range";  这个应该是被啥类型的武器压制,这里的是范围性武器
| };
squad_energy_ext  小队能量设置
| | $REF: "squad_extensions\squad_energy_ext";
| | regen_rate: 1f;   这个应该是能量恢复率同样1F表示100%,可以修改2F应该是200%
| | starting_energy: 1000f;   这个是初始能量?

squad_formation_ext      小队阵型设置
         这个应该没必要改

squad_holdable_ext         小队可持有装备?还是小队驻扎设置?完全不知道啥意思啊!内容放上来求大神解释。
| | $REF: "squad_extensions\squad_holdable_ext";
| | hold_type: "hold_infantry";
| | modifier_table: {
| | };
| | shared_hold_enter_cooldown: 10f;
| | storm_trooper: false;

squad_item_slot_ext       小队插槽         只知道跟插槽有关,但是不知道具体意思,内容放上来求大神解释。
| | $REF: "squad_extensions\squad_item_slot_ext";
| | num_slots: 37;

squad_leveling_ext 小队升级设置 这个有好多内容
| | $REF: "squad_extensions\squad_leveling_ext";
| | auto_allocate_discretionary_points: false;  自动分配升级点数,现在是关闭的,应该不需要动,下面几项是自动分配的比重,无视就好了。
| | auto_allocate_points: {
| | | corruption: "none";
| | | energy: "secondary";
| | | health: "primary";
| | | melee: "secondary";
| | | ranged: "secondary";
| | };
| | discretionary_upgrades: {   这个应该是自由支配升级点数项目了,应该不需要修改。
| | | upgrade: "upgrade\campaign\race_marine\attrib_bonuses\sm_tac_str2_defend_melee_bonus";
| | | upgrade: "upgrade\campaign\race_marine\attrib_bonuses\sm_tac_sta1_taunt";
| | | upgrade: "upgrade\campaign\race_marine\attrib_bonuses\sm_tac_str1_melee_specialization";
| | | upgrade: "upgrade\campaign\race_marine\attrib_bonuses\sm_tac_sta4_shall_not_fall";
| | | upgrade: "upgrade\campaign\race_marine\attrib_bonuses\sm_tac_str3_power_sword_specialization";
| | | upgrade: "upgrade\campaign\race_marine\attrib_bonuses\sm_tac_ra1_assault_bolters";
| | | upgrade: "upgrade\campaign\race_marine\attrib_bonuses\sm_tac_sta3_veteran_squad";
| | | upgrade: "upgrade\campaign\race_marine\attrib_bonuses\sm_tac_wl1_improved_loadout";
| | | upgrade: "upgrade\campaign\race_marine\attrib_bonuses\sm_tac_ra3_tactical_advance_damage_buff";
| | | upgrade: "upgrade\campaign\race_marine\attrib_bonuses\sm_tac_ra2_ranged_specialist";
| | | upgrade: "upgrade\campaign\race_marine\attrib_bonuses\sm_tac_wl3_tactical_advance_aoe";
| | | upgrade: "upgrade\campaign\race_marine\attrib_bonuses\sm_tac_wl2_grenadier";
| | | upgrade: "upgrade\campaign\race_marine\attrib_bonuses\sm_tac_sta2_immune_after_revive";
| | };
| | leveling_override: { 不知道啥意思
| | | $REF: "";
| | };
| | max_attribute_points: {  
| | | corruption: 0;         堕落值,原版是没有这个属性的所以是无视就好。
| | | energy: 12;     最大能量点数
| | | health: 20;       最大生命点数
| | | melee: 15;        最大肉搏点数
| | | morale: 0;       最大士气点数 原版貌似没用
| | | ranged: 15;      最大射击点数
| | };
| | max_bonus_attribute_points: {     最大奖励的属性点数,具体意义不明,可能是最大能从装备上获取的点数。
| | | energy: 3;
| | | health: 3;
| | | melee: 3;
| | | morale: 0;
| | | ranged: 3;
| | };
| | max_level: 20;    最大等级
| | redirect_xp: false;   是否能重新分配点数?目前是不能,应该可以修改成true,这样游戏里随时可以重新分配。
| };

squad_loadout_ext 小队成员设置
| | $REF: "squad_extensions\squad_loadout_ext";
| | max_leaders: 0;      最多领导者,应该是小队最多能有几个队长,战役模式应该不用修改
| | squad_type: "tactical_marine";    小队类型,这里的是战术小队
| | terminator_mode_sbp: "sbps\campaign\playable\race_marine\troops\sm_terminator_tarkus";这个应该是装备终结者盔甲后调用的参数
| | unit_list: {
| | | squad_loadout_unit_entry: {   小队单位明细,修改小队人数就下面的项目了
| | | | $REF: "squad_loadout_unit_entry";  
| | | | max: 1;    最大人数
| | | | num: 1;  最小人数
| | | | type: "ebps\campaign\playable\race_marine\troops\sm_tactical_marine_tarkus";   重点来了,这个应该是选择哪种单位加入此小队,可以修改成无畏,甚至修改成加百列,要是鬼畜点加个混沌啦,征召个兽人头目啦完全都可以。当然你可以复制段落然后改成个战锤混合团。
| | | };
| | | squad_loadout_unit_entry: {    同上
| | | | $REF: "squad_loadout_unit_entry";
| | | | max: 1;
| | | | num: 1;
| | | | type: "ebps\campaign\playable\race_marine\troops\sm_tactical_marine_t1_larry";
| | | };
| | | squad_loadout_unit_entry: {   同上
| | | | $REF: "squad_loadout_unit_entry";
| | | | max: 1;
| | | | num: 1;
| | | | type: "ebps\campaign\playable\race_marine\troops\sm_tactical_marine_t2_willy";
| | | };
| | | squad_loadout_unit_entry: {    同上
| | | | $REF: "squad_loadout_unit_entry";
| | | | max: 1;
| | | | num: 1;
| | | | type: "ebps\campaign\playable\race_marine\troops\sm_tactical_marine_t3_tenderfoot";

squad_modifier_ext         小队姿势修正?还是装饰?不知道啥意思,所以就暂时不动他,反正也没啥具体内容就一条
| | $REF: "squad extensions\squad modifier ext";

squad_morale_ext  小队士气设置
| | $REF: "squad_extensions\squad_morale_ext";   这个应该是加载具体士气的选择,加载不同的文件实际战斗中激活相对应的动作,一般无视就好。
| | bound_broken: 50;   这个应该是士气崩溃的临界值
| | bound_broken_restore_offset: 100;     不清楚具体含义
| | bound_inspired_offset: 100;         不清楚具体含义
| | regen_rate: 35f;    士气回复率
| | starting_morale: 300;     初始士气    不过话说经过魔改后的单位还需要关心士气这个玩意么?

squad_reinforce_ext        小队增援设置
| | $REF: "squad_extensions\squad_reinforce_ext";
| | on_reinforce_actions: {
| | | animator_set_action: {
| | | | $REF: "actions\ability\animator_set_action";
| | | | action_name: "abilities\space_marine\teleport_arrive";   这个应该是设定能在那里增援,目前的设定是只能在传送点进行增援。
| | | | delay: 0f;
| | | | fire_and_forget: true;   应该是是否自动增援,目前true应该是自动增援,如果改成false应该是不会自动增援,需要手动去点。
| | | };
| | };
| | time_cost_percentage: {    增援时间与资源
| | | cost_percentage: 0f;    增援所需的资源
| | | time_percentage: 1f;    增援所需的时间

squad_ui_ext           小队界面设置
这个应该不需要进行修改,所以无视他吧

squad_upgrade_ext         升级选项??不清楚
这个应该不需要进行修改,所以无视他吧
回复

使用道具 举报

0

主题

681

帖子

1018

积分

游戏狂人

Rank: 6Rank: 6

贡献度
0
金元
10183
积分
1018
精华
0
注册时间
2019-1-6
舒服的沙发
发表于 2025-5-19 00:19 | 只看该作者
111111111111111111111
回复 支持 反对

使用道具 举报

20

主题

857

帖子

3142

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
3
金元
31299
积分
3142
精华
0
注册时间
2012-11-12
硬硬的板凳
发表于 2025-9-27 20:28 | 只看该作者
本帖最后由 至高,路西法 于 2025-9-27 21:50 编辑

有没有装备修改相关的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|3DMGAME ( 京ICP备14006952号-1  沪公网安备 31011202006753号

GMT+8, 2026-3-19 14:16 , Processed in 0.031079 second(s), 16 queries , Memcached On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表