佳丽云

英雄无敌3-WoG中文站

 找回密码
 英雄注册|Register
查看: 1270|回复: 18

[制作组进]关于mod结构

[复制链接]
  • TA的每日心情
    开心
    2020-9-19 16:27
  • 签到天数: 7 天

    连续签到: 1 天

    [LV.3]火元素使者

    9896

    回帖

    64万

    金币

    19

    精华

    管理员

    风侠

    Rank: 12Rank: 12Rank: 12

    积分
    52035

    论坛元老魅力之星封魔玩家

     楼主| 发表于 2020-6-22 05:54:10 | 显示全部楼层 |阅读模式
    各位核心成员,
    最近几位主创人员提到游戏版本和兼容性的问题。我不是很理解,特开一贴请大家一起来继续讨论。
    1。平台版本,主要是ERA和VCMI。我个人对VCMI涉猎较少。目前论坛的mod以ERA为主。我就只谈谈ERA的版本问题。由于作者Bersy
    更新的频率较快,我们没有精力去全面配合改动。所以我认为mod仅需围绕几个特定版本进行开发。比如2.46,2.9.10等。
    2。MOD结构,我想知道mod可否不修改任何平台文件?能否所有的改动均在mod目录下并通过mod管理器来开关和排序?先解决这个问题,后续我们再来讨论如何规范化管理多个mod。如果不得不改动平台文件(增加,删除,修改),主要是哪几个文件?技术难点是什么?
    3。对于每个mod的选项设置,我认为,如果作者不希望玩家改的部分,就直接从选项中移除。还有保存设置文件dat能否通过技术限定为只能保存在本mod目录下?还有,每个mod的设置菜单的首页进行一些个性化的修改,不再是统一的"欢迎来到wog设置"
    4。升级包,我们讨论了去本体化操作。那么发布mod时将不再提供整合包。虽然会让新手有点为难,但这是不得不走的路。我们可以通过对mod管理器界面进行美化定制来更好的引导新手玩家。也就是大家提到的客户端。玩家下载mod有以下几种方式,①完整mod包(按版本号发布的,比如1.0  1.21  1.34等)②增量升级包(相对于大版本号,比如1.21和1.34都是相对于1.0版的升级包,但1.34包含1.21的内容)。玩家安装时,选择安装目录时,系统检查该目录是否含有必须的版本,比如安装升级包就会检查是否有指定的大版本,安装完整mod包时会检查是否有指定版本的ERA,安装ERA是会检查是否有指定版本的H3。
    以上是我目前能想到的,更多的内容可在后续回复中添加。
    欢迎大家讨论。
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4947

    回帖

    3万

    金币

    35

    精华

    超级版主

    Rank: 11Rank: 11Rank: 11Rank: 11

    积分
    34630

    论坛守望者论坛元老杰出贡献

    发表于 2020-6-22 09:09:36 | 显示全部楼层
    1.只要确定了era的版本,规范子mod的文件配置,就能做到mod只在相应子目录下进行。
    2.mod管理器不是关键,掌握单纯的修改list.txt就能控制mods的加载卸载和优先关系。完全可以用其它方法来管理mods的增删。
    3.能去H3化,先不管wog,也不能去era化,而era版权是尚在的,这难道不也是个问题吗?
    4.大型mod,直接分体非H3,加升级包,或以后更新包。也没必要动mods了。动了反而导致更多兼容性问题。
    5.既然子mod也能操控游戏的所有方方面面,要管理多mod还得有一份兼容性mods的名单。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2020-12-10 03:20
  • 签到天数: 550 天

    连续签到: 3 天

    [LV.9]龙巫妖

    4637

    回帖

    35万

    金币

    2

    精华

    超级版主

    一路狂奔

    Rank: 11Rank: 11Rank: 11Rank: 11

    积分
    16189

    论坛守望者

    发表于 2020-6-22 10:30:20 | 显示全部楼层
    支持贤知的说法,现在避免触雷只能是MOD单独化,我甚至后续版本会把美化,头像都单独剥离出来。感觉大家可以整合下素材,升级下贤知的英雄大头像MOD。
    目前弄的封魔1.05是准备基于ERA 2.9.10平台版本,说实话,这块真的很乱 现在不说别的,光ERA版本就好多。我手头上有3个ERA版本的 就2.46测试证明了稳定性 后续两个 一个2.8.7 一个2.9.10现在都需要大量游戏运行测试才能验证稳定性。

    回复 支持 反对

    使用道具 举报

     成长值: 11125

  • TA的每日心情
    郁闷
    2024-3-3 18:17
  • 签到天数: 1609 天

    连续签到: 1 天

    [LV.Master]伴坛终老

    5448

    回帖

    3万

    金币

    8

    精华

    管理员

    ERA Project Team
    WoG俄文论坛版主

    Rank: 12Rank: 12Rank: 12

    积分
    103329

    社区QQ达人论坛守望者脚本测试狂杰出贡献年度明星魅力之星宣传部长

    发表于 2020-6-22 11:03:03 | 显示全部楼层
    我也说一下对风侠提到的几个问题的看法。

    1. 平台版本。目前论坛的mod以ERA为主,由于作者Bersy更新的频率较快,我们没有精力去全面配合改动。我认为mod仅需围绕几个特定版本进行开发。比如2.46,2.9.10等。

    世界范围内英雄无敌3流行的mod无非是基于这五个平台(或mod),即:
    ERA - 分2.46版和2.9(或3)版
    VCMI
    深渊号角HotA
    傀儡大师MoP - 分2版和3版
    原版英雄无敌3
    用哪个平台不重要,关键看能不能符合创作者的需求

    2. mod可否不修改任何平台文件?能否所有的改动均在mod目录下并通过mod管理器来开关和排序?先解决这个问题,后续我们再来讨论如何规范化管理多个mod。如果不得不改动平台文件(增加,删除,修改),主要是哪几个文件?技术难点是什么?

    如果多个mod用不同平台进行开发,在一定情况下也可以共用一个英雄无敌3基底,需要具体情况具体分析

    但有明显冲突的是ERA 2.46和ERA 2.9(或3)。由于冲突的文件数量较多,建议使用不同的英雄无敌3文件夹分别存放这两个平台的mod,不要尝试通过分析冲突文件做“ERA版本一键切换器”,硬盘速度有限...

    不得不改动平台的情况——这里就拿@贤知有您即将发布的魔力觉醒mod来讲。原本是一个ERA 2.46的mod,但由于改动了硬编码(h3era.exe),实际上已经算是独立于ERA 2.46以外的新平台了,一般2.46的脚本在魔力觉醒里是不适用的。这种情况也是建议单独用一个H3文件夹存放的。

    3. 对于每个mod的选项设置,我认为,如果作者不希望玩家改的部分,就直接从选项中移除。还有保存设置文件dat能否通过技术限定为只能保存在本mod目录下?

    选项移除与否取决于mod作者。有些对于官方脚本变动不大的mod,如果需要禁用某个官方选项,将选项留在菜单里并标注禁用,也是较为友好的让玩家了解信息的方式。

    WoG选项设置的保存/读取位置在mod内部——ERA 2.46不行,ERA 2.9可以。

    4。升级包,我们讨论了去本体化操作。那么发布mod时将不再提供整合包。

    这里我复述一下我以前提到的问题。下载即玩这个目标可以通过捆绑英雄无敌3资源文件+mod来实现(现有的方式是捆绑完整H3文件+mod)。玩家无法通过这个捆绑了H3资源文件的mod包玩到原版英雄无敌3。这也是HotA的发布形式。这种情况在新的论坛规范里,是否符合要求?


    既然大C也回复了,我这里解释一下ERA稳定性的问题。
    我手头上有3个ERA版本的 就2.46测试证明了稳定性 后续两个 一个2.8.7 一个2.9.10现在都需要大量游戏运行测试才能验证稳定性。

    目前没有恶性已知bug、流行的ERA版本是2.46f和2.9.14。这里的稳定指的是和官方WoG脚本相处融洽。封魔导入了大量自定义脚本,在新ERA里确实需要不少测试和修复。


    也回复一下baalkyo提到的问题。
    mod版本 有几个要素 操作系统 ,比如 windows  安卓等。

    这个是多虑了...支持安卓的英雄无敌3仅有VCMI,目前论坛主推的mod都基于ERA——Windows only.




    点评

    唉,平台比MOD更新频率还快,说实话真的是够了。  详情 回复 发表于 2020-6-22 11:20
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2020-6-23 21:20
  • 签到天数: 7 天

    连续签到: 1 天

    [LV.3]火元素使者

    33

    回帖

    331

    金币

    0

    精华

    管理员

    Rank: 12Rank: 12Rank: 12

    积分
    597
    发表于 2020-6-22 11:05:07 | 显示全部楼层
    关于mod管理,暂时这样考虑:
    1 mod版本 有几个要素 操作系统 ,比如 windows  安卓等。 作者mod版本号,作者mod需求mod的前提,比如era 等。这些设置需要程序能识别的版本号文件对应。版本号文件 可以是json文件,包含操作系统  原h3版本 作者mod版本 前提需求mod版本  文件md5 校验字符串
    2 mod安装是对原版的文件覆盖,管理器应该有反覆盖的脚本和覆盖文件的脚本,方便玩家来选择和安装使用不同版本的mod。

    3 根据作者的开发进程不同,基地的mod比如era可以存在多种版本选择。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2020-12-10 03:20
  • 签到天数: 550 天

    连续签到: 3 天

    [LV.9]龙巫妖

    4637

    回帖

    35万

    金币

    2

    精华

    超级版主

    一路狂奔

    Rank: 11Rank: 11Rank: 11Rank: 11

    积分
    16189

    论坛守望者

    发表于 2020-6-22 11:20:27 | 显示全部楼层
    Archer30 发表于 2020-6-22 11:03
    我也说一下对风侠提到的几个问题的看法。
    目前没有恶性已知bug、流行的ERA版本是2.46f和2.9.14。这里的稳定指的是和官方WoG脚本相处融洽。封魔导入了大量自定义脚本,在新ERA里确实需要不少测试和修复。

    唉,平台比MOD更新频率还快,说实话真的是够了。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-9-19 16:27
  • 签到天数: 7 天

    连续签到: 1 天

    [LV.3]火元素使者

    9896

    回帖

    64万

    金币

    19

    精华

    管理员

    风侠

    Rank: 12Rank: 12Rank: 12

    积分
    52035

    论坛元老魅力之星封魔玩家

     楼主| 发表于 2020-6-22 17:10:00 | 显示全部楼层
    像魔力觉醒mod这样的,如果没办法共用era 那就只能单独提供安装包。只是这个安装包方便剥离H3吗?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-9-19 16:27
  • 签到天数: 7 天

    连续签到: 1 天

    [LV.3]火元素使者

    9896

    回帖

    64万

    金币

    19

    精华

    管理员

    风侠

    Rank: 12Rank: 12Rank: 12

    积分
    52035

    论坛元老魅力之星封魔玩家

     楼主| 发表于 2020-6-22 17:19:11 | 显示全部楼层
    说实话,多个mod如果不能共存共用资源,每个都单独下载安装,对于玩家来说不够友好。如果想要每个mod尝下鲜,岂不得下载几十甚至几百G的文件。
    回复 支持 反对

    使用道具 举报

     成长值: 11125

  • TA的每日心情
    郁闷
    2024-3-3 18:17
  • 签到天数: 1609 天

    连续签到: 1 天

    [LV.Master]伴坛终老

    5448

    回帖

    3万

    金币

    8

    精华

    管理员

    ERA Project Team
    WoG俄文论坛版主

    Rank: 12Rank: 12Rank: 12

    积分
    103329

    社区QQ达人论坛守望者脚本测试狂杰出贡献年度明星魅力之星宣传部长

    发表于 2020-6-22 18:34:49 | 显示全部楼层
    songfx 发表于 2020-6-22 17:19
    说实话,多个mod如果不能共存共用资源,每个都单独下载安装,对于玩家来说不够友好。如果想要每个mod尝下鲜 ...

    风侠实在是多虑了,像我上边说的,具体情况具体分析。我这里就以论坛拥有主版面的几个mod做一下方案

    囊括的mod(或平台):ERA 2.46f、ERA 2.9.14、封魔、新英3、封神、逐鹿城、VCMI(及其相关mod)、深渊号角、傀儡大师、堕落灾变、魔力觉醒

    最多需要4个英雄无敌3文件夹来实现将他们全部包含进去,具体方案如下:

    文件夹1:ERA 2.46f、封神、新英3
    文件夹2:ERA 2.9.14、封魔、逐鹿城
    文件夹3:魔力觉醒
    文件夹4:堕落灾变

    未在以上列表的mod(或平台),包括VCMI(及其相关mod)、深渊号角、傀儡大师可以安装在1-3号任意文件夹。

    其中魔力觉醒其实是一个很tricky的状态,虽然我上边将他安排了单独文件夹,但实际上如果允许用户消耗一些耐心,在每次运行前用ERA 2.46f的文件夹进行临时文件替换的话,也可以和1号文件夹共用(具体方案在此不表,Windows批处理就能做)。这样的话,就只需要3个文件夹了。

    当然我这里的方案实际上是假定了封魔、新英3都能完美地将其修改内容限定在ERA\Mods文件夹内@canary @titanzwh 能否验证一下这个结论?如果不能将修改内容限定在mods文件夹内,能否提交一份需要动到ERA主目录文件的文件列表?(可使用Beyond Compare与官方ERA进行比对)

    像魔力觉醒mod这样的,如果没办法共用era 那就只能单独提供安装包。只是这个安装包方便剥离H3吗?

    整合mod的大原则:
    不同版本之间的ERA之间无法整合
    就把魔力觉醒理解成ERA 2.47好了。它虽然没办法直接整合到ERA 2.46或ERA 2.9.14的文件夹,但它和H3的分离情况与其他ERA系mod完全一致(如封魔、新英3)


    点评

    封魔没啥问题,本身就是独立的MOD,只是鉴于一群老玩家从来不看说明,懒得每次都口干舌燥一遍遍解说才干脆打包的,我每次只更新补丁多好,每次就一点点东西就完事。免得每次都要像现在一样重新整合好然后上传,有时  详情 回复 发表于 2020-6-22 22:53
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2020-12-10 03:20
  • 签到天数: 550 天

    连续签到: 3 天

    [LV.9]龙巫妖

    4637

    回帖

    35万

    金币

    2

    精华

    超级版主

    一路狂奔

    Rank: 11Rank: 11Rank: 11Rank: 11

    积分
    16189

    论坛守望者

    发表于 2020-6-22 22:53:18 | 显示全部楼层
    Archer30 发表于 2020-6-22 18:34
    风侠实在是多虑了,像我上边说的,具体情况具体分析。我这里就以论坛拥有主版面的几个mod做一下方案

    ...

    封魔没啥问题,本身就是独立的MOD,只是鉴于一群老玩家从来不看说明,懒得每次都口干舌燥一遍遍解说才干脆打包的,我每次只更新补丁多好,每次就一点点东西就完事。免得每次都要像现在一样重新整合好然后上传,有时候手忙脚乱还把不该放出去的东西放出去了(比如贤知的操作增强4.0)。。。。。。
    回复 支持 反对

    使用道具 举报

     成长值: 11125

  • TA的每日心情
    郁闷
    2024-3-3 18:17
  • 签到天数: 1609 天

    连续签到: 1 天

    [LV.Master]伴坛终老

    5448

    回帖

    3万

    金币

    8

    精华

    管理员

    ERA Project Team
    WoG俄文论坛版主

    Rank: 12Rank: 12Rank: 12

    积分
    103329

    社区QQ达人论坛守望者脚本测试狂杰出贡献年度明星魅力之星宣传部长

    发表于 2020-6-23 01:18:59 | 显示全部楼层
    既然此帖已经被移动到自由天地版块,我觉得有必要为吃瓜群众科普一下来龙去脉,以便参与讨论:

    论坛的技术骨干打算在未来推出一个一站式客户端,可以实现论坛mod及平台的购买、下载、更新、新闻资讯推送和不同mod的启动(参考暴雪战网平台)。此贴讨论的便是针对论坛现有的mod以及未来可能有的mod,需要用一个怎样的方式整合在一起,既不产生冲突又能最大限度地节省磁盘空间。

    这里非常欢迎论坛现有各个大型mod的作者,包括@XEricSin @hell____fire @scare @我是个好人 @titanzwh 发表一下对这样的客户端的看法,以及自己的mod和其他mod/平台的共存情况(是否能将改动都存在mod文件夹内而不动平台?)
    其他未被@到的mod作者,或者跃跃欲试的吃瓜群众,我也在此诚挚邀请你们在此帖发表你们的重要看法。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-12-9 01:09
  • 签到天数: 9 天

    连续签到: 1 天

    [LV.3]火元素使者

    1839

    回帖

    8223

    金币

    8

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    10788

    社区QQ达人

    发表于 2020-6-23 13:51:59 | 显示全部楼层
    era的mods框架是完全没问题的。在2.9版上开发的新mod基本上是不愁变量冲突的,因为可以自定义变量。而且新版的mod管理器中是可以读取mod的兼容mod和加载优先度配置的。只要不在内存上有太大的动作是没什么问题的。

    做大型mod的话,就要作者间沟通好了。像我的逐鹿城只针对生物系统和新英雄,ACM则在英雄二阶职业,装备,魔法上该动。跟我的逐鹿城很大部分上可以互补,但也在部分英雄设置上有冲突,只能双方各自从代码上修改,改善兼容性。

    Mod发布可以有个推送机制,但是可能太费劲,需求也不大。基本上就只有封魔这个主力产品。就我个人而言,半年内是不会有任何更新的。

    最重要的还是要让玩家,特别能动手的玩家善于使用MOD的结构。可以在开始菜单里放个MODS文件夹的链接,最好放mod管理器旁边,一来提醒有这个添加新MOD的简单机制,二来真的比到根目录找MODS文件夹方便。这样才能引导玩家把mod丢到mods里。

    点评

    说得在理,不过目前还未到“同时开启多个ERA mod的兼容性尝试”阶段,还仅仅在讨论把他们放在一起而不产生文件冲突。 我也非常同意“太费劲,需求不大”的结论 下一版论坛主推的ERA版本会用daemon_n的整合版为  详情 回复 发表于 2020-6-23 15:19
    回复 支持 反对

    使用道具 举报

     成长值: 11125

  • TA的每日心情
    郁闷
    2024-3-3 18:17
  • 签到天数: 1609 天

    连续签到: 1 天

    [LV.Master]伴坛终老

    5448

    回帖

    3万

    金币

    8

    精华

    管理员

    ERA Project Team
    WoG俄文论坛版主

    Rank: 12Rank: 12Rank: 12

    积分
    103329

    社区QQ达人论坛守望者脚本测试狂杰出贡献年度明星魅力之星宣传部长

    发表于 2020-6-23 15:19:19 | 显示全部楼层
    XEricSin 发表于 2020-6-23 13:51
    era的mods框架是完全没问题的。在2.9版上开发的新mod基本上是不愁变量冲突的,因为可以自定义变量。而且新 ...

    说得在理,不过目前还未到“同时开启多个ERA mod的兼容性尝试”阶段,还仅仅在讨论把他们放在一起而不产生文件冲突。

    我也非常同意“太费劲,需求不大”的结论

    下一版论坛主推的ERA版本会用daemon_n的整合版为蓝本,届时会在启动菜单加入mods文件夹快捷方式

    点评

    多个mod共存,不等于多个mod同时加载。想按各自mod的排序是很容易的。比如玩家在启动菜单选择封魔,则自动调整为封魔所需的mod列表。如果玩家在启动菜单选择逐鹿,就自动调用逐鹿的列表。这个在技术上没有太大的难度  详情 回复 发表于 2020-6-23 17:01
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-9-19 16:27
  • 签到天数: 7 天

    连续签到: 1 天

    [LV.3]火元素使者

    9896

    回帖

    64万

    金币

    19

    精华

    管理员

    风侠

    Rank: 12Rank: 12Rank: 12

    积分
    52035

    论坛元老魅力之星封魔玩家

     楼主| 发表于 2020-6-23 17:01:47 | 显示全部楼层
    Archer30 发表于 2020-6-23 15:19
    说得在理,不过目前还未到“同时开启多个ERA mod的兼容性尝试”阶段,还仅仅在讨论把他们放在一起而不产 ...

    多个mod共存,不等于多个mod同时加载。想按各自mod的排序是很容易的。比如玩家在启动菜单选择封魔,则自动调整为封魔所需的mod列表。如果玩家在启动菜单选择逐鹿,就自动调用逐鹿的列表。这个在技术上没有太大的难度。
    另外我建议每个mod,除了公用部分比如汉化界面,其余全部放进一个mod文件夹里。

    点评

    正解  发表于 2020-6-23 17:28
    回复 支持 反对

    使用道具 举报

    ahome_bigavatar:guest
    ahome_bigavatar:welcomelogin
    您需要登录后才可以回帖 登录 | 英雄注册|Register

    本版积分规则

    捐赠
    关注我们,英3Mod一网打尽!

    WoG中文站 ( 辽B2-20210485-10 )|辽公网安备 21128202000228 号

    GMT+8, 2024-4-30 02:01 , Processed in 1.146196 second(s), 13 queries , Gzip On, File On.

    Powered by Discuz! X3.4

    Copyright © 2004-2022, Beijing Second Sight Technology Co., LTD.

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