游戏新手引导的演进版
来源:互联网 发布:数据对比用什么图表 编辑:程序博客网 时间:2024/04/30 09:34
游戏新手引导的演进版本
标签(空格分隔): as3
新手引导要解决的问题
- 提示玩家新功能开启
对于逐渐开放功能模块的游戏,非常有必要在功能开放时提示玩家,一般的新手引导进而还会有连续的功能操作引导。 - 引导玩家进行操作,形成操作习惯
陌生的功能总会给玩家(用户)带来困惑,而采用新手引导既解决了这个问题还避免了脱离游戏的说教感。 - 特殊剧情的需要
个别游戏会有特殊剧情,譬如玩家穿戴上获得的某件装备后才会触发剧情。这种情况文字或者图形的引导是非常必要的。
新手引导期望的表现方式
对游戏引导要求熟悉的可以跳过。
- 强制引导
限制玩家只能做游戏引导步骤的操作。
- 非强制引导
只是提示玩家操作,玩家可以不理会引导。
- 强制引导和非强制引导共存
对于页游,通常以强制引导(玩家只能按照引导步骤操作)为主,辅助以非强制引导。现在也有很多游戏反其道而行之,不采用生硬的强制引导了。一般而言,这两种方式需要共存。
- 引导步骤记录
游戏需要记录玩家那些引导做了,甚至有些会记录引导步骤。
- 多样的触发条件
一般而言,新功能开启会紧随对新功能操作步骤的引导。其他条件可以触发新手引导,比如:获得特定装备、背包满、到达地图指定区域等等。
- 多样的引导形式
引导形式至少有:箭头指示(可能会配合高亮闪光效果)、文字提示、引导动画。
- 重复多次的引导
要让玩家形成操作系统,仅仅一次的引导可能还不够,需要多次的相同步骤的引导。
新手引导的技术目标
- 显示和功能分离
引导的表现内容和引导模块的逻辑分离,相互不要耦合,由统一的中枢控制。 - 引导数据统一定义
引导数据包括引导步骤序列和每一步用户操作后的执行内容。为了方便维护,需要集中记录。 - 尽可能少侵入正常游戏逻辑
尽可能少影响相关游戏模块的逻辑。 - 客户端记录引导步骤
客户端记录引导步骤更好一些,因为这些内容和游戏的逻辑无关。 - 需要应对意外情况
新手引导模块需要应对可能出现的意外,比如在引导过程中游戏程序退出,如果正在进行引导时,又触发了引导条件。
具体的实现
规则定义
- 引导步骤只要执行了一步,就视同该引导都做完了,本地记录引导也只记录当前。
- 引导可操作UI元素是从其原始面板剪切到了引导模块,这样做是因为有些虚拟机底层对镂空效果的支撑不足。
- 完整的一个引导步骤依次包括:前置回调函数执行、显示引导内容等待玩家操作、玩家操作引导元素、后置回调函数执行。
定义引导的显示内容
- 引导主显示UI
这一是一个位于所有UI层上方的层,其中可以放置遮罩层、玩家可供操作UI元素、提示UI。根据是引导步骤是否是强制,可以控制遮罩层是否显示。遇到特殊情况,可以清空全部向导部分显示内容。 - 若干种提示UI
可以根据需要定义若干种提示UI,比如:闪烁的箭头、文字提示框、全屏的效果等等。
数据部分
- 数据项
包括:引导步骤顺序号、引导的类型(区分引导步骤的表现)、前置(后置)回调方法、后续步骤ID数组(第一步时)、其他必要信息。 - 引导序列——数据项的数组
逻辑部分
如下图所示
关键点
- 可操作元素放置到引导层来,玩家操作完成后再放置回去。
- 引导层的遮罩决定了是否是强制引导。
0 0
- 游戏新手引导的演进版
- 游戏新手引导的制作原理
- 游戏新手引导设计
- RPG游戏新手引导
- 游戏新手引导的制作原理(上)
- 游戏新手引导的制作原理(下)
- cocos2dx 3.0 用ClippingNode做游戏的新手引导
- 谈谈游戏中新手引导是如何制作的
- 新手引导的实现
- 终极版新手引导
- Cocos2d-js制作游戏新手引导(二)
- 新手引导的实现原理
- 关于新手引导的制作
- collectionview写的新手引导
- App新手引导的设计
- 所有游戏通用的新手引导模块的开发模式教程.
- Cocos2dx 3.0 过渡篇(十六)用ClippingNode做游戏的新手引导
- Cocos2dx 3.0 过渡篇(十六)用ClippingNode做游戏的新手引导
- 欢迎使用CSDN-markdown编辑器
- 拦截聊天记录--Hook技巧简介
- 记录一次linux错误的修复(linux启动出现UNEXPECTED INCONSISTENCY;RUN fsck MANUALLY)
- 快速排序
- 4个易打动人的营销技巧
- 游戏新手引导的演进版
- 产品没有一炮而红,后面该怎么办?
- CubieBoard2 Ubuntu配置记录
- 最代码的要求-摘抄
- Android中内容观察者的使用---- ContentObserver类详解
- 编程面试的10大算法概念汇总
- Zookeeper 伪分布配置
- Android Activity之间切换出现短暂黑屏的处理方法
- qt使用记录