心灵终结3ini吧 关注:12,060贴子:212,474

【缓更】DTA客户端添加教程

只看楼主收藏回复

DTA是指Dawn of Tiberium Age,一个复刻红警95和泰伯利亚黎明的mod。该mod有一个自带的客户端,这一客户端由于其普适性强而也被一些尤里的复仇mod采用,这其中就包括心灵终结。很多玩家(包括我)宁可抱着被公开挂起来裱的风险也要去改mo,这其中不乏有一些DTA客户端的因素在里面,因为mo的客户端很是高端大气上档次,低调奢华有品味。但是这份精致并非是mo所独享的。经过ppm论坛上一些仁人志士的努力,现在尤里的复仇mod也可以较为轻松地使用DTA客户端了。但是我目前为止还没在国内的网站上看到有关尤里的复仇添加DTA客户端的系统教程,很多人甚至不知道有DTA客户端这回事。于是我想根据自己的经验和ppm上大佬的教程,写一篇DTA添加教程,以方便大家给自己的YRmod也用上高端大气上档次,低调奢华有品味的DTA客户端。


IP属地:辽宁1楼2020-01-16 22:27回复
    2楼空出来准备放链接


    IP属地:辽宁2楼2020-01-16 22:29
    收起回复
      为了吸引人,放两张调好的DTA客户端效果图



      IP属地:辽宁3楼2020-01-16 22:41
      回复
        一个DTA客户端至少要包括以下几个文件,你可以从我给的链接下载,可以网上找资源,可以向大佬伸手,也可以加我的QQ群(群号958803608)下载

        下载好之后把这几个文件丢到尤里的复仇根目录,第一步就完成了,很简单吧


        IP属地:辽宁4楼2020-01-16 22:47
        回复
          接下来才是重头戏。添加DTA客户端的第一步就是让你的dta识别你的尤里的复仇文件。这个需要在楼上图中的Resources文件夹中找到ClientDefinitions.ini这个文件,然后在里面修改。用Notepad++或者记事本打开它,接下来我会逐句讲解其中内容。


          IP属地:辽宁5楼2020-01-16 22:51
          回复
            首先你会看到这四句

            这四个是客户端主题,推荐不要动逗号后面的,也不要变顺序,你可以加新的主题,仿照上面的格式添加即可


            IP属地:辽宁6楼2020-01-16 22:55
            回复
              接下来是[Settings],开始逐句讲解:
              [Settings]
              LauncherExe=DTA.exe ;游戏根目录下的客户端文件,删掉这句默认使用clientxna.exe打开游戏
              GameExecutableNames=game.exe ;改成Syringe.exe
              ;ExtraCommandLineParams= ;改成ExtraCommandLineParams= "gamemd.exe" -SPAWN -CD -LOG
              SettingsFile=Settings.ini ;DTA的设置ini,尤里的复仇的是RA2MD.ini
              MPMapsPath=INI\MPMaps.ini ;改成你的map注册文件,比如EmpireAusEisenMaps.ini
              AllowedCustomGameModes=Custom Map,Standard,Co-Op Easy,Co-Op Medium,Co-Op Hard ;DTA的游戏模式限制语句,可以删掉这句
              LoadingScreenCount=2 ;进入游戏时在加载画面停留的秒数,可以删掉这句
              LocalGame=DTA ;随便改,我的是EE
              LongGameName=Dawn of the Tiberium Age ;随便改,我的是Empire aus Eisen
              RegistryInstallPath=DawnOfTheTiberiumAge ;随便改,我的是Empire aus Eisen
              CnCNetLiveStatusIdentifier=cncnet5_dta ;你的游戏在cnc大厅的显示,我的是cncnet5_ee
              ;下面这四个URL链接虽然原则上都可以不写,但是为了你的玩家在不小心点到对应的按钮时不会尴尬地弹框出错,建议还是填上内容
              CreditsURL=http://www.moddb.com/mods/the-dawn-of-the-tiberium-age/tutorials/credits ;制作人员名单,一个网址,可以写根目录下一个txt文件的文件名(如“制作人员名单.txt”),游戏将在点击“Credits”按钮时直接打开这个txt(其他后缀名的文件也行)
              ChangelogURL=http://www.moddb.com/mods/the-dawn-of-the-tiberium-age/tutorials/change-log ;游戏更新日志,一个网址,可以写你在贴吧发的贴子的地址
              LongSupportURL=https://ppmforums.com/index.php?f=504 ;你的“赞助商”,一个网址,可以写你获得资源的网址,比如ppm论坛或者心灵终结3ini吧
              ShortSupportURL=ppmforums.com/index.php?f=504 ;你的“赞助商”,一个短网址,把上面那条等号后面填的东西的“https://”前缀去掉就行
              MapEditorExePath=Map Editor\Map Editor.bat ;地图编辑器可执行程序的地址,需要在指定路径有对应名称的文件,不然会弹框
              FSIniPath=Map Editor\FinalSun.ini ;名字随便改,有对应的文件就行
              BattleFSFileName=BattleE.ini ;改成你的战役注册文件,比如BattleClient.ini
              SidebarHack=yes ;是否隐藏顶栏,删掉默认yes,不用动
              ;下面这两个数是你调整客户端上的按钮和标签分布时用到的。上面的是宽度,下面的是高度,建议在调整客户端上各元件分布时就确定好这两个值。
              ;心灵终结3.3的这两个值是1152和648,你定为1280和720就可以。在确定好这个数值后,在该分辨率下进入客户端进行调整,你的客户端就会在更低分辨率下维持原样(仅仅是缩小了,各元件相对位置没有改变)
              ;如果你在大于这两个数的分辨率下调整客户端上按钮和标签的位置,在将客户端切换到小于这个分辨率时,一部分元件就会错位,需要重新调整,非常麻烦,所以建议在低分辨率下调好。
              MinimumRenderWidth=1280
              MinimumRenderHeight=720 ;地图截图器生成图片最小高度,不用动
              ;下面这两行注释掉的代码是你调整进入游戏后最小分辨率用到的。原版尤里的复仇准备了640*480,800*600,1024*768三种大小的背景板(就是游戏里点右上角菜单栏后左面的背景,往往是一个阵营标志后面是放射状的光芒)和640*480,800*600两种大小的载入图,在当时是绝对够用了。
              ;然而时过境迁,现在大部分家用电脑的分辨率都已经大于1024*768了,而且分辨率大小不一,所以没办法再将不同分辨率下的背景板和载入图统统准备好,所以心灵终结3.3为了省事并减小占用的空间,就只保留了800*600大小的载入图,并将背景板隐藏(调成全黑),这样就不会出现显示不出对应分辨率的图片而产生违和的情况了。
              ;如果你是一名mod作者,又为了省空间移除了640*480分辨率的背景板和载入图,为了防止一些用640*480游戏内分辨率的玩家在进入游戏时报错,就需要把这两句加上。不过640*480游戏内分辨率往往只有手机上玩红警的玩家在用,鉴于现在绝大多数mod都是以Ares为平台制作,而Ares目前的版本又不支持手机端玩耍,所以这两句加不加其实无所谓了(不过加上不失为一万全之策)。
              ;MinimumIngameWidth=800 ;游戏内最小屏幕宽度,建议写800
              ;MinimumIngameHeight=600 ;游戏内最小屏幕高度,建议写600
              KeyboardINI=Keyboard.ini ;名字随便改,可以没有对应的文件
              DefaultKeyboardINI=INI\Keyboard.ini ;名字随便改,有对应的文件就行
              UnixGameExecutableName=wine-dta.sh ;在UNIX系统上客户端打开的游戏文件。如果你不准备制作兼容UNIX系统的mod,这里完全可以删除
              StatisticsLogFileName=DTA.LOG ;debug文件的存储位置和名称,我的是Debug\debug.log,删除它并不能阻止生成Debug文件,为了方便调试建议保留


              IP属地:辽宁7楼2020-01-16 22:56
              回复
                为了防止百度的人工智障吞掉我在7楼发的内容,这里再以图片的形式重发一遍




                IP属地:辽宁8楼2020-01-16 23:01
                回复
                  最后还有一些说明,作为对7,8楼的补充,如果你改完了还是进入dta还是会弹框,那么多半是这里有问题
                  ;(如果进入游戏后出现卡屏问题,在主菜单更改渲染补丁)
                  ;(如果进入游戏后点击菜单按钮卡住,是你没有在rulesmd.ini里你使用的国家项目下加一句File.Flag=xxx.pcx)
                  ;(如果你制作的是中文版游戏,在选择界面可能出现乱码,是你没有中文字体文件,在Resource文件夹里放入“主界面字体文件”包里的六个文件以解决问题)
                  ;(如果你改用简体CSF,进入游戏后出现有些文字变成方框的情况,把game.fnt放到游戏根目录以解决问题)
                  ;(如果你没有DTA客户端,上网下载或向大佬求助以解决问题)


                  IP属地:辽宁9楼2020-01-16 23:09
                  回复
                    如果按7,8,9楼的方法都改完了还是弹框,那说明你的你的map注册文件(默认为IN文件夹内的MPMaps.ini )
                    里一张可玩的地图都没有。你需要仿照mo的INI文件夹内的MentalOmegaMaps.ini里的样子注册好你的地图文件,这样游戏才能读取到可以玩的地图,才不会在进入游戏时弹框。如果再有问题,打开mo的INI有样学样就行了


                    IP属地:辽宁10楼2020-01-16 23:14
                    回复
                      接下来,你要改过出你mod中的国家并为遭遇战界面添加各种设置。这些需要在Resources文件夹的GameOptions.ini里修改。下面是GameOptions的修改教程。(你可以直接把帖子里的代码复制下来,放到记事本里修改)
                      ;泰伯利亚黎明(DTA)CnCNet客户端设置
                      ;在DTA客户端中,这个GameOptions.ini文件控制遭遇战和局域网界面中控件和标签的显示位置和显示内容
                      ;根据提示改好后把这个GameOptions.ini文件放入装载了DTA客户端的resources文件夹中替换掉GameOptions.ini文件即可
                      ;(本教程由 僵尸z工程 撰写)
                      ;如果你公开传播根据此客户端制作的mod的话,Rampastring和泰伯利亚黎明需要被包括在你制作mod的致谢人员名单中(可以不致谢我,无所谓)。
                      [General]
                      ;下面“Sides=”后跟你要在游戏中出现的国家,原版YR国家如下,注意要用英文逗号隔开,用中文逗号隔开无法识别
                      ;注意你的Resources文件夹里要有和这里加的国家名称对应的png文件,如下面有美国,则Resources文件夹里要有一个“美国icon.png”作为国旗,不然在客户端里会显示为粉条。国旗大小推荐33*16(含阵营标志)或26*18(仅国旗)
                      ;Sides=美国,韩国,法国,德国,英国,利比亚,伊拉克,古巴,苏俄,尤里
                      Sides=GDI,Nod,Allies,Soviet
                      StartingLocationAngularVelocity=0.01
                      ReservedStartingLocationAngularVelocity=0.01
                      ;下面这个注释掉的定义了“随机颜色”(即“Random”)几个字的颜色。默认为白色,你可以改成其他颜色如灰色。这三个数是RGB值。
                      ;RandomColor=136,121,114;189,166,11是civilian(平民阵营)的颜色RGB值


                      IP属地:辽宁11楼2020-01-16 23:18
                      回复
                        接11楼
                        ;下面注册的是可选的阵营名称。注册格式为<名称>=R值,G值,B值,<对应uimd内的顺序>
                        [MPColors]
                        Gold=255,227,140,0
                        Red=222,77,49,1
                        Teal=0,174,127,2;was 24,109,107,2
                        Green=123,251,123,3
                        Orange=252,136,0,4;255,134,57,4
                        Blue=148,170,255,5
                        Purple=198,73,255,6
                        Metalic=165,166,189,7
                        White=255,255,255,15
                        Brown=134,67,30,29
                        Pink=255,20,169,35
                        Cyan=132,239,255,59;,53
                        [MultiplayerGameLobby]
                        ; 在这里注册游戏界面出现的勾选框,如快速游戏,基地重新部署,升级工具箱,超级武器等(你可以再加,但要确保对应代码完整,并且在CustomIniPath=后的路径下能找到相应的ini文件)
                        CheckBoxes=chkCratesMP,chkShortGame,chkImmuneHarvs,chkIngameAllying,chkRedeplMCV,chkMultiEngMP,chkExtremeAI,chkDestrBridges,chkRevealShroud,chkShroudRegrows,chkSuperWeapons,chkInstantUnload,chkInfiniteTiberium,chkVisceroids,chkCru****leInfantry,chkQueuing,chkTiberium2Ore,chkBuildOffAlly,chkTurtlingAI,chkStorms,chkStartingUnits,chkAutoDeployMCV,chkNoBaddyCrates,chkScrapDebris,chkCrew,chkSilos,chkTurboVehicles,chkNaval,chkAutoSave
                        ; 在这里注册游戏界面出现的下拉列表框,如初始部队数,游戏速度,初始金钱,科技等级等(你可以再加,但要确保对应代码完整,尤其是SpawnIniOption=后的条目要能在rulesmd里“[MultiplayerDialogSettings]”下找到对应的同名条目)
                        DropDowns=cmbClassicEnhanced,cmbGameSpeedCap,cmbCredits,cmbTechLevel
                        ; 在这里注册游戏界面出现的标签,如“初始部队数:”,“初始资金:”这样悬浮于下拉列表框上方的文字
                        Labels=lblClassicEnhanced,lblGameSpeedCap,lblCredits,lblTechLevel
                        PlayerReadyBoxX=6
                        PlayerOptionLocationX=22;def=25
                        PlayerOptionLocationY=25;def=24
                        PlayerOptionVerticalMargin=9;def=12
                        PlayerOptionHorizontalMargin=5;def=3
                        PlayerOptionCaptionLocationY=6;def=6
                        PlayerNameWidth=117; def=136
                        SideWidth=86;def=91
                        ColorWidth=70;def=79
                        StartWidth=0;def=49
                        TeamWidth=44;def=46
                        ; 这里确定了在遭遇战界面中出现的各控件及标签的位置。
                        ; 只有 SideOptionPrerequisites,勾选框,下拉列表框和标签的位置由这里确定
                        ; 其他的设置需要在SkirmishLobby.ini文件里写。
                        [SkirmishLobby]
                        CheckBoxes=chkCratesSkirm,chkShortGame,chkImmuneHarvs,chkRedeplMCV,chkMultiEngSkirm,chkExtremeAI,chkDestrBridges,chkRevealShroud,chkShroudRegrows,chkQueuing,chkSuperWeapons,chkInstantUnload,chkInfiniteTiberium,chkVisceroids,chkCru****leInfantry,chkTiberium2Ore,chkBuildOffAlly,chkTurtlingAI,chkStorms,chkStartingUnits,chkAutoDeployMCV,chkNoBaddyCrates,chkScrapDebris,chkCrew,chkSilos,chkTurboVehicles,chkNaval
                        DropDowns=cmbClassicEnhanced,cmbSkirmishGameSpeedCap,cmbCredits,cmbTechLevel
                        Labels=lblClassicEnhanced,lblGameSpeedCap,lblCredits,lblTechLevel,lblAutoSave
                        PlayerOptionLocationX=11;def=25
                        PlayerOptionLocationY=25;def=24
                        PlayerOptionVerticalMargin=9;def=12
                        PlayerOptionHorizontalMargin=5;def=3
                        PlayerOptionCaptionLocationY=6;def=6
                        PlayerNameWidth=128; def=136
                        SideWidth=86;def=91
                        ColorWidth=70;def=79
                        StartWidth=0;def=49
                        TeamWidth=44;def=46


                        IP属地:辽宁12楼2020-01-16 23:19
                        回复
                          ;在游戏开始时,下面这项中的内容将被写入spawn.ini作为默认设置。
                          ;下面这项中的内容可以被gamemode-specific code(即不同游戏模式的自带ini文件)中的内容覆盖。
                          [ForcedSpawnIniOptions]
                          Protocol=0
                          FrameSendRate=1
                          ;MaxAhead=35
                          ;Bases=Yes
                          FogOfWar=No
                          UnitCount=1
                          SidebarHack=Yes
                          AttackNeutralUnits=yes
                          ;AimableSams=yes
                          ;CoachMode=Yes
                          ;该有的控件这里基本都有了,你只要确定他们的位置(即“Location=”后面的坐标)就行了。如果不想要某个控件出现,在上面的注册处把它的名称删除就行了
                          ;控件的位置将出现在给定坐标的右面2像素、下面6像素处。
                          ;如果控件有Reversed=yes标签,勾选框的开启将由=False而不是=True决定。
                          [lblClassicEnhanced]
                          ;Text=指标签上显示的文字(可以是中文),“[]”中前三位是lbl的是标签,是cmb的是下拉列表框,是chk的是勾选框
                          Text=Game Type:
                          ;Location=指该元件的位置,后面两个数是坐标,可以把游戏窗口截图然后在画图软件里读坐标,也可以直接蒙数然后反复尝试确定这个坐标。
                          Location=797,21
                          [cmbClassicEnhanced]
                          SideErrorSetDescr=Enhanced Mode
                          Items=Classic,Enhanced
                          DefaultIndex=1
                          SpawnIniOption=Firestorm
                          DataWriteMode=Boolean
                          Location=797,40
                          Size=97,21
                          [lblTechLevel]
                          Text=Tech Level:
                          Location=797,75
                          [cmbTechLevel]
                          OptionName=Tech Level
                          ;Items=后面的数指下拉列表框中的不同选项,用英文逗号隔开,建议不要贸然改变Items=后面项的个数,改变各项内容即可
                          Items=7,6,5,4,3,2,1
                          ;DefaultIndex=指默认情况下选择这个下拉列表框中的第几个元素,从0开始计数,如果你要默认选择第2个元素就填1,第3个元素就填2,以此类推
                          DefaultIndex=0
                          ;SpawnIniOption=后面的条目要能在rulesmd里“[MultiplayerDialogSettings]”下找到对应的同名条目,不然可能出错
                          SpawnIniOption=TechLevel
                          ;DataWriteMode=分String和Index两种,String指直接把选定的显示的字符串填入本场游戏ini对应位置,Index把各项从0开始编号填并把选定项的编号填入本场游戏ini对应位置
                          DataWriteMode=String
                          Location=797,94
                          ;Size=指控件的横纵大小,一行汉字的控件建议以21为高度
                          Size=97,21
                          [lblCredits]
                          Text=Starting Credits:
                          Location=797,129
                          [cmbCredits]
                          OptionName=Starting Credits
                          Items=20000,15000,12500,10000,7500,5000,2500
                          DefaultIndex=3
                          SpawnIniOption=Credits
                          DataWriteMode=String
                          Location=797,147
                          Size=97,21
                          [lblGameSpeedCap]
                          Text=Game Speed:
                          Location=797,193
                          [cmbGameSpeedCap]
                          OptionName=Game Speed
                          Items=最快 (MAX),很快 (60 FPS),较快 (30 FPS),中等 (20 FPS),较慢 (15 FPS),很慢 (12 FPS),最慢 (10 FPS)
                          ;游戏速度,默认是Items=Fastest (60 FPS),Faster (45 FPS),Fast (30 FPS),Medium (20 FPS),Slow (15 FPS),Slower (12 FPS),Slowest (10 FPS)
                          ;Items=后的项目可以是中文
                          DefaultIndex=0
                          SpawnIniOption=GameSpeed
                          DataWriteMode=Index
                          Location=797,212
                          Size=97,21
                          [cmbSkirmishGameSpeedCap]
                          OptionName=Game Speed
                          Items=Fastest (MAX),Faster (60 FPS),Fast (30 FPS),Medium (20 FPS),Slow (15 FPS),Slower (12 FPS),Slowest (10 FPS)
                          DefaultIndex=1
                          SpawnIniOption=GameSpeed
                          DataWriteMode=Index
                          Location=797,212
                          Size=97,21


                          IP属地:辽宁13楼2020-01-16 23:19
                          回复
                            接13楼
                            ;; 下面是勾选框的内容
                            [chkShortGame]
                            Text=Short Game
                            SpawnIniOption=ShortGame
                            ;CustomIniPath=INI\Game Options\Short Game.ini
                            Checked=True
                            Location=909,23
                            ;下面这个ToolTip=表示在一些客户端中鼠标移到对应的勾选框上时显示的内容,相当于给玩家的提示,可以写中文。如果注释掉就什么也不会显示
                            ToolTip=Having only units and no structures left will cause the units to self-destruct and make the player instantly lose the game.
                            [chkRedeplMCV]
                            Text=Re-Deployable MCV
                            SpawnIniOption=MCVRedeploy
                            Checked=True
                            Location=909,44
                            ToolTip=Construction Yards can repack into a Mobile Construction Vehicle.
                            [chkCratesSkirm]
                            Text=Crates
                            SpawnIniOption=Crates
                            EnabledSpawnIniValue=False
                            DisabledSpawnIniValue=True
                            CustomIniPath=INI\Game Options\No Crates.ini
                            Reversed=yes
                            Checked=True
                            Location=909,65
                            ToolTip=Collectable crates will appear in random locations on the map, granting credits, tiberium, units, unit powerups, air strikes, area heal, global heal or booby traps.
                            [chkCratesMP]
                            Text=Crates
                            SpawnIniOption=Crates
                            EnabledSpawnIniValue=False
                            DisabledSpawnIniValue=True
                            CustomIniPath=INI\Game Options\No Crates.ini
                            Reversed=yes
                            Checked=False
                            Location=909,65
                            ToolTip=Collectable crates will appear in random locations on the map, granting credits, tiberium, units, unit powerups, air strikes, area heal, global heal or booby traps.


                            IP属地:辽宁14楼2020-01-16 23:20
                            回复
                              接14楼
                              [chkNoBaddyCrates]
                              Text=Safe Crates Only
                              CustomIniPath=INI\Game Options\No Baddy Crates.ini
                              Checked=False
                              Location=909,86
                              ToolTip=No crates with potential negative effects will appear if crates are enabled.
                              [chkMultiEngSkirm]
                              Text=Multi Engineer
                              SpawnIniOption=MultiEngineer
                              Checked=False
                              Location=909,107
                              ToolTip=Capturing a structure requires three Engineers instead of one.
                              [chkMultiEngMP]
                              Text=Multi Engineer
                              SpawnIniOption=MultiEngineer
                              Checked=True
                              Location=909,107
                              ToolTip=Capturing a structure requires three Engineers instead of one.
                              [chkStartingUnits]
                              Text=Starting Reinforcements
                              CustomIniPath=INI\Game Options\Starting Units.ini
                              Checked=False
                              Location=909,128
                              ToolTip=You will receive a small group of controllable units about a minute after the game starts.
                              [chkBuildOffAlly]
                              Text=Build Off Ally
                              SpawnIniOption=BuildOffAlly
                              Checked=True
                              Location=909,149
                              ToolTip=Allow building next to structures of teammates.
                              [chkQueuing]
                              ;Text=No Unit Queuing
                              Text=Production Queuing
                              Reversed=yes
                              CustomIniPath=INI\Game Options\Disable Unit Queueing.ini
                              Checked=True
                              Location=909,170
                              ;ToolTip=Just like in Tiberian Dawn and Red Alert, you won't see a queue counter when you click a unit's icon on the sidebar more than once and you'll have to wait until it's finished before you can click a unit's icon again.
                              ToolTip=You can queue the production of units by clicking their icons on the sidebar while a unit is already being produced so that they'll be built right after the current production has finished.


                              IP属地:辽宁15楼2020-01-16 23:21
                              回复