3DMGAME 3DM首页 新闻中心 前瞻 | 评测 游戏库 热门 | 最新 攻略中心 攻略 | 秘籍 下载中心 游戏 | 汉化 购买正版 论坛

注册 登录

QQ登录

只需一步,快速开始

查看: 8477|回复: 67
打印 上一主题 下一主题

[原创] 一些有趣的文件修改

  [复制链接]

5

主题

172

帖子

380

积分

高级玩家

Rank: 4

贡献度
29
金元
2638
积分
380
精华
0
注册时间
2013-1-19
跳转到指定楼层
主题
发表于 2021-10-13 22:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 无上祖神 于 2021-10-24 15:27 编辑

工具:dnspy
打开文件:C:\Game\Mount & Blade II Bannerlord\bin\Win64_Shipping_Client中的TaleWorlds.CampaignSystem.dll和TaleWorlds.Core.dll修改方法:找到对应的方法,右键编辑方法,修改完后编译,全部修改完后Ct+sh+S保存。
一:武器修改
常言道一寸长一寸强,如果你去xml里直接修改武器长度会发现武器的速度变得非常慢,这是因为游戏中挥砍速度和操控性是由转动惯量计算的,现在我想造出很长的武器,挥砍速度和操控性也高,而且还不让别人享受这一效果。
TaleWorlds.Core.Crafting.ScaleThePiece 方法用于锻造时调整部件的比例,将array[(int)scalingPieceType].SetScale这行改为<现在比例变成了0-500%,由于AI不会锻造,只有玩家能造出超长武器。可是我材料不够了
TaleWorlds.CampaignSystem.SandBox.GameComponents.Map.DefaultSmithingModel.GetSmithingCostsForWeaponDesign方法描述了所需材料,将方法里的所有"-"改为"+",现在我们锻造生成材料了。

可是我部件没解锁
TaleWorlds.CampaignSystem.SandBox.CampaignBehaviors.CraftingCampaignBehavior.OpenNewPart方法用于解锁新部件,将if (array.Length != 0)的大括号内内容改为
<这样只要锻造并解锁一个部件剩下的也解锁了。可是我没体力了
TaleWorlds.CampaignSystem.SandBox.CampaignBehaviors.CraftingCampaignBehavior.SetHeroCraftingStamina方法,将语句改为
<即可这个武器难度有点高啊……
TaleWorlds.CampaignSystem.SandBox.GameComponents.Map.DefaultSmithingModel.CalculateWeaponDesignDifficulty方法,删掉
<下面的那一行,难度就降下来很多武器造好了,TaleWorlds.Core.Crafting.CalculateStats方法计算武器属性,将swingspeed行改为
二:部队相关
[分享] 骑砍2 游戏数据修改简易教程 给出了部队和俘虏的修改方法,但是由于版本更新后,本来的int值变成了ExplainedNumber,所以修改方法需要变一下。
TaleWorlds.CampaignSystem.SandBox.GameComponents.Party.DefaultPartySizeLimitModel.CalculateMobilePartyMemberSizeLimit方法,在return result的前一行加一行代码:
<这里的4即为部队容量变为五倍。修改俘虏容量同理,只不过方法变为CalculateMobilePartyPrisonerSizeLimitInternal
现在俘虏很多,想把他们都招进来,TaleWorlds.CampaignSystem.SandBox.GameComponents.DefaultPrisonerRecruitmentCalculationModel.GetConformityChangePerHour方法给出了招募俘虏的速度,在最后一行return MBMath.Round(num)后面加上*x即可使招募速度变为x倍。

俘虏了了很多英雄能不能全招进来?
TaleWorlds.CampaignSystem.SandBox.GameComponents.DefaultPrisonerRecruitmentCalculationModel.IsPrisonerRecruitable方法中,将
<改为<然后将CalculateRecruitableNumber方法改为<即可招募英雄。如果想要把英雄招募成追随者的话可以修改TaleWorlds.CampaignSystem.SandBox.CampaignBehaviors.RecruitPrisonersCampaignBehavior.OnMainPartyPrisonerRecruited
<

俘虏招完了,我们想快点升级部队
AddXpToTroopAtIndex方法控制部队经验获得。在xpAmount后面加上*x即可使经验获得变为原先的x倍
<但是有的部队升级需要马或者战马,买不到怎么办
TaleWorlds.CampaignSystem.SandBox.GameComponents.DefaultPartyTroopUpgradeModel.DoesPartyHaveRequiredItemsForUpgrade方法改为return true;
TaleWorlds.CampaignSystem.PartyUpgrader.UpgradeReadyTroops删除下面两段,升级不再需要物品
<<技能升级也要跟上,TaleWorlds.CampaignSystem.HeroDeveloper.AddSkillXp方法给出了经验获得,下面代码中的两个3f即为经验获得倍数,可以自己修改需要的倍数
<每级1个专精点,0.25个属性点是不是不太够用?OnGainLevel方法给出了点数获得,将<

改为下面的代码,即可每级获得一个属性点两个专精点<
晚上继续更新



评分

1

查看全部评分

回复

使用道具 举报

5

主题

172

帖子

380

积分

高级玩家

Rank: 4

贡献度
29
金元
2638
积分
380
精华
0
注册时间
2013-1-19
舒服的沙发
 楼主| 发表于 2021-10-13 22:16 | 只看该作者
明天再更新其它的内容
回复 支持 反对

使用道具 举报

5

主题

172

帖子

380

积分

高级玩家

Rank: 4

贡献度
29
金元
2638
积分
380
精华
0
注册时间
2013-1-19
硬硬的板凳
 楼主| 发表于 2021-10-14 09:46 | 只看该作者
部队和升级已更新
回复 支持 反对

使用道具 举报

5

主题

172

帖子

380

积分

高级玩家

Rank: 4

贡献度
29
金元
2638
积分
380
精华
0
注册时间
2013-1-19
冰凉的地板
 楼主| 发表于 2021-10-20 11:36 | 只看该作者
没人回复,不更新了
回复 支持 反对

使用道具 举报

4

主题

368

帖子

420

积分

高级玩家

Rank: 4

贡献度
0
金元
4202
积分
420
精华
0
注册时间
2020-7-9
5#
发表于 2021-10-20 18:26 | 只看该作者
还有呢,我想要修改同伴上限
回复 支持 反对

使用道具 举报

5

主题

172

帖子

380

积分

高级玩家

Rank: 4

贡献度
29
金元
2638
积分
380
精华
0
注册时间
2013-1-19
6#
 楼主| 发表于 2021-10-20 21:15 | 只看该作者
3dm_16496923 发表于 2021-10-20 18:26
还有呢,我想要修改同伴上限

同伴上限在TaleWorlds.CampaignSystem.SandBox.GameComponents.DefaultClanTierModel.GetCompanionLimitFromTier
把return改成想要的同伴上限即可,也可以return clanTier * 5,这样上限就是家族等级*5
它上面还有一个GetPartyLimitForTier,是部队支数上限,在return MathF.Round(explainedNumber.ResultNumber);上面加一行explainedNumber.Add(explainedNumber.ResultNumber * 4f, null, null);,这里*4f就代表部队数量变为五倍
回复 支持 反对

使用道具 举报

4

主题

368

帖子

420

积分

高级玩家

Rank: 4

贡献度
0
金元
4202
积分
420
精华
0
注册时间
2020-7-9
7#
发表于 2021-10-21 09:24 | 只看该作者
请问家族人数有没有人口上限,怎么改家族上限呢,还有妻子上限,寿命上限,子女上限
回复 支持 反对

使用道具 举报

4

主题

368

帖子

420

积分

高级玩家

Rank: 4

贡献度
0
金元
4202
积分
420
精华
0
注册时间
2020-7-9
8#
发表于 2021-10-21 09:45 | 只看该作者
请问怎么让玩家属性突破1000,340太少了
回复 支持 反对

使用道具 举报

5

主题

172

帖子

380

积分

高级玩家

Rank: 4

贡献度
29
金元
2638
积分
380
精华
0
注册时间
2013-1-19
9#
 楼主| 发表于 2021-10-21 11:59 | 只看该作者
3dm_16496923 发表于 2021-10-21 09:24
请问家族人数有没有人口上限,怎么改家族上限呢,还有妻子上限,寿命上限,子女上限 ...

妻子上限要改的东西太多,不如直接弄一个mod,寿命的话TaleWorlds.CampaignSystem.SandBox.GameComponents.DefaultAgeModel是年龄模块,BecomeOldAge开始衰老,MaxAge最大寿命。或者想改死亡可能性的话就是TaleWorlds.CampaignSystem.SandBox.GameComponents.Map.DefaultHeroDeathProbabilityCalculationModel.CalculateHeroDeathProbabilityInternal
回复 支持 反对

使用道具 举报

4

主题

368

帖子

420

积分

高级玩家

Rank: 4

贡献度
0
金元
4202
积分
420
精华
0
注册时间
2020-7-9
10#
发表于 2021-10-21 12:05 | 只看该作者
那怎么修改玩家属性上限呢
回复 支持 反对

使用道具 举报

5

主题

172

帖子

380

积分

高级玩家

Rank: 4

贡献度
29
金元
2638
积分
380
精华
0
注册时间
2013-1-19
11#
 楼主| 发表于 2021-10-21 12:23 | 只看该作者
3dm_16496923 发表于 2021-10-21 09:45
请问怎么让玩家属性突破1000,340太少了

TaleWorlds.CampaignSystem.SandBox.GameComponents.DefaultCharacterDevelopmentModel.CalculateLearningLimit限制技能上限是(属性点-1)*10+专精点*30,修改这个上限就可以
CalculateLearningRate是技能学习速度:20/(10+角色等级)*(1+0.4*属性点+专精点),修改这个能改变技能升级速度
回复 支持 反对

使用道具 举报

50

主题

926

帖子

944

积分

超级玩家

Rank: 5Rank: 5

贡献度
10
金元
9038
积分
944
精华
0
注册时间
2012-1-6
12#
发表于 2021-10-21 13:03 | 只看该作者
怀念旧版本的存档修改器,比风灵月影吊
回复 支持 反对

使用道具 举报

4

主题

368

帖子

420

积分

高级玩家

Rank: 4

贡献度
0
金元
4202
积分
420
精华
0
注册时间
2020-7-9
13#
发表于 2021-10-21 14:00 | 只看该作者
那个武器修改比例能不能改成更大的,是改后面的25吗
回复 支持 反对

使用道具 举报

4

主题

368

帖子

420

积分

高级玩家

Rank: 4

贡献度
0
金元
4202
积分
420
精华
0
注册时间
2020-7-9
14#
发表于 2021-10-21 14:19 | 只看该作者
TaleWorlds.Core.Crafting.CalculateStats这个文件并没有找到
回复 支持 反对

使用道具 举报

4

主题

368

帖子

420

积分

高级玩家

Rank: 4

贡献度
0
金元
4202
积分
420
精华
0
注册时间
2020-7-9
15#
发表于 2021-10-21 15:09 | 只看该作者
实在是找不到修改武器属性的文件,那个文件被隐藏了吗
回复 支持 反对

使用道具 举报

头像被屏蔽

34

主题

280

帖子

1028

积分

禁止访问

贡献度
85
金元
6878
积分
1028
精华
0
注册时间
2015-3-18
QQ
16#
发表于 2021-10-21 17:23 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

5

主题

172

帖子

380

积分

高级玩家

Rank: 4

贡献度
29
金元
2638
积分
380
精华
0
注册时间
2013-1-19
17#
 楼主| 发表于 2021-10-21 19:55 | 只看该作者
hujin11 发表于 2021-10-21 17:23
大佬告知下工坊上限,  竞技场经验 金币哪里修改??
还有上面部队招募速度是这样吗?
public override int ...

是这样:return MBMath.Round(num)*5;


回复 支持 反对

使用道具 举报

5

主题

172

帖子

380

积分

高级玩家

Rank: 4

贡献度
29
金元
2638
积分
380
精华
0
注册时间
2013-1-19
18#
 楼主| 发表于 2021-10-21 19:55 | 只看该作者
hujin11 发表于 2021-10-21 17:23
大佬告知下工坊上限,  竞技场经验 金币哪里修改??
还有上面部队招募速度是这样吗?
public override int ...

工坊上限指的是什么?竞技场没研究,等我明天看看
回复 支持 反对

使用道具 举报

头像被屏蔽

34

主题

280

帖子

1028

积分

禁止访问

贡献度
85
金元
6878
积分
1028
精华
0
注册时间
2015-3-18
QQ
19#
发表于 2021-10-21 19:59 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

4

主题

368

帖子

420

积分

高级玩家

Rank: 4

贡献度
0
金元
4202
积分
420
精华
0
注册时间
2020-7-9
20#
发表于 2021-10-21 20:02 | 只看该作者
请问TaleWorlds.Core.Crafting.CalculateStats文件在哪
回复 支持 反对

使用道具 举报

头像被屏蔽

34

主题

280

帖子

1028

积分

禁止访问

贡献度
85
金元
6878
积分
1028
精华
0
注册时间
2015-3-18
QQ
21#
发表于 2021-10-21 20:02 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

5

主题

172

帖子

380

积分

高级玩家

Rank: 4

贡献度
29
金元
2638
积分
380
精华
0
注册时间
2013-1-19
22#
 楼主| 发表于 2021-10-21 21:33 | 只看该作者
3dm_16496923 发表于 2021-10-21 20:02
请问TaleWorlds.Core.Crafting.CalculateStats文件在哪

是TaleWorlds.CampaignSystem.dll和TaleWorlds.Core.dll这两个文件,里面有TaleWorlds.Core.Crafting.CalculateStats这个命名空间
回复 支持 反对

使用道具 举报

5

主题

172

帖子

380

积分

高级玩家

Rank: 4

贡献度
29
金元
2638
积分
380
精华
0
注册时间
2013-1-19
23#
 楼主| 发表于 2021-10-21 21:34 | 只看该作者
hujin11 发表于 2021-10-21 20:02
为什么不能编译!

你这个是不是用了别的mod啊,我看到了几个框架的命名空间
回复 支持 反对

使用道具 举报

5

主题

172

帖子

380

积分

高级玩家

Rank: 4

贡献度
29
金元
2638
积分
380
精华
0
注册时间
2013-1-19
24#
 楼主| 发表于 2021-10-21 21:41 | 只看该作者
hujin11 发表于 2021-10-21 19:59
买工厂我只能买5个,可能和家族等级有关。

TaleWorlds.CampaignSystem.SandBox.GameComponents.DefaultWorkshopModel.GetMaxWorkshopCountForPlayer
return多少就能买多少
回复 支持 反对

使用道具 举报

4

主题

368

帖子

420

积分

高级玩家

Rank: 4

贡献度
0
金元
4202
积分
420
精华
0
注册时间
2020-7-9
25#
发表于 2021-10-21 23:12 | 只看该作者
无上祖神 发表于 2021-10-21 21:33
是TaleWorlds.CampaignSystem.dll和TaleWorlds.Core.dll这两个文件,里面有TaleWorlds.Core.Crafting.Cal ...

可是我没找到这个文件
回复 支持 反对

使用道具 举报

头像被屏蔽

34

主题

280

帖子

1028

积分

禁止访问

贡献度
85
金元
6878
积分
1028
精华
0
注册时间
2015-3-18
QQ
26#
发表于 2021-10-22 12:33 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

头像被屏蔽

34

主题

280

帖子

1028

积分

禁止访问

贡献度
85
金元
6878
积分
1028
精华
0
注册时间
2015-3-18
QQ
27#
发表于 2021-10-22 12:35 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

4

主题

368

帖子

420

积分

高级玩家

Rank: 4

贡献度
0
金元
4202
积分
420
精华
0
注册时间
2020-7-9
28#
发表于 2021-10-22 17:06 | 只看该作者
请问如何修改武器属性,我想修改弓弩的装填速度
回复 支持 反对

使用道具 举报

5

主题

172

帖子

380

积分

高级玩家

Rank: 4

贡献度
29
金元
2638
积分
380
精华
0
注册时间
2013-1-19
29#
 楼主| 发表于 2021-10-22 20:33 | 只看该作者
3dm_16496923 发表于 2021-10-22 17:06
请问如何修改武器属性,我想修改弓弩的装填速度

C:\Game\Mount & Blade II Bannerlord\Modules\SandBoxCore\ModuleData\spitems\weapons.xml
里面是预设的各种武器数据
回复 支持 反对

使用道具 举报

3

主题

1521

帖子

2023

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
3
金元
20107
积分
2023
精华
0
注册时间
2012-4-26
30#
发表于 2021-10-22 23:54 | 只看该作者
俘虏了了很多英雄那个参数还是有问题,根本修改不了,
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|3DMGAME ( 京ICP备14006952号-1  沪公网安备 31011202006753号

GMT+8, 2025-2-7 21:54 , Processed in 0.165472 second(s), 16 queries , Memcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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