大型多人在线游戏开发
基本信息
编辑推荐
本书是一部系统介绍MMP(大型多人,Massively Multiplayer)游戏开发知识的文集,汇集业内游戏开发精英们的智慧精华,提供了大量应用于MMP游戏开发工作中的独特技术。本书不仅从MMP游戏的角度对客户端技术进行了讨论,还深入剖析了MMP游戏设计、架构、服务端开发、数据库技术以及MMP游戏核心系统等知识。对于广大MMP游戏开发人员来说,本书是不可多得的参考资料。
内容简介回到顶部↑
本书是一部系统介绍mmp(大型多人,massively multiplayer)游戏开发知识的文集,汇集业内游戏开发精英们的智慧精华,提供了大量应用于mmp游戏开发工作中的独特技术。本书不仅从mmp游戏的角度对客户端技术进行了讨论,还深入剖析了mmp游戏设计、架构、服务端开发、数据库技术以及mmp游戏核心系统等知识。对于广大mmp游戏开发人员来说,本书是不可多得的参考资料。..
和其他很多编程书籍不同,《大型多人在线游戏开发》是针对整个开发团队的:程序员可以获得大量的技术思想,游戏设计人员和制作人也可以从关于设计。架构和客户支持的详细信息中获益。
◆由入选美国互动艺术科学协会(aias)名人堂的游戏大师、卓越的电脑游戏先驱者、创世纪(ultima)和网络创世纪(ultima online)之父,“不列颠之王”(lord british)——理查德·加利奥特(richard garriott)挥毫作序。.
◆mmp开发精英倾情巨献,深入剖析如何在mmp游戏开发中避免冗余,应对常见的缺陷和玩家侵入等问题,从而节约宝贵的编程时间,实现高效开发。..
◆内容覆盖mmp开发过程中各个主要领域,包括设计、架构、服务端和客户端开发、数据库技术以及游戏系统。...
和其他很多编程书籍不同,《大型多人在线游戏开发》是针对整个开发团队的:程序员可以获得大量的技术思想,游戏设计人员和制作人也可以从关于设计。架构和客户支持的详细信息中获益。
◆由入选美国互动艺术科学协会(aias)名人堂的游戏大师、卓越的电脑游戏先驱者、创世纪(ultima)和网络创世纪(ultima online)之父,“不列颠之王”(lord british)——理查德·加利奥特(richard garriott)挥毫作序。.
◆mmp开发精英倾情巨献,深入剖析如何在mmp游戏开发中避免冗余,应对常见的缺陷和玩家侵入等问题,从而节约宝贵的编程时间,实现高效开发。..
◆内容覆盖mmp开发过程中各个主要领域,包括设计、架构、服务端和客户端开发、数据库技术以及游戏系统。...
作译者回到顶部↑
本书提供作译者介绍
Ihor Atexander,Hard Coded Goroes
thor@hardcodedgames.com
在过去十年中,Thor Alexander一直致力于把可信的自主(autonomous)角色带入游戏产业中去。为了把最先进的AI和机器学习技术带入在线游戏,他于2001年在德克萨斯奥斯丁创建了Hard Coded Games。此前,他曾经在Electronic Arts、Microsoft和Xatrix Entertainment担任过AI编程和游戏设计方面的高级职位;同时,他也是Asgard Interactive的创始人之一及Harbinger Technologies Inc.的CEO。Thor还开发了hyperSim自主角色系统以及.. << 查看详细
thor@hardcodedgames.com
在过去十年中,Thor Alexander一直致力于把可信的自主(autonomous)角色带入游戏产业中去。为了把最先进的AI和机器学习技术带入在线游戏,他于2001年在德克萨斯奥斯丁创建了Hard Coded Games。此前,他曾经在Electronic Arts、Microsoft和Xatrix Entertainment担任过AI编程和游戏设计方面的高级职位;同时,他也是Asgard Interactive的创始人之一及Harbinger Technologies Inc.的CEO。Thor还开发了hyperSim自主角色系统以及.. << 查看详细
目录回到顶部↑
第1章 mmp设计技术.
1.1 《卡通城在线》:面向大众的大型多人游戏mike goslin
1.2 每个人都需要某个人:怎样让在线游戏玩家进行合作derek sanderson
1.3 mmp游戏中的游戏平衡benhanson
1.4 使用支付矩阵来设计游戏平衡和ai john m.olsen
1.5 使用用例来描述游戏行为matthew walker
1.6 使用生命值来设计转换因子john m. olsen
1.7 在mmp游戏设计中加入故事情节paul mcinnes
1.8 客户服务和玩家声望:一切都和信任有关paul d.sage
第2章 mmp体系结构
2.1 为mmp游戏制作仿真框架,第一部分:结构建模thor alexander
2.2 为mmp游戏制作仿真框架,第二部分:行为建模thor alexander
2.3 为游戏脚本创建一个“安全沙盘”matthew walker
1.8 客户服务和玩家声望:一切都和信任有关paul d.sage
第2章 mmp体系结构
2.1 为mmp游戏制作仿真框架,第一部分:结构建模thor alexander
2.2 为mmp游戏制作仿真框架,第二部分:行为建模thor alexander
2.3 为游戏脚本创建一个“安全沙盘”matthew walker
2.4 大型多人游戏中的单元测试matthew walker
2.5 使用twisted框架进行mmp服务整合glyph lefkowitz
1.1 《卡通城在线》:面向大众的大型多人游戏mike goslin
1.2 每个人都需要某个人:怎样让在线游戏玩家进行合作derek sanderson
1.3 mmp游戏中的游戏平衡benhanson
1.4 使用支付矩阵来设计游戏平衡和ai john m.olsen
1.5 使用用例来描述游戏行为matthew walker
1.6 使用生命值来设计转换因子john m. olsen
1.7 在mmp游戏设计中加入故事情节paul mcinnes
1.8 客户服务和玩家声望:一切都和信任有关paul d.sage
第2章 mmp体系结构
2.1 为mmp游戏制作仿真框架,第一部分:结构建模thor alexander
2.2 为mmp游戏制作仿真框架,第二部分:行为建模thor alexander
2.3 为游戏脚本创建一个“安全沙盘”matthew walker
1.8 客户服务和玩家声望:一切都和信任有关paul d.sage
第2章 mmp体系结构
2.1 为mmp游戏制作仿真框架,第一部分:结构建模thor alexander
2.2 为mmp游戏制作仿真框架,第二部分:行为建模thor alexander
2.3 为游戏脚本创建一个“安全沙盘”matthew walker
2.4 大型多人游戏中的单元测试matthew walker
2.5 使用twisted框架进行mmp服务整合glyph lefkowitz
译者序回到顶部↑
MMP游戏的开发相对于单机游戏来说要复杂很多,开发人员不仅需要面对单机游戏开发中常见的图形、物理、碰撞、音效等方面的问题,还需要设计更为复杂的游戏系统,处理网络和服务端架构,搭建数据库平台,并且在此同时保持更高的稳定性。这意味着市场上大部分针对单机游戏的书籍中所介绍的知识对于MMP开发人员来说是远远不能满足需求的。.
《大型多人在线游戏开发》是一本系统介绍MMP游戏开发知识的文集。本书中,那些业内优秀的游戏开发人员深入浅出地对MMP游戏开发的各个方面进行了详细介绍。它不仅从MMP游戏的角度对客户端技术进行了讨论,还深入剖析了MMP游戏设计、架构、服务端技术、数据库技术以及MMP游戏系统等MMP游戏的知识。因此,对于广大MMP开发人员来说,这都是一本不可多得的参考资料。
中国已成为最大的MMP市场之一,MMP游戏的运营商收入和玩家人数等指标近几年一直以很高的速度增长着。然而,在MMP开发方面,我们还不是一个开发大国,大量的游戏主要通过引进,即使一些有能力进行本土开发的厂商也并不拥有所有的核心技术。在本书的翻译过程中,我自己也从一个单机游戏开发人员转变为一个MMP引擎开发人员。我也希望通过本书的翻译出版可以帮助更多的业界人士进入MMP开发队伍,从而为中国成为MMP游戏开发大国贡献力量。..
在翻译本书时,我力求贴近原意。对于原著中难以理解或是有疑问的地方,和原书作者进行了沟通。在此,我不仅想感谢本书的作者们为我们提供了这样一本优秀的书籍,还希望能够感谢他们在本书的翻译过程中给我的支持。
在本书的翻译过程中,我得到了很多朋友的帮助,我想在此对他们致以最深切的谢意。他们是陈宇、董平、葛子昂、李劲松、龙春晖、康飞、马雅凡、毛震宇、史苏、王雅梦、魏翔、徐真、张尉、朱巍,以及Christopher Zimmerman、Dherman、Igor Dopita、Paul Mclnnes、Simon Hayers、SteveWang等。
我还想感谢我的朋友周惟迪、徐翎以及人民邮电出版社的编辑李岚、李际、王琳让我有机会翻译本书。
最后,我想感谢我的父母,感谢他们给了我一切!...
译 者
2006年6月23日
《大型多人在线游戏开发》是一本系统介绍MMP游戏开发知识的文集。本书中,那些业内优秀的游戏开发人员深入浅出地对MMP游戏开发的各个方面进行了详细介绍。它不仅从MMP游戏的角度对客户端技术进行了讨论,还深入剖析了MMP游戏设计、架构、服务端技术、数据库技术以及MMP游戏系统等MMP游戏的知识。因此,对于广大MMP开发人员来说,这都是一本不可多得的参考资料。
中国已成为最大的MMP市场之一,MMP游戏的运营商收入和玩家人数等指标近几年一直以很高的速度增长着。然而,在MMP开发方面,我们还不是一个开发大国,大量的游戏主要通过引进,即使一些有能力进行本土开发的厂商也并不拥有所有的核心技术。在本书的翻译过程中,我自己也从一个单机游戏开发人员转变为一个MMP引擎开发人员。我也希望通过本书的翻译出版可以帮助更多的业界人士进入MMP开发队伍,从而为中国成为MMP游戏开发大国贡献力量。..
在翻译本书时,我力求贴近原意。对于原著中难以理解或是有疑问的地方,和原书作者进行了沟通。在此,我不仅想感谢本书的作者们为我们提供了这样一本优秀的书籍,还希望能够感谢他们在本书的翻译过程中给我的支持。
在本书的翻译过程中,我得到了很多朋友的帮助,我想在此对他们致以最深切的谢意。他们是陈宇、董平、葛子昂、李劲松、龙春晖、康飞、马雅凡、毛震宇、史苏、王雅梦、魏翔、徐真、张尉、朱巍,以及Christopher Zimmerman、Dherman、Igor Dopita、Paul Mclnnes、Simon Hayers、SteveWang等。
我还想感谢我的朋友周惟迪、徐翎以及人民邮电出版社的编辑李岚、李际、王琳让我有机会翻译本书。
最后,我想感谢我的父母,感谢他们给了我一切!...
译 者
2006年6月23日
前言回到顶部↑
Richard Garriott(“不列颠之王”)
有谁会想到计算机游戏业这样一个有趣的产业会成为主流产业并且在国际股票市场上上市?我们中那些早期加入这个产业的人对此感到十分惊讶。最初我们出于对游戏和计算机的热爱,把编写游戏作为一种爱好,然而它现在已经成为一个高度成熟、充满竞争、高技术、高收入的产业!不仅如此,关于游戏开发的书刊杂志层出不穷,基于游戏小说和背景的电影相继问世,在大学中更是有很多充满激情的程序员和美工,他们的梦想就是从事我们20年来所从事的工作——游戏开发。.
我是多么的幸运!我亲眼目睹了游戏从亚文化逐渐融入到主流文化的过程。谁曾想到游戏业能够发展到现在这样?我必须承认计算机游戏产业的发展已经远远超越了我最初的预期。有时人们甚至忘记了我们曾经并没有那么多制作精良、技术先进的游戏,也没有那么多有经验的美工、设计人员和程序员,而行业内的竞争也不像现在那么激烈。当前计算机游戏尤其是大型多人在线游戏的热潮使得我们很容易忘却它们的起点。
一段简短的历史
随着上世纪70年代后期个人计算机的发展,人们开始进行计算机游戏乃至多人游戏的开发。然而,经过了相当长的时间之后,人们才认识到在线多人游戏在商业上是可行的并且值得投入最先进的技术。事实上,这历时近20年。
上世纪70年代初,我刚开始开发游戏的时候,是在一台Teletype电脑上进行的。很少有人还能记起那样的电脑,人们必须在纸带上打洞,并且利用纸带进行对计算机的输入。本质上说,当时还没有图形;人们通过把文本字符按照某些模式排列采模拟图形。只有小部分“骨灰级”玩家和计算机的狂热爱好者得以接触到这些早期游戏。不久,随着技术的不断进步,计算机游戏开始变得更加漂亮并且更具可玩性。电子游戏业和个人计算机产业是同步发展的,当个人计算机变得更好、更流行、更廉价时,电子游戏也呈现出同样的变化。
当廉价的调制解调器出现在计算机配件市场上时,这一切都开始改变。调制解调器在个人电脑上的出现使得文本模式的多人游戏得以发展。计算机游戏业也将由此进入兴旺期。
随后,因特网时代到来了。
大型多人在线游戏的诞生
上世纪90年代,随着AOL(美国在线)以及类似服务的流行,在线游戏变得更为成熟,但是以我们的标准来看,当时的在线游戏还非常原始。AOL使得成千上万的玩家可以一起进行游戏;但是那些游戏通常是运行在文本界面或者是粗糙的图形界面上的。虽然用现在的标准来衡量,这些游戏不是很吸引人,并且这些游戏产品从技术上来说也不如当时其他商业软件产品,但它们还是获得了一些狂热的追随者。随着处理器速度、图形技术、声音技术以及存储设备不断变得更快、更好、更大、更便宜,到了上世纪90年代中期,我和同事们已经开始制作世界上第一个成功地采用主流技术的大型多人在线角色扮演游戏了。
自那时起发布了很多更新、更好、更成功的大型多人在线角色扮演游戏。这是为什么?是因为它们有趣,人们喜欢它们。越来越多的人投入到大型多人在线游戏的开发中去,因特网为玩家提供了其他类型的计算机游戏所不能提供的东西——社会化的能力。我们不仅可以和在同一城市里的朋友们一起进行游戏,还可以在大型多人在线游戏中遇到不同国家和地区的玩家。如果好好想象一下,你会觉得这非常的刺激。
作为游戏开发人员,我们有责任让玩家能够持续感到有趣并且保证游戏不断地发展。做到这点不仅意味着我们必须提供创意和内容,还意味着每个开发人员或者是开发团队每天都必须面对一些新的挑战。
游戏开发中的问题
虽然在大型多人在线游戏开发过程中会遇到很多问题和挑战,但最关键的一点就是有能力编写稳健的代码。这意味着我们必须进行良好的设计而不是随意地堆砌代码,这意味着我们必须在代码中加入足够的注释以方便支持和扩展,这意味着我们必须为每个游戏要素给出详细的文档以使得未来的开发人员可以理解这个游戏究竟是什么。并且,它最好尽可能“没有错误”。
虽然任意一段大型的代码都不可能完全没有错误,但是在为大型多人在线游戏定义编码和开发标准的时候,我们必须使用比传统单机游戏更高的标准。如果成千上万玩家中的某一个让服务器崩溃了,这个服务器上所有的玩家都不能继续进行游戏。并且,随着我们不断加入新的游戏功能,这些问题代码在内存中的位置会不断改变并且出现不同形式的崩溃,这会掩盖原先代码中的崩溃性错误。..
创造性上的挑战
大型多人在线游戏开发中的另一个巨大挑战,是怎样才能让我们的游戏成为最好的。我相信在一个大型在线多人游戏中对单人游戏和多人游戏部分进行正确的组合可以制造出非常有趣的游戏。
我们应该尊重单机游戏,它们能有今天的成功并不是没有原因的。单机游戏最大的优点在于,游戏中每一个细节都被刻意设计得让玩家觉得他自己是游戏中的“救世主”:另一个优点是玩家并不会感觉到每一个拥有这个游戏的人都是“救世主”。单机游戏的缺点在于玩家不能和别人分享快乐,不能和朋友们一起进行游戏。
目前大型多人在线游戏的优缺点恰恰与单机游戏相反:玩家可以和朋友一起在游戏中历险,但不是每一个人都认为他是那惟一的“救世主”。因此,从统计学的角度出发,大型多人在线游戏中的每一个玩家都是均等的,没有一个人是特殊的,没有一个人是“救世主”。那些喜欢通过自己的奋斗解决问题或征服世界并以此获得荣誉的人可以从中感到快乐,然而那些希望自己与众不同或者是成为救世主的人可能并不会感到有趣。
所以在我们的设计中存在着挑战:怎样把单机游戏和大型多人在线游戏的优点结合起来,虽然这两者的本质并不相同。我们(NCsoft公司的开发人员)已经摸索出一套自己的方案,我也期待着别人能够在这方面有所创新。
有谁会想到计算机游戏业这样一个有趣的产业会成为主流产业并且在国际股票市场上上市?我们中那些早期加入这个产业的人对此感到十分惊讶。最初我们出于对游戏和计算机的热爱,把编写游戏作为一种爱好,然而它现在已经成为一个高度成熟、充满竞争、高技术、高收入的产业!不仅如此,关于游戏开发的书刊杂志层出不穷,基于游戏小说和背景的电影相继问世,在大学中更是有很多充满激情的程序员和美工,他们的梦想就是从事我们20年来所从事的工作——游戏开发。.
我是多么的幸运!我亲眼目睹了游戏从亚文化逐渐融入到主流文化的过程。谁曾想到游戏业能够发展到现在这样?我必须承认计算机游戏产业的发展已经远远超越了我最初的预期。有时人们甚至忘记了我们曾经并没有那么多制作精良、技术先进的游戏,也没有那么多有经验的美工、设计人员和程序员,而行业内的竞争也不像现在那么激烈。当前计算机游戏尤其是大型多人在线游戏的热潮使得我们很容易忘却它们的起点。
一段简短的历史
随着上世纪70年代后期个人计算机的发展,人们开始进行计算机游戏乃至多人游戏的开发。然而,经过了相当长的时间之后,人们才认识到在线多人游戏在商业上是可行的并且值得投入最先进的技术。事实上,这历时近20年。
上世纪70年代初,我刚开始开发游戏的时候,是在一台Teletype电脑上进行的。很少有人还能记起那样的电脑,人们必须在纸带上打洞,并且利用纸带进行对计算机的输入。本质上说,当时还没有图形;人们通过把文本字符按照某些模式排列采模拟图形。只有小部分“骨灰级”玩家和计算机的狂热爱好者得以接触到这些早期游戏。不久,随着技术的不断进步,计算机游戏开始变得更加漂亮并且更具可玩性。电子游戏业和个人计算机产业是同步发展的,当个人计算机变得更好、更流行、更廉价时,电子游戏也呈现出同样的变化。
当廉价的调制解调器出现在计算机配件市场上时,这一切都开始改变。调制解调器在个人电脑上的出现使得文本模式的多人游戏得以发展。计算机游戏业也将由此进入兴旺期。
随后,因特网时代到来了。
大型多人在线游戏的诞生
上世纪90年代,随着AOL(美国在线)以及类似服务的流行,在线游戏变得更为成熟,但是以我们的标准来看,当时的在线游戏还非常原始。AOL使得成千上万的玩家可以一起进行游戏;但是那些游戏通常是运行在文本界面或者是粗糙的图形界面上的。虽然用现在的标准来衡量,这些游戏不是很吸引人,并且这些游戏产品从技术上来说也不如当时其他商业软件产品,但它们还是获得了一些狂热的追随者。随着处理器速度、图形技术、声音技术以及存储设备不断变得更快、更好、更大、更便宜,到了上世纪90年代中期,我和同事们已经开始制作世界上第一个成功地采用主流技术的大型多人在线角色扮演游戏了。
自那时起发布了很多更新、更好、更成功的大型多人在线角色扮演游戏。这是为什么?是因为它们有趣,人们喜欢它们。越来越多的人投入到大型多人在线游戏的开发中去,因特网为玩家提供了其他类型的计算机游戏所不能提供的东西——社会化的能力。我们不仅可以和在同一城市里的朋友们一起进行游戏,还可以在大型多人在线游戏中遇到不同国家和地区的玩家。如果好好想象一下,你会觉得这非常的刺激。
作为游戏开发人员,我们有责任让玩家能够持续感到有趣并且保证游戏不断地发展。做到这点不仅意味着我们必须提供创意和内容,还意味着每个开发人员或者是开发团队每天都必须面对一些新的挑战。
游戏开发中的问题
虽然在大型多人在线游戏开发过程中会遇到很多问题和挑战,但最关键的一点就是有能力编写稳健的代码。这意味着我们必须进行良好的设计而不是随意地堆砌代码,这意味着我们必须在代码中加入足够的注释以方便支持和扩展,这意味着我们必须为每个游戏要素给出详细的文档以使得未来的开发人员可以理解这个游戏究竟是什么。并且,它最好尽可能“没有错误”。
虽然任意一段大型的代码都不可能完全没有错误,但是在为大型多人在线游戏定义编码和开发标准的时候,我们必须使用比传统单机游戏更高的标准。如果成千上万玩家中的某一个让服务器崩溃了,这个服务器上所有的玩家都不能继续进行游戏。并且,随着我们不断加入新的游戏功能,这些问题代码在内存中的位置会不断改变并且出现不同形式的崩溃,这会掩盖原先代码中的崩溃性错误。..
创造性上的挑战
大型多人在线游戏开发中的另一个巨大挑战,是怎样才能让我们的游戏成为最好的。我相信在一个大型在线多人游戏中对单人游戏和多人游戏部分进行正确的组合可以制造出非常有趣的游戏。
我们应该尊重单机游戏,它们能有今天的成功并不是没有原因的。单机游戏最大的优点在于,游戏中每一个细节都被刻意设计得让玩家觉得他自己是游戏中的“救世主”:另一个优点是玩家并不会感觉到每一个拥有这个游戏的人都是“救世主”。单机游戏的缺点在于玩家不能和别人分享快乐,不能和朋友们一起进行游戏。
目前大型多人在线游戏的优缺点恰恰与单机游戏相反:玩家可以和朋友一起在游戏中历险,但不是每一个人都认为他是那惟一的“救世主”。因此,从统计学的角度出发,大型多人在线游戏中的每一个玩家都是均等的,没有一个人是特殊的,没有一个人是“救世主”。那些喜欢通过自己的奋斗解决问题或征服世界并以此获得荣誉的人可以从中感到快乐,然而那些希望自己与众不同或者是成为救世主的人可能并不会感到有趣。
所以在我们的设计中存在着挑战:怎样把单机游戏和大型多人在线游戏的优点结合起来,虽然这两者的本质并不相同。我们(NCsoft公司的开发人员)已经摸索出一套自己的方案,我也期待着别人能够在这方面有所创新。


点击看大图







加载中...