欧美游戏sistersister攻略,【galgame】sisterxsister汉化

格斗手游 2023-10-19 17:41:02 84

大家好,今天小编来为大家解答以下的问题,关于欧美游戏sistersister攻略,【galgame】sisterxsister汉化这个很多人还不知道,现在让我们一起来看看吧!

欧美游戏sistersister攻略,【galgame】sisterxsister汉化

【galgame】sisterxsister汉化

没有,不过有封包办法,如果有人日语好可以直接开始:

下面是引用:

有人想汉化sisterXsister,于是昨天研究了一天搞出来封包办法了,结果他今天又不干了,便把这个结果发布上来,希望对某些人有帮助。

我也不知道这个游戏所使用的系统叫啥,Crage的cui把它叫DenSDK,那就用这个名字吧,这种格式的扩展名是.dat,文件头是DAF1/DAF2。

说下基本格式,文件头后先是一个int1,然后有两个dword指示资源数目,接下来的两个dword是索引表压缩前后的大小,后面又是一个int1,接下来的dword指示第一个文件的起始地址。

欧美游戏sistersister攻略,【galgame】sisterxsister汉化

不过所有的数字都不是明文,需要先与一个dword进行异或,这个dword是文件偏移20h,25h,2Ah,2Fh的四个字节从左至右依次组合起来的。

头部之后是索引表,用zlib的uncompress解压,文件长度参数就使用头部给出的那两个,解压后索引表的结构比较简单,与上面大同小异。往后下面的每一个文件都是需要解压的。

不想打字了,就把代码给出来吧,能看懂就可以封包了……

那个代码中用到的几个常量是和sisterXsister这个游戏有关的,对其他使用这个系统的游戏封包的时候,可能需要进行一些改动。我会在相关位置注释出来。

封包程序用到了zlib1.dll,如果不知道dll怎么用的就不要往下看了。

欧美游戏sistersister攻略,【galgame】sisterxsister汉化

#include<windows.h>

#include"zlib.h"

#define BASE 0x1c2acb88//本常量即文件偏移20h,25h,2Ah,2Fh的四个字节从左至右依次组合起来的。

#define STARTOFFSET 0x308//第一个文件的起始地址,往大了设置,最后生成dat之后要保证此文件偏移之前至少有一个00

int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)

{

HANDLE hScFile,hFileMap,hFile;

BYTE*pcFile,*pcNewFile,*pNewFile,*pNewIndex,*pBuff;

BYTE Indexes[0x3a38];//3a38h是原始索引表解压后的长度,也就是BASE常量与文件头开始第六个dword异或之后的结果,

BYTE NewIndexes[0x3a38];//由于封包时还是要解压而且长度比较富余就还是用了这个数。

BYTE*pInd=Indexes;

int temp;

int index[4];

if((hScFile=CreateFile(TEXT("script.dat"),GENERIC_READ|GENERIC_WRITE,FILE_SHARE_READ,NULL,

OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL))==INVALID_HANDLE_VALUE)

return-1;

hFileMap=CreateFileMapping(hScFile,NULL,PAGE_READONLY,0,0,NULL);

pcFile=(BYTE*)MapViewOfFile(hFileMap,FILE_MAP_READ,0,0,0);

pNewFile=pcNewFile=(BYTE*)GlobalAlloc(GPTR,512000);

pNewIndex=NewIndexes;

memcpy(pNewFile,pcFile,0x30);//30h指的是头部的大小,这个应该不会有变化

pNewFile+=STARTOFFSET;

pBuff=(BYTE*)GlobalAlloc(GPTR,128000);

temp=0x3a38;

uncompress(Indexes,(uLongf*)&temp,pcFile+0x30,0x2ca);//2cah的获得同上面3a38h,BASE同第五个dword异或之后的结果。

index[0]=0x1c2acbac;//这是解压后的索引表的第一个dword,没有变动过。

for(int i=1;i<=46;i++)//46是文件数量,是BASE同第三个dword异或之后的结果。

{

pInd+=20;

if((hFile=CreateFileA((LPCSTR)pInd,GENERIC_READ,FILE_SHARE_READ,NULL,

OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL))==INVALID_HANDLE_VALUE)

{

index[1]=*(int*)(pInd-16);

index[2]=*(int*)(pInd-12);

index[3]=*(int*)(pInd-8);

memcpy(pNewFile,(index[1]^BASE)+0x2fc+pcFile,index[2]^BASE);//2fch是BASE同第八个dword异或之后的结果,即原始脚本的首文件偏移。

*(int*)pNewIndex=index[0];

pNewIndex+=4;

*(int*)pNewIndex=((pNewFile-pcNewFile-STARTOFFSET)^BASE);

pNewIndex+=4;

*(int*)pNewIndex=index[2];

pNewIndex+=4;

*(int*)pNewIndex=index[3];

pNewIndex+=4;

*(int*)pNewIndex=1;

pNewIndex+=4;

memcpy(pNewIndex,pInd,16);

pNewIndex+=16;

pInd+=16;

pNewFile+=index[2]^BASE;

}

else

{

ReadFile(hFile,pBuff,128000,(LPDWORD)&temp,0);

CloseHandle(hFile);

index[3]=temp^BASE;

compress(pNewFile,(uLongf*)&temp,pBuff,temp);

index[2]=temp^BASE;

for(int j=0;j<4-temp%4;j++)//不足4整数倍的地方补0xCC

{

*(pNewFile+temp+j)=(BYTE)0xcc;

}

index[1]=((pNewFile-pcNewFile-STARTOFFSET)^BASE);

memcpy(pNewIndex,index,16);

pNewIndex+=16;

*(int*)pNewIndex=1;

pNewIndex+=4;

memcpy(pNewIndex,pInd,16);

pNewIndex+=16;

pInd+=16;

pNewFile+=temp+4-temp%4;

}

}

temp=0x3a38;

compress(pcNewFile+0x30,(uLongf*)&temp,NewIndexes,temp);//索引表压缩并修正头部。

*(int*)(pcNewFile+16)=temp^BASE;

*(int*)(pcNewFile+28)=STARTOFFSET^BASE;

hFile=CreateFile(TEXT("Script1.dat"),GENERIC_READ|GENERIC_WRITE,FILE_SHARE_READ,NULL,

CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);

WriteFile(hFile,pcNewFile,pNewFile-pcNewFile,(LPDWORD)&temp,NULL);

CloseHandle(hFile);

UnmapViewOfFile(pcFile);

CloseHandle(hFileMap);

CloseHandle(hScFile);

GlobalFree(pBuff);

GlobalFree(pcNewFile);

return 0;

}

就这么多了……有疑问的话再问吧。

澄空09年7月帖

原帖不发了,澄空没账号进不去

littlesister游戏攻略怎么赚钱

不能赚钱。littlesister是一款第一人称射击游戏《生化奇兵》(BioShock)中的角色,是销魂城内收集并成倍量产ADAM的载体,而游戏攻略是指官方为玩家提供一些游戏经验与心得的文字或视频类的教材,不过任何人是不能拿官方的攻略视频进行赚钱,如果进行盗取售卖赚钱的话,是涉嫌侵犯著作权,属于违法行为。

急..!!求妙女神探连环谋杀案 游戏攻略

1.跟右边的警察对话,然后进房间,检查尸体,从手上取指纹(用刷指纹和纸),用棉签从尸体脖子上取血样

2.检查墙上的话,从画的左边框上取指纹

3.进浴室,用喷雾喷浴盆里,出现血迹,用棉签取血样

4.出门,和右边的警卫对话

5.退到走廊进右边房间,和里面的人对话,拿到一张写着AB的纸,这时候有提示音,下面的地图(city map)会亮

6.点地图,到headquarters去,点办公桌,退回,点墙上黑板,很多东西到黑板上

7.退回,点左边,与上司对话,一直向右走,点门,与法医对话

8.回办公室,点办公桌,有多了东西在桌子的上,点粉色纸和画有weapon的纸,进了工具栏,退出点黑板,上了黑板,地图亮了

9.到medical center,对话,进大厦

10.进封条封住的房间,点尸体收集血样,点桌子,看记事本上的字,得黄色纸,取桌上铅笔,用铅笔涂抹便条,取便条,点墙上画,从右边框取指纹

11.回headquarters,取办公桌上所有粉纸,点黑板,跟上司对话,地图亮

12.到heargon,进商店,对话得一张纸

13.点地图,回headquarters,取办公桌上所有纸,点黑板

14.把黑板上所有东西重叠,会自动归类,地图亮

15.到free art school,进门跟前台对话,到走廊左边屋子

16.从画架上取artistick lockpick,退出屋子

17.到走廊右边屋子,看门锁,用artistick lockpick开锁,

18.取桌上药瓶,在那盆植物旁边取钥匙,用钥匙打开左边柜子最上层,取一张卡片

19.点地图,回headquarters,与法医对话,得卡片

20.回办公室点办公桌,药瓶放在了桌上,从药瓶上取指纹

21.点黑板,黑板上所有东西重新重叠一次,又自动归类,地图亮

22.到thompson‘s home,进房间,查看尸体,点画,取weapon,点沙发上的包,打开包,包里取一张卡

23.回headquarters,weapon上桌,从weapon上取指纹

24.点黑板,所有资料再次重叠一次,又自动归类,出现对话框,再重叠一次资料

25.到上司办公桌,桌上有一张白纸,用工具里的铅笔,在白纸上给上司留言,地图亮

26.到adam burns,开门,被凶手袭击,屏幕下方出现字幕,一直点next,上司来解救,抓住凶手

好了,本文到此结束,如果可以帮助到大家,还望关注本站哦!

相关推荐

暂无记录