主要游戏组件

时间:2009-07-12 14:25:07

标签: components

我正在开发一款游戏,经过两个月的工作(不是全职工作),我逐渐意识到我们的游戏规格缺乏很多细节。我不是一个专业的游戏开发者,这只是一个爱好。

我希望得到的帮助或建议是:您在游戏中找到的主要组件是什么?必须开发或已经作为图书馆存在?此问题的目标是让我能够指定更多的游戏方面。

目前,我们几乎只指定了我们如何处理视觉,完全忘记了游戏逻辑的一切(AI,实体交互,Quest逻辑(我们如何决定任务是否完成)。)。 p>

到目前为止,我已经找到了这些要点:

  • 物理(碰撞检测,实际力等)
  • AI(寻路,目标等)
  • 模型管理
  • 动画管理
  • 场景管理
  • 战斗管理
  • 库存管理
  • 相机(确保不渲染场景中的所有内容)
  • 高度图
  • 实体通信(玩家与NPC,敌人,其他玩家等)
  • 游戏状态
  • 游戏状态保存系统

为了减少这个问题的范围,如果你能专门讨论与开发RPG类型的游戏相关的方面,我会喜欢它。我还要指出我正在使用XNA来开发这个游戏,但我几乎没有掌握所有可用的类(几乎只使用Game组件和一些与它相关的类,如GameTime,SpriteBatch,GraphicDeviceManager )但不多。

7 个答案:

答案 0 :(得分:9)

你有一个不错的列表,但你缺少存储(保存负载),文本(文本在RPG中非常重要:Unicode,字体渲染),可能是文本的宏系统(用{player}取代像{player}这样的标记的东西玩家角色名称),以及所有内容生成工具中最重要的(地图编辑器,角色编辑器,对话框编辑器),因为RPG需要内容(或者如果需要,还可以使用自动生成工具)。顺便说一下,你的工作有链接吗?

我这样做是为了谋生,所以如果你需要更多指针,也许我可以提供帮助。

答案 1 :(得分:5)

我不知道这是否有任何帮助,但我多年来一直在阅读http://www.gamasutra.com/的文章。

我从一开始就没有一套完美的工具,但是你的列表涵盖了运行游戏的大部分常见问题。但你有没有发现每个项目代表什么?你已经做了多少钱? “库存管理”听起来非常沉重,但有些游戏只需要一个简单的“阵列”对象。花一个小时来编程+一些图形集成(如果你已经完成了GUI管理)。

如何开始计划

当我在业余时间开发游戏时,我通常会有一个想法,因为另一个游戏缺少此功能/选项。然后我启动我正在使用的任何开发工具,并试着看看我是否可以制作一个显示这个想法的原型。它并不总是关于花哨的图形,但大多数情况下更多的是关于如何解决某个问题。绿色和红色框将帮助您完成大部分工作,但除此之外,使用Google图像并快速搜索原型图形。但请记住,这些图像可能是受版权保护的,因此只能将它们用于内部测试目的,并向您的图形艺术家解释您想要制作的游戏/图形类型。

其次,你会发现你需要找到/建立工具来创建“地图/任务/任务”。今天,许多人开发了他们自己的“对象脚本”,他们可以轻松地为游戏添加新的内容/路径。

我们(我的朋友和我)已经测试过的许多想法都是从界面的某个原型开始的,看看它是否有可能首先生成那种屏幕输出。然后我们构建了一个quick'n'dirty地图/关卡编辑器,可以为我们提供测试地图。

此时没有游戏逻辑,仍然在弄清楚游戏引擎是否正在运行。

我的第一个游戏算法问题

当我十几岁的时候,我有一个Commodore 64,我想知道,为了获得高分,他们如何排序10个数字?我花了很长时间才找到一种“可扩展”的方式来做这件事,但我也学到了很多关于编程的知识。

我发现的第二个问题

当我的直升飞机绕着屏幕飞行时,如何让坦克/加农炮向正确的方向发射子弹?

我坐下来画了实际问题的快速草图,看了一下子弹线,尝试了我自己的一些理论,发现了一些似乎有效的东西(通过划分和倍增位置等),后来在学校我发现了这或多或少是毕达哥拉斯。 LOL!

以后多年和许多游戏尝试

我玩“Dune”和后来的C& C +新游戏“魔兽争霸”(v1 / v2) - 我记得它开始让我感到懊恼AI如何工作。我想,寻路算法让玩家感到沮丧。他们朝着目标位置的方向移动,然后发现了一堵墙,但如果方式复杂,那么物体就会停止。哎呀!

所以我先坐了大量的纸,然后我试图绘制某些场景,其中一个“物体”(坦克/ ork /士兵)从A到B然后突然有一个“结构”(建筑物/通路中的其他对象 - 那么呢?

我了解了A-star pathfinding(在以类似的方式首先解决它之后,然后阅读有关此工作的原因)。寻找路径的非常“cpu重”方式,但我从“破解这个坚果”的过程中学到了很多东西。随着时间的推移,这些想法帮助我开发了很多其他游戏algortimes。

所以我要说的是:我认为你必须多考虑一下:

  • 游戏怎么玩?
  • 用户体验是什么样的?
  • 为什么用户想要回到游戏中?
  • 需要什么要求?宽带? 19英寸显示器,1280x1024?
  • 一个RPG,是的 - 但它会是多用户还是单用?
  • 我们是否需要快速的网络/服务器设置,还是需要为NPC开发强大的AI?

还有更多......

我不确定这是你要求的,但我希望你能以某种方式使用它?

答案 2 :(得分:2)

制作游戏需要数百个组件,从时间管理到音频。您可能需要滚动自己的GUI,因为本机操作系统控件非常非游戏性。您可能还需要各种工具来生成您的世界,出口商可以将模型和纹理转换为适合您游戏的东西等。

我强烈建议您从众多免费或廉价游戏引擎之一开始。它们的负载随附源代码,因此您可以了解它们如何组合在一起。

当您认为自己已做好准备时,可以开始更换正在使用的部分发动机,以更好地满足您的需求。

答案 3 :(得分:2)

我同意Robert Gould's帖子,尤其是关于工具的内容,我还要添加左 脚本
记忆管理
网络 - 特别是游戏对象状态的复制和匹配制作 哦,不要忘记本地化 - 特别是对于文本字符串

答案 4 :(得分:2)

效果和效果计时器(可能是神奇的效果,可能只是被惊呆了。)

角色职业,技能,法术(如果是那种游戏)。

世界创建工具,使非程序员构建者更容易。

想想你是否想要PvP。如果是这样,你需要真正考虑你将如何进行战斗系统以及你想要谁可以攻击谁的限制。

设备,“宝藏”,事物的价值以及你想如何做到经济。

答案 5 :(得分:1)

这是一个较老的问题,但恕我直言现在有一个更好的答案:使用Unity(或类似的东西)。它为您提供了预先制作游戏所需内容的90%,因此您可以直接进入并关注您关注的部分,即游戏玩法。当你搁浅因为它没有开箱即用的东西时,你通常可以免费或廉价地在资源商店中找到一个资源,这将为你节省大量的工作。

答案 6 :(得分:0)

我还想补充一点,如果你没有全职工作,请注意任务的复杂性和时间范围。如果您尝试将这么多不同的框架集成到您的RP​​G游戏中,您可以轻松地完成数年的工作;也许最好从小开始,只开发游戏的“核心”,而不是打扰物理。您仍然可以在第二个版本中添加它。