冒险解谜游戏中文网 ChinaAVG

标题: 【汉化方法】汉化 [断剑] 等几十个经典AVG的新思路 [打印本页]

作者: shane007    时间: 2008-10-11 18:54
标题: 【汉化方法】汉化 [断剑] 等几十个经典AVG的新思路
在没有源代码的情况下,汉化最难的地方,在于修改主程序,使其适应双字节的中文输出,还有文本保存文件的格式分析也是一个难点。
; R5 N3 Q: f* y% n3 o
/ `* @& P9 x  z6 l# N, n6 ?4 I8 \
不知道大家是否注意scummvm这个经典AVG游戏的模拟器?这个模拟器是完全开放源代码的。
6 S+ w% L7 G& z. _, ]. Q, A4 Q$ b$ d% m开放源代码意味着什么呢?意味着我们拥有了scummvm所能模拟的所有AVG游戏的源代码。  Z  H. R/ l% ~8 A4 T
有了源代码可就简单多了,主程序修改就容易多了,文本保存文件的格式分析也完全可以通过分析源代码和动态调试来实现。剩下的建立中文字库也不是太难,有了源代码什么都好办。% l/ B& T* c% P. |* u0 [# M0 T8 G

4 r# y/ a+ N0 B) w: v. C4 l$ Cscummvm可以模拟很多经典的AVG游戏,比如断剑1,2,用我说的这个方法,汉化断剑1,2都能成为可能。这些工作只要对中文字库结构有些了解的一般程序员就可以完成,完全不需要破解。! i6 X6 k  ]: T0 ?/ j9 v6 E

' j7 ]  D7 X7 R/ _# a4 ?* t* Z据我所知,scummvm所能模拟的游戏还在不断增加之中。
" u: R# u2 w  O8 ^
# |0 E( p6 h. Z) A2 Fscummvm网址: }+ r0 R3 ^8 z2 l( x
http://scummvm.sourceforge.net/downloads.php
$ ?+ R! @  i* e% L# l" ]! P; }  `3 q' ~5 n9 m
断剑等游戏的文本解包工具; C1 L- ^* t, F
http://oezmen.eu/gameresources/
作者: 田横    时间: 2008-10-11 22:07
有意思,抽时间看看。
作者: shane007    时间: 2008-10-11 23:09
引用第1楼田横于2008-10-11 22:07发表的  :. y" T7 g8 i( v/ A+ l5 q- L9 B6 I2 M
有意思,抽时间看看。

# |# X9 N# ^8 Q* I- M5 m# S# ^需要什么资料我可以帮忙寻找,scummvm支持的游戏可以在UG找到。0 k: Y+ a  g6 B) J
" ?# k: @: @  L. S+ o
http://www.underground-gamer.com ... 0&searchtitle=1
作者: c98008021    时间: 2008-10-12 08:09
希望是一个大福音,掀起汉化的新高潮。 [s:1]
作者: hermit27    时间: 2008-11-29 15:01
引用第2楼shane007于2008-10-11 23:09发表的  :3 S5 y' [' X- Z' y- c9 W
需要什么资料我可以帮忙寻找,scummvm支持的游戏可以在UG找到。
: h6 K% E. \! K$ |http://www.underground-gamer.com ... 0&searchtitle=1
這站已不能註冊新用戶了.
作者: shane007    时间: 2008-11-29 15:26
引用第4楼hermit27于2008-11-29 15:01发表的  :7 i; w+ W6 z8 G% a! u, }

" G, `0 }9 R' \這站已不能註冊新用戶了.
7 G6 ~6 U, r- K6 v" A! x% T

: G" e! Q" x- O这个容易,看下面的帖子,把这个工具一直开着就行。开放了它会告诉你的。
9 _% l4 G/ \. J6 m希望你能搞定scummvm,造福大众。从技术上来说,你应该完全没问题的。& X+ Y4 Q1 s! d1 ^' f8 J5 ^( \

- [0 N6 I8 Q& T8 ]- zhttps://www.chinaavg.com/read.php?tid=11914
作者: brother_ichi    时间: 2008-11-29 15:29
提示: 作者被禁止或删除 内容自动屏蔽
作者: shane007    时间: 2008-11-29 15:32
引用第6楼brother_ichi于2008-11-29 15:29发表的 : ; L- g7 k3 ^. Y! t: A( M
scummvm支持的游戏之中,时至今日还有玩家感兴趣,想玩汉化版本的,最有价值的大概也就只有《断剑1?》了吧? 1 Q+ G* ], L) M/ X7 F* A
! b" P/ s: c6 R- m* p0 L
Lucas早期的AVG很著名,但是画面太差了,操作也很繁琐。 . U- U  L; |" t% h2 H4 M! w
例如《猴岛1、2》很著名,但是那样的繁琐的操作和简陋的画面,加上英文俚语双关语之类的大量运用,翻译难度估计不会比《冥界》低,草草译出来的话精彩程度大减,缺乏了对话的乐趣,加上游戏本身又简陋,可能很难引起玩家的兴趣 7 _* f9 ]+ k4 B& ]

' q8 ^' a. w4 D) r.......

, h. L6 g8 X+ B3 V
* o3 F/ K4 e5 ^4 Y8 P其实,不超过五个就是很大的数目了。呵呵。
: J# `) f- z( [- J! @我个人对Indiana Jones系列挺感兴趣的。
作者: hermit27    时间: 2008-11-29 15:52
引用第5楼shane007于2008-11-29 15:26发表的  :
3 d6 u  O4 B) X. L这个容易,看下面的帖子,把这个工具一直开着就行。开放了它会告诉你的。
  G6 S; m  Q% X4 `% a希望你能搞定scummvm,造福大众。从技术上来说,你应该完全没问题的。
; c1 `  f: ~: l' z.......
  {( j/ y7 }6 ~* F- w
scummvm 已順利編譯完畢並可執行. 正在找遊戲.; n, s& m. M6 @# U* ?
目前只執行了 drascula (Free 的), Indiana Jones (Demo).
作者: shane007    时间: 2008-11-29 16:01
引用第8楼hermit27于2008-11-29 15:52发表的  : 2 Z4 J4 i5 H" |8 i6 Z0 V4 P
4 z/ d  D( {5 f6 M9 R# B1 L/ E

4 S6 c# A, H1 W6 ~# hscummvm 已順利編譯完畢並可執行. 正在找遊戲.
8 U/ c. Q6 `7 ?- H' P% e3 a: d, |, u1 E目前只執行了 drascula (Free 的), Indiana Jones (Demo).
6 t+ p. [+ Z1 f) z5 K: @& L$ H$ z
1 {8 N0 V; b' o5 j- j
是吗?好神速啊。 ' Z2 {, Z, ]5 c
其实好多公开的BT站点都有scummvm 的游戏的,如http://isohunt.com/torrents/?ihq=scummvm+
, u# \$ Q( m- X5 c不过UG比较全。 scummvm 的游戏很少一些有中文版的,你千万不要重复研究了。) S2 T7 }, W' o* b0 ?
" x  O( c! z1 X1 C) X
给你个找BT种子的工具
. O0 Y( U& E5 z4 v- Ihttp://www.convivea.com/download.php?id=2
作者: brother_ichi    时间: 2008-11-29 16:20
提示: 作者被禁止或删除 内容自动屏蔽
作者: shane007    时间: 2008-11-29 16:41
引用第10楼brother_ichi于2008-11-29 16:20发表的  :3 |  I( [1 ?+ M* r' t. J8 Q$ M
要不就先搞《断剑1、2》呵呵,很多人期待了这么久了4 z% E, A& j/ G$ f- ?! W

+ y  w7 U9 p3 k5 ]( A4 i& T中文版的好像有《The Dig》?而且还是台湾官方的汉化?也可能记错了

- C1 l+ b7 _! g+ ]' Y# C  bThe Dig,凯兰迪亚系列,猴岛3,4有中文的了
作者: wqzss    时间: 2008-11-29 20:37
断剑1,很不错的游戏。开创的奇怪法语口音成了该系列的招牌。
作者: fengjing74    时间: 2008-11-29 23:11
断剑 系列汉化就好了
作者: hermit27    时间: 2008-11-30 01:22
UG 很多種子都死了....
作者: shane007    时间: 2008-11-30 09:51
引用第14楼hermit27于2008-11-30 01:22发表的  :
7 E# Q$ {. k# {UG 很多種子都死了....

; Q' p8 ?7 [5 m8 K( O) H3 Sscummvm的种子都活着啊,最多的有57个呢。3 H% K0 }) m& w/ Y( H3 u
网址如下:  u$ d" V4 J* b% Z! g1 ~9 V
http://www.underground-gamer.com ... &h=8&d=DESC
! u. R- I' `( I8 i
- |5 J% K% {  p1 J& m% J其他的可能有死的,不过过段时间会有人补充的。还可以发request求。
作者: 慕容枫叶    时间: 2008-11-30 10:02
…………你给的网站需要注册………………
作者: shane007    时间: 2008-11-30 10:03
引用第16楼慕容枫叶于2008-11-30 10:02发表的  :/ T; |; ]( h# u
…………你给的网站需要注册………………
! t8 |/ }) S! ?3 g- Q6 h
这个容易,看下面的帖子,把这个工具一直开着就行。开放了它会告诉你的。0 N: t+ U4 R1 L3 Z
https://www.chinaavg.com/read.php?tid=11914
作者: hermit27    时间: 2008-12-2 02:10
scummvm 其實並不是模擬器, scummvm 是一個底層, 然後有一些熱心的玩家去解析遊戲內的檔案格式, 然後寫個解析的程式將不同的資料抽取出來, . R9 T  ^& B. O& O" c
然後再依照遊戲去寫不同的 Game Engine, 目前完成及未完成的在這 http://wiki.scummvm.org/index.php/Engines,
" @" T( x0 r% m也就是說, 只有在列表中的遊戲才有辦法去改變他秀字的程式碼, 不然你就要自己去解析遊戲資料然後自己寫 Game Engine.0 o$ X. L6 w& l7 h* j% p9 |' }
為何我如此肯定呢, 因為我找到 The Secret of Monkey Island - 猴島小英雄,
  s$ \: j$ u! R" `* {) S& R' J用 scummvm 進遊戲時就卡在密碼輸入畫面,# ?: r2 W% x/ ?. R5 T5 O7 l. X! R3 D
但是我如果直接使用 DosBox 執行裡面的 .exe 檔 (已破解), 就可以直接進入遊戲裡,
6 K( ]9 g! {4 H5 N+ g9 D; a除此之外 scummvm  程式碼裡也可以看出一些 Game Engine 的倪端, ! `5 a8 A. p5 M2 J! o, \6 d+ a' f7 H

0 r  x( ?! E& `; G( \+ g其中代號 Game ID GID_CMI 已有中(繁中)日韓的 2 bytes 文字解碼, 只是 CMI 是哪套遊戲猜不出來,
( N! q( }; i' W; u: w我覺得可能是 Chinese Monkey Island, 所以應該是猴島3 吧?- e1 b, Q& [: \" y" t7 b, ]7 L, D! p
當然, 我也有看到大家最期待的斷劍 1 & 2 的 Game Engine.
  _8 m( H0 ?5 P: `" s) x6 w: J
scummvm 這個社群是禁止討論有關破解及侵犯版權的事, 他們也不會提供遊戲給你, 他們只是一群熱心想要讓大家能夠重溫舊夢,
( ]; S2 \8 k0 n' y) q並且可以自己再加強遊戲, 比如說全程語音, 更好的音樂...等等.
! e. @, A4 s& I) @( D# @) ]) [7 M) H' \尤其是畫面, 強化後真的有差, DosBox 完全不能比.  G) }9 Q3 @3 O. G0 y9 {
! y0 Q7 @: S& A+ U9 v$ C
強化前9 t1 h7 _4 i+ L- _+ y3 I
[attach]10777[/attach]
+ N# s  H5 x7 c- q: V2 \% L* l. w$ Y: ?: X/ F4 Z. g
強化後
- u' t- e9 {3 V [attach]10778[/attach] 
作者: shane007    时间: 2008-12-2 06:20
引用第18楼hermit27于2008-12-02 02:10发表的  :7 i5 a& @3 K/ d
scummvm 其實並不是模擬器, scummvm 是一個底層, 然後有一些熱心的玩家去解析遊戲內的檔案格式, 然後寫個解析的程式將不同的資料抽取出來,
% u5 g. ~- U4 b7 x2 n& z然後再依照遊戲去寫不同的 Game Engine, 目前完成及未完成的在這 http://wiki.scummvm.org/index.php/Engines,/ ]- H/ b* `( }# e1 K
也就是說, 只有在列表中的遊戲才有辦法去改變他秀字的程式碼, 不然你就要自己去解析遊戲資料然後自己寫 Game Engine.8 b' R1 {+ Q6 N$ g; W
為何我如此肯定呢, 因為我找到 The Secret of Monkey Island - 猴島小英雄,
9 {3 N, _( N+ G& {; Y用 scummvm 進遊戲時就卡在密碼輸入畫面,8 V0 H0 n" ^4 C+ B5 x7 g7 q
.......

6 S4 H5 L' m2 h2 `的确是个底層,它只使用游戏的数据部分。
7 l$ f8 P" k& p  b光SCUMM一个引擎就支持很多游戏的。
作者: hermit27    时间: 2008-12-3 17:44
我知道 CMI 是什麼了, 應該是 The.Curse.Of.The.Monkey.Island 猴島小英雄3 - 猴島的詛咒,
& K5 D" z6 L* [& N( k2 x& j8 N; l- n; f, V) A+ M: K+ r2 k6 P
Indiana.Jones-The.Last.Crusade 已順利導出/導入本文,
0 x4 b/ N" _& j7 N正在找 The.Curse.Of.The.Monkey.Island 裡的中文字型 chinese.fnt 這個檔案,
5 k6 y& |7 f, v% t6 e- m" Y說不定能以改最少程式碼的方式完成漢化.) y5 X3 Y& ]8 i8 b; @6 i
6 M+ }) S9 O' b" e' ]1 F
scummvm 這個模擬器我也加了 Chinese (China) 的選項, 預設的只有 Chinese (Taiwan) 而已.
作者: shane007    时间: 2008-12-3 20:22
引用第20楼hermit27于2008-12-03 17:44发表的  :4 ?( H$ M& Q+ N$ l
我知道 CMI 是什麼了, 應該是 The.Curse.Of.The.Monkey.Island 猴島小英雄3 - 猴島的詛咒,: S' @6 L+ u, V' E
: a" Z) I( j1 J+ H& y6 M7 @
Indiana.Jones-The.Last.Crusade 已順利導出/導入本文,
. ^: K$ V' N  y0 D9 e; r正在找 The.Curse.Of.The.Monkey.Island 裡的中文字型 chinese.fnt 這個檔案,( Z; R5 ~& z1 N, A; ?
說不定能以改最少程式碼的方式完成漢化.
9 [: l( i5 _. _# a; G' Z1 |" p. {( Z.......
1 q& q" E7 J) m' O# b$ J8 v7 _# j
猴島小英雄3 有官方中文版了,不要再弄了。; L& G! b; A+ I" l! G
先集中搞Indiana.Jones系列吧。4 \% d+ ~9 p- t8 k9 t2 _1 e8 K& \

; [, k- w+ e. W2 s* U1 p. L2 k! ~我的想法是这样的:
. j$ T. y1 I- J把文本弄成外置的文本文件,一行英文一行中文。
$ v. G/ ?5 ?7 j2 ?) t英文显示函数里接受到英文的字符串以后,到外置的文本文件找匹配的中文。  w( N$ x5 `& _
然后调用中文显示函数在原来的位置显示匹配的中文。1 f+ m' s! q  V' U! u1 ~
英文显示函数的处理全部跳过。
1 o8 j1 |# i8 |5 Z4 A' f+ E' n  O$ `7 f2 O$ T- a
中文字型好办,我有TTF转任意点阵字库的工具,以及sample源代码。5 a# ]7 D3 s0 N4 I  D8 Y: _9 q
等会我发上来。6 b/ h, Q; f( u* z
https://www.chinaavg.com/read.ph ... page=1&toread=1
作者: hermit27    时间: 2008-12-3 20:45
我知道 猴島小英雄3 有中文版, 所以我沒有在弄, 我是在弄 Indiana.Jones,
# x, N7 G6 I9 S5 g, j: A6 S- }他使用的是 Big-5 編碼, 目前已可顯示中文, 不過...字太大...
! O9 J2 J9 L& [* Q) j% e; [4 R現在需要的是 Big-5 編碼的 8x16 字型, 中文縮到 8x16 應該會很難看吧... [s:15]
作者: shane007    时间: 2008-12-3 21:36
引用第22楼hermit27于2008-12-03 20:45发表的  :, F$ \0 C: q3 X# N$ N
我知道 猴島小英雄3 有中文版, 所以我沒有在弄, 我是在弄 Indiana.Jones,
- ]4 A& P; @2 b8 t+ M5 d7 B他使用的是 Big-5 編碼, 目前已可顯示中文, 不過...字太大...
: z4 @0 Z* G  A7 [2 ^現在需要的是 Big-5 編碼的 8x16 字型, 中文縮到 8x16 應該會很難看吧... [s:15]8 F' x# O  C" L, H3 R1 x! G' V
; v( x' b$ s; J. X8 ?3 y
[attach]10791[/attach]7 p5 T& |! ^' f3 T9 t
.......
  R& f# I1 y* i* ]/ j& S8 K+ M
我刚发的一个工具你看一下,可以生成16x16 字型。
作者: hermit27    时间: 2008-12-3 22:13
問題不是 16x16, 問題是顯示文字的畫面高度只有 8, 他下面有一排黑色空白, 那些是顯示 Item 名稱用, 1 O( w* c  ?2 c
所以也不能把字直接放大, 然後所有的字都往下拉, 這是不行的.. ?4 x' F6 n5 _2 s0 F

: d3 h6 Z: K: P+ j; A7 g現在的問題是, 如何讓中文字在 Nx8 的情況下顯示, (N 可以是10, 12, 16...等等, 但是高度只能 8).: Q( u5 I" V1 V. G
我有忘了 NDS 上漢化的最小字是多少.
作者: shane007    时间: 2008-12-3 23:03
引用第24楼hermit27于2008-12-03 22:13发表的  :+ Z2 d* L3 J! \$ u" l/ M
問題不是 16x16, 問題是顯示文字的畫面高度只有 8, 他下面有一排黑色空白, 那些是顯示 Item 名稱用,
$ C! H9 s) H4 R* k3 l1 Q( {6 ?所以也不能把字直接放大, 然後所有的字都往下拉, 這是不行的.) P" L$ c5 b, Y$ t: @! m3 _

( j1 R5 d7 b2 {! i5 a現在的問題是, 如何讓中文字在 Nx8 的情況下顯示, (N 可以是10, 12, 16...等等, 但是高度只能 8).
% B5 B: A. i# {7 [. X我有忘了 NDS 上漢化的最小字是多少.
2 w- D4 K, q3 K' a  Z# j
先解决对话的显示吧。对话显示的地方比较宽裕。
作者: hermit27    时间: 2008-12-3 23:08
對話在畫面上方黑色部份, 一樣的秀字方式. 所以是沒問題的, $ a6 W6 J( C  \' u9 e7 a, f
至於字型大小的問題...嘿嘿嘿...我想到一個妙招, 等我試出來再貼上來...
& @5 A3 v0 ~; E) J8x8 或 10x8 的中文字實在是太小了...視力 1.0 可能也會變 0.1.
作者: shane007    时间: 2008-12-3 23:13
引用第26楼hermit27于2008-12-03 23:08发表的  :) Q/ Z" I& O; z9 c8 `
對話在畫面上方黑色部份, 一樣的秀字方式. 所以是沒問題的, : w; Y4 @" }1 ~' x5 D7 T1 K0 U9 _2 J
至於字型大小的問題...嘿嘿嘿...我想到一個妙招, 等我試出來再貼上來...) K& ~" r8 g, J  C0 G- e+ ]: h$ K
8x8 或 10x8 的中文字實在是太小了...視力 1.0 可能也會變 0.1.
7 t7 K2 q# S$ |* y5 u
拭目以待。。。
作者: hermit27    时间: 2008-12-4 01:29
唉...失敗, 除非大改底層, 算了, 還是從小字型著手好了. sigh...
作者: shane007    时间: 2008-12-4 06:23
引用第28楼hermit27于2008-12-04 01:29发表的  :' I# v* w/ o5 a2 W8 R9 V
唉...失敗, 除非大改底層, 算了, 還是從小字型著手好了. sigh...

9 n! T" w1 c# d2 \) B8 e加油!
作者: shane007    时间: 2008-12-17 11:27
hermit27:! [$ h3 N& z; S; K& o2 e+ G) f
) J" P/ A, H2 \6 i; V% u
最新进展如何?
作者: hermit27    时间: 2008-12-17 15:11
這幾天都在弄 scummvm  scalex2, 不過核心要大改才行, 改了很多, 越改越覺得工程耗大, 所以決定不做,
) R, {  q& [  M. J+ OGBK 8x8 字型也找不到, 試了結果 12x12 的字型效果較好, 還可以接受, 字不會都糊在一起,; G3 @+ e- F: D! t
雖然指令欄會被蓋住一點, 不過滑鼠刷過去就會更新, 所以勉強可以接受,% o) `& N6 A# p. ~
不過翻譯了幾句試試之後, 又遇到衝碼問題, 因為遊戲內有特殊字元做控制碼, 和中文編碼會有衝突,
# ^" z; c3 _0 E: q7 G* F& s( Z我還在想要怎麼改才好, 畢竟這遊戲太老, 所以當初也沒考慮多語系的問題.
! y2 Z6 |0 o) F+ w& ^) _+ y- G如果 GBK 不行的話, 我就改用 BIG5 試試, BIG5 碼的範圍較小.
作者: shane007    时间: 2008-12-17 22:25
引用第31楼hermit27于2008-12-17 15:11发表的  :  N2 v4 J5 M8 p4 s7 s; \! R
這幾天都在弄 scummvm  scalex2, 不過核心要大改才行, 改了很多, 越改越覺得工程耗大, 所以決定不做,. h! Z1 O5 z' \. m/ P, S
GBK 8x8 字型也找不到, 試了結果 12x12 的字型效果較好, 還可以接受, 字不會都糊在一起,6 m, c+ s- j' ]$ M1 m% @# j. ^2 t- H
雖然指令欄會被蓋住一點, 不過滑鼠刷過去就會更新, 所以勉強可以接受,5 r/ A2 D3 V3 N. n" P; \2 F
不過翻譯了幾句試試之後, 又遇到衝碼問題, 因為遊戲內有特殊字元做控制碼, 和中文編碼會有衝突,
; K5 W# z1 @& }5 D5 b我還在想要怎麼改才好, 畢竟這遊戲太老, 所以當初也沒考慮多語系的問題.
  e% ~+ P% \. f3 ?% |.......

; E, @( z4 m* Z/ z2 ]' f) t原来还有控制码啊。这我倒没有注意到。
7 b: ?/ q& d) ?: N% h- j' S8 l4 o这个游戏不行的话,先挑个简单的弄吧。




欢迎光临 冒险解谜游戏中文网 ChinaAVG (https://chinaavg.com/) Powered by Discuz! X3.2