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

注册 登录

QQ登录

只需一步,快速开始

查看: 2391|回复: 12
打印 上一主题 下一主题

[心得] 《BadNorth》《坏北》《绝境北方》修改金币军队数量,获取金币效率,修改地图大小,修改地图奖励数量,DLL修改,[Dnspy工具]

[复制链接]

11

主题

86

帖子

311

积分

高级玩家

Rank: 4

贡献度
37
金元
1628
积分
311
精华
0
注册时间
2020-3-4
跳转到指定楼层
主题
发表于 2024-7-18 23:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 你牛哥Ao 于 2024-7-29 00:17 编辑

一.前言:
  • 之前找了个CT,但是失效了,正好这个游戏的DLL是C#写的而且没加密,所以研究了下代码结构,找了点可能常用的修改项,希望对那些想从底层机制魔改游戏的玩家有所帮助。
  • 操作提示:实操Dnspy修改DLL需要的专业能力基本为0,找到相应变量位置,编辑并重新编译,保存新编译的DLL文件即可。具体不解释,自己B站学。
  • 潜在影响提示:有些修改是影响全局的,有些只影响修改的存档。如有必要请保留备份存档!!!
  • 有问题自行留言,不定期补充,也可能不补充。图片排版跟啥啊狗一样,有描述,xdm自己下面找。
  • 不会改但瘾还大的的找帖子里会计算机的热心帅气有闲情逸致的Pro哥帮忙。
  • 由于存在未厘清的逻辑,战役关卡修改的数值目前没参考意义,会无法正常进入游戏,建议先仅参考功能和代码!!!


二.准备:
  • 工具:Dnspy,如果不想自己实操,可以用现成的。
  • 修改的DLL目录:BadNorth\BadNorth_Data\Managed\Assembly-CSharp.dll
  • 这里介绍的涉及修改的代码域大概就是关于塔防核心功能的几个系统:(可以修改的有很多,不过精力有限,介绍主要的内容即可,后续自行探索)
  • (塔防角色,Hero,队伍,敌人,村子,关卡,岛屿,地图,寻路)Voxels.TowerDefense
  • (战役设置:关卡,Hero,奖励的设置与生成)Voxels.TowerDefense.CampaignGeneration
  • (局内战斗相关的角色升级能力)Voxels.TowerDefense.Upgrades



三.可能出现的编译错误及Q&A:
  • 类型转换问题,加强制类型做显式类型转换即可。
  • using(string)的古早语法类型问题,去掉using语句。
  • 无法识别的类型和属性,如果是Attribute,Debug/Debugger相关的可以注释掉,其他的还没遇见过。
  • 编辑类或者编辑方法,取决于哪个不会编译报错或者报错较少,因为会存在找不到引用的类型和字段。所以也是小问题。
  • 待补充...





四.修改功能大类:
  • 战役设置(影响地图内岛屿关卡的数量,奖励,岛屿分布)
  • 角色属性(角色血量,攻击力,补充时间)
  • 角色能力(物品,属性Tag)


五.具体已实操和测试的修改参考:一般有值就直接改默认值,没有值就找初始化被调用的位置,有些修改则需要自行添加代码或者加判断逻辑。
  • 角色再补充时间(直接修改常量):Voxels.TowerDefense.Upgrades.ReplenishAbility:public float replenishTime = 20f;数字越大,再补充时间越短。
  • 角色基本属性(生命值,攻击力):Voxels.TowerDefense.Agent:public Agent() 构造函数改默认值即可,具体属性顾名思义。
  • 队伍人数,使用次数Voxels.TowerDefense.SquadSpawner:public IEnumerator<bool> SpawnEnglishSquad函数功能找数值即可。:
  • 关卡生成数量:Voxels.TowerDefense.CampaignGeneration.GraphGenerator:private IEnumerable GenerateGraph()函数功能找数值即可,注意大致行数。
  • 关卡升级奖励数量Voxels.TowerDefense.CampaignGeneration.GraphGenerator:private IEnumerable GenerateGraph()函数功能找数值即可,注意大致行数。【暂时有问题,直接改奖励数量会出错,猜测和奖励存放的结构是字典有关,数量多了会出现重复导致地图初始化失败然后卡死】
  • 关卡获得金币数量Voxels.TowerDefense.ProfileInternals.CampaignSave:private void PostLoad()。Voxels.TowerDefense.CoinDispensing.CoinDispenser:public IEnumerator DispenseCoinsRoutine()。
  • 提前获取军队(在战役生成时操作)Voxels.TowerDefense.CampaignGeneration.GraphGenerator:private IEnumerable GenerateGraph()函数功能找数值即可,注意大致行数。
  • 战役难度设置及敌人波次设置Voxels.TowerDefense.CampaignGeneration.CampaignDifficultySettings
  • 待续。。。有未知的功能可以底下留言,不定期回看更新。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

1

查看全部评分

回复

使用道具 举报

473

主题

5万

帖子

11万

积分

游戏之神

Rank: 13Rank: 13Rank: 13Rank: 13

贡献度
4121
金元
1030562
积分
119540
精华
0
注册时间
2009-11-23

龙年勋章3DMer(永久)

舒服的沙发
发表于 2024-7-19 08:41 | 只看该作者
感谢分享
回复 支持 0 反对 1

使用道具 举报

0

主题

34

帖子

39

积分

初级玩家

Rank: 2

贡献度
0
金元
385
积分
39
精华
0
注册时间
2021-4-4
硬硬的板凳
发表于 2024-7-23 14:38 | 只看该作者
感谢分享
回复 支持 反对

使用道具 举报

0

主题

245

帖子

309

积分

高级玩家

Rank: 4

贡献度
0
金元
3093
积分
309
精华
0
注册时间
2018-4-9
冰凉的地板
发表于 2024-7-23 22:32 | 只看该作者
6666666666666
回复 支持 反对

使用道具 举报

0

主题

27

帖子

91

积分

初级玩家

Rank: 2

贡献度
0
金元
911
积分
91
精华
0
注册时间
2016-10-28
5#
发表于 2024-7-27 15:26 | 只看该作者
louzhuxinku
回复 支持 反对

使用道具 举报

0

主题

3

帖子

10

积分

新手玩家

Rank: 1

贡献度
0
金元
100
积分
10
精华
0
注册时间
2022-2-20
6#
发表于 2024-10-4 22:58 | 只看该作者
太强了666666
回复 支持 反对

使用道具 举报

0

主题

5

帖子

9

积分

新手玩家

Rank: 1

贡献度
0
金元
90
积分
9
精华
0
注册时间
2020-2-26
7#
发表于 2024-10-13 23:14 | 只看该作者
大佬有办法修改敌人数量吗
回复 支持 反对

使用道具 举报

11

主题

86

帖子

311

积分

高级玩家

Rank: 4

贡献度
37
金元
1628
积分
311
精华
0
注册时间
2020-3-4
8#
 楼主| 发表于 2024-10-14 02:53 | 只看该作者
z98765426 发表于 2024-10-13 23:14
大佬有办法修改敌人数量吗

这个岛屿和对应的敌人是关卡生成的时候确定的,可以通过修改难度和地图生成的过程来试试
回复 支持 反对

使用道具 举报

0

主题

5

帖子

9

积分

新手玩家

Rank: 1

贡献度
0
金元
90
积分
9
精华
0
注册时间
2020-2-26
9#
发表于 2024-10-15 00:54 | 只看该作者
你牛哥Ao 发表于 2024-10-14 02:53
这个岛屿和对应的敌人是关卡生成的时候确定的,可以通过修改难度和地图生成的过程来试试
...

刚刚改了下,貌似没有效果,全部改成9999游戏直接死机
回复 支持 反对

使用道具 举报

11

主题

86

帖子

311

积分

高级玩家

Rank: 4

贡献度
37
金元
1628
积分
311
精华
0
注册时间
2020-3-4
10#
 楼主| 发表于 2024-10-17 00:44 | 只看该作者
z98765426 发表于 2024-10-15 00:54
刚刚改了下,貌似没有效果,全部改成9999游戏直接死机

得看逻辑,暴力改游戏是没法正常运行的
回复 支持 反对

使用道具 举报

0

主题

3

帖子

10

积分

新手玩家

Rank: 1

贡献度
0
金元
100
积分
10
精华
0
注册时间
2022-2-20
11#
发表于 2024-11-14 18:14 | 只看该作者
你牛哥Ao 发表于 2024-10-17 00:44
得看逻辑,暴力改游戏是没法正常运行的

大佬找到方法了吗?一直没有调试出来,CampaignDifficultySetting里做更改似乎没有作用,还发现了另外几个Raid相关的类,但是效果依旧不理想......求教
回复 支持 反对

使用道具 举报

11

主题

86

帖子

311

积分

高级玩家

Rank: 4

贡献度
37
金元
1628
积分
311
精华
0
注册时间
2020-3-4
12#
 楼主| 发表于 2024-11-20 21:36 | 只看该作者
30d98f9b2 发表于 2024-11-14 18:14
大佬找到方法了吗?一直没有调试出来,CampaignDifficultySetting里做更改似乎没有作用,还发现了另外 ...

我研究不多,好久没玩了,主要是没有调试环境,改完代码能不能跑通是个大问题,别太纠结
                                    
回复 支持 反对

使用道具 举报

0

主题

20

帖子

35

积分

初级玩家

Rank: 2

贡献度
0
金元
345
积分
35
精华
0
注册时间
2024-1-1
13#
发表于 2025-2-10 18:49 | 只看该作者
楼主太强了
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-2-25 08:45 , Processed in 0.119663 second(s), 17 queries , Memcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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