动态任务架构BETA版
这个帖子怎么说呢是我的一个思想记录帖子。主要提供关于动态任务架构的一些初步想法。第一个beta版是国庆这几天的一些想法,和jason讨论了一个晚上,整合了他提供的一些事情,初步是动态任务按照事件驱动原则来实现,第一个测试版准备通过少林入门任务系列的开发过程中实现。(这个巫师入门任务被我整的太大了,不过我
想着还是开发一个比较规范的版本比较好,以后做其他的时候慢慢修正提供,先让路子不要偏离太远。)
让我选个门派做入门任务,我想想还是少林吧,谁让我是他的fans呢,从13年前就是少林死忠,没法子。除了
少林就丐帮熟悉一点(丐帮是13年前的丐帮。)入门任务设想这里就不提了,如果做好了放上去我会写一个
说明的,现在八字还没有一撇就没啥好说了。 问个问题:一个动态任务的完成,到最后,到底是通过附着在物件上的命令,还是give smth to sb,还是 user command? seagate写的巫师入门教程?
别人看不懂,怎么办???
seagate的普通教程,我看的都头大,需要翻译一下的说.
期待 and 怕怕 肯定用任务物品上负载的命令来实现,否则怎么实现目标物和任务本身的剥离,我想的是如何让目的地和任务接受npc不受任务本身约束。从这点衍生出来就是目的地和任务接受npc本身就不能有和任务相关的代码(否则代码复制和维护的量太大了。)从这点衍生过来就需要一个中间承接点来让任务走下来,这里面北侠也有一些做法,比如慕容任务里面的玉玺,胡一刀任务里面的地图都是类似功能。
我的做法就是让这个做法更加极端,举个例子就是比如胡一刀任务的地图决定了如何产生胡一刀任务,如何结束胡一刀任务,胡一刀任务应该怎么奖励等等和任务相关一切共性属性,至于胡一刀本身反而不重要,他只是挑选出胡一刀这个任务并且初始化了相关目标物。
我这个文档不是教程,是一个设计文档,当教程看肯定看不懂。是我的一些想法,写多少就放多少,以后这个帖子会陆陆续续放后面更新后的文档。代码就不放了,代码等我测试通过以后给jason。
[ 本帖最后由 seagate 于 2010-10-4 10:06 PM 编辑 ] 原帖由 seagate 于 2010-10-4 08:55 PM 发表 http://pkuxkx.com/forum/images/common/back.gif
这个帖子怎么说呢是我的一个思想记录帖子。主要提供关于动态任务架构的一些初步想法。第一个beta版是国庆这几天的一些想法,和jason讨论了一个晚上,整合了他提供的一些事情,初步是动态任务按照事件驱动原则来实
现 ...
[*]你是目前唯一能够进行这种思考的人,非常赞[*]门派任务不要使用动态任务框架。动态任务框架的目的是为了提供大量的变化的任务,但是最好的任务永远是手动编写的。动态任务框架能做出hyd,但绝对做不出剿匪,保卫这样的任务。门派任务强调特色,创意是这里的主要成分,代码是其次的。[*]关于动态任务框架,事件链的思路是对的,而任务的承载体不要限定为物体。你需要完整的定义“事件”。我初步设想的“事件”的属性包括:[*]类别:npc/物体/房间[*]名字[*]位置:固定/随机[*]触发条件:init/ask/give/action[*]事件动作:消息/动作(kill,hit,follow,etc)[*]结束条件:init/ask/give/action[*]奖励/惩罚[*]下一事件[*] 原帖由 seagate 于 2010-10-4 10:04 PM 发表 http://pkuxkx.com/forum/images/common/back.gif
肯定用任务物品上负载的命令来实现,否则怎么实现目标物和任务本身的剥离,我想的是如何让目的地和任务接受npc不受任务本身约束。从这点衍生出来就是目的地和任务接受npc本身就不能有和任务相关的代码(否则代码复制 ...
你的这个需求,可以参考bind这个函数,也许能帮到你。
mudnow曾经用过这个办法构件动态任务,虽然我不是很满意 我的做法就是让这个做法更加极端,
HOW? 而任务的承载体不要限定为物体。你需要完整的定义“事件”。
不知道seagate对daemons的理解怎样? 我现在还在熟悉阶段,能够bind就更好了。我熟悉熟悉。其实我入门任务就准备写4个小任务,简单剥离而已,不准备写出完整的动态任务,起个头够用就行。以后再想想更完善的东西。不过bind函数我现在还没想好怎么用。我觉得这么绑定适应场合没想好。现在还用不上那种做法,至少任务承接者-任务物品目前是合适的,动态任务实际上应该来说是一个模板,目前做一些简单模板,具体其他承接者还么想好,不行再进行代码注入。 原帖由 seagate 于 2010-10-5 12:08 AM 发表 http://pkuxkx.com/forum/images/common/back.gif
我现在还在熟悉阶段,能够bind就更好了。我熟悉熟悉。其实我入门任务就准备写4个小任务,简单剥离而已,不准备写出完整的动态任务,起个头够用就行。以后再想想更完善的东西。不过bind函数我现在还没想好怎么用。我觉 ...
切记门派任务不要用动态模板技术,否则可玩性不说,时间也很难保证。
页:
[1]
2