为新手实施在线连接和多人游戏/ PVP

问题描述 投票:0回答:1

背景

我是一个noob程序员,希望创建一个简单的回合制手机游戏作为副项目。我几乎已经将游戏逻辑降低了,而且我还没有实现在线多人游戏/ PVP部分。

更具体地说,我希望在玩家点击游戏时实现一个系统,并且将以1 v 1格式与对手匹配,而不需要任何游说等。

我目前正在尝试在android studio(我是新手)中开发我的游戏,但如果它使开发更容易,我也愿意团结。(我没有Unity的经验)。

我想知道什么

根据我的理解,我需要为多人游戏创建并托管我自己的服务器(即玩家与对手的匹配)。我是否还需要服务器来运行游戏本身,或者我能够将玩家连接到对手并简单地将游戏结果记录到我的服务器/数据库中?

另外,我将如何创建和运行/托管服务器?我听说nodeJS是编写服务器的不错选择。

任何人都可以指出我有一个很好的资源/教程来创建和运行我自己的服务器,如果可能的话,我的服务器可以免费(或廉价)托管?另外,对于我的游戏来说,团结是比android studio更好的选择吗?

结束目标

我只是想将我的游戏发布到应用商店,IOS商店等等。

android unity3d multiplayer multiplatform
1个回答
0
投票

如果您没有创建多人游戏的经验,我建议您查看市场上现有的几种现成解决方案之一(Unity Multiplayer就是这样一种服务)。你基本上可以制作整个在线游戏而无需编写服务器代码。

编码游戏服务器比你想象的要多。你首先需要制作一个有效的游戏服务器,然后你需要考虑托管,数据存储,扩展,ping等。缺点是你可以减少可定制性和安全性(你需要处理游戏客户端的大部分,这意味着你很容易被客户端的修改攻击,在Android世界中称为“mods”。但是,如果你刚刚开始,你自己的游戏服务器可能弊大于利。

您应该始终为移动游戏选择多平台引擎。您不希望将整个游戏编码两次。所以,是的,Unity是一个不错的选择,而且它现在是移动设备的事实上的标准。如果您打算制作游戏,那么学习Unity是值得的投资。

最后,这个来自我的个人经验,只是没有真正的统计数据来支持它,实现带节点的游戏服务器的人经常最终发现他们的服务器无法处理负载,这导致需要堆叠大量的技术相互依赖,以扩展服务器或以某种方式挤出更多性能。从长远来看,它经常被证明是不好的选择。或者说,也许我认识的人对节点不满意。

© www.soinside.com 2019 - 2024. All rights reserved.