终极海军上将吧 关注:3,337贴子:19,584
  • 8回复贴,共1

【解释】关于UAD的MOD,以及内封/外载式修改/MOD的区别

只看楼主收藏回复

因为遇到太多进贴吧群的萌新,充满俺寻思的参照《拯救带清~》那帖就直接装UABE上去修改resource.assets,然后改出问题了,因此我想有必要发这么一帖做一些技术性的解释。
可能会比较长,1L先喂度娘。


IP属地:北京1楼2025-05-03 01:17回复
    【各种各样的MOD在改什么】
    UAD运行的基础数据、图片和模型等,是保存在Ultimate Admiral Dreadnoughts_Data下的resource.assets文件中(这是一个Unity游戏资源的封装包,依版本不同,大约1GB~1.4GB的程度)。目前为止能见到的几乎全部MOD,都围绕着其中TextAssets,又或者说数据表的读取、修改和重载——无论是通过UABE给import进去,修改整个封装包文件的内封;还是通过其他方式,将数据表通过辅助MOD,直接从外部读取。
    这些数据表本质上是*.csv即逗号分隔符,导出后正确的转化成支持UTF-8格式的CSV即可用excel编辑。不建议用特别古早的形式当作“代码”或者TXT文本去目力对齐行列——那样太容易出问题了。
    对于原版,其中名为misc(.csv)的TextAssets有所有这些数据表的清单,以及对于原版而言,它们最后一次被修改的时间记录。其中最主要的几个如下:
    - params(.csv,后略):UAD的核心参数文件,涉及到一系列游戏核心参数的设定。修改游戏平衡性几乎必须要动这部分,而且因为涉及到舰船的重量和重心计算,修改params的部分值以后,将导致同样的设计得出不同的重量或重心——进而导致原版或各MOD之间的误差乃至不兼容。
    - stats、statEffects、techEffects:定义了UAD各种船的核心属性效果、状态效果和科技加减成的表。这三者之间有相互调用的关系,且其它表的部分也会用这三个表中定义的效果对部件或科技等进行赋值,一般而言MOD不会动也不建议动这三个部分。(虽然stats也算是1.6及以后导致抗性鬼船得以成立的根源,这是后话)
    - accuracies、penetration、crewTrainingLevels、governmentMod(不在misc中):相当于一些基础- shipTypes:定义了UAD的基础舰种的表,各种基础运算参数——例如动力以及引擎相关,以及AI一般而言会有多大的权重去造这个舰种等。对于潜艇深恶痛绝的玩家通常会愿意在这里直接ban掉潜艇(权重0或者no_build),但修改这个表同样很容易导致兼容性问题。
    - players、relationMatrix、aiPersonalities:定义了UAD基础有哪些“玩家”(大国、中等小国和一般小国),以及它们之间的基础关系,还有(战役运营的)AI性格倾向等。涉及加新的大国必然动这部分,而且也是只要动了players就很容易直接报错跳出游戏,即使修改正确也极大概率会导致和原版不兼容
    - parts、partModels、partCategories、technologies、techTypes、techGroups:定义UAD的各种可用船体和部件以及它们的各种参数,调用模型的种类和尺寸,以及相应的科技分组、效果以及合适解锁什么部件等。一般而言parts必须同technologies进行科技解锁的对应,几乎所有“功能性”添加或修改可用的船以及效果的MOD都绕不开这两个表。
    - submarines:这个表是因为UAD没有直接把潜艇作为确切可以设计建造的船,以一种抽象的“预制船”的方式加入了另一个界面,并基于侦察、反潜等和标准舰种进行互动。
    - guns、torpedoTubes:定义你游各种口径炮的基础射表数据等,以及mk1到mk5的炮或鱼雷的基础参数。这其中尤其guns中对于初速、精度运算以及穿深等部分需要和params的一部分值联动,对于游戏中实际的瞄准以及炮弹曲线等都有关系。射表与params中的参数不匹配甚至可能导致根本无法开火的情况出现,因此尽管原版从1.5到1.7的炮线区别很大,MOD改这部分的反而比较少见。


    IP属地:北京2楼2025-05-03 01:27
    回复
      2025-08-21 16:17:27
      广告
      不感兴趣
      开通SVIP免广告
      (修正) - accuracies、penetration、crewTrainingLevels、governmentMod(不在misc中):同样相当于一些基础的buff或debuff以及基本状态修正的部分,例如老兵可以获得精度射速和损管效率提升、不同的政府或意识形态有不同的经济或稳定度加成等。
      -------------------------------------------------- 以下继续
      - CompTypes、Components:就是造船厂左边界面可用的那些选项,实际上是在调用相应的technologies条目。所以修改相应的部件效果不在这里。
      - Areas、Routes、Canals、Provinces、Ports:
      - randParts、randPartsRefit:自动造船设计逻辑以及自动改装设计逻辑,你游最一言难尽依托答辩的部分。目前除了国外MODDER的NAR以外很少会碰这里。
      - BattleTypes(应该不起作用)、BattleTypeEx:定义战役中的战斗匹配。很少动的一部分。
      - AiAdmirals、ShipNames、help、events、tooltips、missions、loadingScreens:


      IP属地:北京3楼2025-05-03 01:33
      回复
        - Areas、Routes、Canals、Provinces、Ports:和战役中的海图相关的部分,但你游内部并不完全读这些表,因此进行游戏内海图的汉化基于这些表,但必须采用外载。
        - AiAdmirals、ShipNames、help、events、tooltips、missions、loadingScreens:其它文本性的,或者战役中的事件选项、效果以及加载页面等相关。不影响战役或手动战斗中的平衡性和游戏性。


        IP属地:北京4楼2025-05-03 01:35
        回复
          【内封和外载】
          既然是修改或者说MOD,那就涉及到“本来是什么”,以及“完全替换还是覆盖载入”的问题。
          - 对于内封式而言,因为是直接import直接修改封装包即“完全替换”,所以“本来是什么”,有没有备份,只有进行了修改的MODDER知道。这也会设计到另一个问题——如果一个“学习版”里包含内封MOD,那么除非MODDER进行声明,否则没有人知道这是否是UAD的原始版本。
          - 对于外载式而言,因为不修改封装包和游戏原始文件,所以不会影响“本来是什么”的问题。但是通过MelonLoader+TAF进行“覆盖载入”是否兼容,是否能正确在游戏中反应,需要依赖额外的信息栏提示。TAF作为必要的工具,也引入了一些非原版功能(主要是自由炮座和升级延迟);而且狭窄的版本兼容(1.6.1.5 optx4 以及 1.7.0.0 Live)也是不容忽视的限制。
          总之,如果你要玩1.5.1.6,或者基于更早的1.6.0.6 或 1.6.1.3等版本,因为TAF支持版本限制的原因,目前暂时只能选择内封;1.6.1.5 optx4以及1.7.0.0 Live虽然也有一些其他问题,但作为制作组被拉去填线(?)之前的完结版本,总的来说在外载方面支持更好。
          内封如何使用UABE我想贴吧的其它帖子已经说的比较清楚,因此这里只拓展外载相关。
          =================================================
          【外载:运行外置MOD的基础工作】.NET 6.0、MelonLoader、字库补丁的三部曲
          为什么:部分MOD采用的不是替换UAD部分原始文件(内封)的形式,而是将修改文件外置,由Melon在游戏启动时加载并修改相关数据。有些功能的实现或游戏原本的bug修复也依托Melon加载相应的DLL实现,因此决定装MOD玩的基础是先正确配置MelonLoader。
          因为需要编译dll,.NET或者说dotnet 6.0是MelonLoader的运行条件。对于一般玩家只需要安装运行时就足够了。至于MelonLoader是啥,随便问度娘就能知道,这里只提两点:
          - 如果不是使用已经编译好的压缩包,而是全新安装,可能需要翻墙获取编译资源;
          - 使用MelonLoader时,UAD路径名不能含有中文。
          字库补丁是贴吧群的黑桐佬制作的替换用sharedassets0.assets,更大的中文字库可以解决原版一些字体会因为不支持而显示为方块的问题。具体建议进贴吧群问询。


          IP属地:北京5楼2025-05-03 01:47
          回复
            顶一下


            IP属地:福建来自Android客户端6楼2025-05-03 15:53
            回复

              目前为止,已知的一些MOD的情况统计和兼容性参照。
              (暂不包含汉化lng,以及非MOD的工具等)


              IP属地:北京7楼2025-05-04 00:27
              回复
                支持技术贴。


                IP属地:湖北8楼2025-05-21 18:25
                回复
                  2025-08-21 16:11:27
                  广告
                  不感兴趣
                  开通SVIP免广告
                  大佬问下我的aeb搜索不到aiPersonalities怎么办


                  IP属地:浙江来自Android客户端9楼2025-07-17 11:02
                  回复