【转】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上做一个最失败的案例,那最好的秘诀就是界面奇慢无比.耗电.耗内存.接下来就会得到用户的消极评论,最后名声也就臭了.即使你的应用设计精良.创意无限也没用. 耗电或者内存占用等 ...
随机推荐
- mmm hardware/libhardware_legacy/power/
android源码目录下的build/envsetup.sh文件,描述编译的命令 - m: Makes from the top of the tree. - mm: Buil ...
- python之for学习
for i in range(100,-1,-1): print "%s\n"%i; import os path = 'D:\\Test' for root, ...
- QuickStart下的CommandFilter项目 github上自己修改过的版本
http://docs.supersocket.net/v1-6/zh-CN/Command-Filter 命令筛选的例子 从CommandFilterAttribute派生出新的命令筛选类,然后将这 ...
- 第四篇 在中国做ERP系统实施你必须知道的一些常识
1. ERP实施要特别从参与全球竞争的视角指引系统建设.中国社会经历了一个从计划经济体制到市场经济体制的转变.中国加入WTO后,要与国际接轨,要按照世界贸易组织有关的贸易规则开展国际贸易.中国的关税与 ...
- python 捕获 shell/bash 脚本的输出结果
#!/usr/bin/python## get subprocess module import subprocess ## call date command ##p = subprocess.Po ...
- UUID的具体用法
String deleteUuid = UUID.randomUUID().toString(); java.util 类 UUID java.lang.Object java.util.UUID 所 ...
- JSON 之 SuperObject(9): TSuperType
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, For ...
- ImageView 设置图片
android doc中是这样描述的: public void setImageResource (int resId) 这是其中的一个方法,参数resld是这样: ImageView.setIm ...
- 函数lock_rec_enqueue_waiting
type_mode基础上 加上 LOCK_WAIT 表示等待状态 /****************************************************************** ...
- Eclipse 上安装 Maven3插件
原文:http://www.cnblogs.com/quanyongan/archive/2013/04/18/3028181.html eclipse 安装插件的方式最常见的有两种: 1. 一种是在 ...