我已经知道了android编程的基本知识,尤其是游戏中的编程。现在我想尝试多人游戏。但我没有关于多人游戏的任何背景。所以我想提出一些问题:
我不打算制作任何复杂的游戏。可能只是多人tic tac toe对我来说没问题。最重要的是我了解多人游戏编程的基本知识。 :)
答案 0 :(得分:20)
有多种方法可以进行多人游戏:
同一台设备上的多人游戏:为您的游戏制作多人游戏逻辑,并允许同一屏幕上的两个玩家使用多点触控控制器。它可以是回转的或同时的。对于这个游戏,你没有任何依赖,但玩家应该彼此靠近。
蓝牙游戏:这是多人游戏的下一阶段。有点棘手,但可以做到。控制器需要在两个彼此靠近的设备之间获得并同步游戏。对蓝牙android API的简短回顾,你很高兴。
分数比较:这不是真正的多人游戏,但您可以上传分数用户并与其他用户进行比较。您可以使用服务器端自行完成,该服务器端将存储每个用户的所有分数,或使用允许比较比较的现有服务,如Skiller SDK或scorelop SDK。
真正的多人游戏:这是我认为最好的游戏。每个人都可以实时与其他人一起玩(只要延迟允许:D)。如果你想自己做所有这一点,这个很难。在这里,您需要一个强大的服务器端和许多服务器逻辑。但是,您可以再次使用为您处理服务器端的现有服务。我选择了Skiller多人游戏SDK。良好的支持和货币化功能。
无论您选择哪种多人游戏,请先将您的游戏提供给您的朋友,以便他们可以查看并告诉您可以改进的内容。它会帮助你很多!!!
祝你好运。答案 1 :(得分:17)
我会把这一系列文章读成:
http://gafferongames.com/networking-for-game-programmers/
它主要使用C / C ++,但您可以将其转换为Java。了解Java中的UDP套接字,例如:
http://download.oracle.com/javase/tutorial/networking/datagrams/index.html
这应该足以让你前进。我可能会做客户端 - 服务器设置。你可以做P2P,但它比我听到的更难。
答案 2 :(得分:2)
查找用于android的API会非常有帮助。客户端服务器是最容易设置的。或者,我在正在制作的游戏中所做的事情是拥有一个Web服务器,并且您的应用程序在Web服务器上进行更新等等。 这对我正在制作的基于回合制的游戏非常有效。可能需要更多的资金,即。托管你自己的网络服务器,但由于android支持SQLlite,你很高兴。 :)