【转】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上做一个最失败的案例,那最好的秘诀就是界面奇慢无比.耗电.耗内存.接下来就会得到用户的消极评论,最后名声也就臭了.即使你的应用设计精良.创意无限也没用. 耗电或者内存占用等 ...
随机推荐
- 对Java不能多继承,只能单继承,却可以实现多个接口的理解
1.java与C++的不同点在于多继承. Java:不能多继承,只能单继承,但可以实现多个接口 C++:可以实现多继承.例如: class A extends B implements C,D,E { ...
- BZOJ 2751 容易题
题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=2751 题意:有一个数列A已知对于所有的A[i]都是1到n的自然数,并且知道对于一些A[i ...
- Perl文件读写
Perl File Handling: open, read, write and close files #==================== Opening files Solution 1 ...
- hibernate工具类HibernateUtil详解
1.为什么要用hibernateUtil这个类,先看这段代码: //加载配置文件信息默认为hiberna.cfg.xml,如果不是的话那么就在config()方法里面去解析他 Con ...
- QQ互发消息
private NewsData data; private void button3_Click(object sender, EventArgs e) //发送 { string x = text ...
- 谷歌的ajax.googleapis.com被墙导致访问很多国外网站很慢的解决方法
比如访问StackOverflow, 更比如flexerasoftware.com(导致Visual Studio的打包程序InstallShield Limited Edition不能注册和下载) ...
- 关于NSString的retainCount的各种结果原因
转载:http://blog.csdn.net/onlyou930/article/details/6932529 http://www.cnblogs.com/celestial/archive/2 ...
- 关于Latent Dirichlet Allocation
今天,也没出去,晚上宿舍没有人,自己思考了下人生,毕设还是大事,觉得现在有必要把LDA从前往后彻彻底底的读一遍了,因为现在的感觉就是什么都知道一点皮毛,但是理解的都不深,LDA好像(恩,相当不好)现在 ...
- 部署在IIS服务器的asp.net 网站,禁止访问指定类型文件
网站上的一些文件不希望用户访问,可以通过下面的方式简单实现.不需写代码(在IIS6下试验过). 第一步,在IIS中实现映射. 哪些文件需要特殊处理. 通俗的将就是将哪种类型的文件交给特定的工厂来处理. ...
- Java 中方法的重载
问: 什么是方法的重载呢? 答: 如果同一个类中包含了两个或两个以上方法名相同.方法参数的个数.顺序或类型不同的方法,则称为方法的重载,也可称该方法被重载了.如下所示 4 个方法名称都为 show , ...