标签: multiplayer

用于自动搜索服务器的 UDP 广播

我正在制作多人网络游戏。现在要连接到服务器,客户端需要服务器的 IP 地址。

所以,我的实现方式如下。

客户端在广播 IP 和一个端口上广播它的 ip 地址,说 A。服务器通过 A 侦听它,并且

服务器与客户端创建一个新的 UDP 连接,就像客户端在端口 B 上所说的那样。它发送游戏所需的所有重要信息,包括其 IP。

客户端是此连接的服务器,并通过端口 B 从服务器接收数据。

现在,A 和 B 是常数。因此,当我需要服务器侦听不同线程中的多个客户端时,我可以将 diff 值设置为线程的 A 和 B,但在客户端文件中,A 和 B 独立于这些线程。所以它给了我一个错误

bind: Address already in use

对此的合理解决方案是什么?

c udp multiplayer broadcast

3
推荐指数
1
解决办法
1194
查看次数

在多人 Socket.io 游戏中管理套接字

我正在使用 Node.js 和 Socket.io 构建一个大型多人游戏。所有玩家都将在同一张无限地图上移动(想想 Minecraft)。当玩家移动时,我加载他们可见的图块。当玩家移动时,他们的动作应该发送给所有可以看到他们的玩家。

我的问题是;我应该如何构建我的套接字?为所有玩家提供一个插槽似乎不会扩展。我可以将世界分成多个块,但我不确定如何管理块边界。由于大多数玩家大部分时间都无法看到对方,因此我希望每个玩家的套接字只能获得与他们相关的更新。

我读过 Socket.io 有一个“房间”的概念,它只是获得相同消息的套接字。为每个连接的玩家设置一个单独的房间是否可行,我可以将移动到附近的任何其他玩家的插槽添加到其中?然后每次玩家移动时,我都可以向那个房间发送消息。当观众离开或加入房间时,我该如何管理?

显然,这是一个模糊的问题,但我只是在寻找最佳实践建议。链接到有关该主题的文章将不胜感激。

multiplayer websocket node.js socket.io

3
推荐指数
1
解决办法
1845
查看次数

如何解决游戏中心的邀请朋友?

我正在通过游戏中心开展多人游戏,我遇到了一个问题.当我试图邀请我的一个朋友时,我失败了.我尝试过使用模拟器和iphone以及两部iphone并且始终存在同样的问题.

我搜索了我的问题的解决方案,发现有很多开发人员遇到这个问题.我正在使用iOS 6,应用程序仍在生产中,因此它位于沙盒中.

我在Ray Wenderlich教程中使用相同的代码 - CatRace(有太多人写这个问题,但没有人发布解决方案.

有人知道如何解决这个问题吗?

iphone multiplayer ios game-center

3
推荐指数
1
解决办法
5566
查看次数

通过python进行多人游戏

我写了一个非常简单的基于终端的扑克游戏(ascii art ftw),现在它是多人游戏,但你基本上必须通过一台计算机.是否有一种简单的(ish)方式使两个人可以从不同的机器连接并访问同一个游戏同时一起玩?只要我们有终端访问权限,它就不必是花哨的,也不需要是图形化的.

我不确定如何做到这一点,或者它是否实用,但只是想学习和探索一些选择.

python terminal multiplayer game-development

3
推荐指数
1
解决办法
3418
查看次数

确定玩家是主机还是客户端

我想为服务器的字符以及客户端的字符分配特定的信息。现在,我怎么知道玩家是主机还是客户端?我尝试使用isServerisClient,但它们都返回 true。这些是我应该使用的正确关键字吗?

void Update () {
        if(isServer){
            Debug.Log("I'm the server");
        }

        if(isClient){
            Debug.Log("I'm the client");
        }
}
Run Code Online (Sandbox Code Playgroud)

networking multiplayer unity-game-engine

3
推荐指数
1
解决办法
1万
查看次数

PlayFab 与 Photon 与其他解决方案

我刚刚接触 Unity 中的多人游戏功能,并且想要进行匹配,目前只是 1 对 1 比赛。我有点困惑的是,有些人似乎表示他们同时使用 PlayFab 和 Photon,有些人使用其中之一,等等。

PlayFab 似乎对数千个并发用户开放,除非我误读了他们的文档,而 Photon 的价格约为 100 美元/月,适用于 100 个 CCU。这似乎很奇怪,如果它们相距那么远,那么任何人都会首先使用 Photon。

据我了解,CCU 是指在任何给定时间可以通过网络玩游戏的玩家数量。因此,如果只允许 100 个 CCU,那就意味着 50 场 1v1 比赛,对吗?这对我来说似乎有点低。

如果您不介意分享有关这些技术的任何想法或经验,我们将不胜感激。

谢谢,

G

multiplayer unity-game-engine photon playfab

3
推荐指数
1
解决办法
2470
查看次数

如何通过GameKit从iPhone蓝牙中的客户端告诉主机

我使用GameKit框架制作了一个多人游戏,其中2个iPhone/iPod可以通过蓝牙和播放相互连接.

我正在考虑选择哪种设备可以先播放的方法.因此,逻辑解决方案是选择连接的主机.GKSession中是否还有服务器和客户端?他们都是同龄人吗?我应该采取哪条路线来实现我的需要?

iphone connection bluetooth multiplayer objective-c

2
推荐指数
1
解决办法
1989
查看次数

简单的网络游戏,客户端 - 服务器架构规划

我正在编写简单的游戏,我计划将多人游戏(通过网络)作为我的大学项目.我正在考虑两种客户端 - 服务器通信方案:

物理(他们是微不足道的!我应该称之为"碰撞测试"实际上:))仅在服务器机器上处理.因此沟通看起来像

Client1->Server: Pressed "UP"
Server->Clients: here you go, Client1 position is now [X,Y]
Client2->Server: Pressed "fire"
Server->Clients: Client1 hit Client2, make Client2 disappear!
Run Code Online (Sandbox Code Playgroud)

服务器接收事件并将其广播给所有其他客户端.

Client1->Server: Pressed "UP"
Server->Clients: Client1 pressed "UP", recalculate his position!!
[Client1 receives this one as well!]
Run Code Online (Sandbox Code Playgroud)

哪一个更好?或者也许没有?:)

multiplayer

2
推荐指数
1
解决办法
6995
查看次数

构建多人游戏服务器的技术

我正在寻找自己的多人游戏服务器(很可能是在nodejs中),我想知道我应该使用什么协议来传输数据?数据报是否是发送信息的标准(我意识到他们不会像HTTP一样确认交付,可以在协议之上编写)?任何经过验证的高效系统的建议都将是一个真正的帮助.

我想我正在寻找快速有效地处理数据传输的成功技术(维护服务器上的状态和扩展是一个单独的问题,我对此有充分的了解).

我期待最初支持桌面/手机游戏(MacOS,iOS和Android).

multiplayer node.js

2
推荐指数
1
解决办法
1707
查看次数

SpriteKit或SceneKit是否支持多人游戏?

我想用spriteKit创建一个多人游戏或者使用swift进行sceneKit这可能吗?如果不是,它会在什么时候,如果可以,你能给我一个很好的教程吗?提前致谢!

multiplayer scenekit sprite-kit swift

2
推荐指数
1
解决办法
2671
查看次数