V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
MrGba2z
V2EX  ›  问与答

四处搜索无果,特来求助如何架设私人对战平台?

  •  
  •   MrGba2z · 2015-06-17 14:48:46 +08:00 · 2919 次点击
    这是一个创建于 3447 天前的主题,其中的信息可能已经有所发展或是发生改变。
    内部用, 能有效的连接几个玩家一起玩局域网游戏就行.

    或者说是一个虚拟局域网的实现
    可以是中央服务器式也可以是用户里一个主机剩下的客户模式.

    PS: 现成的那些软件和平台我知道, 我想自己做一个, 希望有了解的能提供下资料或者经验.

    题外话: 我好像每次发主题都是提问, 好丢人...啥时候才能成为小牛啊
    11 条回复    2015-06-19 15:45:30 +08:00
    LeoQ
        1
    LeoQ  
       2015-06-17 14:56:35 +08:00   ❤️ 1
    http://www.iplaysoft.com/logmein-hamachi.html
    试试这个,我顺手谷歌了一下虚拟局域网 就发现了,但是没有验证可用不可用
    phoenixlzx
        2
    phoenixlzx  
       2015-06-17 15:34:53 +08:00   ❤️ 1
    呼叫玲奈 @zh99998
    zh99998
        3
    zh99998  
       2015-06-17 15:39:11 +08:00   ❤️ 1
    是针对特定游戏,还是想泛用。
    特定游戏可能会有针对那个游戏的解决方案,例如war3有pvpgn & ghost++ 等做的很成熟的战网私服和游戏主机。
    泛用的话,推荐OpenVPN。搭个TAP模式的OpenVPN服务器,并且允许client_to_client,然后全都连过去,内网应该就通了。
    zh99998
        4
    zh99998  
       2015-06-17 15:46:11 +08:00   ❤️ 1
    顺带回复下 @LeoQ
    你找到的蛤蟆吃是联机游戏圈子中使用最广的方案,没有之一。

    但是我并不觉得这个足够好用。由于中国网络比较奇怪,连接国外服务器显然是很费力不讨好的事情,尤其是对于对延迟丢包非常敏感的游戏类应用来说,稳定性和速度都很成问题。特别是双对称NAT环境下,除去用生日攻击之类特别hacky的办法来打洞之外,所有报文经服务器转发是唯一解,从国外走一圈注定会杯具。
    bk201
        5
    bk201  
       2015-06-17 16:48:07 +08:00
    @zh99998
    PS: 现成的那些软件和平台我知道, 我想自己做一个, 希望有了解的能提供下资料或者经验.
    -------------
    按照po主的意思是想自己写一个?我是不是理解有问题?
    zhjits
        6
    zhjits  
       2015-06-17 17:03:18 +08:00   ❤️ 1
    要通用方案的话,国内 VPS + Pritunl(一个 OpenVPN 的图形化管理工具)无误。之前玩 Battleblock Theater 和 Minecraft 的时候都用这套方案。
    MrGba2z
        7
    MrGba2z  
    OP
       2015-06-17 18:03:01 +08:00 via iPhone
    @zh99998
    果然专业!
    请问下专用的和泛用的除了游戏支持外 在性能或者说用户体验上差别大吗?

    我打算把这三个都看一下


    @LeoQ hamachi我之前看到过,打算留作后手,因为他不是开源的

    而我最终是想做个类似dotalicious那样的网页版平台
    zh99998
        8
    zh99998  
       2015-06-19 12:06:44 +08:00   ❤️ 1
    @MrGba2z 大,首先专用的你可以做针对协议的处理,例如计分之类,泛用的就只是个虚拟局域网做包转发你做不了任何游戏相关的事情。然后专用的一般是服务器建主(而不是玩家建主),服务器建主可以一定程度上防止作弊什么的(不同游戏不一样,但是通常来说会以主机做权威),以及一个很重要的一点,玩家建主的话任意一个报文往返是从 客户机 -> vpn 网关 -> 主机 -> vpn 网关 -> 客户机,而服务器建主vpn网关和主机在一起,可以简化成 客户机 -> 主机 -> 客户机,延迟会减半,抖动丢包可以通过简单的概率统计学公式计算出。

    当然,特定游戏相关会更加复杂,因为你可能会需要处理游戏协议和逻辑,因此这可能只适用于有现成解决方案的场合,而不适合自己开发。

    你把自己的需求提的再明确一些吧,例如具体希望支持哪些游戏,以及除了联机通讯本身之外还想要实现哪些附加功能
    MrGba2z
        9
    MrGba2z  
    OP
       2015-06-19 13:42:18 +08:00
    @zh99998
    谢谢回复,
    其实我的需求挺简单的, 最重要的就是能联机(主要是war3,也希望能支持别的),是否主机建主不重要.比较希望能够实现的几点是:1. 客户端方便 2. 带简单的认证(静态密码都行). 3.易部署

    我浏览了下之前提到的那些方案, 感觉openvpn和hamachi是比较好的方案. 最后还是选择了hamachi. 感觉openvpn有点杀鸡牛刀的意味.
    zh99998
        10
    zh99998  
       2015-06-19 15:01:32 +08:00
    @MrGba2z

    既然是 war3,那我就直接扔作品了 mycard.moe/thd
    这个总共花了几周时间,包括研究和调试pvpgn、ghost++,封装客户端,涂个官网页面。

    这货效果非常棒,能够做到很多比原版war3更多的事情,比如延迟足够低,比如当一个用户卡机的时候其他人不会45秒卡屏,比如投票踢人,比如断线重连等等。
    以及,还可以继续做更多很厉害的事情,比如匹配、天梯,在这里面都有一些支持,但是我没有调教起来。
    客户端还算方便,起码不需要动网卡驱动,传输不需要封装一层。认证可以走帅气的战网。
    当然 pvpgn 和 ghost++ 非常不易部署,你不想花精力在这上面的话就不要学我了...

    hamachi的话就是如同上面提到的,因为服务器在国外的,在中国注定会杯具。如果你的用户是几个已知的非对称NAT那可能还好点,遇上双对称就等着卡成狗这个无解的。

    如果我要做一个其他游戏的平台,没有pvpgn这类东西可以用的话,我会选择openvpn,之前有个游戏王城之内的玩家找过我希望做个这个,就是给的OpenVPN的方案。至于重的事情——你只要不把他设成默认网关,就不会感觉重了吧....

    对于po主来说,hamachi是客户端最方便也最易部署的——因为什么事情都不需要做。

    但是对于用户来说,则必须安装hamachi并学习如何使用,以及每次使用的时候必须手工去建立或者加入网络。而另外两种方案都是能够封装的,用户可以保持对这个的无知,只要你封装好,他们可以像开启一个网络游戏一样打开就玩,并不需要关心通讯的细节。
    denghongcai
        11
    denghongcai  
       2015-06-19 15:45:30 +08:00
    用lanbridge,hamachi不稳定
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1101 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 19:03 · PVG 03:03 · LAX 11:03 · JFK 14:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.