2014-02-23 13:06| 查看: 25823 |作者: 小雪
基础知识:制作流程 飞机的制作是从人类有了飞翔的梦想开始,插件的制作同理。英文有一句话:Begin with the end in mind.个人认为比较好的翻译是:胸有成竹。如果你看过油画的绘制过程,那么在涂抹最初几层颜料的时候是看不出他要画什么,可是慢慢地就会出现一个轮廓,到最后的完成绘制,那一层一层的颜料最后结合在一起给人一种很有质感的立体效果,有些油画甚至与真实物体难辨真假。这时候你会不会恍然到他开始下笔的那几层颜料? 基础目的: 在插件制作前,往往可能都是因为一个念头而产生的。比如说: 1.五行石插件的基础概念便是产生于合石头太费神了。 2.DBM的诞生是为了照顾到那些反应意识不是很好的玩家。 3.红名插件/阵营人数统计的初衷便是为了解决屏蔽后看不到人的窘境,以及对峙时候的一个简单评估。 4.聊天助手便是为了人们方便聊天 5.buff增强那是因为系统buff太小了 等等等等的基础概念 基础概念的萌生往往都是因为游戏内有令人或者可以进步的地方,比如说上面谈到的动作条问题,界面凌乱问题。我们拿这篇即将要做为范例的插件来说明。 问题:最近副本喊T时候1T难求啊,常常喊上10来分钟没人加,还必须要坐在屏幕前不能走开,对时间利用非常不好。 基础目的:设计一个能自动喊人并且只组特定职业的插件。 设计概念: 设计概念可以说是一种运用知识的方法,而整个系列的教学贴也将围绕着这个设计概念来进行说明。简单的来说就是运用你所知道的东西来进行一个达到目的的手段。 以上面的基础目的为核心拓展我们的思路。 1.需要知道如何让系统循环。 为什么要用循环?因为系统你重复世界发话本身就是一个循环,只是让系统代替了这个循环,变了个名字就成了自动。 2.需要知道如何使用代码进行喊话。 这个是喊话插件的最基本,不知道怎么用代码来喊话,这个插件核心就没有了。 3.需要知道如何设定喊话时间。 世界频道有个延迟时间,如果一直循环得话会刷系统文字,把聊天记录都刷上去了,不方便回来时查看发生什么事情,同时也是稍微节约系统资源。 4.需要知道如何将别人组进来。 另一个比较关键的功能,这能够保证,在离开的时候能够组到T,而不是因为错过了被系统自己拒绝。 5.需要知道如何辨别请求组队的职业。 这是一个以防万一的措施,防止有人点错了被插件自动组了进来。 6.需要知道如何随时改变喊话内容。 这使得插件能够变得更加灵活,而不需要每次去自己改脚本。 知道了以上的6点,插件的这个雏形出来了。 原创拓展: 关于原创,是作为一个作者最基本的东西,但是游戏里面就那么些事物,原创空间不是很大。那么从上面这样的雏形能够拓展出什么样的插件呢? 这不得不回到一个基础概念的问题,想一想除了找T难还有什么? 对,DPS求组! 稍微改变一下组人将他变成接受被组,不就是一个拓展功能么? 再想想,还有什么情况? 对,别人喊组人的时候怎么办? 我想大多数人都是看人家喊人,然后点人进组吧? 那么想要实现这样一个功能,除了设计概念的6点,还需要一些其他的东西 7.需要知道如何从喊话内容中找到自己需求的文字。 比如说:英雄毒神来输出;YXDS来DPS;日常毒神来输出;[大战!英雄毒神殿]来输出。只要内容中出现了这些字,那么就组那个人。 8.需要知道如何申请入队。 这是一个非常核心的功能,与上面搜寻文字配搭在一起才能形成这个插件拓展的雏形。 9.需要一个美观、简洁的界面。 由于功能比较多而且设置大多数都是自定义,所以制作一个用户友好的界面是很有必要的这样才使得插件更加灵活。 制作过程: 有了以上的设计概念之后,那么就能够开工了。 1.首先是解决设计概念中的几个问题,这得需要工具辅助并对游戏进行解包,了解源代码。 2.然后是分析理解源代码,并进行一些测试,加深对代码的理解。 3.完善代码,并且插件基本可用。 调试阶段: 其实在上面的制作过程中,调试就无时无刻的在进行了。调试阶段是最最辛苦的阶段,我认识的某人忙碌了两个小时找漏洞结果发现开错文件夹了,我不会告诉你们是雪碧姐(东方雪碧)的,不要想知道是谁。还有就是,我曾经为了一个隐藏的空格字符忙了一下午,最后是复制到QQ上才发现原来这里有个空格,但是在代码之中看不到。调试的时候,我经常觉得自己很2,嗯,这是一个见证下限的痛苦阶段。 封测阶段: 基本上是在插件没有技术上的问题后,请一些认识熟悉的人对插件进行测试,并试着找出一些不足之处,这个阶段可长可短,如果要保险的话,尽量长一点。 发布阶段: 最最激动人心的时刻,这证明着自己的辛勤劳动结果是造福大众的时候了,最最令人心旷神怡地便是看着下载数,回帖数“唰唰”地往上窜,这便是对插件作者最好的认可与赞美了! 更新阶段: 只要不是那种有违公平的插件,一般上由游戏更新被和谐引起的更新可以忽略不计,当然遇上版本大改的时候可能需要更新插件。至于因为要加东西而更新,这个倒是比较常见,灵感来了是挡也挡不住啊!最常见地更新便是修复漏洞,很可能修复好这个漏洞引起了另外一个漏洞,这是很平常的事情,所以,要理解程序员,毕竟不是万能全知的某某啊。 |