欢迎光临散文网 会员登陆 & 注册

序章-入门教程-解压和压缩

2022-05-05 23:27 作者:Tsing婉君  | 我要投稿

前言

首先说一点 大部分游戏的资源文件(美术资源等)都是在本地的 不然不会占用这么大的空间 好处就是读取快 每次进游戏直接在本地进行读取 坏处就是我们可以对文件修改 开个玩笑 坏处肯定是占用空间了 因为文件是存在于本地所以我们可以对提取 修改 然而我们在进行这些操作的时候会遇到一些问题 例如文件无法提取出来 这样就没法修改了呀 有工具可以提取 再比如 怎么修改啊 我有源文件了 或者我想凭空制作一个 怎么办啊 后面会有教程 怎么应用到游戏里面啊 以后会有教程 其他问题也会有教程 当然如果你是怕自己学不会 不会做 没关系 做皮肤包括很多的方面 一方面不行我们可以去学做其他的方面 一个完整皮肤包括 模型 动画 特效 语音 贴图 头像等等 肯定有一个方面自己能够学会并且灵活运用

正文


一、实现修改效果的原理

为什么能够达到修改的目的

众所周知 前面也说了 游戏的大部分资源都会保存在本地(以英雄联盟为例:游戏内地图、音频、图片、文字等等资源都是) 这些文件呢会有很多 所以占用空间会比较大  但是会方便游戏的读取加载 这些优缺点前面也说了 。我们对这些文件进行修改 那么游戏再次运行加载的就是我们修改后的文件 从而实现修改的目的 所以我们通过修改本地的这些资源可以实现自制皮肤效果。

二、游戏加载本地资源的问题

①:文件校验

官方识别读取修改后的文件吗

因为是网络游戏 所以大部分游戏对于自家的游戏文件都会有一个校验机制(就是为了防止本地文件遭到修改) 一旦检测出异常 游戏会无法正常运行 无法进入游戏

解决方法:通过某些软件(.EXE)可以解决掉这个检测的问题 这样就能够肆无忌惮的修改本地的游戏文件 但是也要遵官方的文件规则 这个以后会讲到

②:可见性

我们修改后别人会看到吗

很多人都会遇到的一个问题 就是我们修改后对方或者队友能不能被看到的问题 前面也说过 游戏开始的时候会从本地读取文件 然后再呈现给玩家 我们修改本地的文件后 游戏就会加载修改后的 当然只是我们的电脑文件被修改 别人的本地文件并没有受到影响 所以只有我们自己可以看到  所以我们自己的电脑就会加载我们自己修改后的文件 而别人就是加载他本地的文件 进而我们自己就可以看到修改后的效果 而别人看不到

三、游戏资源存放位置

简单划分两大类 客户端资源 局内资源

①:客户端资源

位置:“你的游戏安装目录”+“英雄联盟\LeagueClient\Plugins”

客户端资源

这里存放的就是一些客户端文字信息 各种道具物品的描述文本 和一些客户端所需要的图片音频数据 

更多详细游戏资源位置请戳:https://note.youdao.com/s/GkzC5Dkv

②:游戏内资源

位置:“你的游戏安装目录”+“英雄联盟\Game\DATA\FINAL”

局内资源

这里存放的是一些 英雄的基本数据 如模型 特效 音频等 其余还有地图文件 文本 播报员  还会有少量的客户端资源 

更多详细游戏资源位置请戳:https://note.youdao.com/s/GkzC5Dkv

四、文件格式讲解

英雄联盟的文件都是经过加密压缩的格式 我们所需要的文件(如 模型 图片 音频等)都在里面  格式一共分为两种 客户端资源格式(*.wad) 游戏内资源格式(*.wad.client)        可以将这种格式的文件理解为压缩包的形式(如zip rar 7z..) 拳头将资源数据通过特殊的压缩方式 从而生成这种格式的文件 市面上的压缩软件都是不支持解压缩拳头的文件的


五、解压/压缩(*.wad/*.wad.client)文件---提取/压缩文件内容

我们了解到游戏的文件都是经过加密压缩的 普通的解压缩软件并不能对其产生作用

我这里就介绍一个可以对加密压缩文件 解压 压缩的软件:                  

第一个方法:

WAD编辑器:Obsidian 

作者:Crauzer 

工具地址:https://github.com/Crauzer/Obsidian         或者私信我获取

最新版本:5.1.2

①:开始解压 (*.wad/*.wad.client) 文件

首先打开最新版本的Obsidian 初次打开 会加载一些程序运行所需要的数据 还有一些语言包 请确保 网络通畅 需要科学上网工具 如果网速够快可以忽略

1.设置中文

点击右上角设置

点击设置

勾选界面中的四个选择框

选中

下滑找到语音修改位置 选择中文语言包 并确定

中文语言

2.设置完后重新启动即可

这就是汉化后的界面

设置完成

3.选择需要解压的文件

点击左上角 文件按钮 选择打开文件

打开文件

4.选择一个英雄的文件

找到英雄文件的位置 并选择打开亚托克斯的文件

选择文件

等待软件读取 读取完成后界面会显示亚托克斯的各种文件路径

打开文件后的效果

5.解压导出里面的内容数据

点击左上角文件按钮 选择 导出全部文件

导出所有文件

新建一个文件夹 亚托克斯  用于保存导出后的所有文件 选择新建的文件夹 并点击选择文件夹

选择文件夹

等待所有文件导出

等待导出

导出完成后 在亚托克斯文件夹下 可以看到导出后的所有文件

导出完成

②:开始压缩(*.wad/*.wad.client)文件

首先打开编辑器Obsidian

点击左上角 文件按钮 选择最下面的创建皮肤选项

创建皮肤

选择需要压缩的文件夹

这里选择亚托克斯文件夹

选择压缩文件夹

然后再选择文件保存位置 并确定

选择导出位置

等待压缩完成

完成后可以在保存的文件夹下看到压缩后的文件

保存完成

第二个方法:

WAD编辑器:lolcustomskin-tools 

作者:moonshadow565等等 

工具地址:https://github.com/LoL-Fantome/lolcustomskin-tools 或者私信我获取

最近更新:2022.6.26        

①:开始解压 (*.wad/*.wad.client) 文件

将wad文件拖拽到lcs-wadextract.exe程序上(建议先将文件移动一下位置 再进行操作)

第一步-拖拽解压

等待一下...  wad文件的同级目录下就会出现 以wad文件名命名的文件夹 里面保存着从wad文件解压出来的文件

第二步-解压完毕

②:开始压缩(*.wad/*.wad.client)文件

将文件夹拖拽到lcs-wadmake.exe程序上

第一步-拖拽压缩

然后就会在文件夹同级目录下生成wad文件 以文件夹名字命名 若原始目录下有相同文件则被替换

第二步-压缩完成

好了 到这里 两种编辑器使用方法就完了

序章完

补充;

当我们使用wad解压工具时 正常来说如下图

解压

这些文件都是从剑魔的Aatrox.wad.client文件里面解压出来的 那么这些文件就是这样排列的吗 并不是 这些文件名统统由16位的16进制命名(俗称加密后的字符串)

当我们使用压缩工具(winrar 7z等等)时 会对你的文件进行压缩 包括文件名 全部压缩成固定的长度 进而节省空间 例文件名为aaaaa..(省略一万个a).txt 长度很长对吧 经过压缩 成ax100 是不是短了 然后会生成一个字典 写入

样式

这样的样式 当我们再次解压的时候 就会通过这个字典将加密后的文件一一翻译回原文 这样就是一个完整的压缩与解压过程(非官方解答 理解就行)

但是英雄联盟的压缩与解压和普通的压缩方式不同 所以计算方式也不同 只需要知道这个原理就行 

说回黑曜石编辑器 当我们使用黑曜石解压时 也需要加载一个字典 hashes.game.txt 里面记录如下图的格式

hash字典

黑曜石会将符合前面的文件 翻译成后面的文件 

如下图

new

自行可以往字典里面添加hash翻译 或者使用别人分享的字典 即可

压缩不需要字典翻译

序章-入门教程-解压和压缩的评论 (共 条)

分享到微博请遵守国家法律