創作內容

2 GP

LiteNetLib-連線模式

作者:KK│2020-09-03 01:02:06│巴幣:4│人氣:458

之前查資料時逛到很多不少很棒的 Github 套件分享,

我都馬上 Fork 一份,

大大們的技術分享文我也都 Fork 一份。

這幾天看一下列表,

那個量已經成長的令人無法忽視了,

待研究的項目越來越多,只會讓人越來越懶得看。

只好開始一個一個消化它們。

這次在看的是一個很棒的套件- LiteNetLib

這是一個提供了相當穩定的 UDP 連線架構的 Library

總共有 136 個人在關注、17,000 多人給予評價、317 個人也 Fork 一份,

最近的一次更新是在 25 天前,

講這些數據不是要說它有多厲害,

而是這麼多的人當中,如果剛好也有人看到我這篇文章的話,

可以交流一下喔,我正在學習中。


概念


使用這個套件,你的 Unity 版本要求在 2018.1.9f1 以上。

版本低不代表完全不能用,是因為他們沒有測試,不保證沒問題。

功能介紹,在同樣的一個遊戲專案,

可以讓玩家選擇是否要擔任主機,

並可讓其他人連線到你的遊戲,

不需要準備額外的 server

在我的定義叫做開房型的伺服器架構。

主要就是使用已經包好的 LiteNetLib 這個 DLL

當然,所有程式碼都開源,你可以直接看怎麼寫的,甚至客製化修改。

主要功能在處理客製化事件跟分散式的物件,

可以控制物件的生命週期跟狀態同步。



那麼,來講講缺點。

像這種 Peer to Peer 的連線方式,

總共四人一起遊戲,一人擔任房主,其他三人是客人。

某個客人撿到一個寶箱了,他高興的手舞足蹈,

但是另外兩個客人並無法知道這件事,

一定得透過這個撿到寶箱的客人,先跟房主說,再由房主將這個資訊各別同步另外兩位。

=> 是三條各自獨立的線

你的所有程式碼功能都要想好,兩端的寫法。

另外較為人所知的大問題就是,

這種開房型的,如果是做成競賽類型的遊戲,

很容易被惡意攻擊,例如某個玩家很想贏,他就去攻擊對方連線,

想辦法讓對手延遲、斷線......等,也就是公平性跟作弊的問題。



範例的部分很少,看完跑一次就大約可以知道要做啥。

我是想嘗試一個開 server,一個扮演 client 亂玩,

但是!開兩個 Unity 是不行的,會跳出這個問題。


我將一個打包成 server,另一個繼續用 Editor 感覺是有看到成功......(?)


但,客戶端還是跳那個我用了同一個 ip,好麻煩阿~~

假設我之後想把他應用在遊戲裡,

我是打算開成兩個遊戲端,兩邊一起玩兩邊互動,

測試也方便,有沒有大大有在同一台電腦,執行兩個遊戲然後一起玩的技巧嗎?

目前我這邊是比較麻煩變出第二台電腦,

再弄一個環境出來是有點困難的,所以......卡關了XD"



嘛,本來就不可能這麼順利啦,

一下仔就弄出一個簡易型遊戲用伺服器架構也太誇張ˊˋ

後面就來閒聊收個尾,

我之前在網路這塊的經驗,所使用的架構是世界一服,

額外租借伺服器、放上相關腳本、也準備好資料庫的部分,

這樣的規模如果拿來做 Game Jam

是滿瘋狂的XD"

這種時候就會需要不同的戰術,

用不同的角度去看你想要的專案需求。

今天的插件或許就有派上用場的一天。

以上:)

引用網址:https://home.gamer.com.tw/TrackBack.php?sn=4903872
All rights reserved. 版權所有,保留一切權利

相關創作

同標籤作品搜尋:LiteNetLib

留言共 3 篇留言

樂小呈
之前試過用Unity Networking作遊戲 (看教學
頭超痛的[e26]

09-03 07:21

KK
謝謝小呈,我也來研究看看~其實先把單機部分做完,連線都算是擴充的,但確實是另一個世界...不好消化[e3]09-03 09:00
樂小呈
Unity Networking是舊版的東西了,後來被Unity捨棄應該用不了 XD

09-03 09:06

KK
哈哈XD09-03 10:39
矮鵝
連線我之前是用photon寫的,可是免費版一個帳號最大只能同時存在25人(雖然我的遊戲不會到這個人數),用了這個peer to peer的話是不是就不會綁人數了~~

09-03 14:56

KK
是的,感覺起來就沒有所謂人數限制,因為負載會丟在扮演主機的玩家上,Photon 是目前大家在推的方式,我把它當作最後手段,畢竟現在也沒有什麼作品非要用連線玩不可XD09-03 15:19
我要留言提醒:您尚未登入,請先登入再留言

2喜歡★nigel0813 可決定是否刪除您的留言,請勿發表違反站規文字。

前一篇:Unity的多執行緒初步... 後一篇:開新坑-虛幻引擎...

追蹤私訊切換新版閱覽

作品資料夾

Lobster0627全體巴友
大家可以多多來我的YT頻道看看哦(*´∀`)~♥https://www.youtube.com/@lobstersandwich看更多我要大聲說昨天22:43


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】