adingtao11 发表于 2009-4-5 18:07

Halo插件编写教程



需要熟悉java语言,对io的读写有一定的了解。并且能熟练掌握开发工具。
插件格式说明:
在halo里面,大家所熟悉的语言包,实际上这种说法不准确,在halo的插件里面我们把它称为资源。在插件里面我们就叫做pak。而一个pak可能包含了语言文本,图片,声音和未知的数据(可能是地图的结构信息或者游戏中用到的数据结构等等)。而四种对象在halo的语言里面我们分别命名为:
语言文本 -- PakString
图片 -- PakImage
声音 -- PakSound
未知数据 -- PakUnknown
而这四个对象都是继承了PakObject这个基本对象。各个对象根据其不同特征有其自己的访问方法和读取方法。打个比方来说一个资源里面的图片数据块(这里我们叫做chunk),它可能是一个完整的png格式的数据,也可能是nokia特有的4444或者565的格式,也就是说一个对象里面的结构根据属性不同而不同。但是对插件的开发却无需知道,其是透明的。插件的开发者只需要知道调用方法来获取或者写入数据即可。
插件是如何被调用的:
学过java的人都应该知道,一个编译好的class或者jar都是通过jvm下的classloader来加载的。所以插件也是如此(插件本身也是一个jar文件)。其放在halo下的plugin目录下,当halo运行的时候,会设置plugin为classloader要加载的目录之一。
开发工具
因为halo是用java编写的,所以插件的开发也需要采用java来编写。开发java的工具有很多,notepad,jcreator,codewarrior, eclipse,netbeans等等。我个人一直在用eclipse,也用习惯了。所以在下面的教程中我将通过eclipse来进行一步步地图例化插件开发教程。
说了一大堆,什么都不如一个例子来得生动,下面我将通过一个大家再熟悉不过的手机游戏《远古帝国2》来讲解如何开发该游戏的halo插件。为什么要采用这个游戏,我觉得很多接触汉化的人都应该很了解它,而且它很具有代表性,因为其资源包包含了声音,图片,文本等等元素。那么废话少说,我们就开始这个插件开发之旅吧。
1,打开eclipse,通过File->New->Project来打开“New Project”窗口。如下图所示:
选择“Java Project”,然后next,在弹出的窗口输入你这个插件的名字。例如这里我们输入AncientEmpirePlugin。

LouisLaw 发表于 2009-4-5 18:23

老乡??????????????????哈哈........

天.LêE 发表于 2009-4-5 18:33



路过学习一下。不了解是什么。~~~看标题让我想起用来破解手机游戏短信收费的一个软件叫做HALO2~~呵呵

Mr丶locker 发表于 2009-4-5 18:48



呵呵~不懂

adingtao11 发表于 2009-4-5 19:13



引用第1楼LouisLaw于2009-04-05 18:23发表的:
老乡??????????????????哈哈........

不懂

小一 发表于 2009-4-6 10:22



钉子?名字貌似被改了头像我认识

渲染离别 发表于 2009-4-6 14:15



最近游戏区不错呀,什么教程都有啊

244520243 发表于 2009-4-16 10:24



学习下

Mr丶locker 发表于 2009-5-10 23:42



吐血支持了~

页: [1]
查看完整版本: Halo插件编写教程