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

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

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

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

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

静物2 汉化分析专用贴

老外放出了一个静物2数据文件样本。 7 g! b9 f7 _8 _+ q$ _; u( g! W
http://rs706.rapidshare.com/files/216482719/Sl2data.zip / n4 x, Q  Y3 \/ B7 k; i- e% a, _9 |
有巳さ呐笥芽梢匝芯恳幌隆? 3 |5 N+ \% n% Y# H9 J0 r. a* z
" |2 C' ^9 ~% ^  @) T5 E
-------------------------------------------------- * j' u1 m* @; F- z) B& g2 ?* ^' i
2009.4.4 第1次更新
' T! K& k* @+ z  _老外放出了静物2包文件的异或key,据说解密以后文件的格式很简单。 9 v4 |$ ~5 s7 O. \  F
2923BE84E16CD6AE529049F1F1BBE9EB
$ _' S0 ^6 M9 _7 E7 |# y% @3 ?0 b5 g0 p, O
--------------------------------------------------
0 P0 F8 s, X) z; h1 J2009.4.4 第2次更新 - n0 c' A1 b# e; s" X4 g5 @, g
测试了一下上面的异或key,结果正确。解密后的文件为不压缩的简单格式包文件。 ! l# M2 d) C" z. c8 f+ G& }
放上异或解密工具,在工具包里有一个例子,异或key就在key.txt中。
2 W1 s" K# t0 Y6 L  Q/ u6 P" a  S- D: n  U2 K6 {* ~. s
-------------------------------------------------- ) g4 O9 v. l& O2 K
2009.4.4 第3次更新 ( ^, s6 R8 w! F9 O/ O( K
静物2采用wild-dna公司开发的3D引擎。网址如下。 / I5 p  T2 A. c$ F: O
http://www.wild-dna.com/main.html 3 t& v/ l8 h0 t, a
http://www.gamecostudios.com/xcengine.html
% o3 \5 U# t( R* {" o
$ Q3 g3 i3 M) s--------------------------------------------------
: k  ~0 T2 Y- M- R. |/ C+ _! N2009.4.8 更新
: O& ]8 M, G1 W& ?& [7 @2 @老外公布了静物2包文件的格式。
6 X$ d4 N6 i/ G  j0x04 //"GMGB" 5 {, K( K* L& a+ h
0x04 //Number of files
7 O$ r$ ?* u9 P9 c5 T8 \
; k1 Y9 h2 s. S$ l% s5 e: ~2 @for each file { 9 {  }9 ~# A3 W6 ^6 P$ I
" a1 J. ~  Z' c6 e
0xX path and filename 1 c% C5 T, ]8 J: Z$ X0 G
0x01 0x00 ' w' Z1 M; E# T" C6 i0 r4 v" t
0x04 file length , y. Z* P/ Y% s$ U7 e
0x01 0x00
4 w4 F' x0 H& j$ a# F7 ?}
- t& Z' a0 _3 A! _- w/ m# ~9 h$ x! n- \' r6 V8 I9 q4 c" A/ f) L
--------------------------------------------------
4 E* u# _" |% [* ]- y1 Q4 d9 O! [2009.4.17 更新
7 v0 U/ C3 T+ P( F老外动作很快,通用解包器quickbms发布以后很快发布了静物2的解包脚本。
9 T0 M6 M7 y+ O: D7 z, F! J用法如下
) X5 s2 H4 W& B/ r6 w- zquickbms.exe stillife2.bms c:\Sl2data.dat c:\folder 2 S- K" {" ~6 Y3 T$ H4 u# Y

8 B+ l+ u% K0 a/ ~% Y% ^( l2 j- `7 l* |7 d-------------------------------------------------- , u( U) j/ i; Z  a( K% L  N3 k3 \
2009.5.16 更新 4 b! G# n+ Z& R  d
最近又有一些细小但是可能比较重要的发现。
& Z  i3 ?8 g5 S用filemon跟踪了一下发现这个游戏支持读取解包后的字体文件Sl2fnt.dat。 ! `# W: k' ^- \  M/ T) K2 H- i
第2个发现可能很重要,我把Sl2fnt.dat改名后发现游戏竟然能正常运行,此时使用了一种奇怪的字体。此种字体和原来的字体明显不同,并且显示有些不正常。我怀疑是某种系统的TTF字体被强制用不正确的参数显示而导致的。如果真是这样的话,我们无疑看到了一丝汉化的曙光。 $ ~  P( Z2 @' D# D& }: R3 g" V
弄清楚这谜一般的字体来源是接下去要研究的课题。
( q9 C' C9 p8 K+ z! n下面是此字体画面抓图。
9 \4 A; K5 t$ x  d
6 Q, l7 \" |8 Q( n) f
& r0 X1 u" d7 C$ T-------------------------------------------------- 7 x+ J" a4 x! D8 @  _" W3 d7 v
2009.6.26 更新
, u; n9 J1 l+ c( I5 N" h: T经过老外的分析,把Sl2fnt.dat文件删除以后,游戏会自动寻找系统字体arial.tff。 + R# q9 F! R& b+ K% d, \) o
老外还放上了清晰的抓图。就是说我们目前已经可以把静物2转化为一个使用TTF字库的游戏,如果有办法HOOK显示函数的话,也许可以用比较简单的方法实现汉化。
% ^% p$ L' p2 O6 `放上抓图
+ d! e! @; K8 }
# N, F) q& t7 J- O  S' F6 g+ Q' K6 U: ~# {  N
-------------------------------------------------- - C, u5 T  T6 b4 A  x" x/ \* ~
2009.6.27 更新 4 Y  i; L" ^' ^* x" H% G
我在另一台电脑上试验了一下,可以显示出正常的英文。
1 w5 K: Q0 |) Z8 G; C& S+ _我用上面的异或工具解密了字幕文件Sl2data.dat,然后写入一个中文字,再用异或工具异或一次。发现只有这个字的低字节被显示出来,高字节被过滤了。
# l% {1 p  K6 t$ j/ f1 |我觉得分析到这里基本可以知道实现汉化的方法了,就是用OD分析一下,找到那个过滤点,使游戏一下子读取2个字节,这样游戏应该就能显示出中文。
8 b% I% z- N" q4 m$ G$ m肥牛如果有时间的话,希望能尝试一下。拜托了。
$ _2 `: _% z/ `# J' B, z需要修改的可能是xcEngine.dll这个文件。
( r0 y3 Y+ v  t, b! p' o
" @) D5 ?/ ^$ [' y抓图如下,显示出来的是 汉 这个字的低字节部分
# A3 w( o* |, z8 C& X7 i8 R! s) \% _; Q( E

. [' l5 |1 {- g3 o9 E0 o+ W--------------------------------------------------
" s: r. u2 C$ Q. b! C" y2010.2.2 更新
( C% c5 W7 x9 b6 Z我电脑上的静物2,在一开场2人打完电话以后,就会崩溃。1 T" \6 x  S$ R& N  O5 k3 i2 c
研究了一段时间,发现可能是我显卡较老,只有128M显存的缘故。$ @/ V- O" D2 b7 L& J
把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老大检查咯
# B! t: t; W3 l9 ^1 p: `% d0 Z那个提取的方法还是和之前那个riper一样就可以了吧
# J1 k" [' n* Y2 x
  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和源码吗?( h; }8 Z4 t$ s( C% C
论坛有防拷贝,光贴代码非法用啊
回复 支持 反对

使用道具 举报

6#
发表于 2009-4-15 20:20 | 只看该作者
啊....我在记事本里打的....
( A3 @2 L2 P8 s" s, C% L/ u9 N" l2 x; v5 N: l; ^0 C% i
我给枫叶传过一个去防拷贝的插件...现在这台机器没有...我叫她mail你
回复 支持 反对

使用道具 举报

7#
发表于 2009-4-15 22:26 | 只看该作者
我复制了。。。: D. M" K4 J( Q  }- a* W8 ]; l) G
其实在线转帖类型的也可以。

本帖子中包含更多资源

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

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日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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