第一篇:毕业设计论文(网络棋牌游戏大厅的设计与实现)
本 科 毕 业 设 计(论文)
题 目:网络棋牌游戏大厅的设计与实现
学生姓名:周思海 学
号:10082322 专业班级:通信工程10-3班 指导教师:顾朝志
2014年 6月20日
中国石油大学(华东)本科毕业设计(论文)
网络棋牌游戏大厅的设计与实现
摘 要
随着中国社会经济的不断增长,信息技术的飞速发展,人们对于日常休闲娱乐需求与日俱增。网络棋牌游戏以其群众基础广泛,简单易学,单局游戏时间短暂等特点,逐渐被大家推崇和喜爱。
本课题综合考虑了C++语言稳定性良好、执行效率高、开发周期长,以及Lua语言代码简单、可移植性高、能与C++紧密结合等特点,通过Lua与C++语言的交互,实现PC端网络棋牌游戏大厅的设计,使得系统兼具稳定性好、执行效率高、开发周期短和日常维护方便等优点。作为整体系统中的一部分,本课题主要负责游戏登陆界面以及游戏大厅部分的设计与实现。游戏登陆界面需要验证账号密码,验证成功后,跳转到游戏大厅,大厅内分为用户信息、热门游戏、普通游戏、辅助系统、通知公告五个模块,通过大厅用户可以了解到全方面的游戏信息,轻松地进入各种游戏并且选择房间或者进入后台网站进行充值等操作。
关键词: C++语言;lua语言;登陆界面;游戏大厅
中国石油大学(华东)本科毕业设计(论文)
Design and implementation of network chess game lobby
Abstract With the rapid development of China 's growing social economy , information technology, people growing demand for daily recreation.Internet chess game with its masses of broad-based, easy to learn, single game time is short and so on , gradually respected and loved by everyone.This topic considering the C + + language good stability, high efficiency , long development cycles and Lua language code is simple, portable high , with C + + in close connection with other characteristics, through interaction Lua and C + + language , to achieve the PC network design chess game lobby , making the system both good stability, high efficiency , short development cycle and facilitate daily maintenance.As part of the overall system , the subject is primarily responsible for the game login screen and the design and implementation of parts of the game lobby.Game login screen need to verify the account password, authentication is successful, jump to the games hall, the hall is divided into user information, popular games, common games, support system , Announcement five modules , you can learn all aspects of the game through the lobby Users information and easily into a variety of games and choose the room or into the background site recharge operation.Keywords: C + + language;lua language;login screen;games hall
中国石油大学(华东)本科毕业设计(论文)
目 录
第1章
绪论..........................................................................................................................1
1.1 课题研究背景和意义...............................................................................................1 1.2 课题现状与发展趋势...............................................................................................1 1.3 论文组织结构...........................................................................................................1 第2章 C++编程语言与轻量级脚本语言lua语言概述......................................................3
2.1 C++语言概述.............................................................................................................3
2.1.1 C++语言优点分析..........................................................................................3 2.1.2 C++语言缺点分析..........................................................................................3 2.2 lua语言特点概述......................................................................................................3
2.2.1 lua语言优点分析...........................................................................................3 2.2.2 lua语言缺点分析...........................................................................................4 2.3 C++中嵌入lua语言技术概述..................................................................................4 2.4 本章小结...................................................................................................................4 第3章 系统分析....................................................................................................................5
3.1 总体需求分析...........................................................................................................5 3.2 系统性能分析...........................................................................................................5 3.3 可行性分析...............................................................................................................7
3.3.1 经济可行性....................................................................................................7 3.3.2 技术可行性....................................................................................................7 3.4 本章小结...................................................................................................................7 第4章 系统设计与实现........................................................................................................8
4.1 系统功能模块设计...................................................................................................8
4.1.1 游戏登陆模块................................................................................................8 4.1.2 大厅用户信息显示模块................................................................................9 4.1.3 大厅热门游戏模块......................................................................................10 4.1.4 大厅普通游戏房间模块..............................................................................10 4.1.5 大厅辅助系统模块......................................................................................11 4.1.6 大厅通知公告模块......................................................................................11
中国石油大学(华东)本科毕业设计(论文)4.2 数据库设计.............................................................................................................11 4.3 系统的实现.............................................................................................................12
4.3.1 界面布局设计..............................................................................................12 4.3.2 主要代码实现..............................................................................................17 4.4 本章小结.................................................................................................................19 第5章 系统测试..................................................................................................................19
5.1 系统功能测试.........................................................................................................19
5.1.1 游戏登陆模块测试......................................................................................19 5.1.2 大厅用户信息显示模块测试......................................................................20 5.1.3 大厅热门游戏模块测试..............................................................................21 5.1.4 大厅普通游戏房间模块测试......................................................................22 5.1.5 大厅辅助系统模块测试..............................................................................23 5.1.6 大厅通知公告模块测试..............................................................................24 5.2 本章小结.................................................................................................................25 第6章 总结与展望..............................................................................................................27
6.1 课题工作总结.........................................................................................................27 6.2 下一步工作展望.....................................................................................................27 致
谢....................................................................................................................................28 参考文献................................................................................................................................29
第1章 绪论
第1章
绪论
1.1 课题研究背景和意义
棋牌文化在中国已经有几百年的历史,大家在工作之余,晚饭之后便会三五成群开始棋牌对弈。棋牌对于年龄、时间以及地点的要求非常低,这使得其成为中国社会最常见的娱乐形式。随着社会经济的发展,网络信息技术的日益完善提高,人们对于日常休闲娱乐需求与日俱增,在学习工作之余,大家总会在网络上选择一些游戏作为休闲娱乐,放松身心的载体。因此网络棋牌游戏以其方便快捷、群众基础广泛,简单易学,单局游戏时间较短等特点,逐渐被大家推崇和喜爱。其中网络棋牌游戏登陆和大厅部分作为与用户交互最直接的一部分,如何能够吸引用户,顺利引导其进入游戏显得尤为重要。
作为运营的商业项目,由于用户量将和效益直接相关而显得至关重要。只有用户数量庞大,项目有收益才能称为合格的项目。无论是游戏本身、登陆界面或者是游戏大厅一切都应该精益求精,力求吸引住每一位客户,争取使得用户帮助宣传。因此美观的界面、便捷的操作,作为网络棋牌游戏大厅部分最不可忽视部分,对于吸引用户、增加用户量、减少用户流失有重要的意义。
1.2 课题现状与发展趋势
目前我国的网络游戏主要包含2大类,一种是我们要研究的传统线上棋牌休闲类游戏,而另一种是以动作/回合角色扮演为代表的网络RPG游戏。现在我们重点分析棋牌休闲类游戏。
网络游戏本身就是一个投入较低、回报巨大的行业,而且棋牌游戏在中国有着扎实的群众基础,这使其成为了中国网络市场内最赚钱、最具竞争力的的游戏类型之一,从最早的联众、边锋到JJ斗地主、新锐棋牌游戏平台快乐之都等,越来越多的成熟棋牌游戏平台出现在人们的视野中。
由以上几点不难看出,经过最近几年的发展,国内的在线棋牌游戏很早之前就摆脱了单调无趣的雏形,现在出现在大家视野中的棋牌娱乐平台界面精美,后台辅助系统功能完善、游戏精彩鲜活。这些都预示着网络棋牌游戏必然将在网络游戏市场内大放异彩、经久不衰。
1.3 论文组织结构
本文讲述的是网络棋牌游戏大厅的设计与实现。第一章前言,本章主要介绍了此系统
第1章 绪论 的背景与意义以及当前研究的情况与未来发展趋势;第二章讲述的是本系统开发过程中所需要的基本语言与技术及其各自的特点;第三章是对整个系统的需求分析;第四章讲述了对于此游戏系统的设计与实现;第五章是对本系统内各模块的整体测试;第六章是对于课题的总结以及对于下一步工作的展望。还包括对引用文献的说明等。
第1章 绪论
第2章 C++编程语言与轻量级脚本语言lua语言概述
2.1 C++语言概述
C++语言是一种使用频率非常广泛的计算机编程语言。它是一种静态数据类型检查的并且支持多重编程范式的通用的程序设计语言。它提供了对象、类,以及继承的概念,奠定了面向对象语言的基础[1]。C++不仅支持过程化程序设计、数据抽象、面向对象的程序设计,还支持泛型程序设计等多种程序设计风格。2.1.1 C++语言优点分析
几乎所有的计算环境中对于C++的使用都非常普及,无论是个人电脑或者Unix工作站以及大型计算机中对于C++的使用都很频繁。众所周知,C++是建立在C语言的基础之上的,C语言的成功无形中对于C++的普及产生了巨大的帮助,然而C++的流行却远不仅仅是这一个原因。C++有许多优点:
① C++语言的适用程序范围极其广泛。它几乎可以用于所有的应用程序,无论是文字处理的应用程序或者是科学应用程序全部可以由其完成。
② C++继承了C语言中的高效性,并与面向对象编程方式的功能进行了集成。③ C++语言在其标准库中为开发者提供了大量方便快捷的功能。2.1.2 C++语言缺点分析
虽然C++语言拥有普及范围广泛、高效等众多的优势,然而在具体游戏应用的开发和使用中还是存在部分的不足之处:
对于在线运营的网络游戏应用程序来说,日常地更新和维护显得至关重要,如果游戏全部使用C++进行开发,更新维护时便需要更新执行文件,这对于频繁的更新来说显得过于复杂繁重。
C++语言编译过程中所需时间长,使得项目开发周期无形中便会变长。
C++学习难度比较大,对于刚刚接触C++的技术人员很难立刻进行项目的研发工作。
2.2 lua语言特点概述
Lua是一个小巧的脚本语言。作者是巴西人。该语言的设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能[2]。Lua[3]是由标准C编写而成,代码简洁优美,并且几乎可以编译、运行在所有操作系统和平台上。2.2.1 lua语言优点分析
第2章 C++编程语言与轻量级脚本语言lua语言概述
Lua作为一种小巧的轻量级脚本语言,相对于传统的编程语言来说具有很多优势: ① 轻量级:Lua[4]语言的官方版本内仅仅包括一个精简的核心和最基本的库。从而使得Lua语言体积小、启动速度快,非常适合嵌入在其他程序中。
② 可扩展:Lua语言并不像其它许多庞大且全面的语言一样,包含很多的功能,例如图形界面、网络通讯等。但是Lua却提供了非常方便使用的扩展接口和机制:由其C或C++的宿主语言提供这些拓展功能。
Lua语言正是以其轻便简洁、在大型项目中易于理解和维护等特点,使其使用率在逐年上升,成为最受欢迎的语言之一。2.2.2 lua语言缺点分析
Lua语言的有点是足够小和简洁,然而它最大的不足之处也正是这几个字。虽然Lua语言简洁,却依然存在一些不足之处:
Lua为了追求简洁,语言自身没有带有过多的库,使得在编程过程中需要使用的库需要第三方提供。
Lua语言不支持多线程,使得程序在同一时间内无法运行多个任务。
Lua语言内没有continue关键字,导致一些本来简单的循环将会变得异常难以书写。Lua与C语言的接口风格。相对于Python和Perl使用的接口,Lua的接口风格和汇编语言更加接近,对于刚刚接触Lua语言的人来说,使用起来会觉得不习惯。
2.3 C++中嵌入lua语言技术概述
实际工程开发过程中,我们使用tolua++将C++与Lua进行绑定,使其进行交互[5],通过运用tolua++可以大幅度简化二者一体化的过程。
tolua++是一种第三方的软件包,可以为Lua提供面向对象的特性,这样我们就可以使用Lua来编写使用C++语言库的脚本文件[6]。通过编写干净整洁的C++头文件,tolua++会自动的将代码转化为可以供Lua访问C++接口[7]的相关代码。通过运用Lua自己的API和标记方法,tolua++可以将C++里面的变量、函数、常量、类以及方法映射到Lua里面。在tolua++的帮助下可以快速生成对应的C++文件,节省大量开发时间。
2.4 本章小结
本章介绍了本系统开发过程的所需要的技术,简单分析了C++和Lua语言在本系统中的优缺点,最后介绍了C++与Lua交互所需要的tolua++技术,以及二者进行交互后的在系统开发、理解和维护中的优势。
第3章 系统分析
第3章 系统分析
在以前,棋牌游戏都是大家茶余饭后三五成群聚在一起的消磨时间的方式,而如今随着信息技术的飞速发展,网络已经成为人们生活中不可或缺的重要组成部分。所以为了顺应时代的发展,棋牌游戏也需要走进网络,这样才能更方便的走进人们的生活。网络棋牌游戏的开发主要是为了丰富人们的日常生活,缩短了大家娱乐时存在的时间和空间上的距离。
3.1 总体需求分析
网络棋牌游戏登陆界面和大厅是用户进入游戏必须经过的中间过程,首先用户必须先通过登陆界面进行账号密码的匹配验证,只有验证成功以后才能进入到游戏大厅界面,游戏大厅内的布局尤为重要,不仅要求简单明了,还需要展示尽可能多的有许多游戏和系统的信息给用户。
游戏登陆窗口以及大厅界面是系统内最直接与用户进行交互的部分。随着信息的发展与软件应用的普及,大家对于软件的要求也在逐步提高,客户并不会仅仅考虑一款软件的实用性,对于软件界面给人的视觉感受,客户要求也在提高。使得软件并不仅仅有操作上的便捷,同时兼具视觉上的享受。任何一款软件如果失去了美观的界面,创新性、操作感即使再好也难以得到用户的垂青。任何一款软件的成功都是在界面、操作所有方面都具有吸引力,因此界面[8]设计一定会占据成功因素的很大一部分比例。
本系统设计重点:
美观:如果把软件和人做比较,那么软件的界面便相当于人的外表与气质,因此软件界面的美观程度将直接影响用户对于软件的第一印象,美观的界面对于减少客户流失起到至关重要的作用。
布局合理:软件所有功能菜单的布局,按键的位置大小,都必须严格考虑其是否符合多数用户的操作习惯。如果功能按键布置不合理将直接影响用户的操作体验,使用户产生厌烦心理。
操作简洁:作为棋牌游戏的登陆与大厅部分本身并不需要太多的操作[9],唯一的要求就是操作简洁,系统各部分之间的链接恰当,毕竟作为棋牌游戏,需要面向的是所有年龄段的用户,对于一些上了年纪的用户来说,太复杂的界面会带给其来诸多不便,影响游戏心情。
3.2 系统性能分析
第3章 系统分析
网络棋牌游戏为了丰富用户的生活、吸引用户便需要在游戏本身外引入很多辅助的系统,例如包含有经验等级、昵称、头像的人物信息系统等等。因此根据工作流程和实际的需求,把本课题分为以下几个模块:
游戏登陆模块:用户输入正确的账号密码与后台数据进行比较,账号密码匹
配正确则进入游戏大厅界面,否则系统提示“密码错误”等提示。
大厅用户信息显示模块:此模块用于展示用户的头像和等级,另外包含有背包、人物信息、好友和任务等按钮,点击相应按钮弹出对应的窗口并显示相关信息。
大厅热门游戏模块:大厅热门游戏模块主要用于运营时的宣传,运营商可以把刚刚上线或者玩家较多的游戏放在此处,给用户一个快速进入游戏的渠道,简化用户进入游戏的流程。
大厅普通游戏以及房间模块:此模块是用户进入游戏的通道,进入游戏大厅时,用户可以在此模块选择自己感兴趣的游戏,点击游戏之后,游戏选择界面变为房间选择界面,选择不同房间进入不同的牌桌开始游戏。
大厅辅助系统模块:此模块主要提供给用户一些后台网站的接口,充值等功能都是在后台网站内进行,点击相应功能,会自动打开该后台网站。
大厅通知公告模块:此模块展示游戏相关的最新公告,使用户快速了解最新的优惠活动和及时参加系统组织的限时比赛等等。
总体用例图如图 3-1所示。
图 3-1 总体用例图
第3章 系统分析
3.3 可行性分析
本系统是为了解决传统棋牌游戏过程中玩家时间和空间难以统一的问题。本文接下来将从经济可行性和技术可行性两方面对系统进行分析。3.3.1 经济可行性
1.支出
(1)基本投资: 硬件:PC机
软件:WindowsXP/7系统、Sqlyog、Scite;
(2)其他一次性支出:主要为软件设计和开发费用,软件开发的过程中,投入软件设计和开发费用包括:购买书籍资金、正版VC++6.0安装盘、需求分析费用。
(3)经常性的支出:主要是服务器费用和软件后期维护费用。软件开发完成并投入后期使用时,对软件产品的后期维护产生的费用。
2.效益
网络棋牌游戏的收益一般都非常可观,一般来说,只要达到1000左右的用户量,项目本身便不会亏本。对于一些推广程度较高,用户量很大的城市来说,一款网络棋牌游戏月入百万千万并非难事。3.3.2 技术可行性
本系统的底层全部由C++开发,包括有网络部分、可供调用的接口以及前端界面布局规则等等,然后将C++函数接口暴露给lua,前端通过规定好的规则用.cs文件剪切图片并且进行界面布局,并且全部使用易于学习和使用的脚本语言lua语言进行开发。可以大幅度缩短工程周期,使得系统更加灵活简洁,并且利于后期维护。
3.4 本章小结
本章首先进行了系统的总体需求分析,确定了需求重点,然后对本系统的性能进行了分析,最后又从经济可行性和技术可行性两方面分析了项目的可行性。
第4章 系统设计与实现
第4章 系统设计与实现
4.1 系统功能模块设计
由于作者仅对该游戏系统部分功能模块进行设计与实现,即六个功能模块:游戏登陆模块、大厅用户信息显示模块、大厅热门游戏模块、大厅普通游戏房间模块、大厅辅助系统模块、大厅通知公告模块。各个功能模块之间没有必要的联系,它们之间完全可以独立开来。
4.1.1 游戏登陆模块
模块概要设计:
游戏登录模块包括:用户名和密码的录入,用户名和密码的获取,用户名和密码的匹配,错误信息提示。
(1)用户名和密码的录入:通过编辑框控件输入用户名和密码。(2)用户名和密码的获取:将控件中的值传递给控件变量。
(3)用户名和密码的匹配:将获取到的用户名和密码到数据库中去匹配,核对。(4)错误信息提示:根据用户名密码匹配结果和检查控件是否为空给出不同的错误提示信息。当用户名密码不匹配时弹出对话框显示用密码输入错误;当控件中内容为空时提示用户名/密码不能为空。系统登录功能如图 4-1所示。
2.设计流程和思想:
用户登录模块,首先用户输入用户名和密码,验证用户名或者密码是否为空,如果用户名或密码为空,则提示为空并等待用户填写完整;然后再判断用户名和密码是否与数据库中的记录相匹配。若不匹配则清空控件等待用户再次输入;若匹配成功则进入游戏大厅界面。
第4章 系统设计与实现
图 4-1 用户登录功能图
4.1.2 大厅用户信息显示模块
1.模块概要设计:
用户信息显示模块包括:用户头像信息,用户等级信息,个人信息窗口,好友以及任务窗口。
用户头像信息:主要用于显示用户系统默认或者的自己上传的头像。用户等级信息:通过经验值进行等级的判断,然后显示登记信息。
个人信息窗口:展示个人的所有信息,经验,账户金币,还包括密码的修改等。好友窗口:展示用户在系统内添加的好友。
任务窗口:展示用户当前正在进行或者未完成的任务。信息显示模块功能如图 4-2所示。设计流程和思想:
用户信息显示模块,当用户登陆成功后,跳转到大厅,系统自动获取用户等级、经验、头像和账户金币等信息,头像、等级信息以及账号金币会直接显示在游戏大厅界面,同时头像旁边会有人物信息、背包、好友和任务按钮,点击之后会弹出相应窗口。
第4章 系统设计与实现
图 4-2 信息显示模块功能图
4.1.3 大厅热门游戏模块
1.模块概要设计:
热门游戏模块主要提供进入热门游戏的通道,可以缩短查找游戏的的过程。2.设计流程和思想:
考虑到任何游戏平台都会存在需要重点推出的游戏或者用户量最多可以带来最大收益的游戏类别,本模块主要提供热门游戏的按钮,使得用户在游戏大厅内可以一目了然的了解当前最火热的游戏。4.1.4 大厅普通游戏房间模块
1.模块概要设计:
此模块是整个游戏系统的核心,系统捏所有种类的游戏以及每个游戏内的房间信息都在这里显示,供用户选择。
2.设计流程和思想:
本模块分为两层并且包含“返回”、“下一页”和“上一页”三个按钮,第一层为游戏层,游戏层会直接显示在游戏大厅内供用户选择,此时“返回”按钮状态为不可点击,点击具体游戏后会进入下一层:下一层为房间层,这一层显示时会覆盖掉游戏层,同时“返回”按钮变为可点击状态,此时点击房间会直接进入游戏,点击“返回”按钮则返回游戏层。此外,每页显示的游戏和房间的最大个数为9个,当游戏或者房间个数超过9个的时候,会自动分为两页,同时“下一页”按钮变为可点击状态,进入下一页后,“上一页”按钮变为可点击状态,点击则进入上一页。
第4章 系统设计与实现
4.1.5 大厅辅助系统模块
1.模块设计概要:
此模块主要提供几个按钮,包括游戏大厅、比赛详情、我要充值、元宝换金币和道具商城。点击之后会进入相应的辅助系统。
游戏大厅:即大厅初始界面,展示游戏信息。比赛详情:用来展示系统不定期举行的各类比赛。
我要充值:此功能由系统后台网站提供,游戏客户端仅仅提供网站链接。元宝换金币:此功能由系统后台网站提供,游戏客户端仅仅提供网站链接。道具商城:此功能由系统后台网站提供,游戏客户端仅仅提供网站链接。2.设计流程和思想:
本模块仅仅是在大厅界面提供几个按钮,点击游戏大厅后,界面会回到游戏列表;点击比赛详情,界面会显示系统内最新的比赛信息;点击我要充值、元宝换金币、道具商城按钮,则会自动打开游戏后台网站。4.1.6 大厅通知公告模块
1.模块设计概要:
此模块主要用于向用户展示游戏平台的相关通知及、常维护的公告以及活动信息,使用户第一时间掌握游戏平台动态。
2.设计流程和思想:
通知公告部分调用C++底层封装好的函数,打开后台网站链接,显示网站内通知公告内容;最新活动则是通过定期更改图片来展示给用户。
4.2 数据库设计
本课题在整体系统中仅仅占一部分,针对本系统的用户登录部分,使用SQLyog进行数据库搭建。
用户账户信息表主要包括账号和密码,表的基本情况如表 4-1所示。
表 4-1 用户登录表
字段名 Account Password 描述 用户账号
用户密码
数据类型 Char Char
数据长度 20 20
NULL Primarykey N N
Y N
第4章 系统设计与实现
表的具体实现情况如图 4-3。
图 4-3 账户信息数据设计图
4.3 系统的实现
本系统底层函数全部由C++封装,在具体开发时分为两部分:界面布局设计,功能的代码实现。具体开发步骤如流程图 4-4所示。4.3.1 界面布局设计
本系统界面布局规则由c++[10]在底层规定,通过.cs文件进行图片分割和页面布局。首先,美术工作人员提供提供设计好的大厅整体效果拆分图,如图 4-5所示。然后通过.cs文件将完整大图中的所有资源按照像素位置拆分为一个个独立的部分。以“返回”按钮为例,代码实现如下:
Skin = “Lobby_Go_Back”
//返回 {
Texture = “ui/boke/skin/lobby1.opf” Face = “Button: Enabled” {
} Position = 261 848 Size = 68 27 Border = 0
第4章 系统设计与实现
} Face = “Button: Highlighted” {
} Face = “Button: Pressed” {
} Face = “Button: Disabled” {
} Position = 471 848 Size = 68 27 Border = 0 Position = 401 848 Size = 68 27 Border = 0 Position = 331 848 Size = 68 27 Border = 0 具体代码含义解释:
Skin = “Lobby_Go_Back” :是对于整个“返回”按钮的定义,使得在进行布局的时候可以轻松找到该按钮。
Texture = “ui/boke/skin/lobby1.opf” :是找到所需要的在目录为“ui/boke/skin”内的名字为“lobby1”图片资源。
Face = “Button: xxxx” :这是按钮不同状态的图片定义,“Button: Enabled”为按钮正常情况的状态图片,“Button: Highlighted”为鼠标移动到该按钮上面时的状态图片,Face = “Button: Pressed”为点击按钮之后的状态图片,“Button: Disabled”为按钮不可点击时的状态图片。Face内Position为拆分图片左上角的X轴和Y轴像素位置,Size为剪切图片资源的长和宽的像素大小,Border则表示去掉图片的边缘部分。
当所有图片资源全部剪切分割完毕之后,便开始通过.cs文件进行界面的整体布局,以
第4章 系统设计与实现
“返回”按钮为例,代码实现如下: UI
{
LoadSkin = “ui/boke/skin/lobby_skin” Layout {
Frame = “Lobby Frame” {
Frame = “Game Frame” {
Left = 0.0 241.000000 Right = 0.0 781.000000 Top = 0.0 144.000000 Left = 0.000000 0.000000 Right = 1.000000 0.000000 Top = 0.000000 0.000000 Bottom = 1.000000 0.000000 Alpha = 1.000000 Skin = “operate” Color = 1.000000 1.000000 1.000000 Font = “Global 15” Shadow = false Alignment = “Center” Resizeable = false Moveable = false Receives Events = true Receives Bound = false Layer = 0
第4章 系统设计与实现
Bottom = 0.0 617.000000 Alpha = 1.000000 Receives Events = true Layer = 0
}
}
}
}
Button = “Lobby_Go_Back Button”
//返回 {
}
Left = 0.0 0.000000 Right = 0.0 68.000000 Top = 0.0 4.000000 Bottom = 0.0 31.000000 Alpha = 1.000000 Skin = “Lobby_Go_Back” State = “Enabled”
Animation Time = 0.000000 Receives Events = true Layer = 0 主要代码含义解释:
LoadSkin = “ui/boke/skin/lobby_skin” :载入路径为“ui/boke/skin”的名为lobby_skin.cs的配置文件。
Left、Right、Top、Bottom :内部两个参数分别表示该Frame或者Button相对于父亲模块的位置和相对位移。其中位置和位移可以使用比例或者像素两种表示方法。
Alpha :表示该对象初始状态是否显示,参数为1表示可见,参数为0表示隐藏。Skin :表示该对象使用的图片资源在图片分割配置文件内的名称。Color :表示该图片的颜色,可以通过参数进行控制。
第4章 系统设计与实现
Font :表示该对象内的字体及大小。
Alignment :表示该对象的对齐方式,参数可以为“Left”、“Right”和“Center”。Moveable :表示该对象是否可以被鼠标拖动,参数为“True”或“False”。Receives Events :表示该对象是否允许接受鼠标点击,参数为“True”或“False”。Layer :表示该对象所处的层级,参数较大的显示在前面。
Button = “Lobby_Go_Back Button” :表示该对象的属性为Button按钮。State :表示该对象的初始状态。
Animation Time :表示该对象鼠标点击的响应时间。
图 4-4 开发流程图
第4章 系统设计与实现
图 4-5 大厅整体效果拆分图
4.3.2 主要代码实现
页面布局完成之后,便需要编写代码进行具体功能的实现。下面介绍一些大厅内部功能的主要代码实现。
1.大厅内按钮响应
首先在初始化内通过调用封装好的函数找到之前已经完成的布局文件,代码如下: local layoutdir = base.ClientHelp.GetUILayoutDir();_ui:LoadLayout(layoutdir..“Lobby_Layout”);之后再通过代码找到页面布局的每一部分,从而通过代码控制该部分的功能以及是否显示,以返回按钮代码为例:
GoBackBt = _ui:FindButton(mainframe, “Lobby_Go_Back Button”);//首先在布局文件中中找到“返回”按钮GoBackBt
if(GoBackBt ~= nil)then end //给GoBackBt添加响应函数OnGoBackButton函数
之后在OnGoBackButton函数内添加具体我们想实现的功能,这样点击“返回”按钮之后ui.setListener(GoBackBt, ui.actions.key, OnGoBackButton);
第4章 系统设计与实现
便会响应我们编辑好的OnGoBackButton函数内的事件。
热门游戏普通游戏区分
在游戏表内每个普通游戏和热门游戏都会有一个RootID,其中所有普通游戏的RootID的值都是小于10000,而热门游戏的值则大于10000,这样遍历游戏的时候便可以通过比较RootID的值将普通游戏和热门游戏分开。代码实现如下:
for _,_entery in base.ipairs(gameshowlist)do
end 游戏及房间代码设计
游戏大厅内游戏和房间设计相同,这里以游戏为例。游戏每个页面最多显9个,点击每个游戏进入相应的游戏房间。代码控制时需要设置每个游戏的位置,并且要给每个游戏添加按钮的属性。代码设计如下:
for i = 1, 9 do
ui.setListener(button, ui.actions.key, OnItem(i));button:SetAlpha(1.0);local index =(i-1)%3;local index_h = math.floor((i-1)/3);local region = button:GetRegion();local bottom = region:GetRelativeBottom().mRelative;region:SetLeft(region:GetRelativeLeft().mRelative, region:GetRelativeLeft().mAbsolute local button = _ui:AddButton(gametreeFrame, string.format(“itme%d”, i));_ui:CopyUILayout(button, model_item);if(_entery:GetRootID()>=10000)then base.table.insert(hotgamelist, _entery);else end base.table.insert(normalgamelist, _entery);+ index*(10+174));region:SetRight(region:GetRelativeRight().mRelative, region:GetRelativeRight().mAbsolute + index*(10+174));
第4章 系统设计与实现
region:SetTop(region:GetRelativeTop().mRelative, region:GetRelativeTop().mAbsolute + index_h*(6+141));region:SetBottom(region:GetRelativeBottom().mRelative, region:GetRelativeBottom().mAbsolute + index_h*(6+141));
local itemcontent = {};itemcontent.Item = button;table.insert(itemlist, itemcontent);end 4.4 本章小结
本章主要首先对系统的各个功能模块进行了具体的设计,然后对所需要的数据库进行了分析设计,最后从系统界面布局和主要代码实现两个方面详细介绍了系统的具体实现过程。
第5章 系统测试
5.1 系统功能测试
黑盒测试也叫做功能测试,它是用来检测每个功能是否都能正常使用的一种测试方法[11]。黑盒测试过程中并不考虑软件的内部逻辑结构,该测试主要是针对软件界面感受以及软件功能进行测试。
黑盒测试的时候测试人员主要从用户角度出发进行测试,目的是尽可能多的发现软件的外部错误。在已知软件产品功能的基础上进行下列检测:
(1)检测软件的功能能否满足需求分析中提到的所有功能。(2)检测人机交互过程中数据库、后台网站访问是否存在问题。(3)检测程序初始化、运行结束和抛出异常等方面的错误等。
本系统主要使用黑盒测试方法,对系统进行测试,对需求分析中系统所要实现的功能进行测试。
5.1.1 游戏登陆模块测试
首先从登录页面开始如图5-1所示,输入用户名和密码,然后点击“登陆”按钮,如果录入的用户名或者密码不正确,就给出错误提示;如果正确,则进入游戏大厅界面,如图
第5章 系统测试
5-2所示。
图 5-1 系统登录界面
图 5-2 游戏大厅界面
5.1.2 大厅用户信息显示模块测试
用户信息会直接显示在大厅内部,效果如图 5-3所示。用户点击“个人资料”按钮显示
第5章 系统测试
个人信息窗口,效果如图 5-4所示。
图 5-3 信息显示界面效果图
图 5-4 人物信息资料效果图
5.1.3 大厅热门游戏模块测试
热门游戏模块仅仅提供几个按钮,用户点击不同游戏按钮进入不同的游戏。热门游戏
第5章 系统测试
模块效果如图 5-5所示。点击之后进入房间界面效果如图 5-6所示。
图 5-5 热门游戏效果图
图 5-6 游戏房间界面效果图
5.1.4 大厅普通游戏房间模块测试
普通游戏模块会直接显示在游戏大厅内,点击游戏之后会跳转到房间模块,同时点击“下一页”按钮会显示下一页的游戏,在房间模块内,点击“返回”按钮,会跳转回游戏模块。游戏模块效果如图 5-7。房间模块效果如图 5-8。
第5章 系统测试
图 5-7 游戏界面效果图
图 5-8 游戏房间界面效果图
5.1.5 大厅辅助系统模块测试
第5章 系统测试
大厅辅助系统主要包括点击“游戏大厅”按钮后,界面会回到游戏列表;点击“比赛详情”按钮,界面会显示系统内最新的比赛信息;点击“我要充值”、“元宝换金币”、“道具商城”按钮,则会自动打开游戏后台网站。本模块整体设计效果如图 5-9所示。比赛详情界面如图 5-10所示。
图 5-9 辅助系统效果图
图 5-10 比赛详情界面效果图
5.1.6 大厅通知公告模块测试
通知公告模块,仅仅显示后台网站的一部分内容和通知的宣传图片,该模块效果如图 5-11所示。
第5章 系统测试
图 5-11 通知公告模块效果图
5.2 本章小结
本章是对已经实现的系统的测试部分,包括了游戏登陆模块、大厅用户信息显示模块、大厅热门游戏模块、大厅普通游戏房间模块、大厅辅助系统模块、大厅通知公告模块的测试等。使得系统可能存在问题的风险降低,并且使本论文更为完善。
中国石油大学(华东)本科毕业设计(论文)
第6章 总结与展望
第6章 总结与展望
6.1 课题工作总结
本次毕业设计中,结合了数据库原理、软件工程、面向对象程序设计、Lua脚本语言编程这些知识,将课程的理论知识融到了该系统的设计当中,使理论和实践相结合。
通过这次毕业设计的学习,能够熟练地应用软件工程流程对网络棋牌游戏系统进行设计,即经过需求分析、概要设计、详细设计、系统实现和测试这些阶段,并应用C++与Lua交互来完成本毕业设计;懂得如何使用Lua脚本语言进行熟练地编写可视化应用程序;熟练掌握黑盒测试方法来测试系统的功能,检测出系统中存在的错误;同时也学会如何对数据库进行设计。
本课题作为整体游戏系统中的一部分,采用SQLlog作为后台数据库,实现了游戏登陆模块、大厅用户信息显示模块、大厅热门游戏模块、大厅普通游戏房间模块、大厅辅助系统模块、大厅通知公告模块的设计和操作,并能随着实际需要,动态地扩充系统的功能。
这次毕业设计的过程当中,遇到了很多问题。例如使用C++与Lua交互技术实现函数调用的操作,这是个很大的问题;配置文件的使用;设计模式的应用等。通过上网查找资料,查看各种书籍,还有老师和同学们的热心帮助,以上问题都基本得到解决。
6.2 下一步工作展望
虽然系统符合功能需求并且能够正常运行,但是程序还有很多需要改进的方面。还有某些功能没有实现,例如好友系统和任务系统的窗口并没有完善,但是时间有限,只能以后再做改进,尽可能多的完善此系统,使之成为成功的商业项目。
中国石油大学(华东)本科毕业设计(论文)
致
谢
在本次毕业设计中,我学到了很多知识,同时也真正的做到了学习能力与实践能力的锻炼。顾朝志老师认真的工作态度,严谨的治学精神以及深厚的理论水平无论是在对待工作的态度还是学习方面都使我受益匪浅。从选题,设计,中期检查,到完成毕业设计,顾老师都很细心地指导我,无论是在理论上还是在实践中,都给予我很大的帮助。在此,我向顾朝志老师表示衷心的感谢!
其次要感谢在这几年中给我授课的所有恩师,正是由于你们这几年来的辛勤教导使我汲取了大量的专业知识并且学会了做人的道理及解决问题的方法,为这次毕业设计和以后的工作打下了坚实的基础。同时还要感谢陪伴我一起走过来的同学,因为在你们的热心帮助下,我才能够取得进步,勇敢、微笑的面对各种困难,才能使我的大学生活丰富多彩。
中国石油大学(华东)本科毕业设计(论文)
参考文献
[1] 陈维兴.C++面向对象程序设计教程.第二版.北京:清华大学出版社,2004:10-20.[2] 百度百科Lua.http://baike.baidu.com/view/416116.htm?fr=aladdin.[3] Roberto Ierusalimschy.Programming in Lua.周惟迪译.Second Edition.北京:电子工业出版社,2008:10-20.[4] Jung K.Beginning Lua Programming.John Wiley&Sons 2007.[5] 邓正阳,陈和平.动态脚本语言Lua与C++交互方法的设计与实现.计算机系统应用,2010,19(5)
[6] Killwd.tolua++简介.http://blog.csdn.net/killwd/article/details/1423923.[7] 魏江平.Lua脚本语言在游戏引擎中的应用分析[J].微型电脑应用,2008,24(4):22-23 [8] 凌尘.主流游戏UI布局分析研究.http://blog.sina.com.cn/s/blog_6e5ced6e0100qk2a.html.[9] 麦克沙夫瑞.游戏编程全接触Game Coding Complete,冯兆麟译.北京:人民邮电出版社,2006 [10] Stanley B.Lippman Inside the C++ Object Model [M].1996.[11] 张海藩.软件工程导论(第5版)[M].北京:清华大学出版社,2008:277-278.
第二篇:棋牌游戏大厅设计
一、游戏类型
现今的游戏大厅一般把游戏类型主要分为六大类:休闲竞技类、牌类游戏、棋类游戏、手机游戏和网络游戏。牌类游戏和棋类游戏主要为中国传统的棋牌游戏和部分国际棋牌游戏;手机游戏:以手机为平台的游戏;网络游戏:MMORPG游戏;其他游戏类型则全部归入休闲游戏之中。
在此主要介绍休闲游戏和棋牌游戏的特点。
棋牌游戏:
现在棋牌游戏的类型几乎是固定不变的,每个平台所不同的只是游戏的画面和棋牌游戏的种类不同而已。比如联众就倾向于棋牌游戏种类的多样化,地域化;中国游戏中心则倾向于地域化,拥有很多地方的游戏打法;而QQ游戏则只主推了几种玩家比较喜欢的,其他一律舍去。三种大厅的选择各有所长,但是经过数据显示,联众所追求的“大而全”和中游网所追求的“地方化”,其效果都不够明显,玩家响应和参与的人数比较少。
经数据调查后发现,各游戏中心参与度较多的棋牌游戏只有固定的几个。游戏参与度的排名如下:
玩家参与度排名前五的牌类游戏为:斗地主、升级、保皇、三打一和锄大地。
玩家参与度排名前五的棋类游戏为:四国军旗、中国象棋、围棋、五子棋
玩家参与度较低的牌类游戏为:四团、红心大战、敲三家、陕西挖坑、大怪路子、找朋友、吹牛、炒地皮
玩家参与度较低的棋类游戏为:黑白棋、暗棋、海战棋、斗兽棋、奥塞罗、色盅
究其原因主要有以下两方面:
1、玩家很少有兴趣去了解一款不熟悉游戏的规则。因此,1、新游戏规则应简单。
2、平台中应尽量少出现如国际象棋、桥牌、吹牛、红心大战等过土或过洋的棋牌游戏。
2、游戏名称不够大众化。即游戏的名称应该是中国大部分玩家所知道、了解的。玩家对于不了解的名字的游戏会很少有兴趣去看。比如中游平台就把三打一改为地方名称“三打哈”,QQ游戏就把21点改为“黑杰克”,但玩家对此并不认同。
因此,我公司建立游戏平台时,应尽量压缩游戏种类,只选择几种玩家参与度高的游戏,如此有利于节省服务器资源和下载资源。原因是新增一款游戏容易,但删除一个仅拥有几十个玩家参与的游戏却也会引起部分玩家的抗议和指责。
休闲竞技游戏:
休闲竞技游戏是最近几年出现的新鲜游戏,以趣味性、对抗性和快速游戏性等吸引着广大的年轻玩家。现今,QQ平台的休闲游戏比联众世界的更加受到玩家所欢迎,原因有以下几点:
1、画面:QQ休闲游戏的栏目画面和游戏内的画面相对于联众世界更加清新可人,适合青年玩家的口味。拿QQ对对碰来说,其右侧显示各队进度的地图就非常有特色。
2、操作性:QQ游戏“纯键盘操作”的操作习惯更加符合中国玩家,而联众的“键盘+鼠标”刚接触时,大家不很认同。
3、游戏操作介绍:进入特定的休闲游戏中,QQ游戏就会有相应的操作介绍,而联众世界的游戏没有相应的操作说明。需要玩家自己去摸索或者去网站浏览。
4、游戏道具的使用:一个游戏拥有较多数量的特殊道具才能使游戏更加具有变数、竞争性和趣味性。QQ做到了这一点,而联众则过于传统,没有任何道具。
5、多人竞技:能够多人进行竞技也是休闲游戏的一大特点,而联众则受到传统的棋牌类最多4人比赛的约束,而没有很好地开发此要素。
6、栏目划分:分别列举QQ俄罗斯和联众世界俄罗斯的栏目就能看出其栏目划分的优劣。QQ俄罗斯栏目:新手场、普通场、3V3场、1V1场、无道具场;联众世界俄罗斯栏目:自由竞技(普通场)、新手场、高手场、江湖站点。QQ游戏较重视对战方面,而联众则重视门派方面。但联众的江湖参与人数较少。
以上便是玩家喜爱QQ休闲游戏的原因,也是休闲游戏的基本要素和特点。以下则为休闲游戏中,玩家参与度的排名:
玩家参与度排名前三的休闲类游戏为:连连看、麻将、对对碰(连连看参与度高的原因是因为市面上一款同名单机游戏所进行的推广,此单机游戏拥有较多的办公室玩家。)
玩家参与度较低的休闲类游戏为:扫雷、步行棋
QQ堂:
把QQ堂单拿出来讨论的原因是它和QQ平台的其他休闲游戏有很大的不同,QQ堂的内容相当于几个休闲游戏的总和。其中不同的游戏,如抢包子、踢炸弹、夺宝、英雄传说等都有着不同的乐趣。
QQ堂的特色:
1、游戏模式多样化
2、线上活动较多,且活动形式不断进步
3、在游戏研发之初,就预留了一定的开发空间,使得后期可以增加游戏任务等。
4、新手区有相应的教学指导。
QQ堂的缺点:
1、分区问题:现在QQ堂分为:自由、新手、普通三区。但我认为应该再多分一到两个区。既增加高级区。因为玩家等级超过普通区后,就只能进入自由区进行游戏。但自由区高手玩家太多,很多刚超过普通区的玩家无法适从,只能被蹂躏,很多玩家就被打消了游戏下去的积极性。
2、过于针对QQ用户:强制要求只能QQ用户参加游戏,如此便限定了很多没有QQ的玩家不参与游戏,因为注册新QQ很复杂。还有,如只有一个QQ的玩家无法忍受在自由区被屠杀后,自然想建立新帐号重新进入新手区游戏,但如此就必须重新申请个新的QQ。打消玩家继续玩下去的兴趣。
3、腾讯在QQ堂的宣传、推广策略上有所局限,以至于其在线人数较逊于泡泡堂。腾讯应该按网络游戏的推广、宣传方法进行QQ堂的推广,并不应该局限于QQ用户。
4、免费道具太昂贵:其实腾讯应该让所有QQ堂用户都能尝试用过
一、两次免费道具,如此既能让玩家了解到道具的好处,又让玩家对道具商城有所了解。
5、对道具商城的宣传太少,道具形式也不够。
二、游戏基本赢利点
1、虚拟形象秀:玩家充值游戏币后,可购买游戏的形象秀。
2、特殊标志:玩家在聊天室、游戏大厅、游戏室和网管室内显示的特殊标志。
3、参加特殊比赛:可支付一定游戏币以后,参加一些特定的比赛。
4、购买游戏道具:可以购买游戏中的特殊道具
5、会员可花费一定的游戏币建立门牌。
6、用游戏币兑换特殊功能:玩家可以通过花费游戏币使用负分清零、查找朋友、发送悄悄话、自建游戏室、上锁等功能。
7、广告业务:联众利用网站,游戏内系统公告和消息提示等资源开展广告业务。
8、手机游戏的包月费用:手机游戏全部为包月付费。
9、手机增值服务:手机铃声,图片等
10、购买魔法效果:玩家购买魔法效果后,可使用在与你同房间的其他玩家身上。
11、QQ堂、网络游戏的道具和形象
12、会员服务:一般为10——15元每月,可享受特殊功能。
所有平台的会员功能为:
1、会员用游戏币购买各种道具、形象秀或使用清零等功能可享受X折的优惠。
2、会员所提的问题可以比非会员得到客服地优先受理;会员在游戏中遇到问题时可到网管室向室主求助。
3、可写出多彩缤纷的大字、彩色字、变换字体、图形符号等;可以请同桌的非会员和在其后坐下的会员离开本游戏桌;可以设置游戏桌的密码;可查找座位。
4、多套不同个性、年龄、性别的人物形象可由会员选择;会员在聊天室、<游戏大厅、游戏室和网管室内有蓝宝石状标志。
5、会员可以参加特定的比赛
6、会员资格达到一定天数的会员可以申请成立自己的门派,担任掌门人。
7、会员游戏成绩可以列入联众排行榜,随时查询自己在排行榜上的名次。拥有会员资格是申请担任室主、版主、裁判等公益职务的基本条件。
8、拥有论坛的全部权限。
9、可进入满员的房间。
三、游戏基本推广方式
1、与大公司、各地电信运营商相互合作举行线上比赛,联合进行推广。
2、承办一些国内外大型竞技大会的中国区比赛,并在中国区的比赛项目中增加棋牌类比赛项目。
3、与联众江湖中的大型门派联合举办的单项比赛。
4、与桥牌协会,围棋协会等组织联合举办的比赛。吸引他们的受众。
5、联众每年自行举办的网络棋牌联赛和玩家排名升级赛,留住已有用户。
6、联众自办的《联众风云杂志》,和玩家进行交流。
7、参加各大展会参展,如CHINAJOY8、各地实物卡推广活动。
9、各游戏的线上活动推广。
10、参加反对“入常”签名等活动进行宣传。
11、网络游戏方面一样通过网络媒体的广告宣传和网吧推广。
四、休闲棋牌游戏平台中应注意的几点:
1、下载速度:游戏的下载速度是休闲游戏平台的生命。因为休闲游戏每天会有不同的玩家进行下载不同的游戏,保证较高的下载速度才能让新玩家有留下的可能。
2、服务器的稳定:因为休闲游戏没有停机维护的说法,所以服务器的稳定是至关重要的,不能出现任何情况。QQ平台刚开始就出现过几次服务器掉线,卡机的情况,造成部分玩家的流失。
3、游戏说明和介绍:玩家点游戏分栏后,右侧页面自动打开相关游戏介绍。介绍应完整出现在一个页面中。
4、游戏难度:休闲游戏应该简单,便于大多数玩家很容易上手。
5、游戏操作:操作应简捷,遵循中国玩家的游戏习惯。
6、休闲游戏操作介绍:玩家进入游戏时应该有游戏操作的说明和提示。
7、平台页面的规划:平台页面只有规划合理后才能让玩家一目了然,清楚自己想进入的游戏。
第三篇:网络棋牌游戏介绍
1. 棋牌系统:
我们的网络棋牌游戏系统功能全面,设置灵活,而且可以承载数量很大的在线用户。用户可方便的进入到竞技类游戏和棋牌游戏。由于现在棋牌游戏比较多,我们收集各地有地方特色的棋牌游戏加以开发,适合各地用户。另外,如果我们现有的棋牌游戏中没有你想要的特色,我们可以按你的要求在最短的时间内完成最好的作品。
控制/管理/统计/计费后台;
服务器端软件;
游戏大厅客户端软件;
游戏客户端软件;
其他增值功能;
官方网站设计
控制后台:
GM管理器;
计费/卡生成/管理系统:
广告投放系统;
信息发布系统;
规则管理系统;
更新管理系统;
客服回溃系统;
服务器端软件:
基本服务器端;
更新服务器端软件;
下载服务器端软件;
统一规则软件;
统计软件;
游戏大厅客户端软件:
人物属性系统;
等级划分系统;
房间导航系统;
用户操作界面;
内部通讯软件;
客服留言版;
各游戏客户端软件:
中国象棋(包含暗棋玩法);
国际象棋;
围棋(包含五子棋玩法);
军棋(包含四国军棋玩法);
麻将(包含各个地方特色麻将);
桥牌;
斗地主;
捉红A;升级; 标分 红二 拱猪 锄大地 跑的快 五十K 其他:苹果棋、飞行棋、斗兽棋、泡泡龙、连连看、大富翁等
其他增值功能:
官方网站设计;
网站数据库联通系统;
站内帮助系统;
各游戏细分组件:
技术统计接口;
统一规则接口;
通用联线系统;
图形界面;
效果表现系统;
声音管理系统;
用户控制面板;
用户积分/升级系统;
内部对话系统;
帮助系统;
这套棋牌系统的特点如下:
(1)可以承载数量可观的用户。
① 注册用户容量:该系统的后台数据库采用SQL Server 2000企业版,可以存储上亿
条注册用户资料。
② 在线用户容量:以接入一台数据服务器为例进行计算,一台数据服务器最多可以和
1000台游戏服务器相连,而每一台游戏服务器最多可以连接2000个客户端用户,则只有一台数据服务器的网络游戏系统可以容纳200万用户同时在线。如果要接入两台以上的数据服务器,它们可以只和一台SQL Server 2000连接,但是数据库的处理速度会降低一倍,所以建议每台数据服务器连接一台SQL Server 2000,然后用SQL Server 2000的复制功能,使多台SQL Server 2000数据库之间的内容保持同步和完整,从而增加在线用户容量。如果两台数据服务器连接两台SQL Server 2000,则同时在线用户容量将达到400万,三台以上以此类推。
③ 登录用户容量:该系统在处理客户端用户的游戏数据时采用了分布式的游戏服务
器,而且每台游戏服务器系统都使用了数据缓冲技术,使客户端用户访问数据服务器的机会大大减少,绝大部分游戏数据在游戏服务器一级就可以直接处理,数据服务器只处理每个用户的登录、退出系统以及一些很少用的功能数据,在一台P4 2.4GHz、256M
内存、采用IDE硬盘的PC台式机器上测试数据服务器的处理速度,每秒钟可以处理120个访问SQL Server 2000数据库的用户数据包操作,照这样计算,一台数据服务器每天可以处理大约500万次用户登录和500万次用户退出操作。
(2)完善的安全措施、自动识别用户作弊行为。
该系统的安全措施包括四方面内容:
① 该系统运行后,所有用户的数据和大部分的游戏数据都存放在数据服务器和游戏服
务器上,在用户端只是简单的显示这些数据,用户在客户端更改这些数据只能是徒劳,因为访问服务器时会用服务器中存储的数据进行刷新;
② 暂存在客户端的少部分数据在内存中都进行了动态加密(所谓动态加密,包含两方
面的内容:一是指两组相同的数据流,在不同的时间点,呈现在内存中的数据都是不同的;二是一组数据流中相同的字节数据在加密后是不同的),心怀恶意的用户如果更改这些数据,则客户端系统在解密时会发现错误,此时客户端系统会立即向游戏服务器上报该用户的作弊行为,游戏服务器会立即转发给数据服务器,数据服务器根据预先的作弊处理规定进行冻结处理或者罚款。
③ 在用户端向游戏服务器发送的数据也是经过动态加密的,数据发送到游戏服务器后,游戏服务器会自动解密,如果解密结果错误,则会立即断掉该用户的连接,使之与系统绝缘。
④ 游戏服务器端每次接收到用户的指令和数据,都会判断指令和数据格式的正确与否,对判断后结果错误的用户连接立即关闭,使之与系统绝缘,及时杜绝恶意的攻击。
(3)美观动人的用户游戏界面,快捷的游戏服务。
网络游戏系统目前提供了20种游戏和一个聊天室,而且每种游戏的用户界面都设
计精美,功能卓越,当用户进入游戏房间后,会看到其他已经开始游戏的用户在进行游戏的动画场面,甚是引人。不同于其它网络游戏的是,如果用户已经登录上了该系统的任何一个游戏服务器,则允许用户不切换游戏服务器,即可享受该服务器提供的所有类型的游戏,从而大大缩短用户登录不同游戏房间的时间。由于用户登录时,要等待数据服务器从SQL Server 2000数据库服务器中取出用户信息数据,所以每个用户只是在登录系统时,会感到速度有点慢,但是如果登录成功,则以后的所有操作过程都会很快,因为登录系统后的操作是由游戏服务器处理的。
(4)周到灵活的可伸缩性,支持增加新游戏、游戏版本升级、游戏下载。
目前该系统提供20种游戏和一个聊天室,如果在将来软件开发商又开发出新品种的游戏或对某种游戏进行了升级,网站管理人员只要在数据服务器上及时增加或升级,则所有的游戏服务器会自动接收这些最新的游戏数据,游戏服务器的系统管理员就可以启动和停止这些新游戏,用户端会自动显示游戏服务器中被启动服务的新游戏,同时向用户提供下载服务(游戏客户端中游戏大厅的安装文件大小共5.3Mb,每个游戏客户端安装文件的平均大小为150Kb)。
(5)实时的广告网页和广告条显示。
该系统在设计之初,就首先考虑了客户端的广告宣传问题,因为当系统的在线人数
很多时,对用户做某种广告或代理别的公司的广告,将会给网站带来不错的广告收入。该系统在所有客户端的游戏画面上都安排了广告条,并且在用户选择游戏的画面上安排了面积很大的广告主页,当然该主页位置可以放置广告网页,也可以安排公司网站主页。
如果管理层更改或删除了服务器上的广告内容设置,则客户端会自动显示或隐藏新的广告网页和广告条内容。同时系统为客户端用户的帮助提供了两种方法,如果在数据服务器管理器上的广告设置中将用户帮助内容设置为网页形式,则每个游戏的帮助内容即为相应的网页。
(6)全面及时的用户信息统计。
该系统的数据服务器管理器允许系统管理员对任意条件的用户进行检索,并且可以
对不同时间段的注册用户数量、在线用户数量、会员用户数量自动统计,形成报表形式的文件,同时提供更加直观的人数变化曲线图,供网站管理层参阅。另外,该系统每天都会自动统计所有游戏服务器自动报送上来的游戏排行榜数据,形成每天的游戏排行榜,用于网站公布或宣传,以带动更大的用户量。
(7)良好的可调节性。
在网站的经营过程中,管理层可以根据用户量的实际情况,对登录用户身份(会员
用户和普通用户)、用户的奖惩、积分管理办法、每种用户功能需要消耗的财力等很多指标进行放宽和限制,从而有效引导和提高用户量。
(8)方便的外部接口。
任何一个系统都要考虑同其他系统的接口,因为现实常常比较复杂。网络游戏系统
也不例外,该系统在数据服务器管理器上就安排了优秀、方便的外部接口,允许外部数据和系统管理员的强制操作数据进入系统,从而完成某种特定任务。这种接口中包括一系列的批量操作,只要系统管理员将要转入的数据放在一个文本文件中,即可完成相应的数据批量操作。这些接口包括增加用户、删除用户、冻结用户、解冻用户、转换身份、增减财力、负分清零等等。
(9)更具吸引力的用户功能。
该系统在任何游戏画面、房间画面和聊天室画面中都为为会员用户和普通用户提供
了传送文件、找人、创建房间、踢人、负分清零、更改形象、更改自身详细资料、发送短消息、借要财力、更改密码、更改E_Mail和QQ等十多种功能,当然会员用户和普通用户使用这些功能是有区别的(具体见“会员用户和普通用户的区别”)。值得一提的这些功能中的找人功能,可以让用户在整个系统范围内查找另一个用户,无论该用户在哪个服务器上。传送文件功能增大了用户在网络游戏系统平台上进行交流的程度。
(10)强大的游戏功能。
特别的对于围棋、中国象棋、国际象棋、五子棋,不仅具有和其他棋类游戏相同的悔棋、计时、开始、讲和等功能,而且具有存盘、载入、研究等颇具竞争力的功能,棋类游戏的研究功能可以让用户进入另外棋盘,与自己进行对奕,从而对自己的错误进行总结,对未来棋局的态势作出判断,是用户棋技快步提高。
(11)完备的服务器日志管理。
应该说,只要一个系统中存在服务器,就必须有相应的日志管理,因为服务器的运
行是长时间的无人职守运行,一些错误或警报必须有记载。网络游戏系统的数据服务器和游戏服务器都有完备的运行日志。数据服务器系统的运行日志包括数据服务器本身的运行日志和访问SQL Server 2000时失败的运行日志,游戏服务器系统的日志包括游戏
服务器管理器的运行日志和每个游戏服务器模块的运行日志,这些日志,足以让各级系统管理员对服务器系统的维护作出判断和决策。
藏成都
电话:0592-2021688-218
手机:***
邮件:semlllking@yahoo.com.cn
第四篇:毕业设计(论文)题目网络动态同学录系统的设计与实现
毕业设计(论文)题目:网络动态同学录系统的设计与实现
要求:1.WEB服务器端的开发环境采用ASP+SQL server2005;
2.采用B/S的体系结构;
3.要完整的一套设计(开题报告、论文、答辩PPT),其中论文要做到以下
1正文包括需求分析、几点:○系统模块功能设计、系统的实现、调试运行;2调试运行必须写明整个系统开发时遇到的问题以及怎样解决,○用了些什么比较好的方法技术解决了些什么困难问题,重要体现自己做的过程,其
3整个论文不能出现大量的代码和截图,他内容由投标人适当写;○只能粘
4摘要3000字(英贴必要的代码和截图,正文字数要一万一千字以上;○
译汉)。
4.把整个系统的文件打包发给我,我把它放到相关目录下,在IE输入地址可以运行,不要EXE文件;
5.不要把网上的东西直接挡给我,必须修改来符合我的要求才给我,界面必须改,当然原创最好;
6.整个系统的模块不需要多,只要相应的功能强大一点就好;
7.纯属个人要求,希望投标的人有点耐心,在后期如果有问题的话,能够通过QQ提供点帮助;
8.5月1日前必须给我,能够提前也好。
本人QQ:497474286.有什么疑问通过QQ发给我,加QQ时,注明:毕业设计。
第五篇:网络棋牌游戏推广方法
网络棋牌游戏推广方法:
为了把棋牌游戏知名度提高,在日益面对严峻竞争的延边市场占有一席之地,从而日益发展壮大。定推广方案如下:
一.推广目的:让你的游戏在市场以最短的周期众所周知,家喻户晓。
二.推广地点:全国各地
三.推广时间:从你开始游戏运营开始
四.推广特点:突出棋牌游戏的特点。
五.推广目标:让你的游戏真正成为所有网游人的游戏 让每一个棋牌游戏人都知道我们的产品 并且为拥有如此好玩的棋牌游戏而自豪
六.推广措施:
1.网络广告:
在各大网站投放广告宣传的文字图象信息。
2.媒体广告:
2.1电视广告(举办比赛转播 现场直播等)
2.2广播广告(延广文艺台 各播段广告 谈话广告 小品广告)
2.3报纸广告
3.路面广告:
4.销售网点 销售网点如国贸电子城 数码城等柜台贴海报
5.校园广告:
5.1校园的网站(各主页 论坛banner)
6.网吧广告:
5.1网吧海报(如大字报 海报 座位挡板小报 吧台嵌入海报等)
5.2网吧获得更多的提成而无偿积极的推广宣传 可追加5%左右的利润措施
5.3网吧客户端安装及充值卡代销
5.4网吧会员卡面广告
7.游戏内部推广:
6.1定期组织大型的有奖比赛,送积分,送会员,送游戏币等活动
6.2发展推广员团队
6.3系统介绍 为了回报用户把面对面视频游戏介绍给朋友,推出了游戏推广员制度。经您推荐的每一位玩家游戏时间达到30个小时,6.4您将获得金币的提成奖励,以及各种提成收入。如果能采用网络兼职的方式进行推广活动,保证您会有惊喜的收益。
6.5只要您每天引进五个新用户玩面对面视频游戏,就能轻松月入多少金币!
6.6为了确保您的朋友把您的帐号填为推荐人,推荐新用户时,请告诉他们:注册时,把推荐人填为您的游戏帐号,6.7被推荐人都将立即获得多少金币,被推荐人游戏时间达到30小时后,还会获得系统赠送给他的多少金币。(不填的话,不会有这种待遇哦)。
6.8首先您必须是面对面视频游戏世界的玩家,拥有自己的游戏帐号。同时,为了您的帐户安全,请补上密码保护资料。
6.9工作方式一:
6.10(1)介绍新用户进http:/// 下载游戏并安装。
6.11(2)指导新用户注册,在推荐人一栏填上您的游戏帐号。(图)
6.12此方式适合所有用户。
6.13工作方式二:
6.14(1)在公共上网场所(如网吧),进http:/// 下载游戏并安装。
6.15(2)在安装游戏的目录下建立文件customintroduce.txt,文件内容设置为:
6.16[config]
6.17introducer = 您的游戏帐号
6.18完成以上两个步骤之后,通过这台机器注册的所有游戏用户,您的帐号将成为默认推荐人。此方式适用于网吧业主、网管或在网吧上网的用户。
6.19举例:您把面对面视频游戏安装在D:Program Filesmdm365下,你的游戏帐号为aaaa。那么就先在mdm365目录下建立custom文件夹,然后新建文件introduce.txt,该文件内容设置为:
6.20[config]
6.21introducer = aaaa
6.22注:填上推荐人的新用户都将立即获得N金币,游戏时间达到30小时后,还会获得系统赠送的N金币。
8.传单:用卡片形式 传单将于公测前一周发放 发放周期为一周 持卡者可通过卡片上序列号在成功申请帐号后免费充值1周会员并获得如N游戏币 同是通过该卡充值用户可参加
开业庆典抽奖活动 抽取20名 均获得精美摄像头
9.联营广告 与各大商场 大型超市 服装专卖店等互打广告 我方为其在主页醒目点设立banner 为商场 超市 服装店等活动 促销广告等 则商场 超市 服装专卖店等为我方做海
字报 累计购买XX¥送点卡等推广广告 双方均为免费服务
10.公交车室内广告 窗户上沿贴小海报 车体外部印刷大型广告(可选)出租车灯 后背窗广告等(可选)
11.超市广告
8.1各中,小型超市代销充值卡
8.2为中小超市免费印制名片 其背面需用我们的logo
8.3张贴宣传海报
8.4销售奖励
8.5《我是小小推广员》 我是小小推广员活动 让所有人互动起来 如一个人拉来100个人并且游戏时间各超过30小时 我们将为其发放工资500元 超过者提成更优 成绩 突出卓越者可被我公司聘请成为我公司部门经理 我为我是一名小小推广员而自豪。