构建用于游戏目的的LAN模拟器

时间:2013-10-27 16:28:26

标签: networking lan upnp portforwarding game-development

我为魔兽争霸III构建了一个简单的工具,允许用户加入远程托管的游戏,就像他们可以在局域网中访问一样。它的想法很简单:

  1. 玩家A和B想要玩。他们在路由器上设置端口转发,启动我的实用程序并交换外部IP地址。
  2. 然后玩家在我的实用程序中输入对方的IP地址,其中一个玩家创建了一个魔兽争霸III游戏。
  3. 我的实用程序使用魔兽争霸III数据包格式查询其本地计算机上的任何托管的魔兽争霸III游戏。如果它收到响应(带有游戏信息),它只会将其转发到列表中的每个IP。
  4. 由于端口转发,数据包(数据报,更具体)到达另一个魔兽争霸III实例,因此其他用户现在可以看到他朋友的游戏,并加入它。
  5. 效果很好。但是,它仍然需要用户设置端口转发,这是我的问题 - 避免它的最佳方法是什么?

    我一直在考虑UPnP / NAT-PMP,但是当它正在侦听的我的应用程序时,它最有用。在这种情况下,我只在另一端通知魔兽争霸III我的机器上有游戏。但我可以为另一个应用程序创建端口映射吗?

    我肯定会遗漏一些东西,所以如果有人能指出我正确的方向,我会很高兴。

0 个答案:

没有答案