分享到新浪微博 分享到QQ空间 打印

[国内改版下载] 美版火红中字增益版发布(更新为更大字库的版本)

感谢再次更新!
顺便问一下,假如一个英文单词原来只有四个字节,我想把这单词换成中文,可那个中文占了6个字节,
怎么办?

TOP

楼上
首先,先尝试能不能缩减一个字,如果实在不行的话就在脚本里面重定向吧。(假设你编辑的是对话)
如果是其他的东西(目录之类)那么我无能为力了

然后是问题:
首先,这个ROM和某引擎改造补丁(http://poketb.com/bbs/thread-14197-1-1.html 中第一条)貌似可以共用,这点我已经测试过了。
但是,貌似这个ROM和以下工具都不通用:
Advance-Text (插入十六进制代码后程序自动转换为西欧字符= =)
Advance-Mart
GBA Item Editor
YAPE (Yet Another Pokemon Editor, 修改PM的属性和图鉴资料用的,因为本人的改版/汉化对象并不是PM,而是东方人形剧

所以请问顶楼的那个预览图怎么做到的,难道真的是直接HEX编辑么?
本帖最近评分记录
  • liuyanghejerry 热度 +5 可以用,而且我已经开始在其基础上进行进一 ... 2009-11-18 14:02

TOP

举个例子吧,Ekans,是阿伯蛇的英文名,中文需要6字节,英文编码只有5字节,不能省字,怎么办?

TOP

其实阿柏蛇其实够用的啦

因为……英文精灵名最长支持10字节+FF
也就是5个汉

技能名最长12字节+FF

TOP

引用:
原帖由 pockmenja 于 2009-11-18 12:47 发表
举个例子吧,Ekans,是阿伯蛇的英文名,中文需要6字节,英文编码只有5字节,不能省字,怎么办?
和我这里的问题差不多
我现在这里YAPE不能用感觉很那啥就是这个原因
YAPE是可以自动修正长度的,在东方人形剧英文版中Ekans的位置被一个叫Suizuka的人形(也就是PM啦)所替代。
改造者就是使用YAPE的自动修正长度功能绕过了这个问题。一般情况下只要少于等于10字节都没问题(中文的话:#386貌似正好5个汉字吧)


这个是原版

这个是改过后的版本,注意图鉴号是一样的,但是名称和属性已经变了

图鉴内容也改掉了

这个汉化是咱自己做的,但是已经实验过这工具不能直接用在字库汉化的ROM上面,直接输16进制代码也不行,会自动被软件转义。= =

TOP

首先提供一个普遍性的解决方案:http://poketb.com/bbs/thread-14382-1-1.html
其次,针对YAPE的字数问题,其实不难解决——嘛,不要太依赖软件了。
既然YAPE能够在字数上绕过某些问题,那就利用它这一点,先以AAAAAAAAA替代名称用YAPE来写入名称,再在ROM里找这个字串的HEX改成你想要的汉字即可。当然,之后不要用YAPE来读取它,以免造成不必要的问题。


想死你们了!

TOP

引用:
原帖由 liuyanghejerry 于 2009-11-18 13:59 发表
首先提供一个普遍性的解决方案:http://poketb.com/bbs/thread-14382-1-1.html
其次,针对YAPE的字数问题,其实不难解决——嘛,不要太依赖软件了。
既然YAPE能够在字数上绕过某些问题,那就利用它这一点,先以AAA ...
这个我也考虑过,但是现在的情况是整个图鉴都需要替换掉,这个的工作量是全386 + 20余敌专用(占用了那些UNOWN的空间)

也就是说基本上所有的名字都要这样换一遍,这个的工作量是不是太大了点?

等咱有时间咱自己写个程序来根据PM名字的对应ROM位置直接写入HEX数据,这样可能会好一点。

但是图鉴介绍又要成问题了(汗)

关于上面的解决方案我已经看过了,但是现在的问题是我手上的英文版人形剧ROM已经是扩容过的而且后面有内容,第一IPS补丁根本就做不起来(最大只能做到16MB以前)第二就算打上了前面的补丁由于后添加的图片的大小增大(显而易见)所以部分图片就放到了16MB之后的位置所以ROM根本引导不能。

(日文本家那边据说已经做出由于超出512MBits(ROM大小超出32M)而不能在实机上玩的版本了,此消息真实性不明)

于是请问能单独做一个中文字库加入IPS补丁么? 最好把中文的字库放在ROM尾。
(看了一下貌似ROM中的中文字库是从0x0D00000开始到0x10ED779也就是总共3ED779(4118393)字节也就是大概4兆的样子,这4兆内容如果直接迁移到普通美版ROM的末尾会有什么影响么?)
本帖最近评分记录
  • liuyanghejerry 热度 +1 字库地址只要发生变化,就得重写ROM的字模读 ... 2009-11-18 17:53

TOP

可是如果硬把英文5个字节换成6个字节,不是会覆盖掉后面的代码么?

TOP

引用:
原帖由 pockmenja 于 2009-11-18 20:16 发表
可是如果硬把英文5个字节换成6个字节,不是会覆盖掉后面的代码么?
可以从字节数多余的名称里再省出来啊,或者整个重定向也行。
本次的中字增益版本身就是扩容的,后半部分完全可以用来做这些


想死你们了!

TOP

本人比较愚笨,能否详细说明一下:“从字节数多余的名称里再省出来啊,或者整个重定向也行。”如何操作?

[ 本帖最后由 pockmenja 于 2009-11-18 20:44 编辑 ]

TOP

比如原版是AAAAAAFFBBBBFF,你就可以把翻译后的写作AAAAFFBBBBBBFF——当然,这是建立在游戏按照数FF来读名字的方法,如果游戏用指针定位了,或者用固定字节数计算,就另当别论了。


想死你们了!

TOP

嗯。。。本人还是不大明白。
比如MEW(梦幻),我是指游戏中单独的精灵名称,(就是在战斗、菜单里显示的)
它的编码应是:XX XX XX FF,翻译成中文,编码为:XX XX XX XX FF,这样就多了一个字节,
硬加上去的话不就会占掉后面的字节么???
。。。难道是把这个名称的地址换掉??怎么办???

TOP

举个例子
比如两个连续精灵名字是
AA BB CC DD和 DD EE
那么在英文rom中你会看到
AA BB CC DD FF 00 00 00 00 00 00 DD EE FF 00 00 00 00 00 00 00 00
其中
AA BB CC DD FF 00 00 00 00 00 00 这一段的范围内始终是第一个精灵的名字的范围,只要不超出就行
后面的就是第二个

如果多一个字节也没问题,顶多成

AA BB CC DD XX FF 00 00 00 00 00

拿Mew来说
在英文版的0x24655D会看到C7 BF D1 FF 00 00 00 00 00 00 00
你就算改成“梦幻”:09 66 05 50 FF 也没问题的,因为后面的那串00只是填充,并不属于下面的名字的一部分

精灵名称目前咱只知道怎么重定向整个列表的指针和地址,但是长度不知道怎么变,这个要看反编译rom了……
所以重定向精灵名称列表目前意义不大

[ 本帖最后由 roywillow 于 2009-11-18 22:40 编辑 ]

TOP

哦!00 原来是这个意思!谢谢啊!
本帖最近评分记录
  • roywillow PT币 +10 明白就好~ 2009-11-20 19:23

TOP

今天尝试把字符码表导入YAPE,无奈YAPE貌似不识别双字节
于是果断到在作者帖内提建议去了
http://www.pokecommunity.com/showthread.php?p=5337950#post5337950
嗯,一个个替换的话整个图鉴的工作量太那啥了OTL
于是汉化先放一边 = =

感觉第三版的字库位置又变了?
请问一下定义字库的指针在哪里,我看看能不能直接转移字库……

TOP

第三版字库扩充了,当然会有所变化的吧

那个似乎应写成\h01\h00这种形式吧。国外软件基本上通用这种写法的
0x写法倒还是没注意到

[ 本帖最后由 roywillow 于 2009-11-21 17:13 编辑 ]

TOP

引用:
原帖由 roywillow 于 2009-11-21 17:11 发表
第三版字库扩充了,当然会有所变化的吧

那个似乎应写成\h01\h00这种形式吧。国外软件基本上通用这种写法的
0x写法倒还是没注意到
嗯,但是原来charmap.ini里面的格式是

0x00 = " "
等等……

的确就这工具是这个样子的……

TOP

一个关于汉化第三版时遇到的问题

菜单中的几个选项,比如“BAG”、“SAVE”、“EXIT”的代码不都是连在一起的么?
为啥唯独“POKEMON”这个选项离其他选项那么远呢???
还有,“BAG”后面应该接的是训练师卡片那个选项(在游戏中就是主角的名字)可是
“BAG”后还有5个字节的代码(XX XX XX XX FF),
我尝试改了改,发现对菜单毫无影响,那5个字节是什么啊?

TOP

引用:
原帖由 nemoma 于 2009-11-21 17:06 发表
今天尝试把字符码表导入YAPE,无奈YAPE貌似不识别双字节
于是果断到在作者帖内提建议去了
http://www.pokecommunity.com/showthread.php?p=5337950#post5337950
嗯,一个个替换的话整个图鉴的工作量太那啥 ...
12pt字库的指针在Rx20F6B8h
10pt字库的指针在Rx20F6D0h
均占用4字节,另外编码高字节上限在20F662h,占用1字节,目前支持到1EXX,可以通过修改这个立即数,往上调整

TOP

[Start Menu]
BAG=41A001
Player Status=41A049
SAVE=41A06F
OPTION=41A0B7
EXIT=41A0F9
POK镸ON=419FBB
这个我是从A-Text中找出来的
说不定能用上

TOP