【转】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上做一个最失败的案例,那最好的秘诀就是界面奇慢无比.耗电.耗内存.接下来就会得到用户的消极评论,最后名声也就臭了.即使你的应用设计精良.创意无限也没用. 耗电或者内存占用等 ...
随机推荐
- Docker入门命令
Edit Docker入门命令 # 安装镜像sudo docker pull ubuntu:12.04# 镜像列表sudo docker images# 运行镜像sudo docker run -t ...
- 如何从List<T>中筛选符合条件的数据的集合或个数
方法一:Linq ChannelList就是一个List类型的数据,IsOpen 是其元素的属性 channelCount = (from channel in DevicesManager.Inst ...
- Webservce、WCF、WebApi的区别
Web Service It is based on SOAP and return data in XML form. It support only HTTP protocol. It is no ...
- 【Todo】深入理解Java虚拟机 读书笔记
有一个在线系列地址 <深入理解Java虚拟机:JVM高级特性与最佳实践(第2版)> http://book.2cto.com/201306/25426.html 已经下载了这本书(60多M ...
- poj 3353 Road Construction tarjan 边双联通分支 缩点+结论
题意:一个连通的无向图,求至少需要添加几条边,救能保证删除任意一条边,图仍然是连通的. 链接:http://poj.org/problem?id=3352 思路:边的双连通图.其实就是要求至少添加几条 ...
- BZOJ 1452 Count
长知识啦..二维BIT. #include<iostream> #include<cstdio> #include<cstring> #include<alg ...
- *ecshop 模板中foreach用法详解
1.foreach分以下几个参数 from, item, name, iteration, index 2.使用foreach循环 如果php要传递一个数组(如:$array)给ecshop ...
- Python中字符串的使用
这篇文章主要介绍python当中用的非常多的一种内置类型——str.它属于python中的Sequnce Type(序列类型).python中一共7种序列类型,分别为str(字符串),unicode( ...
- 配置java环境时,java的path地址放在其他地址的前面还是后面?
PATH环境变量里是按顺序查找的,如果电脑里只有一个jdk,放哪都一样,有多个放前面的会优先. 一般是放在最前面吧,以免其他在path中的程序需要用到Java环境而由于在JAVA_PATH之前 ...
- git 创建一个新分支,并将一个分支内容复制给创建的新分支
git checkout -b newBranchName