Archive for September, 2005

ふた魔女的存档加密和封库文件封装方式

这个是存档文件的key:
xordata: array[0..31] of byte = (
$30, $36, $34, $35, $32, $33, $35, $39, $35, $34, $32, $35, $39, $38, $37, $33,
$35, $36, $31, $38, $39, $34, $30, $33, $36, $39, $32, $30, $34, $36, $37, $33
);
循环对存档文件内容进行xor即可.

封库文件:
前面#$2C字节是:
$0000:Magic “PACK”
$0004:Key String “E9C5C9C5CBE7C3C6C1E6C3C7CFE7C3C4DEE4CBD0C587C7CBC0D3C5F3DFDFC1CB”
$0028:VfatNum DWORD B4 01 00 00

将Key依次xor #$AA,得到该pac文件的key.
用此key对从#$2C开始的记录块进行xor,对齐方式是第一字节对应文件头开始的第一字节.
也就是说绝对方式对齐的.

每个记录信息块的结构如下
ItemPathLen:DWORD;
ItemPath:Array of Char;
ItemSize:DWORD;
ItemOffset:DWORD;
其中ItemPathLen包括了后面的结束字符#$00

读取完指定个数的记录后,就可以着手开始解出每个文件了.

ItemPath是针对游戏安装目录的,是相对的虚拟路径.System\Album.bmp类似这样的.
将文件全部解出后,游戏可以直接读取解出的文件使用,测试修改效果不需要打包回去

ふた魔女是前几天出的Teatime的游戏,看到论坛上有人问游戏的汉化,Teatime最近出的几个游戏我都制作有对应的汉化工具,只不过纯粹是为了YY,这个也一样,何况这一款游戏成了纯粹的2D文字官能游戏了,不是Side-B应有的水准,应该说不是Side-B小组出的.

StringRipperV2的设计文档

刚才点世纪的blog矩阵,发现某人不怀好意的收了这个BT窝二的链接,一看就是何患无辞.
特意发上中文字符提取器的设计文档.偶发布在世纪水区的技术贴大多沉底或者清空了,在此略微备份.
第一版是用来提取繁体字串的,03年的了.
第二版本来是预计可以用来辅助转码,和自动对照生成ASCII词典以利于剽窃汉化时候ASCII不便翻译的问题.
记得有人问过怎么从已经汉化好的文件中对比出来ASCII字典,我惊出一后背冷汗.
废话完了,贴了:

先进行分析,建立一组结构,
.Offset DWORD
.Length DWORD
.hasEng DWORD 本来是是否包含英文,修改为英文个数
.hasHan DWORD 本来是是否包含汉字,修改为包含汉字个数
.rp float 人品点数
.ref DWORD 测试次数
[条件:如果判断文件是PE文件] 通过PE结构,去除Offset和Offset+Length落在PEHeader区,导入表区,资源区,重定位区的目录区的字串.发现者,将RP置为-1.
[条件:提取中英混排字串] 判断中英混杂的混杂度,取隔断次数,和字串的总长度比较,得出粗略的值.或者用密度检测,或者隔断次数对比总中文数.
[条件:提取中文字串] 判断各字串中文的生僻度,生僻字成分过多的,应该是乱码冒充的中文;设置中增加连续生僻字(密度)考核选项,凡是密度过大的也-1.
[条件:要求字串后必须有00项] 此项平时做隐含规则,有00的加rp分.如果实行此条件,凡是没有00的一律-1对待.
[条件:扩展坏词辞典] 将进行完全匹配和模糊匹配度检查,剔除坏词,完全匹配的词,将RP置为-1.
[条件:进行人品测试] 经历若干次判断,取出RP度,进行筛选.
在任一项里面发现rp已经是-1 的项目,不再进行其余的检测.
每项测试,满分1分,然后根据人品点数/总测试次数,得出总RP值,采用百分制.
根据程序选项里面的设置,来启动对应的条件模块,
条件模块施行判断,先根据每项目的特征,判断是否要打分,打分后,增加测试次数1.
字串提取完毕,得到yourfile_str.txt和yourfile_str_rpwt.txt两个文件,如果点击跳转按钮,则将youfile_str.txt在转码界面打开,并将焦点转向转码界面.
追加免检好词辞典;对于”新建”/”确定”之类的词可以忽略掉长度限制,给与放行,这项在提取时候就作.
跳转的按钮做成类似Photoshop里面那个纽,在转码界面,简化了内码只进行字形的选择,转码也提供VL的或者MU的样子,允许缩短/补空格.不过因为是自家转码貌似不需要;在回写才使用这个特性.

又是一月,那年今日

说书人在天桥下月:旧人如昼夜,不舍斯夫

教师节啊,炮制郁金香宝宝的CG?

周末和月初连涂两张shinobu~~未完成版,就此ing去
下个月可以不用涂了,把所有时间用来过劳吧,为这黄昏的非洲跳高产业

一团麻,是收拾者

收拾满天遍野的残局,作为港湾,已经逗留太久
不然迟早成为后人口中的残局制造者

还是去作当初的游戏较好?
还是去开有间书屋?
还是成为自由人?
如果我要过劳死,我不希望死在一个衰败的行业上….在死的前一天,也要装一把闲得发慌的面子…