现在这游戏用的是什么java游戏服务器引擎和引擎

2526人阅读
再度更新,不过首先声明,这不是本人写的,而且也不是书。我只是在韩国网站上有看到,觉得还不错就拿出来跟大家分享啦~~& 那今天就首先附带作者简介吧~~(作者简介也是网站上面有的内容)
作者简介:裵铉稷,韩国Nettention公司首席执行官,毕业于韩国延世大学计算机工程与科学专业,自1995年开始在职于游戏公司,开发项目主要有《兔子和乌龟3D》、《Menticide拳击游戏》、《奥兹世界》、《Blitz1941》、Game
Programming Gemstone5,7、ProudNet等。其所开发的游戏服务器引擎ProudNet是韩国唯一一个自主研发的游戏服务器引擎,并且已在很多游戏项目中运用。使用ProudNet的主要游戏有:《洛奇英雄传》、《魔界村Online》、《颓废之心》、《Moon
Wolf》、《S4超特攻联盟》、《仙境传说2》等。
第二部:游戏服务器的运行原理,为什么会发生死机和卡壳现象?
游戏服务器是怎样运行的?
&&& 游戏服务器的目的和作用与游戏客户端完全相反。
&&& 游戏客户端展示华丽的画面和庞大的容量,并且为了给用户提供极大化水准的画面使用全部的硬盘性能,因此就算是再好的电脑也只能发出很大的噪音。
&&& 游戏客户端要尽可能呈现华丽的画面,但游戏服务器所能够呈现的也就只有‘死机’或‘卡壳’。也就是说,做得越精准的服务器就越不能体现其存在感,达到极限的服务器可能就是无人能够知晓其存在的服务器吧?
&&& 就像在第一部所说,游戏服务器发挥大脑作用,因此与客户端不同,游戏服务器的运行会非常乏味。用过Free服务器的读者可能都会知道(尽量不要使用Free服务器,因为它非常危险),其所呈现的画面是极其乏味的。
&&&&&&&&&&&&&&&&&&&&&&&&&&&& 【转自百度图片】
&&& 而实际的游戏服务器也一样,呈现画面同样乏味甚至有时会没有呈现的画面。
&&& 稳定的服务器会以‘Daemon’状态运行,在这种状态下即使没有登录电脑也会照常运行服务器。但乍一看,游戏服务器有时候更像是一个‘傻瓜电脑’。
&&& 虽然游戏服务器本身无法呈现任何画面,但游戏开发商会自主研发可以观察游戏服务器运行状态的程序。我们称此为游戏服务器管理程序。游戏服务器管理程序可以对游戏服务器电脑进行远程控制,并查看和控制游戏运行状态。与游戏服务器相同,游戏服务器管理程序也是一级保安系统。
&&& 游戏服务器的运行环境与一般的电脑完全不同。在定温、定湿的封闭空间中特制的又薄又宽的电脑机器一层一层叠放,后面还有一团团复杂的网线。为了最大限度减少卡壳现象,游戏服务器会安装于被称为最小网络核心的非常昂贵的网络环境当中。
&&& 因此投入到维护游戏服务器时所需的电脑、软件、网络租赁、空间租赁等方面的资金会异常庞大。听说魔兽世界为维护游戏服务器一天要花上80万人民币左右。
&&& 游戏服务器硬盘也是游戏公司的一级保安系统,比如要将游戏服务器转移至其他地方时,只会有极少数人员知道转移计划,而且听说为防止中途发生事故,有些公司还会用武装警备进行护送。
&&& 游戏服务器的运行体制并不是我们常用的Windows系统,而是会在被称为Windows Server或Linux的特殊服务器运行体制当中运行服务器。
&&& Linux是免费的,因此对服务器的维护费用会比Windows服务器便宜,而且Linux公开了所有的Source
Code,所以可以按照自己的需求提高其性能。在运行体制功能中可以将不必要的功能轻松进行卸载也是Linux的优点之一,而Linux能够成为‘制作高性能服务器时的最好选择’的原因也在于此。
&&&&&&&& 【Linux的运行画面。计算机科学专业生可能会对此画面比较熟悉】
&&& 但Linux比一般的Windows的用法复杂,而且也极其乏味。对于已经适应了Windows环境的程序员来说Linux的第一印象只能会让人感到窒息。因为所有工作都要在没有图像,只有文本的环境中用键盘(而不是用鼠标)进行。
&&&&&&&&&&&&&&&& 【最具代表性Windows程序开发工具Visual Studio】&
&&& 在笔者刚开始开发游戏的时候(1997年)Linux还没有那么出名,而与Linux有类似运行体制的Solaris是游戏服务器的佼佼者。当时Windows服务器能否发挥良好的游戏服务器作用在游戏开发者之间也是个未知数。
&&& 但是在已经熟悉了Windows程序开发的笔者看来‘并不熟悉且价格也较为昂贵的运行体制和开发工具’完全是一种浪费。为长期进行游戏客户端与游戏服务器之间的有机运行,双方都使用同样的程序开发工具可能会更好一些。
&&& 此后发生了一件决定性事件——在Linux和Solaris环境中期待许久的星际争霸没能正常运转!此后除了笔者,其他游戏开发公司的程序员也开始顽强(!)地研究在Windows服务器当中开发游戏的方法。其结果便是,开辟出了可以在Windows服务器中开发高性能游戏服务器的渠道,并且其境界也已达到了如今的状态。
【如果星际争霸可以在Linux或Solaris环境中运行,那么现在Linux应该会压倒性成为游戏服务器的佼佼者。】
&&& 在前面也有提到过游戏服务器的作用应是‘处理游戏Logic’,而且游戏服务器也在多个玩家中发挥仲裁作用。
&&&& 比如有玩家1和玩家2,两位玩家在进行对决(PVP)。在玩家1攻击玩家2时,这不会在客户端进行裁决,客户端只会发送‘请求攻击’的信号。
&&& 服务器在接收到‘玩家1请求攻击玩家2’后对此进行处理。即玩家1可能会被攻击,玩家2会减HP,这些过程都是由服务器来进行。之后游戏服务器会通知玩家1‘你被攻击了’,通知玩家2‘你减了HP’。&
&&& 与Package游戏不同,在线游戏当中游戏服务器除了处理游戏Logic外还发挥其他作用。比如对多人游戏结果进行裁决的仲裁作用,为识别是谁在进行游戏的认证(登录)处理作用,储存用户获得的Item后在下次用户登录时再次呈现其Item的作用,为显示排名整理用户情报的作用,
为追查是谁拿走了被抢的Item进行累积记录的作用等等。而且还要查找到试图进行盗窃的不良用户,并赶出这些用户。
&&& 过去是由一台游戏服务器处理这些事情,但这种方法在同时在线人数较多时会经常发生卡壳和死机现象。我们通常所说的‘死机’是指游戏服务器发生错误而停止运行的现象,而‘卡壳’是指服务器超载,运行极其缓慢时发生的现象。发生死机或卡壳的原因之一便是同时在线人数多的时候。
&&& 为解决这种现象从而能够处理更多的同时在线人数,我们会将游戏服务器分散到多台机器当中。如今的在线游戏中分布游戏服务器功能可以说是必选项。
&&& 分布游戏服务器功能根据游戏种类的不同会有多种不同形式,但其基础架构都是类似的。MMORPG游戏服务器一般会使用如下分布。
&&& 对游戏服务器进行上述分布的话开发游戏服务器会变得更加复杂,但因为它却能够处理更多的同时在线人数并急剧减少卡壳和死机现象,所以会节省很大的服务器维护费用。因为比起维护多个中低性能服务器,维护较少的高性能服务器会节省更多费用。
&&&&&&&&&&&&&&&&&&&&&&&&&&&& 【游戏服务器的分布例】
&&&& 对服务器进行分布式设计还可以减少因死机带来的损失。如果一台服务器负责所有功能,在因一个较小的错误服务器停止运转,则正在进行游戏的所有玩家就都要被赶出游戏。但如果进行分布式设计,那么只有部分服务器功能会停止运转。虽然在进行游戏时也会有些不便但总比赶出游戏强好多倍。
&&& 比如信息服务器停止运转时,游戏只是无法使用信息服务器,但游戏本身还是照常运行的。如果NPC服务器停止运转,则在整个游戏World中看不到一个怪物(但玩家对玩家的战斗是可以照常进行的)。分布游戏服务器可以减少所涉及的损失。
&&& 不会经常发生死机现象的游戏服务器也是因这种分布式的服务器结构。
是谁制作游戏服务器?
&&& 如上述介绍,游戏服务器负责管理游戏玩家的情报,安全等。同时在线人数较多时,游戏服务器还要迅速处理大量演算,因此游戏服务器大部分是由具有专业技能的程序员开发制作。
&&&&&& 【游戏服务器程序员招聘信息,与对游戏客户端的任职要求有些不同】
&&& 但即使是游戏服务器的开发者也不可以不知道游戏程序,因为游戏服务器也要处理游戏Logic,因此需要熟练操作游戏程序。对于多人游戏或对安全度较为敏感的部分,游戏服务器程序员需要主导整个开发工作。即服务器开发者需要熟知游戏企划。
&&& 在客户端程序员集中于呈现游戏画面等游戏企划时,游戏服务器程序员需要与企划者商讨(其实是一场战争)游戏规则,信息交流,均衡等问题。
&&& 客户端程序员为制作法师的技能,需要与画面设计员一同研究其技能的呈现方法和呈现过程。这时服务器程序员则需要与企划者一同对法师的技能在向其他玩家产生影响后恢复其体力的过程进行研究。也就是说,我们可以看到的部分是由客户端程序员进行,而我们无法看到的部分则由服务器程序员进行。
&&& 但客户端和服务器也不是一定会是由不同的人分担,有些公司会让程序员同时负责游戏服务器和游戏客户端的制作,只是给多人进行业务分散。即,制作技能的程序员负责制作与技能相关的服务器和客户端,制作其他系统的程序员则负责制作相应系统的客户端和服务器。这样一来在发生问题时可以立刻了解是因服务器还是因客户端的问题。但即使分担业务但也会另有负责服务器核心技术的开发者,客户端也是如此。
&&& 游戏服务器不可能呈现华丽的画面,但因其发挥大脑作用,所以在制作服务器时不可以发生一丝误差。因此服务器程序员的工作环境往往就是一堆一堆的字符窜,而且还要处理在游戏服务器运行时记录内部发生的Log(游戏服务器运行时留下的记录,每小时将近有数千条)。&
&&& 游戏客户端非常注重展现并处理华丽画面的技术,因此他们不仅要处理复杂的数学演算,也要动员各种演算知识,游戏程序员的座位上摆放厚厚的‘数学’书也不是只用来摆设的。要动员最高的电脑硬盘性能会要求像GPU程序等高难度的技术。并且游戏客户端的程序复杂度和开发量也是非常地多。
&&& 但服务器则更加注重稳定性,虽然很少出现复杂的数学公式或演算,但在制作分布式服务器时程序自然而然会变得非常复杂。需要经常处理‘同步化’,并且为了使多个程序同时在服务器中运行时不让情报顺序产生错乱等等问题也是服务器程序员所要负责的项目。如果一旦发生差错就会引发服务器不稳定或卡壳现象,严重时也会因这种漏洞给黑客提供方便的盗窃渠道。服务器程序员之所以对游戏服务器进行再三检讨也是出于这种原因。
&&& 很多玩家在进行游戏时如有不便事项会向游戏运营者(GM)发送信息或直接在留言板上留言。但包括游戏服务器程序员,参与游戏开发的任何人都不是运营者,开发者和运营者之间有明显的业务区分,运营者只是在程序员和玩家之间发挥中介作用。
&&& 他们对于游戏的检测和升级等事项没有任何权力,而且程序员也不能插手运营者的业务。就算是你向服务器程序员请求充值自己的账号,他们也无法满足你的要求。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:4052次
排名:千里之外能够帮助独立游戏开发者的5大游戏引擎
发布时间: 17:35:07
Tags:,,,,
作者:Dylan Moran
如今创造一款成功的独立游戏比以前简单多了。
game-hosting(from gamasutra)
今天一些最具创造性的游戏和互动体验都是在一些跨平台游戏引擎的帮助下诞生的。
不管你的预算有多少,如果你拥有一个不错的理念,你便可以在这些游戏引擎的帮助下创造出一款华丽的2D或3D游戏。
你只需要找到能够提供给你匹配基于你的预算的功能和利益的游戏引擎便可。
在这里我将列出最值得推荐的5大游戏引擎。它们都是具有直觉性且可定制化的游戏开发解决方法。
许多独立游戏开发者在各种类型的游戏中都使用了Unity。
这是一种跨平台游戏引擎,不仅能够帮助你创造互动2D和3D游戏,同时也能让你与用户进行交流,帮助你优化游戏并最终获得成功。
Unity 5是最新的个人版,可供免费下载。它提供了全新的美术功能能让一些复杂的工作变得更简单且更有趣。例如全新的Standard Shader,Real-Time Global Illuminator,HDR Reflection Probes,全新混音器,更加强大的动画设计以及全新的物理引擎。
基于Unity 5你可以无需任何插件而在网上部署你的3D和2D游戏内容,如此你便可以将更多玩家带到游戏中。但是浏览器却需要能够与WebGL内容相匹配。
同时还存在一个更加专业的Unity版本,即伴随着更出色的工具,游戏性能报告,定制化启动画面和团队许可等内容。而这也不是一个免费版本。你需要以月为单位进行支付才能使用它。
Unreal Engine
这是Epic Games在1998年面向第一人称射击游戏所开发的引擎。但因为极高的可移植性,该引擎也被成功用于包括潜行,MMORPG和其它RPG等游戏中。
其最新版本Unreal Engine 4已经免费发布了,这是一套完整的游戏开发工具能够帮助开发者创造,营销,部署,优化并盈利游戏。它让开发者既能够开发简单的2D手机游戏也能创造高端的PC/主机游戏,甚至是VR游戏。
关于你能使用Unreal Engine技术去创造什么内容并不存在真正的限制因素。
与Unity一样,Unreal Engine同样也会提供给开发者定制的光线,浓淡处理,VFX和电影系统。使用Unreal Engine 4的开发者可以为建筑视觉效果,模拟内容,数字影像等创造华丽的视觉效果。
你也不需要去检查其它网站有没有资产,游戏内容或示例项目;因为这一游戏引擎带有你开始时所需要的一切内容。
GameMaker:Studio
最初该引擎的名字是Animo,这是发布于1999年的一个游戏创造系统。它最初的设计目的是帮助新人程序员使用拖放系统以及名为GameMaker的脚本语言去创造一款2D计算机游戏。
而现在该程序改名为GameMaker:Studio,是能够帮助程序员面向iOS,Android,桌面和网页平台创造休闲和社交独立游戏的一种综合性工具。
GameMaker的突出之处在于它有7个特殊版本,能够为不同游戏提供不同具有竞争性的功能。这些版本包括:GameMaker:Studio Professional,GameMaker:Studio Mac OS X,GameMaker:Studio Ubuntu,GameMaker:Studio HTML5,GameMaker:Studio iOS,GameMaker:Studio Android和GameMaker:Studio Windows Phone 8。
如果你是新人程序员或者你对游戏开发充满热情,你就应该去尝试这一软件。
Havok Vision Engine
其最新版本Havok Vision Engine 8.2是产业中最顶尖的跨平台3D游戏引擎。它包含了凹凸处理,Dot3光照图以及能够创造静态和动态照明的Light Grid系统。
Vision Engine 8.2为基于浏览器,手机,掌机等游戏提供了像在主机游戏开发中所具有的强大的垂直3D融入技术。
Vision Engine 8.2全面的强大功能能让MMO开发者快速地创建项目原型与开发。它还包含了像动态时间,光照和阴影,向前和延迟渲染,角色定制样本以及我们在MMO游戏中经常可以看到的基本且高级的功能。
Construct 2
与上面提到的所有游戏引擎一样,Construct 2也能帮助开发者无需编写任何代码而创造出一款独立游戏。
这是到目前为止最简单且最佳用户友好型2D游戏创造工具。它的事件系统非常直接切强大,特别适合基础计算机程序员或充满抱负的游戏开发者。
具有竞争性的跨平台支持让开发者可以面向所有游戏平台,即包括Web(HTML5),Wii U,iOS,Android Windows 10,8和RT,Windows Phone 8等发行自己的独立游戏,以此吸引更多目标用户并从中赚取收益。
就像《Mortar Melon》便是使用Construct 2进行创造的游戏,并最终获得许多国家平台的推荐且获得了超过100万的下载量。
如果你拥有一个非常不错的理念,你最好尝试下Contruct 2。这是可以免费下载的工具。你可以在此释放你的创造性并创造一款华丽,可靠且强大的独立游戏。
服务器选择
当你使用了上述的其中一种游戏引擎创造了你的全新独立游戏,你将规划选择怎样的服务器。
你可以选择一个Listen游戏服务器或专用的服务器。通常情况下专用服务器总是优于listen服务器,因为前者伴随着更多带宽能力能让许多玩家不受打断而同时下载你的游戏。
因此最佳游戏服务器便是像专用服务器那样能够提供给你更多带宽,强大的网络时间,功率与速度等等优势的服务器。一些最受欢迎的游戏服务器便包括:Game Servers,Counter Strike,fragnet,Branzone和Hypernia。
(本文为游戏邦/编译,拒绝任何不保留版权的转发,如需转载请联系:游戏邦)
5 Leading Game Engines for indie game developers
by Dylan Moran
Creating a successful indie game is now easier than ever.
Some of today’s most innovative games and interactive experiences are developed with the help of multi-platform Game Engines.
No matter how small your budget is, if you have an inspiring idea you can also create a beautiful 2D or 3D game with the help of these Game Engines.
You just need to find the right match that offers the sort of features and benefits you need at your budget.
Here is a list of top 5 game engines we encourage you to checkout first. These are ready-made development solution that are intuitive to use and are also customizable.
Many indie developers have used Unity for pretty much any type of game.
It is a multi-platform game engine that not only allows you to create interactive 2D and 3D games, but also let you connect with your audience, optimize your game and achieve success.
Unity 5 is the new Personal Edition – which is available for free download. It offers awesome new artistic features that make the hard work smoother and more fun. Like, the new Standard Shader, Real-Time Global Illuminator, HDR Reflection Probes, new audio mixer, enhanced animator, and a new Physics Engine.
With Unity 5 you can also deploy your 3D and 2D gaming content online without a plugin – letting you bring more players. The browser however needs to be compatible with WebGL content.
There is also a professional version of Unity which comes with excellent tools, like, access, game performance reporting, customizable splash screens, and a team license. But this is not free. You would need to pay a monthly fee for using this version.
The Unreal Engine
Primary developed by Epic Games in 1998 for first-person shooter games. But due to its high degree of portability it was successfully used for other genre including stealth, MMORPGs and other RPGs.
The latest version ‘Unreal Engine 4’ which is available for free, is a complete suite of game development tools for letting you create, market, deploy, optimize, and monetize on games from the same user friendly panel. It gives you the power to develop from simple 2D mobile games and high-end PC/console games to VR without much effort.
There is truly no limit to what you can create with Unreal Engine technology.
Like Unity, Unreal Engine also offers custom lighting, shading, VFX and cinematic systems. Using the Unreal Engine 4, you can create beautiful visuals for architectural visualizations, simulations, digital films, and more.
You would also not have to check other sites for assets, game conten as this game engine is packed with everything you need to get started.
GameMaker: Studio
Originally titled Animo, this was a game creation system released in 1999. It was designed to let novice programmers to be able to develop 2D computer games using a drag and drop system and scripting language called GameMaker.
The program now known as GameMaker: Studio is a comprehensive tool to help programmers develop casual and social indie games for iOS, Android, desktop and the web.
The beauty of GameMaker is that it comes in 7 unique versions, each offering competitive features for different types of games you wish to develop. This includes: GameMaker: Studio Professional, GameMaker: Studio Mac OS X, GameMaker: Studio Ubuntu, GameMaker: Studio HTML5, GameMaker: Studio iOS, GameMaker: Studio Android and GameMaker: Studio Windows Phone 8.
If you are a beginner programmer, or you are passionate about game development, you should definitely try this software.
Havok Vision Engine
The latest version, Havok Vision Engine 8.2, is one of the industry’s leading cross-platform 3D game engines. It includes many standout features including Bump mapping, Dot3 light maps, and a Light Grid system that creates realistic static and dynamic illumination.
Vision Engine 8.2 provides a powerful and versatile 3D immersive technology for browser-based, mobile, handheld games just like used in console game development.
The comprehensive powerful features of Vision Engine 8.2 allow MMO developers to prototype and develop projects quickly. It is packed with features like dynamic time of day, lights and shadows, forward and deferred rendering, samples for character customization and other basic and advanced features commonly used in MMO games.
Construct 2
Like all the game engines listed above, Construct 2 can also help you develop advanced indie games without writing a line of code.
It is by far, the easiest and user friendly 2D game creation tool. Its event system is very intuitive and powerful, especially for a basic computer programmer or aspiring game developer.
The competitive multiplatform support lets you publish your indie game to all gaming platforms including Web (HTML5), Wii U, iOS, Android Windows 10, 8, & RT, windows phone 8 and more, to attract your target audience and monetize your work.
Mortar Melon for example was created with Construct 2 which was featured in numerous countries and has exceeded one million downloads.
If you have an impressive idea, you must also try Construct 2. It is available for free download. Unleash your creativity and develop a beautiful, reliable, stable and powerful indie game like a pro.
Where to host your game
Once you have developed your new indie game using one of the game engines listed above, where do you plan to host it?
You can either choose a Listen game server or a dedicated server. A dedicated server is usually more preferred over a listen server for the basic reason that dedicated servers come with a lot of bandwidth capacity which allows many players to download play your game at the same time without interruptions.
Thus, the best game hosting server is one that offers more bandwidth, excellent network up time, power and speed, all of the features that a dedicated server offers. Some of the most popular game servers include: Game Servers, Counter Strike, fragnet, Branzone and Hypernia.()
CopyRight Since 2010 GamerBoom All rights reserved &&闽ICP备&号-1游戏服务器到底是什么(4)
查看: 6414|
摘要:   天啊!进行测试后不久公司测试系统服务器立即发生死机,服务器程序员猜测可能是修改后的部分产生了副作用。如果现在不进行整修服务器就会冻结,但进行整修服务器又会死机,而且更严重的是我们现在根本就不知道原 ...
  天啊!进行测试后不久公司测试系统服务器立即发生死机,服务器程序员猜测可能是修改后的部分产生了副作用。如果现在不进行整修服务器就会冻结,但进行整修服务器又会死机,而且更严重的是我们现在根本就不知道原因到底是什么。现在已经不可能再延长测试时间了,我们只好先开启了服务器,虽然不过一会儿服务器还是会死机但实在是没有其他办法。我们服务器部门开始疯狂查找Bug原因,但这如同“大海寻针”。  在服务器不断重复运行、死机时,过了4个小时后我们才找到了原因。发布了30分钟的检测公告后关闭了服务器。之后开始进行服务器整修,结束整修后我们以飞快的速度开启了服务器。两腋已被汗湿透。  谢天谢地,等待我们的用户立即开始连接游戏,而且也大大超出了刚才的同时在线人数。现在看起来稳定了很多,服务器管理程序所显示的服务器状态图也非常流畅,许多用户开始积极评价我们的游戏。我们终于可以松一口气便决定一起出去抽根烟。  但在刚要夹一口烟的时候,一位同时飞快地向我们跑来。  “在1级中卡壳现象非常严重!“  我们立即熄灭手中的烟头立刻回到自己的位置。看到正在进行测试的同事电脑画面,角色在不知方向来回不停地移动,这是服务器超负荷时会出现的现象。  PD过来问我们有没有什么解决方案,我们提议先扩充服务器Channel个数。营业部决定在15分钟后发布服务器检测公告,在30分钟的检测时间内扩充服务器数量。没过几分钟我们便得到发行商的通知,说已经准备完毕,现在就可以使用服务器了。我们赞叹发行商能够预先料到会发生这种状况提前充分预备好装置的预测能力。  15分钟后,看到公告栏发布的检测通知,聊天窗口开始出现玩家不耐烦的声音,但我们现在却没有能够理会这些声音的余地。现在我们的大脑根本就没有时间去想其他事情。  没过一会儿我们关闭了服务器。在快要完成新服务器的变更设置时,一位同事大喊:“在服务器内部找到了发生死机的Bug!拥有持续治愈Buffer的角色使用广域破坏技能时会经常发生死机,我们需要进行补丁!”  天啊!我们的检测需要在10分钟后结束,现在要补丁?  “需要遵守约定时间,先开启服务器吧!”我们听从了PD的决定,再次开启了服务器。玩家开始陆续登录,看到在那么短的时间内扩充服务器有些玩家表示赞叹,但大部分的玩家的忍耐程度已经接近极限。  在修改关于广域破坏技能的Bug时我们祈祷没有人使用这个技能,但现实却完全打破了我们的期待。果然!有些玩家使用了这个技能,我们首先决定直接开启服务器,因为这不是会经常出现的现象。  “什么时候能修好?”PD的声音感到非常疲倦。  这次应该需要很长时间,再怎么检查源代码我们也无法知道到底是哪里出现了错误,由其像广域破坏技能在服务器内的处理方式尤为复杂,而且也容易发生服务器超载现象。我们开始后悔没有经过充分的测试就直接添加了这个技能。  我们没有办法回答PD,这时我想起了某人说过的话。这时应该先拿掉这个技能再开启服务器。  *要先解决服务器死机问题。  就算是再好的技能、再是游戏的核心功能,如果无法在5分钟内解决并开启服务器(这种情况几乎不可能)那就要先排除这个技能。比如在MMORPG游戏中有一些比较特殊的刀法,但如果此技能存在严重的Bug现象就要先去除这个功能,即使在下一次升级之前只能用魔法师进行战斗。  在服务器重复发生死机时我们服务器开发部开始阻止新添加的技能。客户端部门开始制作阻止使用此技能的补丁程序。为了应用阻止新添加技能的补丁程序,营业部发布了30分钟的检测公告。聊天窗口也当然可想而知……  ……  开始封测已经过了3天时间,我们开发部开始一个个变得像僵尸一样。接连几天我们都没能回家,一天只能睡几个小时,而且还要疯狂地进行检测和补丁。真不知道在首次封测中接连24小时开启服务器是从谁想出来的。  “今天光检测就超过10次了”  “拿这种垃圾服务器还进行什么封测!”  “程序员都在家玩儿呢吗?”  我们还真想回家玩儿呢!现在运营部也都没有了招架之力,听说因为接连几天没能回家一些女职员还发生了生理不调现象。  ……  终于结束了长达15天之久的首次封测,我们进行了简单的啤酒Party然后都各自回了家。公司给我们开发部批了2天的休息时间,但在家中我们也无法完全放心。我打开电脑开始查看玩家公告栏,抗议、不耐烦、激励等各种语言掺杂在里面。  过了两天后回到公司,运营部将Bug情报整理后传达给了我们。在500多个情报中300多个需要在二次封测中全部解决。  开发商打来电话,说要在3个月后进行二次封测,还说这次将召集更多的玩家,日程已经决定无法延长。  企划部说在进行二次封测之前需要添加其他重要内容。通过这次封测他们了解到游戏平衡问题非常严重,因此要大幅修改系统企划案。  到下次封测为止估计每天都要加班了,但还好这不是公测,因为如果在公测中发生这种问题那时就真没有什么答案了。商品化和Live团队  在进行多次封测时服务器和客户端开始逐渐变得稳定。进行完足够的封测后会开始准备公测。公测会投入相当大的资金进行广告,因此如今的公测已经接近于游戏的正式上市,而这期间的服务器不稳定便是恶梦中的恶梦。  结束最后的封测后开始进行公测之前的开发期内将进入侧重于稳定化,Bug补丁,性能调试,均衡问题等‘最终阶段’。在此期间不会进行如添加新企划等大幅变更,因为可能会存在像首次封测时发生的不稳定现象。但即使这样,在进行公测时也会存在一些服务器不稳定等情况,因为公测时的连接用户会比封测多很多。  与封测不同,开始进行公测后如果有丝毫差错可能会导致更大的事故。在开始进行公测后服务器程序员夜以继日的工作量可以说是无法避免的。在所有人员用尽自己的浑身解数让游戏具有足够的稳定性后,运营方便可告知游戏的正式上市。(部分收费游戏有时会不进行大幅宣传)游戏正式上市后开发团队则转换成Live团队,他们将在已上市的游戏项目中逐渐添加更多的内容,这如同在Package游戏中开发扩张Pack。  已上市的游戏为能够一直获得玩家喜爱,需要不断添加新的游戏功能。Live团队需要在大年或圣诞节等节日中除了进行微小的游戏升级外有时还需进行添加全新World或新功能等大规模的升级。  在金融业中的数据处理系统仍在使用叫COBOL的具有50年悠久历史的程序语言。如银行等一个微小的Bug也会引起严重事故的领域,对原有数据处理系统进行变更则需要慎重加慎重。  游戏服务器与客户端也是如此。对已经上市的游戏程序进行变更需要再三考虑。在游戏上市前已经进行过无数次的测试,但上市后游戏也有可能添加新的系统或内容。但新添加的内容却无法进行测试,因此也有可能会发生服务障碍。  不幸的是,已经上市的游戏如果一旦发生服务障碍其所造成的影响远比我们的想象要严重得多。在测试阶段因只是测试,玩家也无法再多说什么,但已经上市并且有些玩家已经支付游戏费用后,如果服务器一旦发生障碍玩家将无法容忍这种现象。  因此为最大减小这种风险,即使是已经上市的游戏在进行升级时也会进行封测,而运行测试服务器的原因也正在于此。  对于一个游戏服务器程序员来讲对游戏系统进行变更的升级是一件负担重大的任务。  有时可能需要对用户账户情报结构(所持有角色及物品等)进行变更,对此需尤为谨慎。一旦发生错误游戏不仅会发生不均衡问题而且严重时还可能消除所有用户情报。  在对用户账户情报进行变更时需要重新设置STAT,这虽是一种捷径但如果无法避免对结构和账户情报的损坏时则会以全体补丁为代价进行破坏。  【▲有时魔兽世界的角色技能在每次补丁时需要重新设置,这是因为添加了调整用户账户情报的补丁。】  已经制作完成的游戏服务器程序难以进行整修,如果不断陆续添加一些内容服务器结构则会变得越来越复杂。虽然有时会想将这些数据全部进行重整但服务器程序员会大大反对,因为其风险实在是太大。  在已上市的在线游戏中,升级时添加的内容虽然较多,但原有系统不会发生太大改变,其原因也正在于此。
上一篇:下一篇:
Powered by

我要回帖

更多关于 游戏服务器引擎有哪些 的文章

 

随机推荐