文档章节

浪人棋牌游戏开发教程

棋牌游戏开发浪人
 棋牌游戏开发浪人
发布于 2017/04/21 15:37
字数 2538
阅读 246
收藏 1

  浪人棋牌游戏开发教程 www.langren.net

  简单的程序框架。 webgame程序构成:

  三大部分。

  第一是数据流程。第二是程序。第三是美术。

  其中,数据流程包括了功能。也只有在功能中才能体现数据流程。

  数据流程相当的麻烦,后面再讨论。 比如最简单的卖买产品。 要实现这个功能。

  那么需要有产品基础表、产品详细表、商店表、背包表。如果扩展性更强,相应的双表是少不不了的。

  表的问题都简单了。关键是这个物品有什么用。这样物品的来源,一大堆数据,物品的走向,又是一大堆数据。 最后,这些数据得绕成一个圈。 绕圈是一件困难的事情。特别是功能和道具多了起来的时候。难度是2的n次方。

  在绕圈之前,如果你比较熟练设计模式。那么这个过程可以简化。难度由2的n次方变为1。

  只需要有控制器、事件工厂、抽象道具工厂这三个虚类;再加上定时器,任务编辑器,这两个通用类。即可以构建一个健壮、高扩展的webgame。

  在webgame里控制器几乎可以等同于页面。随便采用一种模板技术即能很方便的处理。

  事件工厂是一个抽象类,所有的事件,如打工、战斗、移动等都由事件工厂的生产。并且接口相同,方便控制器控制。工厂模式。

  抽象道具工厂是一个抽象类,所有的道具,如城市、地图、装备等,都由抽象道具工厂生产。并且接口相同。工厂模式。

  事件与道具的结合又是一个桥接模式。

  美术:

  UI。简洁漂亮的界面总会有好处。

  小图标。道具,地图,装备。一类至少10个吧?大体上百把个是需要的。

  程序分5个部分: 服务器定时器。(C语言或自己设定服务器)定时循环执行某一段代码。而这段代码主要是根据数据库的数据进行更新。这个可以找个C语言程序员来做。对于C语言程序员来讲,这个功能是相当的简单。当然,具体的处理数据的判断和操作数据库,需要你自己写。让C语言程序员给你段标准代码就行了。完全支持sql语句的。

  php的话,可以配置corn实现。但是不管是什么操作系统,配置的时间最低是1分钟。所以,如果你要处理1秒钟刷新一次的情况。你还需要专门的定时器程序来处理,或者被定时执行的php需要包含sleep().

  当然,即使有即时交互,可以不管服务器端。只处理交互的双方的客

  户端。js和ajax实现。

  功能页面、功能函数。主要就是数据存取,判断,数据走向。 用上抽象类,会比较轻松。不过子类的爆炸是少不了的了。

  ajax函数。(可选)某些需要伪即时的功能要用到。 为了让游戏看起来酷一点。用吧。

  javascript函数。(可选)模拟客户端的数据计算。也就是webgame的与时间相关的数据。分为两部分。一部分是真实数据,是由服务器端的定时器计算的。另一部分是只有初始值,客户端显示用的。不需要即时同步,仅仅需要模拟同步就行。

  这里还包括一些漂亮的UI特效。毕竟是游戏。

  数据库。一大堆基础数据表和详细数据表。基础数据表:比如等级1到等级100的用户的属性初始值。详细数据表:每个用户的具体属性。

  数据库上,尽量优化。结构上能用1字节的就别用2字节。

  二、一个详细的例子。

  单纯的讨论数据流程是件痛苦的事情。 讨论程序而不给代码也是比较痛苦。

  这里用的是php+mysql的。同时,这个例子没有用到类。如果时间充足的话,今年年底,我会提供一个带即时交互的简单webgame代码和核心类来说明使用了设计模式的好处。

  那就按一个超简单的webgame的方式来讨论。配上适当的代码。应该有所帮助。不足的地方也请大家指出,对我个人也是帮助。

  我们不去考虑游戏的可玩性,数值平衡等等问题。我们先只考虑一个简单例子的实现。

  那么一个webgame的基本内容需要些什么呢?

  数据库:玩家、地图、城市、建筑、武器、士兵。

  功能:登陆、升级、个人战斗、士兵之间的战斗、与城市的战斗、修建建筑、打造武器、买卖道具。

  (注意:每一个功能,必然对应1个或多个数据表。上面数据库中所列的只是基础中的基础。)

  首先是地图、城市、建筑。

  这里认为,地图可以有多张,城市在地图上,建筑在城市内。

  地图表

  Map :Map_ID ,X坐标, Y坐标,City_ID(城市ID),描述。

  其中Map_ID是指地图的id。不是自动编号。一张地图就是一个Map_ID,可以重复。

  城市表

  City:City_ID,城市名字,城市所有人,城市等级,城市资源,描述。

  建筑表

  Build:ID,City_ID,建筑名称,建筑等级,建筑功能。

  其中,地图表确定城市的位置,城市表确定城市的相关数据以及所有人,建筑表内的多条信息属于某一个城市。

  一、根据开发网页棋牌游戏教程,开发游戏首先要有一个简单的程序框架。webgame程序构成:三大部分。第一是数据流程。第二是程序。第三是美术。其中,数据流程包括了功能。也只有在功能中才能体现数据流程。数据流程相当的麻烦,后面再讨论。比如最简单的卖买产品。要实现这个功能。那么需要有产品基础表、产品详细表、商店表、背包表。如果扩展性更强,相应的双表是少不不了的。表的问题都简单了。关键是这个物品有什么用。这样物品的来源,一大堆数据,物品的走向,又是一大堆数据。最后,这些数据得绕成一个圈。绕圈是一件困难的事情。特别是功能和道具多了起来的时候。难度是2的n次方。在绕圈之前,如果你比较熟练设计模式。那么这个过程可以简化。难度由2的n次方变为1。只需要有控制器、事件工厂、抽象道具工厂这三个虚类;再加上定时器,任务编辑器,这两个通用类。即可以构建一个健壮、高扩展的webgame。在webgame里控制器几乎可以等同于页面。随便采用一种模板技术即能很方便的处理。事件工厂是一个抽象类,所有的事件,如打工、战斗、移动等都由事件工厂的生产。并且接口相同,方便控制器控制。工厂模式。抽象道具工厂是一个抽象类,所有的道具,如城市、地图、装备等,都由抽象道具工厂生产。并且接口相同,工厂模式,事件与道具的结合又是一个桥接模式。通过开发网页棋牌游戏教程,我们了解到美术在游戏开发中的重要性:

  UI。简洁漂亮的界面总会有好处。小图标。道具,地图,装备。一类至少10个吧?大体上百把个是需要的。程序分5个部分:服务器定时器。(C语言或自己设定服务器)定时循环执行某一段代码。而这段代码主要是根据数据库的数据进行更新。这个可以找个C语言程序员来做。对于C语言程序员来讲,这个功能是相当的简单。当然,具体的处理数据的判断和操作数据库,需要你自己写。让C语言程序员给你段标准代码就行了。完全支持sql语句的。php的话,可以配置corn实现。但是不管是什么操作系统,配置的时间最低是1分钟。所以,如果你要处理1秒钟刷新一次的情况。你还需要专门的定时器程序来处理,或者被定时执行的php需要包含sleep().当然,即使有即时交互,可以不管服务器端。只处理交互的双方的客户端。js和ajax实现。功能页面、功能函数。主要就是数据存取,判断,数据走向。用上抽象类,会比较轻松。不过子类的爆炸是少不了的了。ajax函数。(可选)某些需要伪即时的功能要用到。为了让游戏看起来酷一点。用吧。javascript函数。(可选)模拟客户端的数据计算。也就是webgame的与时间相关的数据。分为两部分。一部分是真实数据,是由服务器端的定时器计算的。另一部分是只有初始值,客户端显示用的。不需要即时同步,仅仅需要模拟同步就行。这里还包括一些漂亮的UI特效。毕竟是游戏。数据库。一大堆基础数据表和详细数据表。基础数据表:比如等级1到等级100的用户的属性初始值。详细数据表:每个用户的具体属性。根据开发网页棋牌游戏教程,数据库上,尽量优化。结构上能用1字节的就别用2字节

© 著作权归作者所有

共有 人打赏支持
棋牌游戏开发浪人
粉丝 0
博文 2
码字总数 3752
作品 0
深圳
程序员
棋牌游戏开发运营需关注用户体验

  现代社会的工作压力大,人们的生活节奏也变得更快,手机游戏已经成为人们减压放松的一种方式,且人们非常依赖这种方式。棋牌游戏作为手机游戏中的一种,因为玩法简单、富有趣味和挑战性,...

壹柒游棋牌开发
2017/12/26
0
0
棋牌游戏开发不可忽视的三个重点内容

  作为专业的棋牌游戏开发商,壹柒游来谈谈棋牌游戏开发的几个步骤,以及不可忽视的几个重点。只有脚踏实地逐步去做,一个成功的棋牌游戏才能面向玩家。   1.确定需求:棋牌游戏的开发要...

壹柒游棋牌开发
2017/12/05
0
0
棋牌游戏开发:选正规棋牌游戏开发商合作的重要性

  棋牌游戏成为当下投资创业的热门项目,如果想要做好棋牌游戏运营,首先需要一款优质的棋牌游戏产品,在自身没有棋牌游戏开发经验的情况下,前期寻找正规专业的棋牌游戏开发商进行合作将会...

壹柒游棋牌开发
2017/12/20
0
0
房卡棋牌游戏如何开发运营,需要多少钱

  房卡棋牌游戏从开发到运营的步骤介绍:   1、市场调研:对棋牌游戏市场趋势、竞争对手进行调研,为定制房卡游戏APP开发和设计提供参考。需要了解市面上有哪些棋牌游戏,哪些棋牌游戏赚...

壹柒游棋牌开发
2017/12/14
0
0
房卡棋牌游戏开发运营如何来展现地方特色

  棋牌游戏在我国有着悠久历史,经过长时间的发展演变,在我国不同的省份都有自己独特的文化特征,有着较明显的文化差异。地方房卡棋牌游戏能够说是棋牌游戏大家庭中对比特别的一个分支,地...

壹柒游棋牌开发
01/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

python中cv2模块imread函数

导入 >> import cv2>> import numpy as np 读图片 >> image_arr = cv2.imread('file_path') 灰度图扩展成彩色图 可以通过图片的channel判断是否是灰度图。如果需要可以将灰度图扩展到RGB......

温子寒
8分钟前
0
0
利用剪切板JS API优化输入框的粘贴体验

直接复制记录下 /**@description 表单输入框粘贴体验优化,出处https://www.zhangxinxu.com/wordpress/?p=8003@author zhangxinxu*/// 遍历所有的输入框[].slice.call(document.qu...

红羊在厦门
15分钟前
0
0
2018CTF大赛学习

1.C伪随机数,可预测,可用来做加密解密,如 int main() { // This program will create same sequence of // random numbers on every program run for(int i = 0; ......

simpower
29分钟前
0
0
XamarinEssentials教程移除键值首选项的键值

XamarinEssentials教程移除键值首选项的键值 如果开发者不再使用首选项中的某一项时,可以将该项移除掉。此时可以使用Preferences类的Remove()方法,该方法可以将存在于首选项中的指定键以及...

大学霸
36分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部