网站大量收购闲置独家精品文档,联系QQ:2885784924

【ARPG】怪物刷新机制.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【ARPG】怪物刷新机制

怪物刷新机制V1.00 目录 1 设计目的 3 2 概述 3 3 名词解释 3 4 数据库 3 4.1 u_monstergen 3 4.2 u_pathset 4 5 具体设计 5 5.1 怪物刷新分类 5 5.2 普通怪物刷新 5 5.3 巡逻怪物刷新 6 6 脚本接口 7 7 Log打印 7 8 界面流程 7 设计目的 说明怪物刷新机制。 概述 游戏中怪物刷新大体可分为2种:普通怪物刷新和巡逻怪物刷新。前者的思路为批量刷新,通过数据控制刷新范围、密度等;后者的思路为个别刷新,通过数据控制刷新位置、移动路线等。 名词解释 无 数据库 u_monstergen 怪物刷新表。记录游戏中所有地图中的怪物刷新数据。 普通怪物和巡逻怪物分别使用不同的字段,下表中分别按“通用”“普通”“巡逻”标注。 字段 类型 说明 备注 id int mapid int 地图id。对应u_map表id。 普通 bound_x int 普通怪物刷新区域左上角锚点的x坐标。 普通 bound_y int 普通怪物刷新区域左上角锚点的y坐标。 普通 bound_cx int 普通怪物刷新区域的宽度。 普通 bound_cy int 普通怪物刷新区域的高度。 普通 move_delay int 普通怪物移动间隔时间,单位秒 普通 grid int 普通怪物刷新密度。记录怪物之间最小间隔。 通用 rest_secs int 怪物刷新时间。单位秒。 通用 max_per_gen int 普通怪物每次刷新最大数量。 普通 monstertype int 怪物类型。对应u_monstertype表id。 通用 timer_begin int 怪物刷新时段的起始时间点。 通用 timer_end int 怪物刷新时间的中止时间点。 通用 born_x int 巡逻怪物刷新位置x坐标。 巡逻 born_y int 巡逻怪物刷新位置y坐标。 巡逻 pathset_id int 巡逻怪物巡逻路线id。对应u_pathset表id。 巡逻 path_returnmode tinyint 巡逻怪物巡逻模式。 0=原路折返返回出生点; 1=瞬移返回出生点; 2=自路线最后一个位置移动至出生点; 3=到达最后一个位置后删除怪物 巡逻 deadtoborn tinyint 巡逻怪物原地刷新标志。 1=巡逻怪物下一次在死亡位置刷新。 巡逻 patrol_secs int 巡逻怪物巡逻时间。到达时间后强制瞬移返回出生点,之后按普通怪物规则移动,不再巡逻。 巡逻 dir int 巡逻怪物出生时朝向。 巡逻 maxgen int 巡逻怪物刷新数量。 巡逻 u_pathset 怪物巡逻表。记录游戏中各巡逻怪物的巡逻路径。 表数据的机制是逐条连接,即idid_next,通过这2个字段的对应关系连接出一条巡逻路径,直至id_next=0表示路径终点。 字段 类型 说明 id int 巡逻路径id。 id_next int 到达指定位置后执行的下一条巡逻路径id。0=中止。 x int 下一个位置的x坐标。 y int 下一个位置的y坐标。 action int 到点后执行脚本ID delay smallint 巡逻停顿时间 延迟执行时间(秒) 具体设计 怪物刷新分类 怪物刷新在数据上分为2种:普通怪物刷新、巡逻怪物刷新。 普通怪物刷新:用于批量控制一个范围内一群同样怪物的刷新,参数包括范围、怪物密度、最大数量等。 巡逻怪物刷新:用于个别控制一只或一组巡逻怪物的刷新,参数包括位置、数量、巡逻路线等。 要点: 对于一条怪物刷新数据,仅对应上述2种类型中的1种:即要么是普通怪物刷新,要么是巡逻怪物刷新,两者不会同时在一条数据中生效。 不同类型的怪物刷新对应不同的字段。 区分普通怪物刷新的标志字段为bound_x,该字段不为0则表示记录普通怪物刷新。 区分巡逻怪物刷新的标志字段为born_x,该字段不为0则表示记录巡逻怪物刷新。 上述2个字段均有值时,优先视为巡逻怪物刷新。 普通怪物刷新 普通怪物刷新的基本机制是“一次刷新一批怪物”,在这个前提下控制怪物的区域、密度等参数。相关要点说明如下: 怪物类型:刷新哪一种怪物,对应u_monstertype表id。 所在地图:怪物在哪个地图刷新,对应u_map表id。 刷新时段:包括起始时间点和中止时间点2个参数。普通怪物只会在指定的时间段内进行刷新判断,之外的时间段即使被玩家击杀也不会刷新。 刷新范围:怪物在地图中哪个区域刷新,包括左上角锚点坐标、宽度、高度共4个参数。 最大密度:怪物在区域内的最大密度。服务端以该参数为标准,判断该区域内的怪物是否刷新到足够的数量,即密度。达到最大密度时则不继续

文档评论(0)

ligennv1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档