the following is moding means (chinese). please re.
十六、C2平台玩C3修改方法
按下面的步骤进行转换:
1、将C3中想要转换关的Y64文件使用Y64Manager.exe转换成C2格式的Y64文件,Y64文件名称也必须是C2中已有名称的Y64名称;
2、用PCKManager.exe将C3中同Y64关卡的SEC、MA2文件提取后,接着用SECConverter.exe将SEC文件转换成C2的SEC文件;
3、如果是同文件名称先将C2关中的Y64文件备份,然后将TU01.MIS、TU01.GSC、BAS改成和Y64一样的名称,放到C2任意关卡文件夹中,接着将转换好的Y64文件、SEC文件及MA2一起放到和TU01.MIS一起。
如C3的CP.Y64转换后改名称为TU01.Y64,CP.SEC转换后改名称为TU01.SEC,CP.MA2改成TU01.MA2;然后将TU01.MIS、TU01.GSC、TU01.BAS一起放到TU01文件夹。
4、检查是否可进入训练1,如果没问题继续检查人物是否按GSC里的动作在执行,如抽烟、坐板凳上,说话等(如果坐标不对也会不执行动作脚本,使用Comm2debug.exe修改坐标后继续检查动作的执行情况)
5、当上述步骤都没有问题后,将C3关中其他的SEC、MBI全部转换成C2的格式,然后修改TU01.BAS将C3的房间全部添加。
添加进BAS时可以将C3的BAS内容修改后加到C2的BAS里,关于BAS的设置暂时参考C2里BAS的格式进行修改。添加房间的位置在.ESCENARIOS,切记一步一步慢慢来,成功一小步就很不错了,.BICHOS里关于ABI文件的地方要全部换成C2的ABI,ABI基本上都是指门的。
6、添加完成后,debug.xee进入游戏如果运行、SAVE、LOAD都没有问题,则表明房间的地方基本设置修改成功,按HOME或END查看房间是否和C3一致。
7、将C3中MIS、GSC、BAS里的内容慢慢验证后加入到C2的MIS、GSC、BAS里。MIS里关于人物、物品的代码没有一样是可以用的,但名称、坐标可以利用起来;触发器大部分可以用;GSC里有一大半也需要慢慢检验;BAS里主要是ABI及.ESCENARIOS的问题较多;BRI里也需要修改,以上任意一处出问题,基本上是运行不了的。
8、在C2里重新设置任务、触发器、新的元素即可完成C3到C2的初步转换。
上面都完成后则需要做丰富内容的步骤了,如GRL图片、小地图文件、MSB、STR、转换声音、视频等等。
以上是个大致的步骤及方法,具体的地方都有很多内容需要注意,非1~2天可以解决的,待本人整理完成后再发,到时候大家再参考。
↑
十七、盟二平台玩盟三,转换详解
我们拿盟三的TV(停止安放炸弹)关来作为这次转换的对象,由于考虑到照顾新手,故方法、步骤比较细,详细如下所述:
1、前提条件:
1)可以正常运行的盟二、盟三;
注:版本任意,建议盟二V1.20,盟三 V1.42
2)有REX的最新开发工具,并且可以正常使用;
下载及说明:
http://www.cnblogs.com/Rex/archive/2007/07/11/647203.html3)盟二、盟三破解好的文本类文件;
http://commandoshq.net/Files/2MOC/Commandos_2_Files.zip http://commandoshq.net/Files/3DB/Commandos_3_Files.zip 注:使用REX的工具箱也可以破解出上述二个压缩包里的内容,但既然已经有现成的,我们就不要浪费嘛!
4)熟悉盟二中各关的基本情况及人物、物品的代码调用等方法;
5)有commdebug.exe (后面所说的进游戏,都是指使用此EXE进)
http://faqy.cn/download/file/comm2debug.rar2、转换盟三在盟二上所需要的文件并验证正常进入游戏
1)使用PCKManager.exe打开盟三的DATA.PCK,将\DATA\MISIONES\下TV文件夹里的所有内容拖到电脑上保存;
2)解压缩Commandos_3_Files.zip,将\Decoded Files\Data\MISIONES\下TV文件夹覆盖到刚才从PCK文件里提取出来的TV文件夹上;
3)从\Decoded Files\Data\BRIEFING\下找到关于TV的相关内容,现在这关就一个TV.BRI文件,将它们也复制到保存后的TV文件夹里;(如“ST2:保护将军”就有3个BRI文件,就需要全部复制走)
4)将保存后的TV文件夹里*.MBI文件拖到REX的工具里的ImageConverter.exe上;待全部转换出来后(出现*.MBI.files),将原来的*.MBI全部删除;将*.MBI.files里的*_C2.MBI改回没删除前的名称,即.MBI文件前面的“_C2”被删除了;
如:将TV_01.MBI、TV_02.MBI拖到REX的工具里的ImageConverter.exe上;待转换出来的是TV_01.MBI.files,TV_02.MBI.files后,将原来的TV_01.MBI、TV_02.MBI全部删除;将TV_01.MBI.files,TV_02.MBI.files里的TV_01_C2.MBI、TV_02_C2.MBI又改名称为TV_01.MBI、TV_02.MBI。(批量换文件名称的工具推荐使用“拖把更名器”)
5)使用SECConverter.exe将*.SEC转换成在C2上可以使用的格式,打开一个SEC源文件后,保存的目标文件可以和源文件名称、路径一样;
如:用SECConverter.exe打开TV.SEC后保存的路径还是TV文件夹,名称也还是TV.SEC,出对话框就点“是”,后面的TV_01.SEC、TV_02.SEC也同方法转换,如果不是同目录当然也可以,不过需要覆盖一下罢了。
6)使用Y64Manager.exe选择“转换器”项打开*.Y64,其他不动然后选择好保存路径后点“转换”,保存的Y64文件名称使用盟二中以前的名称;
如:用Y64Manager.exe打开盟三的TV.Y64,保存为ECL.Y64,路径选择在TV文件夹,版本选择“盟军2版本2”。
7)进入盟二的ECL文件夹(\DATA\MISIONES\ECL\)将将里面的文件备份,如新建一个文件夹将所有文件都放进去;然后将TV文件夹里转换到的ECL.Y64、TV.MA2、TV.SEC、TV_01.SEC、TV_02.SEC、TV_01.MBI、TV_02.MBI一起全部放到ECL文件夹;
8)解压缩Commandos_2_Files.zip,从\Decoded\MISIONES\TU01\下将TU01.MIS、TU01.GSC、TU01.BAS、MANUAL_LIBRETA_TU01.MSB、TU01.STR、TU01_OBJETIVOS.TXT全部复制到上面说的ECL文件夹;
9)将TU01相关的6个文件中关于TU01全部改名称为ECL,如ECL.MIS、ECL.GSC、ECL.BAS、MANUAL_LIBRETA_ECL.MSB、ECL.STR、ECL_OBJETIVOS.TXT;
10)打开ECL.MIS,将里面的TU01全部替换成ECL;(文本类的文件推荐全部用写字板RTF格式打开,可以编辑、替换等,操作方便)
11)打开ECL.BAS,搜索到.ESCENARIOS(关于房间的定义),改成这样.CARGADINAMICA ECL.Y64、.FICHERO TV.MA2、.SECTORES TV.SEC;
12)验证是否可进入游戏,进入游戏后地图、人物动作、保存、保存后读档是否正常。(以后每修改一次都保存、保存后读取一次不再重复说明,这步很重要,否则出了问题都不知道是在那,这样可以避免不少工作量;有时不注意一个很小的问题,需要找了几个小时才找的到,切记)
(此关边界有黄线是特殊情况)
3、修改BAS文件,将盟三中的房间、门、电线、电线杆、楼梯等等内容转移到新转换的关卡中
采用排除法,即TV里按顺序往下减少的方法,转换一项成功就就删除此内容,下面将不在提到!
(1)打开TV.BAS,在ECL.BAS里搜索.TRANSFERS_HERMANOS(关于房间门的定义),如果有,则将TV.BAS里的内容复制到ECL里,并且删除ECL已经存在的内容;由于ECL里现在没有,直接将TV里.TRANSFERS_HERMANOS及括号里的全部内容复制到ECL里就可;(后面的复制都是指同一分类里的内容复制,包括括号的匹配)
(2)将.ESCENARIOS下.TIPO 2D上面的.COLORNIEBLA、.ZBUFFER、.CONTORNOS、.LINEAS_DE_ROCE及括号里的全部内容复制到ECL里.ESCENARIOS下.SECTORES TV.SEC的后面,注意:这关这些数据及格式都可以用,有的关则不可以,不能一样对待。
(3)将.TIPO 2D下面2个.TIPO 3D中括号里的内容全部复制到ECL里,在ECL里将2处.INFO_MINI_MAPA都删除;
(4)进入游戏后,按键盘上的“END”键检查房间是否已经被加上;
(5)删除ECL里.BICHOS(关于#电线杆、铁丝网、门、窗户、栏杆、楼梯、隐藏点等的定义)里的所有内容,将TV里.BICHOS下所有的内容复制到ECL里;
(此时Notepad2文本工具就派上大用场了,按CTRL+SHIFT+B就可以选择.BICHOS里的所有内容了;按CTRL+B查找匹配括号
(6)搜索.ABI,找到PI_TV_02_01.ABI、PI_TV_01_01.ABI、PE_TV_01_01.ABI、PE_TV_02_01.ABI,将他们全部换成PE_SBE05_3.ABI,这是门板的ABI文件,PE_SBE05_3.ABI是从盟二沉默关找的,觉得颜色、大小基本上在每关都通用,就用了此文件,也可以换成其他的门板ABI文件。
(7)进入游戏检查是否可以通过门进入到房间,窗户、电线杆是否可用,并且也检查保存、保存读取;
(8)将ECL文件夹下ECL.MIS、ECL.BAS、ECL.GSC文件备份,这个方法是在保证已经没有问题的前提下,而下一步需要修改时而又不能保证正确可行而进行的安全操作,也非常重要,更需切记;
(9)将ECL.BAS里.EXIT_POINTS(关于地图外空闲处的定义)、.FACHADAS(关于爬墙的定义)、.CABLES(关于电线的定义)的内容全部删除,然后把TV.BAS里关于.EXIT_POINTS、.FACHADAS、.CABLES的所所有内容复制到ECL里。
注:前面我说过,由于使用的是排除删除法,到最后就只剩这些内容了,而这些内容是不会出问题的,因此可以全部复制到ECL.BAS里;出问题的地方一般都在.BICHOS里,.ESCENARIOS下有问题应是一些数值及格式在盟二中不识别造成的,删除就可以了;最后有可能出问题的地方就是新加入的内容,具体看本人发的关于BAS的研究及盟三修改的一些研究。
问题:
1)、水塔上的楼梯可以上去,但下不来;
解决方法:在BAS里找到ES_TV_01这个名称,游戏中按“CTRL+ -”得到正确的坐标后将.PUNTOALTO的值改为-945.35 426.99 324即可实现正常上下了;
注:盟二对坐标的要求很严格,基本上不容许有差别,而盟三转盟二后有些坐标会发生细微变化而导致原有的功能失效,必须修正后才可以;特别是在GSC文件里尤其问题多多,以后会再次提到的。
2)、鼠标靠近地图边缘时,地图回自动缓慢移动
解决方法:暂无。.TIPO 2D下面的.CONTORNOS的值既是地图的边界封锁线,又有自动移动的功能,删也不是,留也不是,这不太好处理,这里我再研究研究。
4、修改MIS文件,将盟三中的任务、触发等等内容转移到新转换的关卡中
1)用Notepad2打开TV.MIS、ECL.MIS,将TV里.VISORES(开始坐标)、.BRIEFING(任务动画)、.MUSICA(音乐)的内容复制并覆盖到ECL里;
2)将TV文件夹里的TV.BRI放到\DATA\BRIEFING\下,BRIEFING文件夹没有自己建一个,打开BRI编辑它,删除STARTTEXT、STOPTEXT括号匹配的内容,并大概看一下STARTWAVE下.FILE后面的名称,这是对话时的声音文件名称;
3)用PCKManager.exe打开盟三的DATA.PCK,将\DATA\SONIDOS\下关于BRI中及MIS提到的声音文件提取出来;包括2种格式,一种是*.WAV的,另一种就是*.OGC的;
4)将提取出来的*.WAV文件直接放到\DATA\SONIDOS\下,而且OGC文件需要转换才可以使用,转换需要3个工具:
(1)、dBpowerAMP Converter.exe (可以将音频文件转换成WAV等文件)
http://commandoshq.net/Files/3DB/dMC-r11[1].5.exe
(2)、dBpowerAMP-codec-ogg.exe (转换OGG文件的解码器)
http://commandoshq.net/Files/3DB/dBpowerAMP-codec-ogg.exe(3)、GoldWave.exe (调整声音文件大小及质量的工具)
http://www.skycn.com/soft/1883.html(4)、安装好(1)和(2)工具后,将提取出来的*.OGC先改成*.OGG,然后右键“Convert to”,参数可以按下面的来设置:Converting fils to :WAVE;8Bit;22050Hz;1`Mono`;其他不变;选择到存放路径后就可以点“Convert 〉”了。
这个设置可以将声音文件的大小压缩,而且不影响音质,其他几种设置大家可以自己试试。
(5)、由于盟三的OGC转换后的音量比盟二大,因为需要降低到合适的音量,否则只能听到主音乐,其他声音几乎听不到。将转换好的WAV文件拖动到打开的GoldWave.exe上,然后选择“效果”-〉“音量”-〉“更改音量”,将“音量”棒拖动到40%左右或更低,确定后另存到\DATA\SONIDOS\下,文件的名称不改变。
5)打开ECL.BAS在.ESCENARIOS里二个.TIPO 3D下面各加上一句.MUSICA INTERIOR;
6)在ECL.MIS里将.MUSICA里.MUSICA_POR_DEFECTO INTERIOR 改为.MUSICA_POR_DEFECTO EXTERIOR;
7)进游戏检查室外及室内的音乐、音量是否正常,室外和室内应该是不一样的才对;
8)在TV.MIS里将.MUNDO下的.RAILES_NUEVOS(车辆、坦克的路线)、.SONIDOSAMBIENTE的内容复制到ECL.MIS里;(.SONIDOSAMBIENTE是覆盖)
9)将.INTENDENCIA下的.DAR_ALARMA_AL_VER_ALIADO 1.0、.ALARMAS、.REACTS、.SCORE、.ZONAS、.LISTAS_BICHOS复制到ECL同目录的里面;
(LISTAS_BICHOS往里加新的组;.ZONAS是覆盖;没有就直接复制过去,有就覆盖了,以后不在提到)
10)进游戏检查是否正常,并且备份BAS、MIS文件;
11)在.LISTAS_BICHOS下,刚复制过的.NOMBRE VIA下面加上老大的名字COMANDO,并且删除组.NOMBRE COMANDOS、.NOMBRE LOS_MALOS、.NOMBRE GRUPO_OFICIAL及内容;.OBJETIVOS下只保留一个.NOMBRE COSA1的内容;删除.OBJETIVOS_SEC、.PISTAS下的内容;.REGLAS下只保留.NOMBRE FIN_MISION的内容,并且将.NOMBRE FIN_MISION下.BICHOS LOS_MALOS改成.BICHOS VIA;删除.BICHOS下所有内容;删除.INTERFAZ下.SUBINTERFACES里的所有内容;
.FLAGS、.FINMISION直接覆盖到ECL.MIS里;
注:以上一系列的动作作用是:此关只有一个任务并且也只有一个触发器,就是杀死组名为VIA里所有人,而老大COMADNO这个人及其他敌人都没有,所以永远过不了关,但游戏可以保证最小的运行。
12)将.REGLAS的内容到ECL里,并且删除.NOMBRE BOMBAS_NO_SELECCIONABLES、.NOMBRE SELE_COMANDO、FIN_MISION_OK;将.NOMBRE FIN_MISION_OK条件.CONDICIONES下的内容复制到.NOMBRE FIN_MISION下.CONDICIONES里;即现在需要3个条件才可过关;修改CondBichoEntraEnZona为CondBichoEnZona;
(CondBichoEntraEnZona也是盟三里的新触发语句,这是盟二触发语句的变形,指某物进入了某区域)
13)进游戏检查是否正常,又一次备份BAS、MIS文件;
5、继续修改MIS文件,将盟三中的人物、物品等等内容转移到新转换的关卡中
(盟三到盟二此类代码没有一样是可用的,就需要我们的手工操作了,采用排除法进行转换)
1)打开盟二中PA.MIS,从.BICHOS里找到.TOKEN COMANDO,将[]里的所有内容复制到ECL里的.BICHOS里;继续将PA.MIS中.SUBINTERFACES下.TOKEN COMANDO的内容复制到ECL同一处;
2)搜索TV.MIS,也找到.TOKEN COMANDO,复制下面的坐标、房间名称、角度到刚从PA.MIS复制的同一处;即改老大开始所在的位置及角度;
3)进入游戏检查老大的背包、保存游戏、保存后读取、看任务进房间等等操作是否正常;
4)打开TV.MIS,搜索“.TOKEN”字符,搜索到后判断是什么,如物品、人物、车辆、坦克、板凳等等,根据不同的内容从其他的关中找相应的代码来;
如.TOKEN AMET_01及.TOKEN ATRIL_AMET01是盟三里的手提重机枪及机枪架,这个在盟二里我们就没有这样的代码,但是在HL.MIS里有定点的重机枪可以勉强代替,那我们就需要先复制到代码,然后改名称、坐标、房间、角度就可以进游戏看效果了;又如.TOKEN CAMION_ALEMAN_01是敌卡车,这个在盟二SB.MIS里可以找到不动的卡车来代替,然后在.BICHOS下面加上巡逻的代码,那卡车就可以动了,巡逻调的ID下面有设置;再如.TOKEN SDK_DEPOSITO、.TOKEN TANQUE_01是装甲车、坦克,这个可以在PA.MI或TK.MIS都可以找到;
但如果是敌人或者盟二里也有的,那就简单多了,参考下面的方法:
(1)、搜索.BANDO ALEMAN,将
[
.POS
[
.XYZ
(
-1488.0 -228.0 0
)
.ESC EXTERIOR
]
.ANGULO 307.0
.TOKEN PONE_MINA_01
.BANDO ALEMAN
以上的内容全部复制保存到一个新的文本文档里,搜索完所有的.BANDO ALEMAN 后就可以将所有的敌人的位置、名称、角度全部收集到位了;
(2)如果发现一个敌人的.GESTOR_MOVIMIENTO下有内容,则表示此敌人不通过GSC脚本文件来巡逻,而且是直接通过设置巡逻点来巡逻;如果一个敌人.GESTOR_MOVIMIENTO里没有内容,GSC里也没有内容,则表示此敌人是不动的,他朝设置的角度一直看;
.COMPORTAMIENTO
(
ComporAlemanScript
[
.GESTOR_MOVIMIENTO
[
]
(3)如果对找代码不熟悉、或不喜欢去找原始代码,可以使用简单的代码生成器来获得一些人物及少许物品的代码,但非常的有限,而且有些也有错误,那就需要大家自己慢慢掌握了!
http://faqy.cn/download/file/code.rar(4)我们从其他关找到一个党卫军官的代码,或修理兵也可,只要是第一类ANI文件的敌人就可,找这样的敌人方便后面转换GSC文件;
(5)将此敌人的代码在文本文档里复制20个一样的,然后将位置、名称、角度等都换了,就是上面复制保存到文档里的内容,几分钟后,我们按部就班的20个敌人就完成了,将他们加入到.BICHOS里保存MIS文件,进游戏即可看到效果;剩下的敌人还按这样处理;
5)这个.TOKEN BOMBA_01是油桶,在很多关都可以找到相应的代码,如HL.MIS;这里.TOKEN CAJA01是箱子,
注:上面一切所说的.TOKEN ****** 都是在此关的名称所代表的内容,其他关就不一定了,名称是可以改的,而物品等代码是死的,这需要有一定的经验才会很快的清楚;如果不知道可以通过查ANI、AN2、ABI、GRL,我们打开ANI或AN2后看它调用的ABI、GRL的内容来确定是什么;REX的ImageConverter.exe工具可以解开ABI、GRL文件,解开后一般可以看到点内容,然后根据自己的判断、对比盟三即可知道他们的内容(即或者随便找个内容放那个坐标上,然后进盟三看是什么)
6)而箱子里的物品也需要我们从其他关找,盟三代码也是不能用的;
将上面一系列都完成后,我们转换盟三到盟二就完成了80%了,关卡中的房间、敌人、队员、物品、任务、触发基本上都差不多了,剩下的就是GSC文件的转换、任务的设置、关卡中新元素的加入了。
6、修改GSC文件,控制敌人巡逻、行动等(还是采用排除法进行转换)
1)将TV.GSC的内容先改名称为ECL.GSC,然后备份已有的ECL.GSC,覆盖后进游戏看是是否正常,如果没问题,恭喜你,你太幸运了,否则的话还是将ECL.GSC恢复,然后从TV.GSC里一段一段往这边加!
2)这没有什么好的方法,只能说一段一段试,发现敌人不动或者保存、保存后读取跳出,那就先把这段脚本文件留起来,先试可以用的;
3)有问题的可分为2种,一种是简单不执行,一般是坐标不对造成的;一种是根本有错误,如脚本里有不能识别的句子等;
这只能说祝好运了,GSC的整理非常的麻烦,往往时间都是花在找坐标了(即敌人或队员去不了某点),就算是一点点的坐标不对,它就不执行,而且造成其他的句子也不执行。发现不认识的语句查PJB的GSC研究会有些帮助。
总之发现了不认识的代码先复制出来,慢慢研究,先复制容易的、好识别的、好处理的,最后啃狗骨头!!!
7、做小地图、开始图片
1)先将TV_MINIMAPA.GRL用REX的ImageConverter.exe工具解开后,编辑里面的图片成没有空白的地方,盟三的小地图是半边空白半边有内容;
2)将去掉空白部分的图片用PS或其他图片工具(本人用HprSnap5.exe)放大,长或宽都不能超过178大小,将长或宽放大到178就可,另一边也会自动变化的;
3)用PCKManager.exe打开盟二的DATA.PCK文件,提取其他关的小地图文件,*LIB.GRL;
4)又用ImageConverter.exe工具解开*LIB.GRL图片,进入*LIB.GRL.files编辑图片,并将上面编辑好的盟三图片覆盖,然后保存;(如果改名称可以通过修改Description.ini来实现)
5)将*LIB.GRL.files里的内容一起拖到ImageConverter.exe上,即可得到小地图文件;
6)打开ECL.BAS,在.LIBRETA处设置数值,需要进游戏一边试一边设置,.BMP *LIB 的名称要和GRL及GRL里的图片名称一致;
7)PGR_*.MSB里有GRL图片的名称,方法和做小地图的一样;
8、在转换到的盟三地图上加柜子、床、隐藏点
1)参考本人的修改关“保护将军”
2)参考其他关关于此类代码的设置及实现;
9、设置任务、附加关模式等等,参考本人发的教程补充内容。
10、转换盟三的视频
1)使用Rad Video Tools工具将BIK文件先转换成AVI文件,压缩方式选择“Indeo”或“Microsoft”的格式即可;
2)第一次转换后文件会比较大,第2次压缩就可以减少他的体积;
3)Total Video Converter可以帮我们这个忙,从TVC.exe启动后导入刚才转换的AVI文件,输出选择“ASF视频”,然后选择“立即转换”就可以了;
4)将转换好的ASF文件改名称为POP;
5)修改BRI文件,在里面加入播放视频的语句就可以在游戏中放了。