2014-03-13 20 views
0

我想了解互聯網如何工作的機制...我明白dns。但是這提出了一個問題,即多人遊戲也是如此。多人遊戲是服務器需要連接到彼此的球員

有兩種類型的多人遊戲,我已經看到..本地/局域網和在線。

在線或者連接到服務器,或者您與其中一個人成爲主機。

所以我的問題基本上可以構建大廳而不需要服務器來將每個玩家接受玩家池。

如果不是,那不是原始的。不應該有創建獨特的虛擬無限字符串的方法,每個客戶端可以發送請求並告訴互聯網,嘿,也可以將所有數據發送到這個地址給我。

回答

0

最常見的多人遊戲的兩種體系結構是基於服務器和點對點的。您可以在服務器上運行任何代碼,當然 - 您也可以在對等基礎上運行它。簡單地說,將服務器代碼作爲對等「服務器」代碼。

因此,在您的大廳示例中,也許您可​​以讓客戶端代碼尋找對等服務器與普通服務器。尋找和傳統的客戶端 - 服務器架構一樣......只是不同的機器在做這項工作。

問題是,您所寫的客戶端代碼和服務器代碼具有足夠的靈活性來執行您所要求的操作。它不一定是做這些事情的最簡單的方法,所以你可能不會發現人們經常做你所描述的事情。像WoW這樣的大型遊戲有很多大型服務器機器。

我的意思是,相對於一個正常的服務器架構,你可以去的東西,如:

enter image description here

+0

... nvm。我的意思是即使在p2p網絡中也需要一臺連接用戶的服務器嗎? –

+0

編輯顯示我的意思,確切地說。 – PinkElephantsOnParade

0

它歸結爲你的意思是「服務器」是什麼。如果您問是否有必要使某臺機器運行的代碼不同於其他代碼,爲了生成多玩家遊戲,我的答案是否定的。但是,每個對等方都可能運行一些具有傳統「服務器」功能的代碼。

+0

不是我的意思是,這是真的,需要一臺機器,讓其他機器知道別人的IP地址。或者,有沒有辦法讓互聯網上的電腦互相連接,形成一個大廳,而不需要詢問一些電腦連接誰。 –

+0

當一個大廳形成時,有一些數據結構,在某個遊說的模型中。該數據結構可以在一臺機器上,也可以分佈在多臺機器上。通常將它放在一臺機器上更容易。無論哪種情況,機器都需要知道如何相互通信,無論是P2P還是中央服務器,還是其他配置。 –

相關問題