找回密码
 立即注册
查看: 1512|回复: 0

关于另类模式制作的细节修饰问题

[复制链接]
发表于 2013-6-7 18:13:14 | 显示全部楼层 |阅读模式
       最近有不少朋友常常问及一些另类模式制作的细节修饰或修改问题。总结了一下,主要有以下几方面的问题。
⒈对TBL文件的修改问题
  TBL文件主要是指针对string.tbl、expansionstring.tbl和patchstring.tbl三个文件的修改,这三个文件分别含盖了原版、资料片及后续补丁的游戏对话、属性等等的所有内容的写屏信息。在另类模式制作的过程中,我们或多或少都会与这三个文件打交道。在修改的时候,不少朋友总是说改不了,或者改了之后会显示不正确,甚者整体显示都出现错误。那么,是什么原因导致出错的?又该怎样修改才能正确无误呢?
  首先,我们要明确TBL文件的主体内容是索引键和对应的键值,这些索引键和键值是有顺序的、一一对应的组合,因此修改时不要随便在中间插入新的索引键,不然游戏里的显示就很可能会出错。
  其次,键值是采用Unicode编码的,其体就是UTF8编码,因此修改时要注意编码的转换。
  还有,要知道三个文件的优先级,具体就是在资料片里(现在普遍的朋友安装的都是资料片),patchstring.tbl优先最高,expansionstring.tbl次之,也就是说,如果你要新增某个索引键和键值,你可以在string.tbl、expansionstring.tbl和patchstring.tbl任意一个文件里添加,但不一定都能够显示,所以新增的索引键一般都是在patchstring.tbl中添加的。
  最后,这个修改操作跟操作系统有直接关系,修改出问题的这些朋友都是Windows XP等的支持多语言的平台。修改时在Windows98平台下效果最好,很少会出现只显示一半内容、问号、某些单字或符号不能显示等等的问题。原因可能是Unicode的版本问题,这个游戏支持的版本大概是Unicode
  v1.1,应该是早期的版本(可能吧?),而像XP这样的较新的平台号称支持多语言,支持多语言内码页转换,而且它Unicode版本支持有好几个,可能错就错在这个多字上了。不管原因如何,但事实就是如此。
  以上几点是大家在修改时要明白和注意的。下面说说修改时所要用到的工具。
  Afj Tbl Edit,这是普遍在用的工具,有汉化版本,直接对TBL文件进行查看修改的工具。
  BGconv,这是内码转换工具,能对BIG5、GB2312及UTF8三种编码进行相互转换。说到内码转换工具,本小姐最推荐一个更小的工具wapschool,它只有22KB左右,能转换十种内码,不过它只能进行文件转换,需要JAVA虚拟机支持,但确实好用实用。
  UltraEdit、EmEditor和EditPlus,这三个工具都是功能较强的文本编辑工具,对于查看和编辑导出后的TBL内容文本必不可少,尤其是在Windows 98平台里。
  哦,对了,大家不要用Windows的写字板查看导出后的文本,更不要复制用写字板打开的键值,原因是有写字板打开后的内容已经不是原来的味了,切记!
⒉对游戏显示字体的修改问题
  想要换种字体,这个恐怕有点难了,这个游戏里的字体独具一格,它不是调用常规的字体文件,而是使用专门的字库文件的,并且对于非英语的版本,特别是像中文这样的方块文字,要做一种特定的中文字体,不是易事。
  游戏中每种字体分为一个索引表文件(.TBL)和一个字符图集文件(.DC6),也就是说要调用两个文件才能显示一种字体,这是比较特殊的。所以目前看得最多的好像只有三种中文字体:粗楷体,繁宋体,简宋体。
  所以要制作字体,在没有专用工具的情况下确实困难,但如果你所安装的是奥美汉化发行的版本,那你还是能够换换口味的,具体来说就是用网上发布的简体中文改良补丁的字体,适当地替换某些字体,仅此而已。具体字体的作用如下。font16:主要用于显示部分人物浮动属性值、所有物品浮动属性及属性值、技能树信息和游戏里的按钮浮动信息等;font24:主要用于显示游戏界面部分的副标题;font30:主要用于显示游戏界面部分的大标题;font42:主要用于显示游戏存档标题人物名称;font6:主要用于显示部分人物属性名、雇用兵姓名、召唤物名称和地图标示名称等;font8:主要用于显示部分人物属性值、部分人物属性浮动说明;fontexocet10:主要用于显示游戏界面大按钮;fontformal10:主要用于显示游戏制作人员名单、技能树的技能等级;fontformal11:主要用于显示任务窗口的任务名称及说明;fontformal12:主要用于显示游戏版权说明;fontingamechat:主要用于显示游戏的消息记录;fontridiculous:主要用于显示游戏界面小按钮。
  以上是游戏主要的字体用途说明。这里虽然讲的是字体问题,但是它和前一个问题就直接的关系,就是繁简的问题,有时在修改TBL文件的键值时,有的字总是不能显示,可能有时就是简体字和繁体字的问题,因此改的时候也要搞清楚你的游戏字库是繁还是简哦。
⒊对技能的信息修改问题
  技能的信息修改,是跟skilldesc.txt、string.tbl、expansionstring.tbl和patchstring.tbl等的文件有关,当然跟skills.txt也有关了。
  技能的新增或修改,都是很多朋友关注的焦点,当一个有辉煌效果的技能做出来后,为了能让技能的各项指示说明完整显示出来,我们就要跟上面提到的文件打交道了,在教程里或多或少也提及了skilldesc.txt的修改,在这里我们更深入一点地出了解一下具体内容。
  文件开头的几列值我们不谈了,无非就是引用名、页码、行号、列号等等的技能图标定位值,从descline1、desctexta1、desctextb1、desccalca1、desccalcb1开始,才是真正的技能信息说明的定义位。desclineX,X=1到6,定义每行技能信息的显示形式。desctextaX和desctextbX,X=1到6,定义每行技能信息的说明在TBL文件中的对应键值的索引键。如果要引用两个键,那么就将两个键名分别填入。desccalcaX和desccalcbX,X=1到6,定义每行技能信息的值的计算公式,一般要和skills.txt的计算公式要一致。如果有两个公式,那么也要分别填入两个公式。descline1~6、desctexta1~6、desctextb1~6、desccalca1~6和desccalcb1~6可以定义六行技能说明信息,我们可以将这一大段统称为主段区。dsc2line1~6、dsc2texta1~6、dsc2textb1~6、dsc2calca1~6和dsc2calcb1~6同样可以定义六行技能说明信息,我们可以将这一大段统称为头段区。dsc3line1~7、dsc3texta1~7、dsc3textb1~7、dsc3calca1~7和dsc3calcb1~7则可以定义七行技能说明信息,我们可以将这一大段统称为尾段区。
  通过上面的说明和人为初步划分之后,我们再来说明一下它们的方位性。
  从每个段区来说,按1到6的顺序定义,但具体到了游戏里,是按相反顺序显示的。比如我们按1到6的顺序分别定义了:增加生命、攻击准确率、防御、冰冻伤害、冰结时间、法力耗费。游戏显示为:法力耗费:XX冰结时间:XX冰冻伤害:XX-XX防御:+XX攻击准确率:+XX%增加生命:XX而从整体来说,如果三个段区都有定义说明信息,那么在游戏里的从上到下的显示内容分别是:头段区信息、主段区信息、尾段区信息,并且每段区之间是用空行隔开的。
  因此,当你想按自己设想的显示结果修改技能信息时,把握好上面的说明和方位性,你就能自如的对技能说明信息进行修改了。
  最后,还要补充一点,如果大家在修改TBL文件时想要尽量不出错,那么本小姐建议这些朋友以英文版的三个TBL文件为修改的主文件,原因是现在很多朋友都安装了2years制作的简体或繁体中文改良补丁,特别是安装简体版朋友,之所以叫改良补丁,其实就是拿繁体的TBL文件主要内容改成了简体中文并重新制作了部分简体字库,部分界面仍是繁体的,变成混血儿了。将简体的翻译内容移植到英文原文件的内容覆盖,这样以后你再也不用去考虑是用简体字还是用繁体字了,因为英文版和繁体版的TBL文件头是有所区别的,简体改良补丁的部分键值会出现错误索引,而通过移植后是正常的。至于喜欢繁体版的朋友就不用愁了,因为从开始到最近的v1.11b补丁,暴雪都对繁体中文支持,打开patch_d2.mpq文件看看CHI里面的TBL就很清楚了。
   好了,从以上涉及的三方面修改,其实都是在另类模式制作过程中的细节修饰问题。我们总想将我们的修改作品做得尽可能的完美,尽可能的漂亮,就像这个游戏的开发人员一样,不断地修补,不断地完善。而这也给了广大另类模式的制作爱好者有了更多的乐趣。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|网站地图|联系我们|关于我们|隐私条款|免责声明|小黑屋|D2home暗黑1.09战网 ( 鲁ICP备2020047197号 )

GMT+8, 2024-11-24 19:42 , Processed in 0.232787 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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