文明7吧 关注:20,004贴子:181,184
  • 13回复贴,共1

文明7 简单Mod 教学

只看楼主收藏回复

准备工作:
1.在steam中右键游戏名—管理—浏览本地文件
Base\modules的里面所有文件夹,大部分可做成mod,备份一份
2.打开 C:\Users\你的用户名\AppData\Local\FiraxisGames\Sid Meier‘s Civilization VII 这个路径中AppOptions.txt
打开,编辑,查找EnableDebugPanels,将其前面的分号去掉,改为 1像这样:EnableDebugPanels 1,注意上面那个不用改
3.还是这个AppOptions.txt,查找CopyDatabasesToDisk,
将其改为CopyDatabasesToDisk 1,上面那条不用改。然后保存。
4.下载软件:
https://sqlitestudio.pl/ ---SQLiteStudio查找很多词条需要。
https://hemmelfort.lanzoub.com/ie1SY2onvmgj --- hemmelfort大佬的工具,生成xml代码需要。
https://www.deepseek.com ---翻译,和遇到问题时需要。
然后,写代码用的IDE的话,推荐: visual studio,pycharm等等,怎么喜欢怎么来,记事本都没问题的。
Mod文件夹结构:
在Mods文件夹中,新建一个文件夹,命名英文。这边官方文件夹结构为例:
在modules文件夹中有个age-antiquity,这个就相当于你的mod的文件夹
你只需要参考他的结构去制作你的mod
Config存放的是一些配置文件,修改纪念品等需要
Data存放xml文件,修改游戏效果需要
Ui是存放js文件,修改ui需要
Text是存放文本文件,本地化需要
xxx.modinfo是导入你mod的文件文件
ModInfo:
1.每一个<>XXX<>XXX就是可以改的 2.="XXX" XXX里面可以改
Properties:AffectsSavedGames:是否影响游戏存档
ActionCriteria:限制生效范围,Criteriaid=“always“ 总是生效,
<Criteriaid=”antiquity-age-current”> 古代生效;
ActionGroups:mod作用信息,ActionGroupid 随便写 ,scope=“game“ 在游戏中生效, criteria=”always“ 生效范围;
<UpdateDatabase> 要更新的文件路径
<Item>data/mementos_mod.xml</Item> 路径就是以这个mod文件内的路径
<UpdateText> 要更新的文本文件路径
<Itemlocale=“zh_Hans_CN”>text/zh_Hans_CN/ModText.xml</Item> 注意中文要用这种写法
4.Xml文件:mod_data
找出你想要改的内容:
如建筑:constructibles.xml constructibles-gameeffects.xml
跟官方的文件写法一样:
查找:WONDER
Row代表添加,如果你只想修改他的内容,就用Replace
</Constructibles>
<RowConstructibleType="WONDER_WEIYANG_PALACE"Name="LOC_WONDER_WEIYANG_PALACE_NAME"Description="LOC_WONDER_WEIYANG_PALACE_DESCRIPTION"Tooltip="LOC_WONDER_WEIYANG_PALACE_TOOLTIP"ConstructibleClass="WONDER"Cost="375"Population="0"ImmuneDamage="true"Age="AGE_ANTIQUITY"RequiresUnlock="true" />
</Constructibles>
将<>头和尾复制到你的xml文件中,<Row改为<Replace
同样道理,引号里面的就是可以改的,如果你改完游戏进不了存档,那可能是引号出错了,或者头和尾有个</ 没加上。
注意效果是带ModifierId的,要与建筑进行绑定,
<ConstructibleModifiers> 注意这种词条
<RowConstructibleType="WONDER_ANGKOR_WAT"ModifierId="MOD_ANGKOR_WAT_WORKER_CAP"/>
</ConstructibleModifiers>
这个是写在另一个xml中,所以你做mod时,建一个mod_data存放绑定的词条,一个mod_modifier存放效果会比较好。
Xml文件:mod_modifier
要修改对应的效果,就要新建一个Modifier id•这时建议用到hemmelfort大佬的工具提高效率:具体可以看他的视频。这里简单讲解。<Modifierid="HILLFORT_MOD_SIGHT"collection="COLLECTION_OWNER"effect="EFFECT_ADJUST_UNIT_SIGHT">•<Argumentname="Amount">1</Argument>•</Modifier>•
Modifierid不能和之前一样,要自己新取一个,collection对应生效的物体,可以是玩家,可以是城市
Effect是效果,只能在游戏其他xml文件夹中查,比如EFFECT_ADJUST_UNIT_SIGHT,这个就是修改视野的效果。
Amount 后面的数字就是数值。
改完后,要将这个自己取的Modifierid 在mod_data中与对应要Replace的Type进行绑定才可以生效
本地化文本
•参考我Mod的目录:•Text里面,一个en_us存放英文,一个zh_Hans_CN放中文
同样也是用xml来写
<RowTag="LOC_MEMENTO_QIN_WONDER_PRODUCTION_NAME">•<Text>Qin'sWonders Mislead</Text>•</Row>
这个LOC对应你mod中所使用的LOC就好,中文的话,要用<RowTag="LOC_MEMENTO_QIN_WONDER_PRODUCTION_NAME"Language="zh_Hans_CN">•<Text>奇观误国</Text>•</Row>
6.查数据库SQLite
•打开一局游戏:然后就会有个Debug文件夹路径•C:\Users\你的用户名\AppData\Local\FiraxisGames\Sid Meier‘s Civilization VII\Debug
打开后,其中gameplay就是可以改游戏内各种数据的sqlite
左上角Filter by name 可以直接搜,然后对应的Data里面有各种表格
这里需要用到SQL 脚本来修改,具体可以询问ai怎么用sql来修改这种表格


IP属地:广东1楼2025-03-08 17:20回复
    参考Mod:
    https://forums.civfanatics.com/resources/better-mementos-mod.32011/
    参考PPT:
    https://pan.quark.cn/s/ed537dd6b7d3
    实在不知道贴吧怎么排版,很乱的,去看PPT


    IP属地:广东2楼2025-03-08 17:22
    回复
      2025-07-31 11:52:48
      广告
      不感兴趣
      开通SVIP免广告
      作为职业伸手党,做是不可能做的。但是还是来点个赞


      IP属地:韩国3楼2025-03-10 16:40
      回复
        学习中


        IP属地:河南来自Android客户端4楼2025-03-15 01:34
        回复
          感谢分享,好好学习一下。我虽然不会做mod,但毕竟文明6下载了几十个mod,使用过程中也发现了一些mod的数值是可以自己改的,很方便。
          目前最需要的mod是能在资源地块上建造区域,建筑,又不移除资源的mod,楼主发现的话麻烦分享。
          最小铺城距离可以修改游戏文件,不需要mod。
          还希望有文明6里那种,可以让一些奇观能修建在山脉、雨林地块的mod,像佩特拉,马丘比丘之类的就不用占据有用的地块。


          IP属地:湖南5楼2025-03-15 02:20
          回复
            感谢大佬,想请教一下如果要做一个新领袖应该怎么搞呢


            IP属地:四川6楼2025-03-19 13:51
            收起回复
              楼主娇娇我怎么把神之所改回去,我昨晚玩一局奇观被抢走一半


              IP属地:安徽来自Android客户端7楼2025-03-27 15:52
              收起回复
                准备工作1.2.3这三个步骤什么意思?不做准备工作操作可以么,大佬


                IP属地:山东来自Android客户端8楼2025-03-28 13:19
                回复
                  2025-07-31 11:46:48
                  广告
                  不感兴趣
                  开通SVIP免广告
                  大佬知道将军直接获得奖章点数的代码嘛,我这边只能添加腓特烈的品格奖章代码,但是这个海军将军没效果,游戏里好像没见有什么修正能直接给一个奖章点数


                  IP属地:上海10楼2025-04-06 23:32
                  收起回复