【转】webgame前台开发总结--虽然是10年的文章,但是也有参考价值
一、webgame整个游戏流程:
1.预加载(打开游戏页面后,显示进度条,主要加载前期的登陆和创建角色资源,创建角色资源的加载可以放到进入创建角色界面的时候加载,因为玩家除了第一次进入游戏,其他时间基本上不用再创建角色,所以可以不用每次进入游戏都加载这部分资源)
2.登陆(登陆页面)
3.创建角色(如果登陆进入以后检测到还没有创建角色,或者玩家在选择角色界面点击了创建角色按钮,将会进入到该界面)
4.选择角色(一般情况下游戏中都允许创建多个角色,所以登陆后,玩家将会选择一个角色进入游戏,或者在该界面创建新角色,删除已创建的角色)
5.进入游戏(显示加载进度条,这部分主要加载整个游戏主程序和公用资源以及游戏前期所必须的资源)
6.游戏主界面(包括基本的聊天室,游戏框架按钮,主背景图,人物角色(RPG)等;
7.退出游戏;
二、webgame最基本的核心系统:
1.聊天系统(任何只要是多人玩的游戏就会涉及到玩家之间的互动,最基础的就是即时交互系统)
2.邮件系统(邮件系统是游戏中很重要的一个部分,涉及到信息的保存,物品的交易和转寄等)
3.任务系统(可以说几乎所有的游戏都会有任务系统,玩家在游戏中如果没有任务可做,可能会显得不知道干什么)
4.战斗系统(几乎所有的游戏,特别是武侠类的游戏,都会有战斗;战斗系统可以说是整个webgame游戏的比较核心的系统之一)
5.新手引导(为了玩家更快的熟悉游戏的设定,一般都会开放新手引导系统)
三、游戏中的核心元素:
1.地图→场景→建筑→NPC(包括游戏中的各种人物形象和怪物等)
2.游戏中的数值平衡(各种虚拟物品和货币的从无到有,再从有到无的一个良性循环)
3.人物装备栏
4.人物背包
5.人物技能
四、游戏前端可以公用的功能模块:
1.tooltip管理(游戏中的各个地方都可能用到tooltip,各种要求的自定义tooltip,包括图文混排的效果)
2.公用的面板,按钮样式管理(整个游戏UI界面尽量做到统一规划和布局,使大部分的资源可以重复利用,减少游戏的整体容量)
3.前后台的通信协议,通信机制,通信接口的封装(比如remote,socket 通信等)
4.资源加载的管理(按需加载机制的抽象封装。配置文件的加载和解析;图片、swf文件等的加载、缓存和使用,各种sound包括背景音乐、音效的加载播放管理等)
5.整个游戏UI前台的管理和资源的管理
6.各种Utils和Tools的工具类
7.Global全局变量管理和Constant 常量统一管理
【转】webgame前台开发总结--虽然是10年的文章,但是也有参考价值的更多相关文章
- 从AngularJS2谈到前台开发工程化
才刚刚对AngularJS有些了解,又听闻AngularJS2早就铺天盖地了,AngularJS3刚刚夭折,AngularJS4今年已经发布了,还是学习先下AngularJS2吧,据说更加适合以移动为 ...
- 快速开发 jQuery 插件的 10 大技巧(转)
1. 把你的代码全部放在闭包里面 这是我用的最多的一条.但是有时候在闭包外面的方法会不能调用.不过你的插件的代码只为你自己的插件服务,所以不存在这个问题,你可以把所有的代码都放在闭包里面.而方法可能应 ...
- Qt开发程序在Windows 10应用须要管理员执行的解决思路
Qt开发程序在Windows 10应用须要管理员执行的解决思路 过了非常长的时间没有公布博客了.可是我依旧努力地开发Qt程序.眼下呢.我发现开发Qt程序在Windows 10上有一个怪现象--有些程序 ...
- 2019第一期《python测试开发》课程,10月13号开学
2019第一期<python测试开发>课程,10月13号开学! 主讲老师:上海-悠悠 上课方式:QQ群视频在线教学,方便交流 本期上课时间:10月13号-12月8号,每周六.周日晚上20: ...
- Xamarin图表开发基础教程(10)OxyPlot框架支持的图表类型
Xamarin图表开发基础教程(10)OxyPlot框架支持的图表类型 OxyPlot组件支持26种图表,这些图表按照功能和样式可以分为4大类,分别为线型图表.条型图表.金融图表和其它图表. 线型图表 ...
- AndoridSQLite数据库开发基础教程(10)
AndoridSQLite数据库开发基础教程(10) 添加触发器 触发器(TRIGGER)是由事件来触发某个操作.这些事件包括INSERT.DELETE.UPDATE和UPDATE OF.当数据库系统 ...
- 听说你在从事前端开发?那这10个JavaScript的优化问题你不得不知道!
JavaScript的高效优化一直都是我们前端开发中非常重要的工作,也是很多开发人员无法做好的一部分内容,今天我总结了10个优化问题,大家可以参考来做优化,这其中很多问题都是大家经常遇到的哦. ==和 ...
- 转:关于Python中的lambda,这篇阅读量10万+的文章可能是你见过的最完整的讲解
lambda是Python编程语言中使用频率较高的一个关键字.那么,什么是lambda?它有哪些用法?网上的文章汗牛充栋,可是把这个讲透的文章却不多.这里,我们通过阅读各方资料,总结了关于Python ...
- 高效开发Android App的10个建议
假如要Google Play上做一个最失败的案例,那最好的秘诀就是界面奇慢无比.耗电.耗内存.接下来就会得到用户的消极评论,最后名声也就臭了.即使你的应用设计精良.创意无限也没用. 耗电或者内存占用等 ...
随机推荐
- Projective Texture的原理与实现
http://blog.csdn.net/xukunn1226/article/details/775644 Projective Texture是比较常见的一种技术,实现起来代码也就区区的不过百行, ...
- Spring MVC 下index.jsp访问
spring-mvc.xml配置 <!-- 对模型视图名称的解析,即在模型视图名称添加前后缀 --> <bean class="org.springframework.we ...
- jQuery1.9+中删除了live以后的替代方法
.live() removed The .live() method has been deprecated since jQuery 1.7 and has been removed in 1.9. ...
- linq to sql ,将var 类型转为 IList 类型
public void SOHSelecting(int startRowIndex, int maximumRows, string sortExpression, string location) ...
- JAVA字符串格式化-String.format()的使用 (转载)
常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重 ...
- asp.net(C#)清除全部Session与单个Session
Session.Abandon();//清除全部SessionSession["UserName"] = null;Session.Remove("UserName&qu ...
- OCJP考试介绍
OCJP考试介绍 考试名称:SCJP / OCJP / 1Z0-851 考试时间:150分钟 考题题目:60道题 通过条件:大于等于61%的题目正确 考点查询:http://www.pearsonvu ...
- linux 命令行字符终端terminal下强制清空回收站
回收站其实就是一个文件夹,存放被删掉的文件. ubuntu 回收站的路径: $HOME/.local/share/Trash/ 强制清空回收站: rm -fr $HOME/.local/share/T ...
- Defining Database and Instance【数据库与实例】
Database: A collection of physical operating system files or disks. When usingOracle Automatic Stora ...
- Oracle 中的 TO_DATE 和 TO_CHAR 函数
Oracle 中的 TO_DATE 和 TO_CHAR 函数oracle 中 TO_DATE 函数的时间格式,以 2008-09-10 23:45:56 为例 格式 说明 显示值 备注 Year(年) ...