《饥荒》Steam联机版皮肤众多,不过想要获取并不容易,而通过修改的方式来使用未获得的皮肤是否可行呢?今天小编带来“road2wisdom”分享的《饥荒》Steam联机版皮肤修改心得,为大家提供一个思路。
说明
该方法不会让你直接获得皮肤(在steam库里面的那种),但是却可以让你能够使用所有皮肤(大家都能看到),甚至是官方周边提供的皮肤。
独立服务器存档文件结构简介
以Linxu:Ubuntu16.04为例
首先我们cd(目录切换)到存档目录下,我这里使用的是官方的目录结构,其他OS或目录请自行对应,我们发现有如下目录,作用如下
blocklist.txt:被你关进小黑屋的
cluster.ini:集群设置,人数限制、房间名、密码、刷新率等
cluster_token.txt:你建服所用的令牌
Master[目录]:地表地图数据
Cave[目录]:洞穴地图数据
地图目录结构及其作用
我们切换到Master(地表目录),发现
backup[目录]:服务器备份数据
server_chat_log.txt:服务器聊天记录
server_log.txt:服务器日志
server.ini:地图配置文件
worldgenoverride:地图设置,比如你要禁止自燃,禁止资源变异等都在这里改
save[目录],存档
save/session/XXXXXXXXXXXX[目录]这个是我们的主菜,所有的存档都保存在这里
存档里面有什么?我们切到目录下面看一看
这个是地图数据,是文本文件,里面的东西可以自己研究,最后几位的数字是天数,没错,这个档服务器缓存了从30天到46天的所有地图存档,且当前天数为46天(春季)
其次是一堆文件夹以KU_开头以_结尾,你没猜错,这个就是玩家的角色数据(身上的东西,皮肤在服务器下的存储文件,而这就是我们需要修改的文件),Let Dig Deeper,比如是KU_UfNA47TE_,我们打开看看
啊哈,可以看到每个玩家的存档数据都是按照天数保存的(这就是为什么回档之后装备也回档了),我们打开一个文件,
分析
通过修改角色存档文件,我们可以修改文件中的装备、皮肤、人物饰品,能否修改地图上的建筑物的皮肤有待测试,可以vim一下地图存档文件试试。
但是使用皮肤有一些要求
其他:
下面的乱码不知道作用是什么,二进制保存的文件?或者K社的二进制校验文件,防止上面改了与下面校验,通过过就gg?
使用思路
1.需要一个有全皮肤的土豪大佬配合,开建造者模式,把所有的皮肤都造一遍,存档,然后从他的存档里解析出所有皮肤以及ID,并进行发布
2.主要一定技术积累,寻找与物品id管理的游戏文件
所有的皮肤名称在skin_strings.lua里面
经过不断的尝试,还是没法正确修改文件,其实文件中只有一部分是使用的strng保存的,而其他的部分为二进制形式,强行改strng会导致文件损坏,重进档会叫你另创人物
目前该方法并没有跨入实用阶段,直接修改存档文件将会导致文件前后不一致而损坏,然而,同一个服务器的不同玩家的账号是通用的,比如你可以那A玩家的皮肤给B用(覆盖),那么B也会不明真相的拥有A的皮肤
通过观察存档文件,我们发现一个规律,存档的组织如下
6个十六进位校验码,数据本体,6个十六进位校验码,数据本体,6个十六进位校验码,数据本体,如此循环,校验码是从后面的数据本体计算出来的
010010(6个16进制)是由51A1CA2998BC0A83(str)Hash出来了的,要是知道Hash方法,就可以编辑存档文件了
(未完待续……)
如转载涉及版权等问题,请作者与我司联系,我司将在第一时间删除或支付稿酬。
全部评论