下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、随着网络游戏的发展,任务越来越成为游戏的重要内容之一,甚至专门出现了标榜任务为游 戏主要玩法的网络游戏,任务成为了游戏中玩家获得乐趣的重要手段,也是游戏的特色之一, 精彩的任务系统,不但能丰富游戏乐趣,也是重要的道具和经验来源下面从服务器端和客 户端两方面,以一个数值策划的角度出发,通过数据结构和操作流程来论述任务系统。至于任 务在具体游戏中的规划则略去,以提供一个通用的框架模板.本文不涉及具体任务的设计以及任务规划.也不包括任务撰写方式在数据结构和流程上 的优化方法.任务的脚本实现也不在讨论之列.一,概述任务系统数据结构要包含的内容分两部分,服务器部分和客户端部分.服务器部分:任务完成标识表
2、,任务变量记录表客户端部分:任务文字说明表设计理念任务完成标识表其实只是一个简单的字符串,一般将此字符串存储在角色数据里的在一 个字段中,用二进制的位表示任务的完成情况,使用时将此字符串按每2位读取一次的方式 读取到一个独立的数组中(使用2位来表示一个任务的情况,00表示任务未接,11表示已经 完成,01表示已接未完成,10表示接了失败),按照数组的下标来对应相应的任务(如第18 组数据对第18号任务,第2000组对应第2000号任务)即使需要记录2048个任务,也只需花 费很少的数据空间.甚至为了节约起见,只用一位二进制来记录任务的 完成情况(0未完成,1完成),一个字符就可以记录八个任务的
3、完成情况,很节省吧.任务变量记录表是一组数据,被存储在服务器端的角色数据里,主要记录任务的完成情 况,一般通过记录任务的编号(体现在任务完成标识表里就是被阅读后的数组下标),任务变 量名,任务变量值等来获得一个任务的具体完成情况,为了保证数据的节约,这个表是有大小限制的,也就是说,这种方式,玩家同时可接的任务数量是有上限的,不过这不是大问题,很多 游戏都是这么做的,EQ,WoW任务文字说明表就完全是客户端的文字说明显示了,服务器通过阅读任务变量记录表统 计出角色当前有的任务编号,发给客户端,客户端通过编号显示任务日志.很简单,没什么好 说的三,表结构说明好,现在我们要做一个任务系统,假设游戏中
4、最终有2048个任务(不少了 ,wow共有3000 个任务,而且还只是玩家层面的任务数量,实际上一个系列的七八个任务可能只用了一个任 务完成标识,其余是通过任务变量来区别的),玩家同时可接的任务数量为20个任务完成标 识表数据名数据类型长度字段说明MissionFlag Int数组 2048字节完成标记说明:此字符串存储在角色数据中,为2进制,暂定2048字节,存储在一个字段中,可标 记2048个任务(以后如果需要增加任务数量,可增加标记字节)。使用1位来表示一个任务 的情况,0表示任务未接,表示已经完成,使用数组下标来和全部任务的顺序列表来对应, 以获得角色的任务完成情况。任务变量记录表数据
5、名数据类型长度字段说明MissionIDInt 16 任务编号MissionNamechar 16 任务变量名Missionvaluechar 16任务变量值说明:变量表为100条记录(假定可以支持20个任务),任务变量并配合任务完成标记对其 进行删改。任务编号(MissionlD):对应的任务编号,是任务变量属于哪号任务的标志。任务变量名(MissionName):任务变量量名,如time,num等等,随意,用来简单表示记录 的是什么。任务变量值(Missionvalue):编号对应的值,也就是time,num等的值是多少,任务脚本 将自行构造语句解悉其具体内容.三、任务文字说明表数据名数据
6、类型长度字段说明MissionlD Int 32 任务编号MissionName char 16 任务变量名Missionvalue char 16 任务变量值MissionText任务日志说明说明:记录在客户端的步骤说明表,根据比对任务编号、变量和其值,来显示不同的任务日 志。任务编号(MissionID):从服务端任务变量表中完全复制过来的数据。任务变量名(MissionName):同上任务变量值(Missionvalue):同上任务日志说明(MissionText):于以上三条记录相对应的时候,任务日志所显示的说明文 字。数据操作流程服务端两个任务库的操作 1、接下任务时的操作角色获得需
7、要使用任务变量的任务前,先检查任务变量表是否为空,如任务变量已经全 部被使用,则不能获得此任务。如有任务变量表有多余空间,则角色接下任务,再将相应数 值写入变量表。2、完成任务时候的操作判断角色任务完成标记字符串,当角色完全完成一个任务时,将角色任务完成标记字符 串根据数组下标对应此任务的标记设置为1,并删除所有任务变量表中此任务相关的任务变 量记录。任务变量的具体数值和标识,由脚本自行控制,因此在制作任务时,需要制作exl表格, 记录任务和其编号已及使用的任务变量已及值的对应含义,方便撰写脚本时候备查使用。客户端日志查询1、(可选)客户端打开任务日志,首先查询任务完成标识表,忽略所有未接任务。所有已完 成任务通过读取客户端任务说明表直接显示已经完成(这里有两种做法,如果不想对已经完 成的任务进行说明,这步可以不用,如果想详细说明,需要再扩展一张表,一般不会有人想详 细列出已经完成的任务吧,所以无视本条内容吧)。2、查询任务变量记录表,统计出所有被记录的任务编号,然后根据其任务变量名和值,读取 客户端任务文字说明表中能符合其编号和任务变量名和值的记录把其中的文字部分显示出 来。用以上完成标识和任务变量分开存储的方式,能够海量的记录人物的任务完成情况而又 不会浪费很多空间,通过简单
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广东省广晟控股集团有限公司总部中层岗位选聘7人备考题库附答案详解【预热题】
- 2026广东省南方医科大学珠江医院三水医院第二批合同制工作人员招聘26人备考题库及参考答案详解【a卷】
- 2025-2026闽教院翔安一附小招聘非在编合同教师1人备考题库(二)及答案详解【各地真题】
- 2026陕西西安交通大学党委医学部文员招聘1人备考题库a4版附答案详解
- 2026浙江衢州市教育局“南孔学地教职等你”硕博专场招聘56人备考题库及参考答案详解【培优】
- 2026广东佛山市南海区大沥镇太平成远小学招聘备考题库及完整答案详解
- 农机技术员岗前生产安全意识考核试卷含答案
- 2026云南省房物业管理有限公司招聘12人备考题库附完整答案详解(各地真题)
- 生物制品培养基生产工岗前创新应用考核试卷含答案
- 栓皮制品工岗前客户服务考核试卷含答案
- 2026年安徽城市管理职业学院单招职业适应性测试题库带答案详解(黄金题型)
- 2026年及未来5年市场数据中国污水处理行业市场前景预测及投资战略数据分析研究报告
- 证券市场交易规则与操作指南
- 2026湖南张家界市桑植县招聘城市社区专职工作者20人笔试备考题库及答案解析
- 2026年公立医院信息科工作人员招聘考试笔试试题(含答案)
- 第一单元《写作:考虑目的和对象》八年级语文下册同步课件(统编版新教材)
- 2026年吉安幼儿师范高等专科学校单招综合素质考试题库含答案详解(巩固)
- 雨课堂学堂在线学堂云《短视频创意与制作(北京邮电)》单元测试考核答案
- (2026年)心理健康中小学生主题班会课件
- 2025年事业单位口腔招聘考试题及答案
- 阀门型号分类及应用手册
评论
0/150
提交评论