《超級變色龍》最近很紅呢

在純白的身體上作畫,偽裝成舞台的新感覺捉迷藏遊戲《超級變色龍》。

一不小心就變成全球爆紅作品了。
以本文撰寫當下來看,居然已經突破 1,500 萬套,真的太誇張了吧?

身為工程師,這種時候難免會很好奇對吧。

同時連線 20 萬人,伺服器費用到底是怎麼撐的??

想像:先從 0 開始設計看看

先說前提,我平常是做 web/mobile 後端、SRE 類工作的工程師,對遊戲線上基礎架構幾乎可以說是完全不熟。

如果要做《超級變色龍》這種多人遊玩的配對型遊戲伺服器,我會先想像成像這樣。

スクリーンショット 2026-07-06 23.39.40.png

每一場比賽都想維持有狀態運作,然後用像 Agones 這種能管理遊戲伺服器的方案,架在 GKE 之類的平台上,再在中央放一個配對器(分流器)來分配……大概像這樣?

而且很自然地,這種架構就算沒有任何使用者也會燒錢,隨著同時連線人數增加,伺服器費用也會跟著膨脹。

雖然 120 億營收,扣掉手續費和稅金之後也絕對還是賺,但如果是買斷制遊戲,這種維護成本會很吃力,屬於那種會讓人皺眉的架構。

實際上:從訪談等資訊推測的架構

開發者在訪談中這麼說:

《超級變色龍》使用 Unreal Engine 作為引擎,配對功能則使用 EOS(Epic Online Services)。
EOS 全部都是免費的,廣告費也完全沒花半毛錢。

GameWith 開發者訪談

スクリーンショット 2026-07-06 23.41.54.png

① 遊戲進行採用 P2P

像捉迷藏這種輕量型對戰,可以不架專用遊戲伺服器,而是由玩家其中一人的裝置擔任主機,直接和其他玩家通訊的 P2P 方式。

遊戲計算由主機端裝置代勞,因此開發者不需要一直維持昂貴的伺服器群運作。

這就是「就算同時連線增加,伺服器費也不會增加」的第一個理由。

② 配對等功能活用 EOS

要做 P2P 的話,必須讓彼此能透過網際網路通訊,通常需要做很多設定對吧?

據說 EOS(Epic Online Services)會把這些全部免費幫你處理。

  • EOS 能做到的事
    • 配對/大廳……把玩家聚集起來建立房間
    • NAT 穿透……辨識各個用戶端的公開 IP,並透過訊號交換彼此資訊後直接建立連線
    • 中繼伺服器……如果 NAT 穿透失敗,就改由 Epic 的中繼伺服器轉送
    • 驗證、成就、語音聊天等

關於中繼功能是免費的這件事,EOS 官方支援也有明確說明。

the EOS P2P interface handles NAT punchthrough and relay servers automatically and for free

EOS 文件 / P2P 介面

也就是說,整體結構大概是這樣。

スクリーンショット 2026-07-06 23.41.54.png

Epic 把為了 Fortnite 建立的龐大基礎設施,免費對外開放,這就是 EOS。
所以擴充成本其實是由 Epic 方面吸收了。對開發者來說,就算同時連線達到 20 萬人,自己的荷包也不會痛,說的就是這樣。

EOS 的收費方案?

EOS 全部免費。看起來沒有像按量計費那種「方案」。

EOS 官方:EOS 的費用是多少

而且不只是上架到 Epic Store 的遊戲,Steam 或其他平台也都能免費使用,真的很厲害。

我自己之後如果也想做需要線上配對的遊戲,應該也會試著用看看。

如果到了想要做更細緻的自家最佳化、或想把所有資料都掌握在自己手上的規模,最後還是得考慮自建伺服器,但對個人到中小規模來說,免費帶來的好處感覺還是壓倒性更大。

總結

我一開始腦補的那種「中央集權 + 一整群遊戲伺服器」架構,是一種規模一大,成本就跟著直接上升的設計。

當然,像電子競技這類很重視公平性的情境,P2P 可能不夠用,也不能一概而論地說它不好;但對《超級變色龍》這類派對遊戲來說,這次的架構可以說是最適合的。

如果是工作上要大規模做宣傳,從一開始就預期會有數十萬人湧入,因此願意先投入資金,那麼我一開始腦補的專用伺服器架構也不是不行。
但如果是個人開發,情況就不同了,即使爆紅也不會破產、即使沒爆紅固定成本也幾乎沒有,能不能選到這樣的架構,我覺得這件事真的再次顯得很重要。

看了直播之類的內容後突然很想玩,所以我也打算買來試試看!

也祝大家都能擁有美好的《超級變色龍》人生。


原文出處:https://qiita.com/i-icc/items/fb02ae5fa0848f4c511e


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝17   💬3   ❤️4
701
🥈
我愛JS
📝2   💬5   ❤️3
140
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次
📢 贊助商廣告 · 我要刊登