标题: RPGViewer图片资源提取工具, 10月24日更新
性别:未知-离线 Maxwell

代王
监管使
枢密直学士
山南西道节度使

Rank: 27Rank: 27Rank: 27Rank: 27Rank: 27Rank: 27
柱国(正二品)
组别 诸侯
级别 征东将军
好贴 4
功绩 1845
帖子 5800
编号 622
注册 2004-7-7


发表于 2005-1-5 09:45 资料 文集 短消息 看全部作者


QUOTE:
原帖由金圭子于2005-01-05, 9:11:45发表
上次提到Hexzmap.e5走样的问题,回去看了一下,原来这个版本资源里面的Hexzmap.e5没有,上个版本的是空文件(怀疑这次没有就是在某个系统下面空文件拷贝不过来?)。

我就仿照了写了一个,见附件。





这样理论上可以做出自己的地图来了(从地形到图片),只是不知道怎么压缩回去,以前gameplore写的一个vc的代码([原来的页面])我昨天装了vc用了一下,似乎有问题不能完全运行到结束。在137行的_ASSERT( nLenActual <= nLenDest ); 处出错,不知道是不是因为曹操传是ls12而gameplore目标的san9是ls11的缘故…………这个因为鄙人vc以前没学过……这个这个…………我还是先自己学学看吧………………
(昨天晚上把几个人关于ls的程序和van关于地图图片的程序都试了一下,皆一头雾水…………先弄本vc的书扎进去看看吧  )

应该用Encode函数压缩,你是用了Decode吧。


精华帖
顶部
性别:未知-离线 Maxwell

代王
监管使
枢密直学士
山南西道节度使

Rank: 27Rank: 27Rank: 27Rank: 27Rank: 27Rank: 27
柱国(正二品)
组别 诸侯
级别 征东将军
好贴 4
功绩 1845
帖子 5800
编号 622
注册 2004-7-7


发表于 2005-1-5 10:46 资料 文集 短消息 看全部作者


QUOTE:
原帖由金圭子于2005-01-05, 10:13:08发表
哦,是我解压的时候已经不对了…………说的不清楚………………
压缩的那块,他说我memset那句指令未知。

晕,不该吧,好像他自己用还没问题,不如你试试我的解压代码,那个是久经考验了,呵呵。


精华帖
顶部
性别:未知-离线 Maxwell

代王
监管使
枢密直学士
山南西道节度使

Rank: 27Rank: 27Rank: 27Rank: 27Rank: 27Rank: 27
柱国(正二品)
组别 诸侯
级别 征东将军
好贴 4
功绩 1845
帖子 5800
编号 622
注册 2004-7-7


发表于 2005-1-5 12:54 资料 文集 短消息 看全部作者


QUOTE:
原帖由金圭子于2005-01-05, 12:48:07发表

QUOTE:
原帖由Maxwell于2005-01-05, 10:46:01发表
[quote]原帖由金圭子于2005-01-05, 10:13:08发表
哦,是我解压的时候已经不对了…………说的不清楚………………
压缩的那块,他说我memset那句指令未知。

晕,不该吧,好像他自己用还没问题,不如你试试我的解压代码,那个是久经考验了,呵呵。

你的?就是第一页的那个么?

那个简单版的问题是:
TLS11 ls11;

if (insize != outsize)
{
  ls11.Decode(dict, in, insize, out, outsize);
}

这段具体的怎么用呢?(这个问题只是因为我一点没学过vc,大概回去看几个例子就明白的)


麻烦点的问题就是这里面的5个参数既然是调用的时候给出的。那起初是怎么得出的?
比如in和insize就是原来的*.e5部分(是全部嘛?还是除去字典的部分?),out就是最后的输出部分,但是这个outsize怎么来的呢?既然是在Decode之前就已经进行了一次!=的比较,肯定不是输出了…………
另外这个dict呢?就是截取原来的*.e5里面的字典段么?

这个我没看到直接给出的*.e5的划分法。
唯一涉及到这方面的是van的一段vb程序(在琅琊的,“中华文化论坛 - 英杰传系列LS格式压缩文件解析”第2页)。但是他也是直接
Get #1, 281 + ImageIndex * 12, TempL
Get #1, 277 + ImageIndex * 12, TempL
两句带过去,也没写281、277是怎么来的…………

(如果van看到了,我附带问一下,那段vb里面有两处被译作了a©的,直接打出来就是a一个注册商标的符号,我猜想是a©,不知道是不是。
另外还有两句是“***d”,我怀疑可能原来正好和某个过滤词一致了就被过滤了…………就比如“曹操”的“操”,“依靠”的“靠”这种。如果是的话不知道原文是什么?总不会是tmdd吧??) [/quote]
我那个是bcb6下写的,应该也能用在vc下。

dict是你的文件里的字典,一共256个字节,in就是被压缩过的数据,insize是这段数据的长度,不包括文件头等其他东西,out是一个至少outsize大的空间,outsize可以从文件结构中找到,你翻翻文件结构的帖子看看吧。其实insize和outsize都应该能在文件中找到。
精华帖
顶部
性别:未知-离线 Maxwell

代王
监管使
枢密直学士
山南西道节度使

Rank: 27Rank: 27Rank: 27Rank: 27Rank: 27Rank: 27
柱国(正二品)
组别 诸侯
级别 征东将军
好贴 4
功绩 1845
帖子 5800
编号 622
注册 2004-7-7


发表于 2005-1-5 12:55 资料 文集 短消息 看全部作者
a©

a(c)

呵呵,明白了吧。
精华帖
顶部
性别:未知-离线 Maxwell

代王
监管使
枢密直学士
山南西道节度使

Rank: 27Rank: 27Rank: 27Rank: 27Rank: 27Rank: 27
柱国(正二品)
组别 诸侯
级别 征东将军
好贴 4
功绩 1845
帖子 5800
编号 622
注册 2004-7-7


发表于 2005-1-5 14:45 资料 文集 短消息 看全部作者


QUOTE:
原帖由金圭子于2005-01-05, 14:13:37发表
???


van的看到了,我也回复了…………就是这个意思么?

文件数 * 12是指内部压缩的段数,你那个文件可能只有一段吧,那就是字典之后的十二个字节,分别是现在的长度,压缩前长度,起始偏移,每个占四字节,低位在前。内部压缩的段数好像是在0x0c处,四字节,低位在前。
精华帖
顶部

正在浏览此帖的会员 - 共 2 人在线




当前时区 GMT+8, 现在时间是 2025-4-3 12:50
京ICP备2023018092号 轩辕春秋 2003-2023 www.xycq.org.cn

Powered by Discuz! 5.0.0 2001-2006 Comsenz Inc.
Processed in 0.021264 second(s), 9 queries , Gzip enabled

清除 Cookies - 联系我们 - 轩辕春秋 - Archiver - WAP