Sunday, November 23, 2008

Fishedit之血泪控诉

 

fishedit是一个非常好的修改器,但同时也是一个很糟糕的应用程序。作为修改器,fishedit是一个上品;但是作为一个应用程序,只好不及格。

fishedit的作者是金庸MOD历史上最为著名的技术大师——游泳的鱼,在一开始他选择了VB作为程序设计的主要语言。如今VB.net已经问世,他当年的决定到如今成为MOD历史上最大的一个方向错误。VB对类型转换的保护异常脆弱,稍不留神就会导致程序整体崩溃,一步一存已经成为许多作者的习惯。此外,很多时候也不可想像,为什么事件编辑牵扯到如许多的设定,fishedit内部的许多逻辑被隐藏在了代码之后,无人可以完整理解。而所有问题的根源,便是fishedit使用的平台,是一个功能极度简单的VB。时至今日,VB新版已经强大稳定了许多,但是.net的诸多变化导致这份在VB6上面能够基本正确执行的代码已经完全不可能移植,这段曾经光辉的历史如今却成了一个极大的障碍。如果你能够了解作者打不开自己辛苦编辑的事件文件时候的焦急。

在作者公开源码之后不久,我曾经试图对其进行修整,但是如今越来越觉得这实在是一个不可能完成的任务。我们需要感谢游泳的鱼在MOD制作上做出的光辉贡献,但是fishedit糟糕的稳定性和易用性实在让我们付出了太多的代价。

现在的技术部里面似乎很多人在做将复刻版的代码译成其他语言的工作。老实说我觉得这些工作并无多大意义。我从不认为我的代码能够成为规范,所以也不赞成不加思考地将其译成其他语言。Pascal或是C不过只是工具,并无本质的区别,重复工作追求那种东西还不如把精力拿回来作优化和修改器。我编写Pascal代码用了2周多的时间,如果不能保证在更短的时间内将翻译完成的话,还是放弃为好。

Thursday, November 13, 2008

复刻计划最终结束


今天复刻版最后一个难题解开了,就是战场上人物和建筑的遮挡问题。是使用小小猪提示的递归方法判定角色可移动范围的。这样复刻版的最后一个算法难关被解决,已经基本完备,以其为基础的修改不再存在任何技术障碍。

这样,从5月4日开始的“All Heros in Kam Yung’s Stories复刻计划”正式宣布最终的结束,DOS版的所有功能已经完整实现。目前仅音乐不稳定无法解决,这个可能是系统本身的问题。而其余的修改仅仅是普通的工作了。

Tuesday, November 04, 2008

不算工作室

 

呃……这个名字确实有点诡异。

大概就算是制作MOD的工作室吧。主要领导还是一帮动物……

 

此外这个站里的东西应该都能在http://txdx.cech.com.cn下载到。