超级玩家
 
- 贡献度
- 12
- 金元
- 8105
- 积分
- 859
- 精华
- 0
- 注册时间
- 2014-6-30
|
本帖最后由 saintpietro414 于 2024-5-10 15:31 编辑
秉着20年不修改不玩游戏的传统,花了两个小时翻N网络,现在介绍庄园领主的初级mod修改教程照搬
https://www.nexusmods.com/manorlords/mods/60?tab=posts
https://www.nexusmods.com/manorlords/mods/65?tab=posts&BH=0
两位作者的研究
1 下载两个工具repak 和UAssetGUI
https://github.com/trumank/repak
https://github.com/atenfyr/UAssetGUI
2 解包pak文件以warbow2xmod作为例子
(1)将需要解包的pak放入解压缩后的repak文件夹
(2)在repak文件夹的地址栏内输入cmd打开控制台,可现在notepad上写好后CTRL V,输入:
repak.exe --aes-key 0xD7D2FFA2744D18A7B84DFF09591C212C2068413A23BA3967F9890A6654989321 unpack WarBow2x.pak (pak文件名称)
即可在repak文件夹内得到解包的文件夹及里面的DT_Items.uasset,这个文件里控制着所有物品项目
3 用UAssetGUI转换uasset文件到JSON文件进行修改
打开UAssetGUI,右上角选择引擎版本,这里选了4.27,打开repak里的DT_Items.uasset,选择另存为,在文件类型下选择Json, 得到一个DT_Items.JSON,这样就可以用Notepad修改
拿WarBow2x这个mod举例子,搜索"Value": "warbows"看到下面攻击8 (原本是4),射程8500,鉴于弓箭手实在刮痧,改成攻击12,射程12000
{
"$type": "UAssetAPI.PropertyTypes.Objects.FloatPropertyData, UAssetAPI",
"Value": 8.0,
"Name": "rangedAtt",
"DuplicationIndex": 0
},
{
"$type": "UAssetAPI.PropertyTypes.Objects.FloatPropertyData, UAssetAPI",
"Value": "+0",
"Name": "def",
"DuplicationIndex": 0
},
{
"$type": "UAssetAPI.PropertyTypes.Objects.FloatPropertyData, UAssetAPI",
"Value": "+0",
"Name": "range",
"DuplicationIndex": 0
},
{
"$type": "UAssetAPI.PropertyTypes.Objects.FloatPropertyData, UAssetAPI",
"Value": 8500.0,
"Name": "shootingRange",
"DuplicationIndex": 0
},
4 将JSON转换回到uasset, 与上面同样方法在UAssetGUI里将DT_Items.JSON另存为DT_Items.uasset文件
5 回到repak中打包成PAK,文件夹内打开cmd,输入repak.exe pack "WarBow2x"
这样就得到修改好了的pak mod文件
6 放入\ManorLords\Content\Paks\~mods
修改教程:
1 物品修改 DT_Items.JSON
武器修改
搜索"Value": "weapons_polearms" 以长柄斧枪为例
{
"$type": "UAssetAPI.PropertyTypes.Objects.FloatPropertyData, UAssetAPI",
"Value": 2.0,
"Name": "att",
"DuplicationIndex": 0
},
防御"+0" 去掉" " 改成"Value": 10 这样长柄民兵就能多出10的防御
{
"$type": "UAssetAPI.PropertyTypes.Objects.FloatPropertyData, UAssetAPI",
"Value": "+0",
"Name": "def",
"DuplicationIndex": 0
},
同理block指的是远程防御
{
"$type": "UAssetAPI.PropertyTypes.Objects.FloatPropertyData, UAssetAPI",
"Value": "+0",
"Name": "block",
"DuplicationIndex": 0
},
"Value": "mail_armor" 链甲
"Value": "gambesons" 棉甲
"Value": "helmets_militia_tier0" 头盔
"Value": "armour_retinue_tier3_variations" 板甲
这些数据理论上都是敌我通用的,但目前AI不出长戟民兵,所以我的修改集中在weapons_polearms
2 产量修改:DT_Items.JSON
举例木炭 "Value": "Charcoal" 找到下面"Name": "craftingOutput",产出 amt指的是amount数量
"Value": 2 代表用1个柴火产出2个木炭,改成4就等于产能翻倍
"Value": [
{
"$type": "UAssetAPI.PropertyTypes.Structs.StructPropertyData, UAssetAPI",
"StructType": "Good",
"SerializeNone": true,
"StructGUID": "{00000000-0000-0000-0000-000000000000}",
"Name": "craftingOutput",
"DuplicationIndex": 0,
"Value": [
{
"$type": "UAssetAPI.PropertyTypes.Objects.IntPropertyData, UAssetAPI",
"Name": "type",
"DuplicationIndex": 0,
"Value": 13
},
{
"$type": "UAssetAPI.PropertyTypes.Objects.IntPropertyData, UAssetAPI",
"Name": "amt",
"DuplicationIndex": 0,
"Value": 2
},
还有比如经常紧缺的
"Value": "Ale" 啤酒
"Value": "Malt" 麦芽
3 仓库修改:buildingStats.json
举例粮仓 "Value": "Granary"
经过试验验证, "workerTypes" 下面的6代表工人数量,可改成8
"Value": [
{
"$type": "UAssetAPI.PropertyTypes.Structs.Vector4PropertyData, UAssetAPI",
"Name": "workerTypes",
"DuplicationIndex": 0,
"X": "+0",
"Y": 6.0,
"Z": "+0",
"W": "+0"
}
]
},
storageLimitPantry 2500 就是大型粮仓的存储量
{
"$type": "UAssetAPI.PropertyTypes.Objects.IntPropertyData, UAssetAPI",
"Name": "storageLimitPantry",
"DuplicationIndex": 0,
"Value": 2500
},
每个建筑都有自己的存储量
"Name": "storageLimitGeneric", 通用存储
"Name": "storageLimitLarge", 大型原木存储
"Name": "storageLimitPantry",食品存储
建议主要改一下
"Value": "Granary" 粮仓
"Value": "sawpit" 锯木坑
"Value": "Storehouse" 仓库
"Value": "logging_camp" 伐木
其他生产设施的存储改得很大后可能会破坏游戏的生产物流机制
特别是每一个级别的堡地的存储建议不要修改,
"Value": "residentialPlot_lv1"
"Value": "residentialPlot_lv2"
"Value": "residentialPlot_lv3"
经测试改了很大后会产生苹果萝卜鸡蛋堆在房子里仓库不收货的问题,可能和这个游戏劳动力分配优先级是生产高于送货,家庭副业只有满仓库后才触发运输
4 庄园塔楼数量
"Value": "Mano_Keep_LV1"
下面找到N网上4个塔楼的mod就改了这里改成"Value": 4
{
"$type": "UAssetAPI.PropertyTypes.Objects.IntPropertyData, UAssetAPI",
"Name": "maxInRegion",
"DuplicationIndex": 0,
"Value": 1
},
5 雇佣兵修改 DT_MercenaryCompanies.json每个佣兵团的名称下
都有这样的兵牌结构,3倍5倍佣兵mod就是将兵牌复制黏贴,注意"Name": "0", 1 -2 -3 这样编号,注意最后一个兵牌}后要去掉,号
{
"$type": "UAssetAPI.PropertyTypes.Objects.NamePropertyData, UAssetAPI",
"Name": "0",
"DuplicationIndex": 0,
"Value": "mercenary_infantry"
},
{
"$type": "UAssetAPI.PropertyTypes.Objects.NamePropertyData, UAssetAPI",
"Name": "1",
"DuplicationIndex": 0,
"Value": "mercenary_infantry"
},
}
]
"Value": "hildebolts_army" 敌对男爵部队
"Value": "hildebolts_army_large" 最后一块地出的大型部队
我机器还可以,40队兵没问题,但出于真实的话,欧洲小领主之间的村斗出动300步兵已经很不得了了UI也顶多20队
其他修改方式欢迎大家慢慢探索
|
评分
-
3
查看全部评分
-
|