2013-11-04 55 views
0

有些朋友和我正在嘗試使用UDK 3創建遊戲。現在它沒什麼特別的;我們得到了一個Pawn,它產生並移動一個自定義地圖,並且它全部寫在UDK附帶的示例遊戲中。我試圖建立一個專門的服務器,以便我們可以測試我們的更改(這將只是一個多人遊戲)。我們都在同一個網絡上的強健的Windows機器上,並且服務器不通過Steam運行。無法以理智的方式連接到UDK服務器

我一直在使用虛幻前端編譯和打包遊戲。安裝程序工作正常,它安裝的遊戲也可以正常工作。我們可以建立一個簡單的點對點多人遊戲,並且可行。問題是,當我嘗試從命令行將其作爲專用服務器運行時。我鍵入的命令是

UDK.exe server provinggrounds.udk?bIsLanMatch=true 

這會執行並顯示第二個控制檯,表示遊戲引擎已初始化,然後等待。不幸的是,網絡上的其他遊戲副本都沒有看到這臺服務器,這是一個問題。現在,這是它瘋狂的地方。

我發現了這個問題,在「嘗試隨機的事情看看有什麼作用」階段的故障排除。如果我通過命令行將遊戲作爲專用服務器運行,則在同一臺機器上以正常遊戲模式打開第二個遊戲實例,然後讓該實例承載多人遊戲匹配,其他任何遊戲實例網絡將看到一臺服務器,當它們連接到它時,它們將連接到我的計算機上的專用命令行服務器。一旦他們加入,我可以在不影響服務器的情況下關閉正常的主機遊戲,但是沒有人再看到服務器。

我真的不明白這裏發生了什麼。爲什麼在正常情況下任何人的遊戲都找不到服務器?爲什麼服務器僅在有一臺遊戲實例在同一臺計算機上託管對等遊戲時纔可見?有沒有辦法來解決這個問題?

+0

您是否嘗試在UDK遊戲中使用默認的服務器瀏覽器?用「LAN」和「Deathmatch」作爲過濾器? – Phillip

+0

這就是我爲遊戲的第二個實例所做的。由於某些原因,我實際上無法更改「Deathmatch」過濾器。 – DementedDr

回答

0

嘗試:

UDK.exe server map.udk?listen=true?bIsLanMatch=true?dedicated=true 

這就是我用它來啓動一個專用的服務器。你正好錯過的是listen=true部分。

詳情請參閱documentation

編輯1:

作爲一種變通方法,你可能會迫使你的遊戲連接到指定的IP。在你的遊戲中,用Tab鍵輸入Open #SERVER_IP#(用當然的IP代替#SERVER_IP#)。

你可以有你的遊戲連接到傳遞服務器的IP,以它作爲命令行參數的服務器:UDK.exe #SERVER_IP#

編輯2:

另一個問題可能是防火牆,也許UDK使用不同端口作爲專用服務器運行時。儘管不太可能,但以下是UDK需要爲UDP打開/轉發6500,7777,7778,7787,13000,27900的端口。

+0

我也試過這種方式。我已經設置了真實和虛假,並且它沒有改變任何東西。我已經嘗試設置了我在該文檔中看到的幾個不同的變量,並沒有一個有所作爲。 – DementedDr

+0

這很奇怪。我可以啓動一個專用服務器,查看並加入同一臺機器上的客戶端。我唯一的猜測是UDK之外的東西正在阻礙你。作爲一種解決方法,您可以強制UDK嘗試直接連接到服務器的IP。我已經更新了我的答案如何做到這一點。 –

+0

我會盡我所能給那些人。我現在有一個實際上知道網絡的人。他說,服務器甚至沒有開放一個端口。 – DementedDr