QQ登录

只需一步,快速开始

 找回密码
 定下契约(新注册)

QQ登录

只需一步,快速开始

查看: 966|回复: 4
收起左侧

【文件介绍】——IMG 文件解析——

[复制链接]

传奇 Legend

虚拟世界,属于你的世界

Rank: 16

UID
4
宝石
154 粒
金币
5594 枚
节操
458 斤
灵石
0 块
精力
509 ℃
QQ
发表于 2012-3-22 22:33:32 | 显示全部楼层 |阅读模式

你这样只看不注册,真的大丈夫?~

您需要 登录 才可以下载或查看,没有账号?定下契约(新注册)

x
转载自VC _Foolman
问过说可以转载
IMG文件在GTA中是Archive(归档)文件,用于放置大量文件。在这里暂时不讨论GTAIV的IMG文件。除开GTAIV的,IMG文件有两个版本,版本一用于GTA III和VC,版本二用于GTA SA。区分的方法:版本二的IMG文件开头四个字节总是"VER2"。之前曾做过图文的介绍,现在不打算重做,只是介绍一下文件结构。

版本1

版本1的IMG文件没什么好说的,就是许多文件一个一个连起来组成的。版本一的IMG文件都会带有一个对应的DIR文件,这里主要说一下DIR文件。DIR文件由若干以下结构组成

typedef struct{

DWORD dwOffset; // 文件的偏移

DWORD dwSize; // 文件的大小

CHAR szName[24]; // 文件的名称

} dir_file_item;

每一个对应IMG文件中的一个文件。由于IMG文件中的文件都是2KB对齐的,所以DIR文件中的大小和偏移都被缩小了2K倍

版本2
版本2将版本1的IMG和DIR合并为一个IMG文件,原来的DIR文件被放在了IMG文件的开头。整个文件的头部
typedef struct t_img2_header
{
CHAR szSig[4] // "VER2"
DWORD dwFileCount; // 文件数
dir_file_item file_entries[1];
} img2_header;
文件的偏移量仍然是相对于整个文件。

评分

参与人数 1宝石 +2 收起 理由
kwanz + 2 涨姿势了

查看全部评分

璞玉 Potential

Rank: 4

UID
1390
宝石
16 粒
金币
1038 枚
节操
0 斤
灵石
0 块
精力
4 ℃
发表于 2012-5-6 21:04:46 | 显示全部楼层

评分

参与人数 1金币 +8 收起 理由
root + 8 抢楼奖励

查看全部评分

璞玉 Potential

Rank: 4

UID
1390
宝石
16 粒
金币
1038 枚
节操
0 斤
灵石
0 块
精力
4 ℃
发表于 2012-5-6 21:05:08 | 显示全部楼层
表示看不懂

评分

参与人数 1金币 +6 收起 理由
root + 6 抢楼奖励

查看全部评分

传奇 Legend

谷歌翻译坑爹人肉版(不是人肉饭)

Rank: 16

UID
83
宝石
140 粒
金币
573 枚
节操
30 斤
灵石
0 块
精力
32 ℃
发表于 2012-5-9 21:59:44 | 显示全部楼层
原来dir是非常标准的数据文件格式啊

评分

参与人数 1金币 +2 收起 理由
root + 2 抢楼奖励

查看全部评分

平凡 Ordinary

Rank: 2Rank: 2

UID
16464
宝石
5 粒
金币
533 枚
节操
-51 斤
灵石
0 块
精力
184 ℃
发表于 2014-6-12 18:44:39 | 显示全部楼层
学学

本版积分规则

    切换繁體
    Archiver|手机版|小黑屋|

GMT+8, 2024-11-24 01:39 , Processed in 0.114827 second(s), 72 queries .

沪ICP备2021020632号-1

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