最初由 judaxia 发布
作者:lighting
运行补丁
http://download.yousendit.com/DECA26330B2C1BDB
edleloth@2006-12-23 01:08
引用
sunshining@2006-12-23 08:25
终于玩到了(泪elhaym@2006-12-23 09:49
速度华丽的LZ为我们办了一件大好事阿--acatindoor@2006-12-23 10:26
這個不XX 的 世界 阿hikari520@2006-12-23 11:44
引用最初由 edleloth 发布
谁能再发一个,貌似到了download limit.
flyers@2006-12-23 12:40
这个啊,现在的假档实在是太多了,不过眼红那个下载速度啊maxs@2006-12-23 12:45
那个真就不是假档,而是破解失败的产物。。。mseraser@2006-12-23 13:23
有没有人遇到部份文字不显示的问题?wingkelvin@2006-12-23 13:30
引用最初由 mseraser 发布
有没有人遇到部份文字不显示的问题?
一开始yuko和火村在教堂的对话的文字有很多没有显示,但是AGTH之类的东西还是能抓到……不知道为什么…………
mseraser@2006-12-23 15:11
orz......解开scr.paz看了一下,000_01mugai.txt对应的序章部份:wingkelvin@2006-12-23 15:49
無意中發現紘的手機鈴聲原來是有人唱的@@"huamxxy1@2006-12-23 16:44
这制作者绝对的是心理变态。。Dr.凡@2006-12-23 17:09
好歹破解成功……然则开始就是没有bgm么……mirabo@2006-12-24 00:14
我这里显示还有99:99:99才下载完成啊……OTLrednaxela@2006-12-24 04:23
好,夜猫出动...引用最初由 mseraser 发布[/i
orz......解开scr.paz看了一下,000_01mugai.txt对应的序章部份:
.panel 3
.message 4130 そんなろくでなしがこの街にもう一人いるのか。\a
.wait 270
.panel 0
.message 4140 yuk-000_01-0241 #優 子 「扉を開けてあの人は入ってきました」\v\a
.wait 150
.message 4150 yuk-000_01-0243 #優 子 「入ってきたのは、ひとりの男の子」\v\a
.wait 150
.message 4160 yuk-000_01-0245 #優 子 「どこかあなたに似ていて――ええ、懐かしい匂いがしたんです」\v\a
我这里そんなろくでなしがこの街にもう一人いるのか这句话会显示出来,后面的就不会,根据澄空rednaxela大大的那篇资源文件的加密的解析文章来看,panel 3是宽屏文字,panel 0是无文字显示…………这样说来没有文字确实是游戏本身就这样设置的了…………
不过为什么啊?理解不能,文字本身已经在那里了,用AGTH也能抓到不显示的那部分文字,minori为什么不干脆把它也显示出来…………
引用
(for archives in full version of ef) most of the first 32 bytes seems to be garbage (but i'm not sure), but you want to notice the byte at 0x08, that's the byte you'll be xoring with before you get to BlowfishDecrypt.
so, you'd:
> read in the first 32 bytes in the archive, save the byte at offset 0x08, and then dump the rest of them
> xor this "key byte" with a 4-byte integer at offset 0x20, and that's the length of index
> read in the index, xor it with the "key byte", then BlowfishDecrypt it with the first set of Blowfish key. now you've got the index ready to use
> to extract files from the rest of the archive, xor with the "key byte" first and then BlowfishDecrypt.
just to mention that, in full version of ef, the initialization of pbox is somehow different from standard Blowfish and from ef_trial. in ef_trial, you have to negate every key byte before it's used in an otherwise standard Blowfish init.
so if you had a standard implementation of Blowfish, in ef_trial you'd: (in pseudo code)
negateAllBytes(key1);
BlowfishInit(key1);
now in full version you have to do something tricky, so let's get more into the details of what would be a part of BlowfishInit. the code snippet below should replace the round of xoring pbox with the key for Blowfish: (in C++)
suppose:
unsigned int pbox[18]; // the pbox of Blowfish
byte* key; // pointer to the key for Blowfish, and that the length of key is always 0x20 in minori's games
then,
- unsigned int ofs = 0; // offset of current byte in key
- for (int i = 0; i < 18; ++i) { // iterate though pbox
- unsigned int build = 0;
- for (int j = 0; j < 4; ++j) { // retrieve 4 bytes from the key at a time
- byte currentByte = key[ofs];
- /////////////////////////////////////////////////////////////
- // this switch is what's different from the standard Blowfish
- switch (ofs % 6) {
- case 0:
- currentByte ^= 0x6D;
- break;
- case 1: case 5:
- currentByte ^= 0x69;
- break;
- case 2:
- currentByte ^= 0x6E;
- break;
- case 3:
- currentByte ^= 0x6F;
- break;
- case 4:
- currentByte ^= 0x72;
- break;
- }
- /////////////////////////////////////////////////////////////
- build <<= 8;
- build |= currentByte;
- ofs++;
- ofs &= 31; // ensure ofs doesn't go beyond 0x20
- }
- pbox[i] ^= build;
- }
and that's about it...