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

注册 登录

QQ登录

只需一步,快速开始

查看: 87568|回复: 211

[原创] 一个无创修改assets的新思路(傻瓜版,免打包,免替换/备份,易还原,附一份功法的小改代码)

  [复制链接]

55

主题

877

帖子

2688

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
346
金元
12736
积分
2688
精华
3
注册时间
2014-11-13
发表于 2018-9-30 17:04 | 显示全部楼层 |阅读模式
本帖最后由 qweytr_1 于 2018-10-1 00:16 编辑

首先,欢迎大家进行一些有效的回复(比如提供一些.txt的某一列是什么意思,或者在这里链接上自己的总结帖子)
一个总结帖子在这里http://bbs.3dmgame.com/thread-5793798-1-1.html,都是成品
目测这个方法对测试分支的更新也是暂时适用的……


传说之中游戏是用字符串存东西的……很多MOD都是按字符串改的
于是这里提供一种无创手术方案……
……
准确地说,这里提供一种不用修改任何文件而给游戏加MOD的方案
首先感谢@hbdrnhnrn 在http://bbs.3dmgame.com/thread-5793542-1-1.html的工作,下面以Gongfa_date.txt为例
在这里新建一个文件夹,并放入Gongfa_date.txt
(太吾:抱歉之前拼错了……不过没关系,反正我们会一直按错的拼下去的……)
(如果图像被拉伸了,可以点击查看原图)




运行……于是你得到了奇迹


列一下清单

  1. uses UABE
  2. uses notepad++
  3. uses open office
  4. uses dnSpy
  5. //uses x64dbg
  6. //uses 某个未加密掉的游戏以利用mono.dll来dump出所需的dll
  7. uses 过期的dll
复制代码
差不多就是这些了,UABE用于dump出Gongfa_date.txt//明明应该dump出data这里dump出date也是醉了……开始在写这篇帖子的时候我拼成date我以为是我拼错了……后来发现拼成data的我真拼错了……
notepad++用于掐头去尾得到真正内容
请一定要用raw这个格式进行dump
我检查了三遍才发现……那玩意真的是用str储存的……于是你会看到茫茫多的\r\n
在raw里面你看不到,只会看到结尾一个NUL,一定要把这个NUL删掉,否则读取进度会卡死在99%
当然开头要删到井号为止……事实上删掉直接第一行也是可以的

下面是一些说明
其一、\r是可选的,你可以在任何位置加入\r,反正程序会帮你处理掉……
其二、半角逗号','是分隔符,任何时候你都不应该添加新的半角逗号
其三、井号可以注释掉一整行……虽然游戏代码是这么写的但游戏并没有用类似注释
  1. 或者你们硬说
  2. #,0,2,61,62,63,64,66,67,68,69,70,71,72,73,99,103,104,1,6,7,3,15,16,4,5,701,702,703,704,705,999,710,711,901,902,903,904,905,906,907,908,909,910,921,922,923,924,95,96,501,502,503,504,14,8,9,31,38,39,40,10,11,12,13,101,21,22,23,24,25,26,27,28,29,30,601,602,603,611,612,613,614,615,604,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,32,33,34,35,36,81,82,83,84,85,86,50041,50042,50043,50044,50045,50046,50032,50033,50022,50023,51110,51101,51102,51103,51104,51105,51106,51107,51108,51109,51111,50081,50082,50083,51367,51368,51369,50084,50085,50086,51370,51371,51372,50071,50072,50073,50092,50093,50094,50095,50096,50097,50098,98,37
  3. 是一个注释的话
复制代码
其四、这里的GongFa_Date.txt是dump好的,只做了一处调整,就是把,3,3,3,3,改成了,9,9,9,9,
有爱自取不喜勿喷
就酱~

附录之一,部分txt名称:
  1. Massage_Date
  2. StoryBuff_Date
  3. TimeWorkBooty_Date
  4. Age_Date
  5. SolarTerms_Date
  6. TrunEvent_Date
  7. ActorMassage_Date
  8. PalceWorld_Date
  9. PartWorldMap_Date
  10. AllWorldMap_Date
  11. Resource_Date
  12. Poison_Date
  13. ActorAttr_Date
  14. PresetGang_Date
  15. GangGroup_Date
  16. GangGroupValue_Date
  17. PresetActor_Date
  18. ActorFeature_Date
  19. Talk_Date
  20. Generation_Date
  21. Skill_Date
  22. Story_Date
  23. StoryTerrain_Date
  24. StoryEvent_Date
  25. StoryShop_Date
  26. EnemyTeam_Date
  27. BattleTyp_Date
  28. AttackTyp_Date
  29. Body_Date
  30. Injury_Date
  31. BattleRated_Date
  32. Ability_Date
  33. HomeTyp_Date
  34. Event_Date
  35. MoodTyp_Date
  36. StudyDisk_Date
  37. ReadBook_Date
  38. MakeItem_Date
  39. ChangeEquip_Date
  40. HomeShopEventTyp_Date
  41. HomeShopEvent_Date
  42. CricketPlace_Date
  43. CricketBattle_Date
  44. Goodness_Date
  45. Identity_Date
  46. BattleState_Date
  47. BuffAttr_Date
  48. AIShoping_Date
  49. GangEquip_Date
  50. ActorSurname_Date
  51. ActorName_Date
  52. TipsMassage_Date
  53. QiValueState_Date
  54. BattleMap_Date
  55. GongFaFPower_Date
  56. BaseMission_Date
  57. EnemyRand_Date
  58. ItemPower_Date
  59. GameLevel_Date
  60. Teaching_Date
  61. ScoreBooty_Date
  62. ScoreValue_Date
  63. BaseSkill_Date
  64. BaseTips_Date
  65. LoadingImage_Date
  66. HomePlace_Date
  67. Cricket_Date
  68. GongFaOtherFPower_Date
  69. VillageName_Date
复制代码
附录2 各行功效笔记
uses openoffice
使用utf-8编码,可以直接查看源文件而避免乱码
下面列的格式用编号/注释编号进行记录
比如
  1. 列B/0,是招数名。
  2. 列BK-BM/11-13,招数使用需求,格式是 招数|数量,目测招数6=崩,9=音
  3. 列U/7,招数占用格子数
  4. 列J/68,0-5之间,怀疑是五行其实不是
  5. 列C/2是功法品级
  6. 列O/73疑似功法突破时候的消耗
  7. 都是目测数据,或许存在偏差
复制代码

本帖子中包含更多资源

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

x

评分

2

查看全部评分

52

主题

1546

帖子

1576

积分

游戏狂人

Rank: 6Rank: 6

贡献度
19
金元
15002
积分
1576
精华
0
注册时间
2011-4-23
发表于 2018-9-30 17:21 | 显示全部楼层
萌新一边瑟瑟发抖的聆听大佬教学一边认真的做笔记...

7

主题

656

帖子

1986

积分

游戏狂人

Rank: 6Rank: 6

贡献度
52
金元
17780
积分
1986
精华
0
注册时间
2012-11-19
发表于 2018-9-30 17:25 | 显示全部楼层
全部解出来,改就行啊,优先级高覆盖的。有兴趣的可以自己写个对应每个解包文件的修改器嘛,添加修改会方便很多。

16

主题

609

帖子

858

积分

超级玩家

Rank: 5Rank: 5

贡献度
12
金元
8095
积分
858
精华
0
注册时间
2016-2-27
发表于 2018-9-30 17:28 | 显示全部楼层
楼主说话有些前言不搭后语,不过还是get到最重要的点了

0

主题

625

帖子

1937

积分

游戏狂人

Rank: 6Rank: 6

贡献度
5
金元
19165
积分
1937
精华
0
注册时间
2012-2-28
发表于 2018-9-30 17:29 | 显示全部楼层
楼主真厉害……居然还有这样的修改方法!

16

主题

519

帖子

654

积分

超级玩家

Rank: 5Rank: 5

贡献度
45
金元
4741
积分
654
精华
0
注册时间
2012-7-23
发表于 2018-9-30 17:39 | 显示全部楼层
感觉楼主的思路是在做 fastpatch,而 Unity 引擎支持读取未加密的 txt 作为数据库的配置文件,以后做调试很方便了。
不过还是期待今后能出相关配套工具,不然一个个去找数值对应的参数意义太麻烦了,一堆 0 的缺省值还容易看漏。
说起来,一开始我也在吐槽开发组把 Data 打成 Date,明显 typo。

14

主题

4094

帖子

4430

积分

游戏精英

Rank: 8Rank: 8

贡献度
60
金元
41899
积分
4430
精华
0
注册时间
2012-2-5

滑稽[永久版]

发表于 2018-9-30 17:46 | 显示全部楼层
又见技术大佬...真的只能膜拜..
看看能不能看懂先..

35

主题

1133

帖子

2247

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
81
金元
19232
积分
2247
精华
0
注册时间
2009-2-13

3DM MOD站(白银)

发表于 2018-9-30 18:16 | 显示全部楼层
你在说啥???

31

主题

615

帖子

767

积分

超级玩家

Rank: 5Rank: 5

贡献度
10
金元
7269
积分
767
精华
0
注册时间
2013-2-14
发表于 2018-9-30 18:18 | 显示全部楼层
我的天看不懂!

86

主题

2399

帖子

2613

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
217
金元
17350
积分
2613
精华
1
注册时间
2008-8-5

猛汉王老猎人

发表于 2018-9-30 18:19 | 显示全部楼层
我就觉得现在你这个内功挺好的

3

主题

495

帖子

750

积分

超级玩家

Rank: 5Rank: 5

贡献度
2
金元
7418
积分
750
精华
0
注册时间
2016-1-28
发表于 2018-9-30 18:23 | 显示全部楼层
我的天,试试能不能看懂

9

主题

178

帖子

873

积分

超级玩家

Rank: 5Rank: 5

贡献度
125
金元
3725
积分
873
精华
0
注册时间
2015-4-9
发表于 2018-9-30 18:24 | 显示全部楼层
本帖最后由 k521k521 于 2018-9-30 18:42 编辑

我的问题。
很好的方法,以后方便很多了,谢谢楼主

0

主题

868

帖子

1101

积分

游戏狂人

Rank: 6Rank: 6

贡献度
0
金元
11012
积分
1101
精华
0
注册时间
2016-3-10
发表于 2018-9-30 18:24 | 显示全部楼层
kankan!!!!!!!!!!!!

3

主题

173

帖子

457

积分

高级玩家

Rank: 4

贡献度
32
金元
3289
积分
457
精华
0
注册时间
2011-12-28
QQ
发表于 2018-9-30 18:25 | 显示全部楼层
新的思路可以 方便/轻巧

13

主题

285

帖子

344

积分

高级玩家

Rank: 4

贡献度
4
金元
3284
积分
344
精华
0
注册时间
2013-7-8
发表于 2018-9-30 18:30 | 显示全部楼层
感谢分享

0

主题

230

帖子

494

积分

高级玩家

Rank: 4

贡献度
0
金元
4939
积分
494
精华
0
注册时间
2016-4-24
发表于 2018-9-30 18:31 | 显示全部楼层
有意思!感谢分享!

1

主题

279

帖子

327

积分

高级玩家

Rank: 4

贡献度
0
金元
3274
积分
327
精华
0
注册时间
2013-12-1
发表于 2018-9-30 18:32 | 显示全部楼层
谢谢分享,感激不尽

3

主题

495

帖子

750

积分

超级玩家

Rank: 5Rank: 5

贡献度
2
金元
7418
积分
750
精华
0
注册时间
2016-1-28
发表于 2018-9-30 18:33 | 显示全部楼层
呃,是用UABE 把sharedassets0.assets 里要修改的文件解包出来,然后删去开头的
0 TextAsset Base
1 string m_Name = "GongFa_Date"
1 string m_Script =
之后在游戏文件夹里新建data 文件夹放入修改过的txt文件就可以了吗?

24

主题

2431

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
23
金元
106366
积分
10729
精华
0
注册时间
2014-7-2

《足球经理2018》专属勋章小罗

发表于 2018-9-30 18:35 | 显示全部楼层
666  支持一下。。.

0

主题

20

帖子

78

积分

初级玩家

Rank: 2

贡献度
0
金元
775
积分
78
精华
0
注册时间
2012-2-2
发表于 2018-9-30 18:37 来自手机 | 显示全部楼层
学习了,正好需要

3

主题

535

帖子

546

积分

高级玩家

Rank: 4

贡献度
0
金元
5460
积分
546
精华
0
注册时间
2011-11-18
发表于 2018-9-30 18:39 | 显示全部楼层
支持支持

40

主题

954

帖子

945

积分

超级玩家

Rank: 5Rank: 5

贡献度
34
金元
8087
积分
945
精华
0
注册时间
2011-6-22
发表于 2018-9-30 18:43 | 显示全部楼层
可以征集一下版上各位手里对txt文件的解读,对每个txt的解析方法做一个配置文件,把字段对应到一个中文名称里,然后模板出一个有点像excel表格的gui供修改,点啥改啥,都是文本。。
修改的时候就有点像存档修改器吧,asset就是个存盘文件嘛
每次存盘的时候基于一个原版的源,打上gui里改动过的缓存就可以压包了,最后程序后台来个存档备份替换,就跟坛子里的存档修改一样。。
解包压包就可以指定下UABE的路径,然后用命令行调用exe加参数吧

我觉得这个比做自动拼接多个mod要简单很多,而且所有玩家都可以自己按照自己的想法弄了。程序框架就用现在存档修改器的,主要缺少就是格式解析呀这类的,可以从那个解密dll的类里面找对应的反序列化类的字段定义

0

主题

162

帖子

231

积分

中级玩家

Rank: 3Rank: 3

贡献度
0
金元
2312
积分
231
精华
0
注册时间
2016-10-5
发表于 2018-9-30 18:43 | 显示全部楼层
dalao,牛逼!

0

主题

57

帖子

116

积分

中级玩家

Rank: 3Rank: 3

贡献度
0
金元
1160
积分
116
精华
0
注册时间
2014-6-25
发表于 2018-9-30 18:43 | 显示全部楼层
谢谢分享

3

主题

2186

帖子

1906

积分

游戏狂人

Rank: 6Rank: 6

贡献度
2
金元
18980
积分
1906
精华
0
注册时间
2011-11-18
发表于 2018-9-30 18:46 | 显示全部楼层
666666666666666

0

主题

124

帖子

189

积分

中级玩家

Rank: 3Rank: 3

贡献度
0
金元
1887
积分
189
精华
0
注册时间
2016-12-10
发表于 2018-9-30 18:46 | 显示全部楼层
谢谢分享

0

主题

1381

帖子

4万

积分

游戏天王

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

贡献度
1310
金元
354078
积分
40648
精华
0
注册时间
2012-7-24

2018俄罗斯世界杯

发表于 2018-9-30 18:48 | 显示全部楼层
感谢分享

4

主题

723

帖子

927

积分

超级玩家

Rank: 5Rank: 5

贡献度
0
金元
9274
积分
927
精华
0
注册时间
2015-7-10
发表于 2018-9-30 18:48 | 显示全部楼层
我要下载.

25

主题

1040

帖子

916

积分

超级玩家

Rank: 5Rank: 5

贡献度
20
金元
8356
积分
916
精华
0
注册时间
2011-3-28
发表于 2018-9-30 18:53 | 显示全部楼层
楼主威武感谢楼主

6

主题

597

帖子

444

积分

高级玩家

Rank: 4

贡献度
19
金元
3677
积分
444
精华
0
注册时间
2013-5-1
发表于 2018-9-30 18:55 | 显示全部楼层
...................
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2020-8-4 01:38 , Processed in 0.137510 second(s), 16 queries , Memcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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