遊戲用的網路連線整理

遊戲用的網路連線整理

現在流行的方法,是分為兩個步驟:
  1. 中介 Lobby for player matching ( finding ip )
  2. point 2 point ( one of device play as server  )

十年前的直接 P2P 這個方法,是只有第二個步驟的,這的確是某個 device 作為 server ,可是要達成這個步驟,你必須先知道對方的 ip 才行,而這通常做不到,因為 router 擋住的緣故。

所以現在流行的作法,就是在 P2P 的基礎上,再加入第一步驟,把尋找對方 ip 的工作也包含了。

如果是使用 Unity ,有很多套裝的 plugin 、甚至內建 unity multiplayer service ,只要花錢就可以用他們的  Lobby server ,我認為採用這些方案會比自己設計一個需要請玩家輸入 ip 的介面,user experience 會很好多。因為當一個玩家續要自建 server ,首先要確保自己的 ip static ,然後再於遊戲以外的管道公布自己的 ip ,等待對方連入,期間還不可以關閉電腦。這對玩家來說太麻煩了,是個不好的使用者經驗。

Lobby server 的運作機制是,收集有意願進行遊戲的玩家,將這些玩家丟到一個 room 裡面,挑選某一個 device 作為 client server (玩家不需要知道自己是不是 server )然後將這些玩家登出 lobby server ,轉移到 client server。如此 lobby server 就只是負責配對玩家,配對成功後就不再需要跟 lobby server 連線。

留言