在 Roblox 戰鬥皇家中,核心遊戲循環通常由兩個腳本處理,具體來說是伺服器上的 ServerScriptService/Server 和客戶端上的 StarterPlayer/StarterPlayerScripts/Client。
初始設置
ReplicatedFirst/InitialSetup 腳本配置了一些引擎級系統——內建 UI、聊天等——並確保客戶端在繼續之前加載 ReplicatedFirst/Configurations/AssetPreloads 中引用的資產。
遊戲階段
特定系統的初始化和更新根據遊戲的當前階段以不同方式進行。這些情況大多由伺服器上的 ServerScriptService/Core/GameStageHandler 和客戶端上的 ReplicatedStorage/Core/StageManager 處理。當請求一個階段時,會需要同名的模組並在其上調用各種設置函數。如果已經有模組處理當前階段,則在初始化新的階段處理器之前,會在其上調用關閉函數。
地點/伺服器角色
在 ReplicatedFirst/Configurations/MainConfiguration 中,不同的遊戲模式被組織成要執行的階段列表。
local _roleStages = {
Lobby = {"Lobby"},
Queue = {"Queue"},
Gameplay = {"Waiting", "Gameplay", "EndGame"},
}一個地點可以有 3 種不同的角色:
- 大廳 — 選擇遊戲模式等選項的初始地點。
- 排隊 — 玩家聚集在一起等待特定遊戲模式,建造和戰鬥,同時等待配置的最小玩家數。一旦達到最小玩家數,將開始倒計時,目前配置為 3:00 分鐘,倒計時結束後將開始遊戲。
- 遊戲中 — 進行跳傘並完成遊戲的地點。