游戏的服务端指的是什么
服务器端就是让所有的远程客户端连接到服务器上进行游戏,(概念就是集中国内所有的玩家在一个地方进行同一个游戏)每个网络游戏都有服务器端的,需要1-N台服务器不同的游戏不同的安装方法! 以上是游戏服务端的说法。 另外,我们可以打开自己的网络连接,一般来说,在详细信息里都可以看到一个服务端IP对不对?那个服务端IP,笼统的解释一下,就是你所在的IP系。意思就是,你的IP其实就是它IP系大集合中的一个部分。 举个例子吧 比如,你家买了一幢新房子,你的房子,就是客户端IP了,而服务端IP,就是你房子所在的小区。 这样大家应该明白了吧? 也就是说,服务端IP其实就是一个IP段的管理。 另外,服务端还有解释,那就是你租用的FTP空间等。假设你租用了一个FTP个人空间,那么,为你提供空间的那家公司或网站就是你的服务端,而相对来说,你就是它的客户端。总体说来,服务端就是提供服务的意思。
服务器名称:正式服
服务器版本:152
服务器类型:租借服务器
服务器类型:生存、建筑服,目前向工业发展
服务器人数:视乎情况而定
1、游戏介绍
目前游戏分为创造(classic版)与生存(Alpha版,Beta版)两个模式,创造模式版本中虽然可以无限制的创造,但是目前仅只有付费购买的生存模式版本还有在持续更新中。在创造模式的世界中没有敌人侵略,也没有Boss可以推倒,更无需担心诸如火山爆发任何或者土石流等天灾,玩家可以无限制的使用任何砖块等来建构自己的世界。
至于生存模式就丰富许多,虽然在游戏中能够运用的资源不像是创造模式那样无限使用,而是需要透过不同的方式来获得(开采、种植植物、攻击动物…等),砖块携带量也有上限限制。玩家必须运用这些方块来建造建筑、打造器械来抵御怪物的袭击,保护自己。至于有些砖块甚至还可以制作成小船、箱子、采矿车或者是轨道等各种道具。
2、操作指南
玩法:
游戏给了你一片广阔的土地,这里没有敌人也没有BOSS,你能做的事情只有两件,那就是创造和破坏。你可以花上几分钟建起一个小茅屋,也可以用上数天来建造一个属于你自己的壮丽的城堡。使用破坏工具,你甚至还能在地下打凿出一个宏伟的地下宫殿。当你的杰作完成之后,你可以邀请朋友们来到你的世界参观。先来看看我的吧:),怎么样,被我的城堡震撼了吧?哈哈,其实我是根据别人的地图改造的,只是茶那个字就花了我半天的工夫呢。所以说,要创造一个杰作,不要期待在一天两天就能完成啊。
操作:
WASD-移动空格-跳跃R-瞬间转移到重生点G-添加一个住民Y-反转鼠标F-调整渲染距离(调整雾的浓度)回车-设置新的重生点ESC-释放鼠标并打开游戏菜单键盘上方的1~9-切换建筑方块的类型鼠标左键-添加或者移除一个方块鼠标右键-在添加模式和移除模式之间切换鼠标滑轮-切换建筑方块的类型鼠标中键-拷贝建筑方块的类型。
3、菜单:
Generatenewlevel-创建新的地图
Small-小地图
Normal-普通地图
Huge-大地图
Cancel-取消
Savelevel-保存地图
Loadlevel-读取地图
Backtogame-回到游戏
4、配置要求
CPU 15G+ GHz多和处理器/20+GHz单核处理器
内存 Windows Xp 10+ G
Windows 7 32位 15+ G
Vista/Mac OS 20+ G
Windows 7 64位 30+ G
显卡 必须支持OpenGL 14以上(如果是笔记本并且使用Intel显卡的话,要查看是否支持。如果是Nvidia/ATI则应该没问题)
这个分为几块
网游
聊天 在很多MMORPG中,聊天都占据了大部分的网络流量,所以将聊天业务分离,建立单独的聊天服务器成为了很多开发者首先想到的事情。
战斗 其次是回合制战斗MMORPG中的战斗模块,由于玩家在进行战斗时,几乎和主服务器完全没有关联,所以将战斗业务分离到单独服务器也是理所当然、顺理成章的事情。
脚本NPC 我们在和一些NPC对话执行剧情的时候,虽说也是在地图上进行,但真正的剧情执行却和地图关系不大,所以也可以将使用脚本的NPC转移到单独的服务器上,而主服务器上仅在地图网格上标识出NPC的编号和位置。
特种NPC 我们刚提到了将脚本NPC独立出来,而更应该也更容易分离出来的应该是诸如医生(+HP)、护士(+MP)、传送员这些特种NPC。因为这些NPC的处理过程基本一致,所以写成固定的程序而非脚本将大大提高游戏服务器的响应速度,并降低硬件成本。主服务器仅根据地图网格上记录的NPC类型、编号即可完成NPC调用。
数据提供
有些游戏是即时为客户端提供数据的。比如一些支持实时地图修改的游戏或是一些需要在客户端执行的脚本。而对于这些内容,我们可以只在主服务器上保存他们的类型和编号,而让客户端根据类型、编号到另一台服务器上去下载。
业务分离式集群
一、业务的分离使得每种服务器程序变得简单,这样可以降低出错的几率,即便出错,也不至于影响到整个游戏的进行,而且可以通过快速启动另一台备用服务器替换掉出错的服务器。
二、业务的分离使得流量得到了分散,这样可以减轻网卡的负担,系统遍历、程序的响应速度都会得到提升。
三、短小的程序在编译为二进制码后,如果足够小,便可以全部放入CPU缓存(服务器级CPU一般都有数MB的缓存,完全足够放入1至2MB代码段的程序),这将大大提升程序运行的速度。
四、由于将大部分业务都分离了出来,所以主服务器基本上只是处理人物的行走或人物行走数据的传输,单台服务器能够处理的人物将大大提升。其他的业务由于没什么相互联系,所以可以按最大人数增加服务器。而由于主服务器业务简单,也很容易制作动态均衡处理。
网吧
网吧里为了对众多的游戏进行统一有效的管理,而专门设立的高性能电脑主机。
游戏可谓多之又多,每个游戏都可能为网吧老板带来经济效益,而越来越多的游戏让网吧经营者手忙脚乱。借助着windows系列中的服务器操作系统的成熟,网吧经营者找到了福音。用一台略高于客户机的配置的主机,把所有的网吧里用到的游戏都拷到游戏服务器。然后安装好游戏服务器软件,进行设置。
发展到今天,它应该能完成下面的工作:
1 它能自动更新游戏补丁,并提醒经营者。
2 它能把更新后的游戏补丁,及时地传递给有更新要求的客户机。
3 它要满足当前网吧设计的数据读取量的二倍以上。
4 它应该具备很强的兼容性,稳定性,扩容性。
5 它的工作界面应当直接,直观,易操作,易维护。它的说明语言应该通俗易懂。
页游
网页游戏服务器是基于WEB的游戏,网页游戏服务器能让游戏玩家只要通过网络打开浏览器就能进行游戏,网页游戏服务器是基于Web浏览器的网络在线多人互动游戏,无需下载客户端,只需打开IE网页,10秒钟即可进入游戏,不存在机器配置不够的问题,最重要的是关闭或者切换极其方便,尤其适合上班族。
发展到今天,网页游戏服务器能完成下面的一些工作:
1、能承载用户机器低配置运行游戏;
2、具备各个浏览器的兼容性,稳定可靠快速;
3、能自动更新游戏补丁;
4、工作界面更加直观,易于扩展维护;
5、能承受3D效果,并且运行顺畅;
web服务器每个client都是独立的,(hostspace)游戏服务器不同client是有交互有状态,会实时地互相影响。这导致很多设计上的差异。
并发架构的影响
在高并发下,对client请求进行负载均衡并不如web那么简单,因为client状态会互相影响,并且可能共享写数据甚至有时序依赖。大型mmorpg通常是长连接,并发服务数通常要远小于web服务器 。根源就是实时性和强交互性的限制,两者要求越低的游戏,并发就可以做得越高。
web服务运算较少,io密集,读多写少。游戏服计算和io都密集,读写都频繁
对代码风格的影响
比如开发web服务,基于nginx的openresty就很好用,利用了Lua的协程和异步io,写起来很流畅而不失性能。但用来做游戏服务器,协程却可能是个坑,因为游戏依赖很多上下文环境,当协程被唤醒时,上下文环境改变,协程的代码风格很容易用了旧变量导致逻辑错误。
首先,游戏服务器与普通服务器相比较来说,游戏服务器需要能够保存更多的用户的状态。用户的等级等属性不用说,一般的IM服务也会有,还有一些时刻变化的数据,比如某个玩家的生命值,发技能前后的法力值等等,这些值区别于一般的属性值如名字,ID这些,这些数据会经常性的变化,还会参与到逻辑的计算中,比如你一个多少等级的玩家吃了什么东西之后战力值变化为多少,打在一个多少属性的玩家身上会不会被他闪避,会不会产生暴击…诸如此类的信息,在游戏服务器中都会一一保存。
其次,游戏服务器中每一个用户都是独立存在的,每一个用户的数据、请求等都是独立的,用户彼此间的数据并没有任何交互。这也是游戏服务器与普通服务器之间最大的区别。至于客户端之间会有交互这一点,举最简单的例子,一个人在一个场景里面说了一句话,那么“同一个屏幕”的玩家也需要能够看到他说的这句话。此时游戏服务器就需要判断,多远的距离以内的玩家,会认定为是"同屏幕"的玩家,需要向这些玩家广播这个玩家说的这句话。
这个广播就比较麻烦了。首先,需要计算哪些玩家属于"同屏幕",就是我们在第一点提到的玩家身上某些经常变化的属性需要做的运算,在这里需要根据玩家的坐标,找出来跟在同屏幕的玩家,用到的是AOI的概念。另外,找到了这些需要接收这个消息的玩家之后,将消息转发给它们又是一个IO密集的操作,假如场景中有10个人,那么一句话就需要同时广播给另外9个人,假如有100人,1000人呢,数据量就更大了,而且时间的延迟也不能太长,这对于游戏服务器的性能就要求很高了。所以同样的一个硬件配置的服务器,可能跑Nginx可以同时处理上万的链接,但是对于一个游戏服务器就只有1,2千了,就是因为游戏服务器是一个CPU密集而且IO密集的服务器类型。而且不仅需要这样的游戏服务器不仅要求性能比较高,还需要服务器具有极高的稳定性,总不能隔一会就宕机了,那大家还怎么玩。
此外,游戏服务器需要更好的数据承载能力和处理能力。而普通服务器则在各个方面都比较均衡。在寻找游戏服务器租用商的时候,一定要选择那种CPU性能非常出色的。
最后一点,游戏行业一直以来是网络攻击的重灾区,很多游戏刚上线没多久就频繁遭到攻击,导致玩家大量流失口碑下降,最后可能导致直接关服。所以游戏服务器一定要带高防流量包。
登陆服务器
在这里也可以称之为连接服务器,网络游戏的客户端一般是连接到这里,然后再由该连接服务器根据不同的需要,把游戏消息转发给其它相应的服务器(逻辑和地图服务器)也因为它是客户端直接连接的对象,它同时也负担了验证客户身份的工作。
地图服务器
在这里也可以称之为连续事件服务器。在这个服务器里要处理的对象(玩家)所做的动作都是一个连续事件。例如玩家从A点移动到B点,这样一个动作,需要一定的时间进行移动,因此说移动是一个连续事件。
逻辑服务器
在这里可以称之为瞬时事件服务器,在这个服务器里,处理对象(玩家)所做的动作均可以在非常断时间内完成完成。例如玩家从商店购买一瓶药书,当玩家确认购买后,服务器先扣除玩家的游戏币,然后再把相应的药水瓶加入玩家的背包里。这2个操作对于服务器来说,只是2个数字的加减,计算完这两个数字的加减,这个事件就可以结束了。因此,我们可以说这个事件是一个瞬时事件
服务器组的改进
不过在实际应用的过程中,游戏服务器的结构要比上面所说的3种服务结构要复杂些,不过也都是在这3种最基本的服务器架构下进行扩充,扩充的主要是其它辅助功能。在实际应用里可能增加的2种服务器,数据库服务器,计费服务器,由逻辑服务器独立出来的聊天服务器。
数据库服务器
数据库服务器其实就是专门利用一台服务器进行数据库的读写操作。这点特别是在大型的网络游戏里尤为重要。因为在大型网络游戏里,要处理玩家的数据量非常大,如果不利用专门的服务器进行处理,很有可能会拖累这个服务器组。
计费服务器
通常在商业的网络游戏里出现,用于记录玩家在线的时间,给收费提供依据,同时也是整个服务器组里最重要的部分,一旦出现问题,运营商就不用赚钱了。
聊天服务器
在游戏里的聊天功能是属于一种瞬时动作,理论上是放在逻辑服务器里进行处理。不过在大型网络游戏里,因为这个部分功能与游戏里的其它部分联系并不紧密,因此可以独立出来做一个功能服务器。
服务器的集群设置
在大型游戏的应用过程中,实际需要处理的玩家数量可能过万,一台普通的服务器是无法完成所要完成的工作,因此,在实际应用的时候,通常是由一组多台服务器共同完成一个功能。
例如地图服务器,可以根据需要,把游戏里所有的地域进行划分,划分为N个区域,然后让这一个区域里发生的事件都用一个特定的服务器进行处理。这样做的目的是减少一个服务器所承担的计算量,把整个系统组成一个分布式的网络。
不过这样做的同时会造成一个麻烦:当一位玩家从区域1,移动到区域2。这个时候,就必须先在服务器1里把玩家删除,然后再在区域2里加入玩家。同时需要由服务器1向服务器2转移玩家的数据信息(因为服务器组在工作的时候,玩家的信息只能保存在当前所在区域的服务器里),也就是说一旦玩家发生服务器间区域移动,服务器端就不可避免的造成数据通讯。因为这种移动并不是有规律的,玩家所在的服务器都有可能到达其它服务器。这样,如果服务器组里有N台地图服务器,那么,每个服务器都可能向其它N-1台服务器产生连接,总共就可能产生N×N个连接。如此数量连接如果只是使用普通的socket设计,就很有可能会给服务器通讯间的各种问题所困扰,为此,在商业网络游戏的服务器之间,通常都使用成熟的第三方的通讯中间件,如ACE,ICE等作为网络连接的传输层。
————服务器名称:圣光之城————服务器版本:所有版本都可以进————服务器类型:生存小游戏枪战空岛海岛rpg————服务器人数:1000人————服务器IP:1800pw162-172版本进入mc1800pw17-18全版本进入————QQ群:45717929————服务器客户端下载地址:————客户端是162164172版本的玩家进入IP:1800pw客户端是1721710和18所有版本的客户端玩家进入IPmc1800pw
0条评论