:你有多擅长编程,我该怎么制作自己的游戏?

:你有多擅长编程,我该怎么制作自己的游戏?

介绍

如果你是格斗游戏爱好者,你可能不止一次地思考过,无论是《街头霸王》的炫酷火球和超级连击,还是《铁拳》的浮动连击系统,还是《死或生》的反击机制,都让你惊叹不已。您也想制作一款 - 而且您并不孤单,您知道。

然后,你打开互联网,发现除了各大工作室和开发团队(Capcom、Namco、Arc System Works、Team Ninja)之外,格斗游戏很少甚至几乎没有。 您可能会想在问答网站上问这个问题。 引用第一个答案:

许多缺乏经验的开发人员开始开发一款格斗游戏,认为这会很容易,但很快发现他们被淹没的工作比他们想象的要多得多。

真的吗? 这些问题是什么? ! 所以有什么问题?

让我们在本系列文章中分解一下!

第一个问题:2D还是3D?

最初,这似乎是一个疏忽的问题,但如果您错误地回答了这个问题,您将在任何事情开始之前将自己和您的游戏送入开发地狱。 这里有一些建议音效,分为不同的类别,以便您可以做出明智的决定。

游戏引擎:如何制作自己的游戏?

第一个也是首先要解决的问题。 你想制作一款游戏……但是怎么做呢? 当然,您面前有许多不同的选择 - 但这一切都归结为一个问题:

你的编程能力如何?

请注意,通过编程,我不仅仅意味着编写代码:我的意思是理解一系列操作背后的结构化逻辑。 当你在RPG Maker中创建事件或者在Game Maker中随意玩游戏时(不使用脚本工具),这些都不是一般意义上的编程,但它们也需要你有一些编程逻辑。 让我们简化一下解释:要制作一款优秀的格斗游戏,您的团队中至少需要一个人对基本编程有很好的理解,无论您使用什么引擎。 现在这个问题已经解决了,让我们总结一下您的选择 - 关于最流行的引擎。

·Unity是一款对2D和3D都友好的引擎。 它提供了良好的用户界面和一些脚本工具(警告:需要 C# 知识)。 对于没有编程经验的用户来说,它也非常用户友好,但当由了解该语言的人使用时,它的效果最好。 甚至还有专门用于格斗游戏的插件引擎,其最新版本还包括可维护的回滚网络代码。 它并不便宜,但可能值得一试,因为它也被用来制作《泰坦之战》和《奇幻格斗》等游戏(尽管引擎经过大量修改);

·虚幻引擎可能在3D方面表现更好,但学习曲线非常陡峭。 真的非常非常陡。 此外,该引擎使用C++游戏引擎 人质,因此您需要一些高级的编程技能和管理人员才能获得良好的结果,因为实现p2p在线模式的蓝图还不够清晰。 此外,《铁拳7》、《街头霸王5》和《罪恶装备》都是这款引擎的顶级作品。 是的,他们三个。 这里还有很多教程,一个正在进行中的虚幻格斗游戏模板,以及另一个虚幻引擎动漫格斗模板;

·MUGEN无疑是最流行的2D格斗游戏引擎。 它需要工作和承诺,但有一个庞大的支持社区和许多预制角色,您可以使用它来试验您的游戏机制。 为了更好地了解你可以用它做什么,请查看《黑心》。 我认为最耀眼的原创mugen游戏。

·EF-12是一个类似于mugen的3D游戏引擎,但它不能直接使用,目前还没有庞大的社区支持。 (2021年更新:我不建议使用这个引擎。我将其保留在列表中只是出于历史原因)

· 2D Fighter Maker 2002 可能是最用户友好的 2D 格斗游戏引擎...但不幸的是,它很难找到,因为它是日本独有的 - 互联网上的某个地方潜伏着一些粉丝翻译。 它使用起来非常简单,您不需要一行代码,但它有一些限制,因为几乎没有文档,并且您无法使用脚本或代码扩展引擎。 如果您可以合法地这样做,请这样做。 是制作格斗游戏的最佳切入点。 虽然它没有MUGEN那么强大,但它可以帮助你了解制作格斗游戏的基础知识。

Game Maker 2 是另一个流行的选择,但它是一个多用途引擎,因此如果您想将其转换为成熟的格斗游戏引擎,您必须自己完成大部分工作。 任天堂有很多重制版都是使用 GM 引擎完成的,所以这绝对是一个值得考虑的选择! 并且,至少有一个平台格斗游戏引擎是用它构建的。

(译注:最近流行的引擎有godot等,大家可以根据自己的需求选择)

如果您对其中任何一个不满意,您还有最后一个选择:构建自己的游戏引擎。 当然,这需要大量工作,但您可以完全控制整个过程。 就我个人而言,为了构建我的格斗游戏,我使用了 Schwarzerblitz,这是一个基本但功能强大的游戏引擎,需要良好的 C++ 知识才能正常工作。 我可以访问整个代码库并设法使其按照我喜欢的方式工作,但这绝对不是初学者的选择。

总结本节:

对于 2D,您可以/应该使用 mugen 或 2DFM2002(如果您能找到的话)来开始掌握基础知识。 如果您想要完整的 3D,祝您好运:没有一个具有巨大社区支持的专用引擎游戏策划,因此您可能需要花费一些工时才能让您的引擎工作! 当然,这并非不可能,但也并不容易。

资产 - 游戏的组成部分

renpy引擎游戏_游戏引擎 人质_引擎游戏

2D 或 3D...还是像 2D 一样的 3D? 这个问题真的很难回答! 无论如何,对于阿库玛来说,答案就是全部。 二维困境

2D 格斗游戏(例如《街头霸王 2》、早期的真人快打系列、《月姬格斗》、《蓝翼》或《罪恶装备 XX》等动漫格斗游戏)需要数量惊人的资源。 你的角色所做的每一个动作都必须是动画的,每一帧都是单独绘制的。 每帧一帧。

平均而言,动画包含 5 到 30 帧以上,具体取决于游戏、角色等。现在,将其乘以可用状态的数量:闲置、行走、跑步、跳跃、蹲伏、击中、守卫、击退等。然后乘以字符数。 即使每个只考虑 5 帧,这仍然是一个巨大的工作量。 你可以通过看看《超级街头霸王 2》中 Ryu 的神奇宝贝来给自己一个想法。所以,要么你有一个才华横溢的艺术家团队,要么它会非常复杂。

这并不意味着它不能完成! 再看看出色的《黑心》:这是一个单人项目,拥有完全定制的资产和角色,但花了 7 年时间仍在制作中。 尽管如此,这仍然是一个很好的例子,说明了“我能做”的态度可以取得什么成就。 (译注:2021年10月21日在Steam上发布)

3D真的更容易吗?

是的,长话短说,3D 格斗游戏(如《铁拳》、《VR 无双》和《死或生》)对于小型开发团队来说问题较少 - 至少看起来是这样。 首先,资产的问题稍微少一些:您只需构建一次角色模型,然后为它们设置动画。 很酷,不是吗? 动画也不是一团糟,因为你不需要重新绘制任何东西 - 你只需摆弄角色的骨骼,直到达到完美为止。 最重要的是,您可以为多个角色重复使用一些动画,而无需从头开始一遍又一遍地执行!

renpy引擎游戏_游戏引擎 人质_引擎游戏

当然,Arc Systems 知道如何使他们的 3D 模型看起来像动漫!

也就是说,我完全可以理解为什么 Arc System Works 和 Capcom 在最近的几部作品中从基于精灵的战斗机转向了 3D 模型(尽管不可否认的是,Guilty Gear Xrd 的 3D 模型是如此惊人地像精灵,至于它让我花了几分钟才发现它们不是被画出来的!)。

那么,问题出在哪里呢?

进入恐怖的恐怖谷!

你看过《终结者》吗? 我的意思是第一个。 在电影的最后时刻,我们看到了老阿诺德的金属骨架。 如果您觉得它以不自然的方式移动,如果您对其奇怪的运动模式感到有点不安,请举手。 就这样,你体验到滑入恐怖谷的效果。 这是你必须不惜一切代价避免的事情! 动画在游戏中扮演着非常重要的角色。 如果你惹恼了他们,你就出局了。 所以尽管资产问题比较简单,但还是值得注意的是,大家不要想当然。

游戏引擎 人质_引擎游戏_renpy引擎游戏

今天观看原版《终结者》电影,观看木偶的移动。 然后你就会明白什么是恐怖谷。

另一个问题是玩家期望3D格斗游戏比2D游戏更流畅。 2D 游戏被认为是“可接受的脱离现实”,因此如果你的角色在不更改关键帧的情况下进行冲刺,没有人(可能)会抱怨。 在 3D 格斗游戏中,如果你这样做......很好 好吧,用委婉的说法,可以说它在视觉上并不那么令人愉悦。 看起来你的角色在保持完全静止的同时滑冰 - 这不是一个好主意。

总结本节:

您必须在绘制每个角色框架和平滑地制作 3D 模型动画之间进行选择。 第二种方法对于较小的开发人员/单人团队来说更可行,但显然也有例外。

游戏机制——我应该注意什么?

这就是事情变得有点棘手的地方。 您需要处理三种不同类别的格斗游戏。 是的,三个。 2D格斗游戏、3D格斗游戏以及带有3D表现的2D格斗游戏。 《街头霸王 V》、《拳皇 XIV》和《真人快打 X》都是此类的光辉典范。 事实上,我们列表中的最后一项可以与第一项结合起来:2D 格斗游戏与具有 3D 表现形式的 2D 格斗游戏具有相同的设计问题,唯一的大区别在于资产的构建方式。 从更技术的角度来看,对于以 3D 表示的 2D 格斗游戏(通常称为 2.5D),您可以利用 3D 模型的某些功能来使您的工作变得更轻松游戏引擎 人质,例如重用动画,同时无需重新创建一个精灵。

2D(和 2.5D)格斗游戏

在 2D 格斗游戏中,玩家被限制在一架飞机上。 这意味着前进的唯一方法就是向前移动,而拉开你和对手之间距离的唯一方法就是向后移动。 跳跃是一个关键要素,中断跳跃的动作和跳跃攻击(对空攻击)也是如此。 飞行攻击(例如著名的波动拳)是将对手限制在屏幕另一侧的重要战略元素。 如果您想构建一款具有大量空中玩法和酷炫且有用的飞行攻击的游戏,2D(或 2.5D)绝对是一个不错的选择。

引擎游戏_renpy引擎游戏_游戏引擎 人质

Wave Ken(TM):从1991年开始,他就一直在压制对手。

3D格斗游戏

您想用强力的波浪拳将对手逼入绝境吗? 可惜还有三维空间! 是的,这是一个陷阱:在3D格斗游戏中,你通常可以滑动。 这增加了一层复杂性,如果不是近距离或作为组合部件,射弹的用处就会降低(最好的例子:铁拳 7 的 Akuma)。 添加第三个维度可能会降低跳跃效率或使跳跃成为到达较低高度的一个很好的理由:还有其他方法可以接近和避开对手。 这是《街头霸王》的范式转变。 如果您希望游戏节奏慢一点,但专注于整个场景的移动,那么这是一个不错的选择。

总结本节:

在这种情况下,没有对错之分:你必须意识到你基本上是在两种完全不同的范式之间进行选择。 最好从一开始就做出决定,因为一旦开始开发游戏就无法回头。

现在部分 2D 与 3D 问题已被删除。下一篇文章将介绍格斗游戏背后的基本概念以及如何实现它们的一些想法

如果您对更多游戏制作教程感兴趣,可以在 Twitter @AndreaDProjects 上找到我。 我的私信公开了!

最初发布于2017年4月11日。作者于2021年9月25日编辑和更新。

原作者Andrea“Jens”Demetrio

博士物理学博士,独立游戏开发者,格斗游戏鉴赏家(男)。

文章来源:https://www.bilibili.com/read/cv23876709/