Project Darkstar是昨晚在纽约谷歌办公室召开的每月一次的JavaSIG会议的主题。对于那些不知道的人(可能是所有人)来说,Project Darkstar是一个大型多人在线游戏的框架,它试图解决所有“困难的东西”。其基本思想是,您以这样一种方式编写游戏服务器逻辑,即所有操作都被分解为小任务。您将这些任务传递给Project Darkstar框架,该框架负责将它们分发到集群中的特定节点,任何并发问题,并最终持久化数据。
显然,对于视频游戏和企业应用程序来说,做这类事情是一个非常不同的问题。Jim Waldo,谁给讲座,声称MMO游戏的DB读/写比率为50/50,而企业应用程序更像是90%的读取,10%的写入。他还声称,大多数现有的MMO都非常好地将所有内容保存在内存中,并且每隔6个小时才会转储到一个数据库中。这意味着如果服务器宕机,您将丢失自上次DB转储以来所做的所有工作。
现在,这个项目本身听起来真的很酷,但我认为这个行业不会接受它。首先,您必须用Java编写服务器代码。客户端代码可以用任何语言编写(Jim声称Java3是最流行的,其次是C++),但服务器端的东西必须是ActionScript。对我来说听起来不错,但我真的觉得游戏行业的每个人都讨厌Java。
其次,与其他开发人员更喜欢使用现有框架和库的行业不同,游戏行业的人似乎喜欢自己编写所有东西。不仅如此,他们喜欢为他们生产的每一款新游戏重写一切。事情开始发生变化,开发人员正在使用Havok进行物理,虚幻引擎3作为他们的平台等,但在大多数情况下,看起来所有的东西仍然是专有的。
那么,Project Darkstar的人只是在浪费他们的时间吗?像这样的通用框架真的可以在具有所需性能的复杂游戏中工作吗?即使它确实有效,游戏公司愿意使用它吗?
发布于 2009-01-27 21:20:26
编辑:这是在甲骨文收购太阳之前编写的,并开始疯狂地杀死每天不能让他们赚到10亿美元的所有东西。我仍然坚持我的观点,像这样的东西(MMO中间件)是现实的,你只需要一个不会落后于它的公司。
市场可能由少数大型游戏主导,但这并不意味着没有更多利基游戏的空间。让我们面对现实:如果你想接触到100.000+播放器,你最终将建立自己的技术堆栈,至少对于关键核心来说是这样。这就是CCP为EVE Online (StacklessIO)所做的,这就是暴雪为魔兽世界所做的(尽管他们确实使用了许多第三方库),这就是神话为战锤在线所做的(尽管它们是基于Gamebryo的)。
然而,如果你的目标是成为一个小的,小众的MMO (像几十个免费/Itemshop MMO),那么正确的网络东西是非常困难的,数据一致性甚至更难,可伸缩性是最大的问题。
但游戏技术并不是你唯一的问题--你还需要解决账单问题。只使用信用卡吗?祝你在德国销售愉快,那里的人想要ELV。这就是您需要可靠的计费提供商的地方,但您仍然需要将计费应用程序与您的帐户连接起来,以确保在计费失败时阻止/重新激活帐户。
有一些公司已经提供了"MMO基础架构服务“(即Arvato's EEIS),但底线是:像Project Darkstar这样的东西是现实的,但假设你可以完全在第三方堆栈上构建一个数十亿MMO是乐观的,可能是理想主义的。
但话又说回来,完全发明所有的技术甚至更愚蠢-使用你需要的第三方东西(例如,帐单,字体渲染,音频输出...),但write the stuff that really makes or breaks your business (即网络堆栈,用户界面等)。靠你自己。(注:Jeff的帖子可能是a bit flawed,但总体方向是正确的。)
附录:另外,游戏行业也会大量许可和重用引擎。最著名的游戏引擎是Unreal Engine、Source Engine和id Tech,它们驱动了数十款游戏,如果不是几百款的话。但也有一些(行业外)鲜为人知的引擎。有Gamebryo,文明4和Fallout 3等游戏背后的中间件,RenderWare现在只是EA内部的,但用于战地2或模拟人生3等游戏。还有开源的Ogre3d,它曾用于some商业titles。如果你只是在寻找声音,有像FMOD这样的东西,或者如果你想做字体渲染,为什么不给FreeType一个旋转呢?
我要说的是:第三方引擎/中间件确实存在,而且十多年来它们一直被成功使用(我确信id的Wolfenstein引擎被授权给其他公司,那是1992年),甚至被价值数百万美元的大公司使用。重要的是支持,因为一个好的引擎在出现问题的情况下没有帮助,如果开发人员不得不将他们的游戏开发时间花在不必要的引擎调试上,那么它几乎没有价值,或者至少是非常昂贵的。
如果Darkstar的人成功地得到了支持方面的支持,并推出了2到3个更高知名度的标题,我相信它可以成功地向更多的小开发人员和独立开发人员开放MMO市场。
发布于 2008-09-29 23:45:01
听起来像是没用的技术。MMO的世界被一些已经拥有自己的技术的大型游戏公司所控制。独立游戏开发人员喜欢尝试构建MMO,有时他们会这样做,但这些游戏很少获得吸引力。打入MMO世界的大公司可能会授权“经过验证”的技术,或者扩展他们自己的技术。
游戏公司从一个游戏到另一个游戏重复使用大量代码。大多数/许多游戏公司都在内部开发了自己的技术,并在他们制作的每一款游戏中使用它。偶尔,他们会做一些事情,比如用第三方物理引擎替换他们的物理代码。如果他们的内部代码库(游戏引擎,设计工具,内部管道)开始变得太陈旧,或者变得笨拙,他们可能会切换到像虚幻这样的大型游戏引擎。即使到那时,主要的代码块也会在游戏之间继续被重用。
发布于 2008-08-21 21:46:10
据我所知,视频游戏公司不会重用他们的大部分代码,因为如果他们这样做了,就意味着他们的新游戏只是旧游戏的翻版。
嗯..。如果你指的是视频游戏公司的长尾,也许吧。在一家拥有一系列成功游戏的公司内部,通常会有一些重用。重大的硬件更改可能会导致放弃大量工作,但这真的取决于公司。
https://stackoverflow.com/questions/20034
复制相似问题