PJX内部交流,请勿外传功能策划基础01拆分功能模块02撰写功能模块03确认实现方式04复杂度易用性05系统策划建议PJX内部交流,请勿外传00关于系统设计关于系统设计核心系统特色系统战斗规则操作逻辑角色属性打怪规则宠物系统经济系统...APC系统星神系统...基本架构的重要组成部分最基础的玩法与规则创意设计衍生玩法规则扩大化,更好玩系统的设计,就是对规则的制定。PJX内部交流,请勿外传0101拆分功能模块02撰写功能模块03确认实现方式04复杂度易用性05系统策划建议拆分功能模块PJX内部交流,请勿外传01Q1下图是什么?Q3包含什么附加功能?Q2该系统主要实现什么功能?拆分功能模块PJX内部交流,请勿外传01拆分功能模块PJX内部交流,请勿外传01Q1下图是什么?Q3包含什么附加功能?Q2该系统主要实现什么功能?拆分功能模块PJX内部交流,请勿外传01拆分功能模块PJX内部交流,请勿外传01拆分功能模块拆分功能模块奥奇商城的主要功能拆分•打开商城•关闭商城•切换标签页(大TAB,小tab)•购买道具•商品排列规则•查看商品信息•翻页•用户个人货币信息•广告页信息PJX内部交流,请勿外传01Q1下图是什么?Q3包含什么附加功能?Q2该系统主要实现什么功能?拆分功能模块PJX内部交流,请勿外传01拆分功能模块PJX内部交流,请勿外传01拆分功能模块拆分功能模块奥奇商城的附加功能拆分•开通VIP•充值奥币•兑换钻石•打开商品册•打开招财猫附加功能只是其他功能入口,读取其他功能页面,故不算入本系统的功能模块。PJX内部交流,请勿外传01拆分功能模块拆分功能模块一个完整的功能模块包含四个部分•先决条件(触发)•操作(流程)•结果(响应)•冲突与联系(报错与数据关联)PJX内部交流,请勿外传01拆分功能模块拆分功能模块满足什么样的条件可以独立为功能模块呢?•用户的一次操作是一个独立的功能模块。•系统处于某种状态(不需要用户操作)后的结果可以是一个独立的功能模块。•特殊的需要程序注意的内容(只包含冲突与联系),可以是一个独立的功能模块。PJX内部交流,请勿外传01拆分功能模块拆分功能模块用户的一次操作是一个独立的功能模块。用户操作:•Click:鼠标左键单击某按钮/角色/图标/窗口某位置,扩展一下,还包括鼠标右键、鼠标中键、双击、长按、拖动。•Key:按下键盘某按键,扩展一下,还包括按住、按击数次。•Click&key:如果是PC游戏就是键鼠操作了每需要用户一次单独操作的功能模块都应该是独立的功能模块。PJX内部交流,请勿外传01拆分功能模块拆分功能模块用户的一次操作是一个独立的功能模块。特殊情况:•有的时候会出现这样的情况,完成一个功能需要依次完成两次操作。•e.g.选择数量——购买建议:类似这样的情况,建议拆分成两个不同的功能模块,因为他们可能有不同的冲突与联系,拆分成不同的功能模块,单个功能的内容较少、且冲突与联系的归属清晰,易于程序阅读。PJX内部交流,请勿外传01拆分功能模块拆分功能模块系统处于某种状态(不需要用户操作)后的结果可以是一个独立的功能模块。e.g.商城商品排序Button状态分成独立功能撰写,易于程序阅读。PJX内部交流,请勿外传01拆分功能模块拆分功能模块特殊的需要程序注意的内容(只包含冲突与联系),可以是一个独立的功能模块。e.g.商品购买限制条件一页显示数量标签分类如果他们数量足够多,并且重要。你完全可以把他们列出来作为一个单独的功能模块。PJX内部交流,请勿外传01拆分功能模块拆分功能模块PS:•功能模块的标题必须是对该功能模块作用的描述。•拆分功能模块并不是严格遵循框架案的内容;框架案只是约定和协助的作用。PJX内部交流,请勿外传02撰写功能模块01拆分功能模块02撰写功能模块03确认实现方式04复杂度易用性05系统策划建议PJX内部交流,请勿外传02撰写功能模块•功能模块框架•撰写先决条件•撰写结果•撰写冲突与联系撰写功能模块PJX内部交流,请勿外传02撰写功能模块——框架功能模块框架1.功能模块标题1.1先决条件1.2操作步骤1.3结果1.4冲突与联系1.5程序意见撰写功能模块e.g.1.打开商城1.1先决条件1.2操作步骤:鼠标左键点击商城按钮1.3结果:打开商城窗口1.4冲突与联系1.5程序意见PJX内部交流,请勿外传02撰写功能模块——先决条件撰写先决条件在该项目中什么条件A下,该操作B不能进行?IfAthenBenable在该项目中什么条件下该操作B有不同的结果a、b...?Casea...Ba;Caseb...Bb...撰写功能模块e.g.1.VIP礼包购买1.1先决条件:用户VIP在有效期内,货币足够,不超过各种上限1.2操作步骤:鼠标左键点击购买按钮1.3结果:执行购买流程1.4冲突与联系:1.5程序意见PJX内部交流,请勿外传02撰写功能模块——先决条件撰写先决条件PS:以下一些先决条件,是经常出现在游戏中的:•某属性大于或小于某数值。•用户处于某种状态。•某游戏窗口已打开。•达到倒计时时间。某功能到底包含哪种先决条件,具体功能具体分析。撰写功能模块PJX内部交流,请勿外传02撰写功能模块——结果撰写结果在写结果的时候,最常遇到的是以下几种问题:•对实现方式不了解,导致功能拆分不够细致。•对设计细节不了解,导致功能拆分不够细致。撰写功能模块PJX内部交流,请勿外传02撰写功能模块——结果撰写结果•对实现方式不了解,导致功能拆分不够细致。e.g.以使用技能为例,可能有些人结果会写:该技能生效。撰写功能模块PJX内部交流,请勿外传02撰写功能模块——结果视觉表现、听觉表现和底层数据变化只是恰好被调整成一致的,实际上在程序上他们都是单独处理的。结果至少需要包含:1.技能图标的变化显示。2.播放角色使用该技能的动作。3.播放角色使用该技能的特效。4.播放角色使用改技能的音效。5.角色属性根据使用该技能的成本对应减少。6.如果技能有CD时间,还有有技能进入CD时间的描述。7.判定技能是否命中(这里需要将完整的判定规则列出来),如果技能命中还需要以下的处理。8.命中方属性对应技能减少。9.命中方获得技能对应状态。10.命中方播放命中该技能的动作。11.命中方播放命中该技能的特效。12.命中方播放命中该技能的音效。撰写功能模块PJX内部交流,请勿外传02撰写功能模块——结果撰写结果•对实现方式不了解,导致功能拆分不够细致。撰写功能模块如果你不写,那么他们甚至永远不会出现在你的游戏中。PJX内部交流,请勿外传02撰写功能模块——结果撰写结果•对设计细节不了解,导致功能拆分不够细致。撰写功能模块PJX内部交流,请勿外传02撰写功能模块——结果撰写结果•对设计细节不了解,导致功能拆分不够细致。e.g.以商城为例,打开商城窗口并不完整。打开商城后显示什么?在哪显示?按什么顺序显示?如果是按钮,还需要指明按什么状态显示?如果有即时读取的数据,需要指明数据从哪读取?如果有角色avatar的显示,那么还需要写出角色的朝向、动作、穿着什么服装。并且需要给出准确的界面布局图。撰写功能模块PJX内部交流,请勿外传02撰写功能模块——结果1.分层标签:若用户能到达的最高层为A,则分层A标签呈选中状态。2.商店分类标签、商品分类标签:精品服装(商店分类)标签下的足部(商品分类)标签呈点击状态。3.商店的商品列表:显示满足层数及商品类型条件的第一页商品。从数据表中读取以下数据对应显示在商品列表:商品名称、商品图标、商品类型、商品价格。4.上翻页按钮、下翻页按钮、当前页数/最大页数;最大页数根据商品数据表中商品的数量和一页能显示的商品数量计算得到。5.购买、购买试穿、恢复试穿按钮;按钮的状态见《按钮状态规则》功能模块。6.用户账号、货币数量根据用户对应信息显示。7.人物框及角色名称根据用户对应信息显示。①人物框默认显示角色当前服装。②人物角色默认正面朝向用户,与个人信息卡一致。③人物动作默认站立动作,与个人信息卡一致。撰写功能模块PJX内部交流,请勿外传02撰写功能模块——冲突与联系撰写冲突与联系记住以下三点:•所有需要约定的内容。•一条先决条件对应一条冲突与联系。•当用户处于结果时,是否有某种异常处理。撰写功能模块PJX内部交流,请勿外传02撰写功能模块——冲突与联系撰写冲突与联系•所有需要约定的内容。e.g.窗口大小、字体、字号、字色、角色动作、图标大小、输入的字符是明码还是暗码、一页显示数量、等等……每一个细节都是需要被约定的。撰写功能模块PJX内部交流,请勿外传02撰写功能模块——冲突与联系撰写冲突与联系•一条先决条件对应一条冲突与联系。写先决条件时问自己这样几个问题:该项目中什么条件下,该操作不能进行?在该项目中什么条件下该操作有不同的结果?在冲突与联系中,需要写的是:当该条件不被满足时,会有什么样的结果。撰写功能模块PJX内部交流,请勿外传02撰写功能模块——冲突与联系撰写冲突与联系•当用户处于结果时,是否有某种异常处理。e.g.当某个窗口打开的时候,会有什么样的异常状况关闭该窗口?撰写功能模块PJX内部交流,请勿外传02撰写功能模块PS:1.保证用词的唯一性以项目中命名的词为唯一标准,确保每一个人都能看懂。e.g.家族,公会,帮派,联盟2.保证界面风格统一e.g.右上角关闭按钮,VIP标识3.用词简练,不包含个人情感e.g.此处读取那个活动中超强的家族...4.每一条都单独列出切忌讲多个先决条件,多个结果或者多个冲突联系写在一起。每一条不超过1行最好。(程序习惯)e.g.如果用户不是VIP,如果用户不够钻石,则弹出VIP开通提示面板,则提示用户钻石不足...撰写功能模块PJX内部交流,请勿外传02撰写功能模块常用句型:•A处于B状态(...已...)•左键单击A按钮•显示A•播放A•A做出M动作•如果...则...否则...•满足条件A•A保持更新•...=...撰写功能模块PJX内部交流,请勿外传03确认实现方式01拆分功能模块02撰写功能模块03确认实现方式04复杂度易用性05系统策划建议PJX内部交流,请勿外传03确认实现方式确认实现方式•不同的实现方式,功能执行案的撰写方式不同。•如何针对程序美术的反馈,做出调整。•哪些实现方式需要被确认。PJX内部交流,请勿外传03确认实现方式确认实现方式不同的实现方式,功能执行案的撰写方式不同。实现方式影响撰写方式,因此,撰写功能执行案的过程中,向程序和美术确认实现方式是必不可少的内容。游戏策划不是上帝,游戏策划是引擎。我想这样,可以实现吗?PJX内部交流,请勿外传03确认实现方式确认实现方式如何针对程序美术的反馈,做出调整。无论如何,确认的结果大致可以分为以下几种•能实现,没有任何问题。•能实现,但可能占用过多的客户端或服务器端资源。•能实现,但需要美术更多的工作量。•能实现,但需要程序更多的工作量。•对用户而言相同的表现下,有工作量更少的实现方式。PJX内部交流,请勿外传03确认实现方式确认实现方式如何针对程序美术的反馈,做出调整。首先要根据程序和美术的反馈进行分类,看需要实现的方式是以下哪一种。之后需要对这个设计进行分类:1.必须的,如果不这么做,这个游戏就不用做了。——循循善诱+适当霸气2.必须的,但时间不允许的话也没办法。——找产品经理,确认版本内容与时间3.可以有其他的方式替代。(最优)——靠经验,产品逻辑简化,功能表现简化PJX内部交流,请勿外传03确认实现方式确认实现方式哪些实现方式需要被确认。实现方式需要被确认,但这并不意味这每一点都需要被确认。就像,你不可能找程序确认如下的内容是否能实现:1.我可以让按钮禁用吗?2.我可以渲染某个窗口吗?3.我能轮询检测,然后选择第一个道具使用吗?4.我可以改变某个角色的状态吗?PJX内部交流,请勿外传03确认实现方式确认实现方式哪些实现方式需要被确认。一般而言当遇到如下情况,你需要确认:1.该功能需要存储过多的角色数据。2.该功能需要向其他用户传输额外的数据。3.该功能需要占用额外的显存。4