设为首页收藏本站官方微博

汉化资料 静物2 汉化分析专用贴

[复制链接]
查看: 14343|回复: 25
打印 上一主题 下一主题

[汉化资料] 静物2 汉化分析专用贴

跳转到指定楼层
楼主
发表于 2009-4-3 07:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

静物2 汉化分析专用贴

老外放出了一个静物2数据文件样本。 7 h, ^. z  ?5 K2 m2 A- S1 y0 x; @9 w
http://rs706.rapidshare.com/files/216482719/Sl2data.zip
' |" t6 i: Z# E0 E7 K- t3 r3 Y# ^有巳さ呐笥芽梢匝芯恳幌隆?
/ B" h4 s( j: D6 H+ U
6 G0 V$ J7 c& t5 s, ?$ J--------------------------------------------------
7 j+ z3 Y& g* @! J2009.4.4 第1次更新 7 b- F' A7 Q5 T3 }7 r1 `
老外放出了静物2包文件的异或key,据说解密以后文件的格式很简单。
3 x: V! j+ O/ a2923BE84E16CD6AE529049F1F1BBE9EB % O7 M: w. u' v: h  V) a: N) Z

7 k% b  s! s. p4 y--------------------------------------------------
7 ^0 B- G5 v: k& ]* Q. A7 y3 a0 y2009.4.4 第2次更新 # G: q. q& B5 Y; |* X5 P! d
测试了一下上面的异或key,结果正确。解密后的文件为不压缩的简单格式包文件。
, O% \: F( ?1 @+ h0 q' l6 E放上异或解密工具,在工具包里有一个例子,异或key就在key.txt中。 # s% }8 ^( w$ e8 v/ I" d: o: l
1 x8 d6 N+ X$ I) Q+ B
-------------------------------------------------- # u0 m" s; V2 `' O6 u' \  E
2009.4.4 第3次更新 . u2 L3 S6 F' u6 j% H' {6 I- U
静物2采用wild-dna公司开发的3D引擎。网址如下。 0 `' a; F0 }! q% r8 d5 D( e
http://www.wild-dna.com/main.html
2 k' }4 N* k, ?3 Z; Zhttp://www.gamecostudios.com/xcengine.html $ G' E  J, l$ M* t
+ j" T: }, x+ W+ y
-------------------------------------------------- ; X- O) {+ S: M& {. o, ^4 M5 `& R
2009.4.8 更新
  @# q1 x1 Z7 n% |3 ~老外公布了静物2包文件的格式。 / }% G9 v1 p6 |! d  G5 N, T
0x04 //"GMGB"
- S. ?) }$ r. @* s: S3 O/ G' ?0x04 //Number of files
1 ]: ?; b/ h7 u4 G  V. C# \2 C
2 u0 ?0 Q" [2 h4 |& bfor each file { ! X. {' p/ q" F7 |/ y
& x: _, p9 y  C; d: h
0xX path and filename
5 [3 y! v* M& R7 t" W9 M0 `$ x0x01 0x00 " [6 h, _8 U/ {' a" ^) b2 d/ N- w& K
0x04 file length
4 \+ Z+ d5 g; Q8 o* p0x01 0x00
0 k2 }9 [; Q$ V/ W' K}
! ~3 h' p0 A4 Q" `4 f) J/ H' W: n9 z2 C4 d0 [" E0 ?% R) Z
-------------------------------------------------- 9 G  c. u: \" S/ y! \$ t8 c! \4 o
2009.4.17 更新
6 E: U+ h: ^6 w, U& B. i8 ~9 }2 f老外动作很快,通用解包器quickbms发布以后很快发布了静物2的解包脚本。 4 Z$ I8 P, H# W! A
用法如下
# G/ K. P7 {& _/ N1 \# M" B* q6 u! Qquickbms.exe stillife2.bms c:\Sl2data.dat c:\folder
7 M; E% L  [# t
" e6 i; a+ P: r8 s, ?-------------------------------------------------- % R# B3 a- H; j0 `* ?0 U
2009.5.16 更新
! m" \3 D2 ?$ ~7 Q& `最近又有一些细小但是可能比较重要的发现。 / B! ]! I, n+ k6 U! p
用filemon跟踪了一下发现这个游戏支持读取解包后的字体文件Sl2fnt.dat。 ! T0 _8 E0 w" [# Q) t
第2个发现可能很重要,我把Sl2fnt.dat改名后发现游戏竟然能正常运行,此时使用了一种奇怪的字体。此种字体和原来的字体明显不同,并且显示有些不正常。我怀疑是某种系统的TTF字体被强制用不正确的参数显示而导致的。如果真是这样的话,我们无疑看到了一丝汉化的曙光。
* d5 V: S7 Q, G) m& |, M弄清楚这谜一般的字体来源是接下去要研究的课题。 1 r2 @) S3 Q& f* y3 G* P
下面是此字体画面抓图。 " {& `, c& J* S, D4 k, l

) a9 O* m0 w4 }  h+ S/ J$ y# f8 O; K
-------------------------------------------------- - d2 G* H! l3 k3 a3 ], D4 O+ z
2009.6.26 更新 # q2 U8 z$ x! V; P
经过老外的分析,把Sl2fnt.dat文件删除以后,游戏会自动寻找系统字体arial.tff。 + r% A! L2 U2 ?, C% C+ g
老外还放上了清晰的抓图。就是说我们目前已经可以把静物2转化为一个使用TTF字库的游戏,如果有办法HOOK显示函数的话,也许可以用比较简单的方法实现汉化。 5 x6 `  d3 n6 o; X$ ^7 s
放上抓图
" m0 H/ p; o2 e5 R$ W
( @. k# g; @* W5 N" X
! C4 h8 A/ h2 X" S8 n0 J--------------------------------------------------
: }0 Q5 r3 }1 ]$ i( `3 R2009.6.27 更新
! s8 R' b1 k+ X2 G, q4 S我在另一台电脑上试验了一下,可以显示出正常的英文。 # @7 B1 R/ s( O
我用上面的异或工具解密了字幕文件Sl2data.dat,然后写入一个中文字,再用异或工具异或一次。发现只有这个字的低字节被显示出来,高字节被过滤了。
- i5 r$ x3 O& f我觉得分析到这里基本可以知道实现汉化的方法了,就是用OD分析一下,找到那个过滤点,使游戏一下子读取2个字节,这样游戏应该就能显示出中文。
; j! ?' q. T& C* H0 m% r8 _肥牛如果有时间的话,希望能尝试一下。拜托了。
; x: Z5 B' t! N5 G需要修改的可能是xcEngine.dll这个文件。
3 N) w4 \8 K' a; m' x; k; {* U9 E+ L) f; A$ |. z
抓图如下,显示出来的是 汉 这个字的低字节部分 / B4 j- ?0 }" H* d, w+ B2 z+ Z
) V7 B& O+ I" x; K& ?: m/ W* a
  V! D2 t) w2 Y4 ?* u3 Y% ^* p
-------------------------------------------------- & s  t' m+ b& n8 G: m# K
2010.2.2 更新 6 h- r# G) C" R8 L) J
我电脑上的静物2,在一开场2人打完电话以后,就会崩溃。
4 T& y4 I; Q4 d) u+ M7 G. e研究了一段时间,发现可能是我显卡较老,只有128M显存的缘故。
% j! k' E7 Q( y  B: Y, u9 @3 [, Z把option的Shadow Quality改为low以后,解决了上述的崩溃问题。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

沙发
 楼主| 发表于 2009-4-4 07:00 | 只看该作者
2009.4.4 更新
回复 支持 反对

使用道具 举报

板凳
 楼主| 发表于 2009-4-8 11:35 | 只看该作者
2009.4.8 更新
回复 支持 反对

使用道具 举报

地板
发表于 2009-4-15 20:07 | 只看该作者
又来异或...还是数组操作吧,没有用IDE...007老大检查咯
4 |; q( S) I1 o& \那个提取的方法还是和之前那个riper一样就可以了吧% J( b. i9 [: W' w2 v7 D
  1. Private Const cKey As String = "2923BE84E16CD6AE529049F1F1BBE9EB"
  2. Private Sub cmdCommand1_Click()
  3.     Dim lngFileNum As Long, lngLength   As Long, strFilePath As String, bData()     As Byte
  4.     strFilePath = App.Path & "\\1.dat"
  5.     lngLength = FileLen(strFilePath)
  6.     lngFileNum = FreeFile
  7.     If lngFileNum = 0 Then Exit Sub
  8.     ReDim bData(lngLength)
  9.     Open strFilePath For Binary As #lngFileNum
  10.     Get #lngFileNum, 1, bData()
  11.     Close #lngFileNum
  12.     Dim lngIndex As Long, lngUbound As Long
  13.     lngUbound = UBound(bData())
  14.     Dim lngIndexB As Long, lngKey As Long
  15.     For lngIndexB = 1 To 32
  16.         lngKey = CHex2Dec(Mid$(cKey, lngIndexB, 1))
  17.         For lngIndex = 0 To lngUbound
  18.            bData(lngIndex) = bData(lngIndex) Xor lngKey
  19.    
  20.         Next
  21.     Next
  22.     strFilePath = App.Path & "\\2.dat"
  23.     lngFileNum = FreeFile
  24.     Open strFilePath For Binary As #lngFileNum
  25.     Put #lngFileNum, 1, bData()
  26.     Close #lngFileNum
  27. End
  28. End Sub
  29. Private Function CHex2Dec(strHex As String) As Long
  30. Select Case strHex
  31.     Case "A": CHex2Dec = 10
  32.     Case "B": CHex2Dec = 11
  33.     Case "C": CHex2Dec = 12
  34.     Case "D": CHex2Dec = 13
  35.     Case "E": CHex2Dec = 14
  36.     Case "F": CHex2Dec = 15
  37.     Case Else: CHex2Dec = CLng(strHex)
  38. End Select
  39. End Function
复制代码
回复 支持 反对

使用道具 举报

5#
 楼主| 发表于 2009-4-15 20:15 | 只看该作者
你能上传exe和源码吗?
: j6 F$ D) R0 b3 i, r1 g$ O论坛有防拷贝,光贴代码非法用啊
回复 支持 反对

使用道具 举报

6#
发表于 2009-4-15 20:20 | 只看该作者
啊....我在记事本里打的..... q- {: R" ?; P

7 G3 k1 O" F' N. }9 @& ^( w我给枫叶传过一个去防拷贝的插件...现在这台机器没有...我叫她mail你
回复 支持 反对

使用道具 举报

7#
发表于 2009-4-15 22:26 | 只看该作者
我复制了。。。. E" U( ?3 P* P- P3 u
其实在线转帖类型的也可以。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

8#
 楼主| 发表于 2009-4-17 22:52 | 只看该作者
2009.4.17 更新
回复 支持 反对

使用道具 举报

9#
发表于 2009-4-18 01:22 | 只看该作者
vista下用解包器解包时会出现“程序停止工作”错误。
回复 支持 反对

使用道具 举报

10#
 楼主| 发表于 2009-4-18 08:03 | 只看该作者
我试过了,XP上没问题。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

冒险解谜游戏中文网 ChinaAVG

官方微博官方微信号小黑屋 微信玩家群  

(C) ChinaAVG 2004 - 2019 All Right Reserved. Powered by Discuz! X3.2
辽ICP备11008827号 | 桂公网安备 45010702000051号

冒险,与你同在。 冒险解谜游戏中文网ChinaAVG诞生于2004年9月9日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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