
OpenFusion是用於FusionFall的反向工程服務器。它主要針對原始遊戲的版本beta-20100104和beta-20111013 ,對他人的支持有限。
可以在此處找到有關讓客戶通過葡萄酒在Linux上運行的說明。
OpenFusionServer-1.6-Original.zip或OpenFusionServer-1.6-Academy.zip 。winfusion.exe (Windows)或fusion (Linux)以啟動服務器。127.0.0.1:23000 。beta-20100104 ,如果您下載了beta-20111013 ,如果您下載了Academy Zip。如果您想運行服務器的最新開發構建,則可以在此處找到每個功能性提交的編譯二進製文件(工件)。
有關遊戲體系結構以及如何配置它的更詳細概述,請閱讀以下各節。
融合由以下組成部分組成:
.unity3d捆綁包,其中包含遊戲代碼和基本資源(加載屏幕等)原始遊戲利用玩家的實際Web瀏覽器啟動遊戲,但是從那時起,NPAPI插件界面依賴於遊戲,並且在大多數現代瀏覽器中不再可用。 Retro和OpenFusion都通過分發舊版本的Electron來解決這個問題,這是一個本質上是專門的Web瀏覽器的軟件包。
瀏覽器/電子客戶端將打開一個帶有適當MIME類型的<embed>標籤的網頁,其中src param是遊戲的.unity3d入口點的地址。這會觸發瀏覽器加載npapi插件,該插件處理啞劇類型,在這種情況下為Unity Web播放器。
請注意,帶有OpenFusion的Web播放器的版本期望所有資產的標準UnityWeb魔術號碼,而不是Retro的經過修改的streamed魔法數。隨著人們開始嘗試,混合和匹配版本,這將有可能在以後變得有意義。
Web播放器將執行遊戲代碼,該代碼將從服務器請求以下文件: /assetInfo.php和/loginInfo.php 。
/assetInfo.php包含獲取遊戲其餘資產的地址(“ dongresources”)。通常,這些將託管在與網關的同一Web服務器上,但是OpenFusion Distibstion(在默認配置中)根本不使用Web服務器!相反,它使用file:// schema在本地加載網頁,並從標準的Web服務器中獲取遊戲的資產。
/loginInfo.php包含fusionfall登錄服務器的IP:端口對,客戶端將連接到。該登錄服務器在“字符選擇”菜單以及字符創建和教程時驅動客戶端。
當玩家單擊“輸入遊戲”(或完成教程)時,登錄服務器將其發送為碎片服務器的地址,然後客戶端將在遊戲玩法中連接並保持連接。
您可以更改FusionFall Server在config.ini中聽的端口。確保登錄服務器端口與您輸入客戶端服務器列表的內容是同步的 - 碎片端口不需要這種同步。
該配置文件還可以調整其他幾個選項,包括日誌雜句,數據庫保存間隔,默認帳戶/權限級別等。有關更多詳細信息,請參見配置文件本身中的註釋。
如果您想與朋友一起玩,只需將登錄服務器詳細信息輸入OpenFusionClient中的Add Server對話。如果您全部在同一LAN下,這只是有效的,但是如果您想通過Internet玩遊戲,則需要打開端口,使用Hamachi或Ngrok之類的服務,或者在VPS上託管服務器(就像其他任何GameServer一樣)。
OpenFusion具有一個外部依賴性:SQLITE。最古老的兼容版本是3.33.0 。您可以使用vcpkg在Windows上安裝它,並使用Distraction的軟件包管理器在UNIX/Linux上安裝它。有關如何設置VCPKG的更深入指南,請閱讀本指南。
您有兩種編譯OpenFusion的選擇:隨附的Makefile和隨附的CMakelists文件。
網站上的Windows用戶使用MINGW-W64和MSYS2提供了詳細的彙編指南。否則,要為當前的平台編譯它,只需使用已安裝的正確構建工具(當前製造和clang) make 。
我們的文檔中提供了詳細的指南,適用於使用常規舊CMAKE或Visual Studio隨附的CMAKE版本。 tl; dr: cmake -B build
如果您想為該項目做出貢獻,請閱讀parduting.md。
該項目的目標是忠實地重新創建遊戲,就像目標構建時一樣。儘管大多數功能已實現,並且遊戲是可播放的,但可能缺少功能或錯誤。
根據服務器配置,您可以訪問某些命令。
對於公共服務器:原始服務器具有物品產卵,設置播放器速度/跳高高度和啟用傳送的能力(默認帳戶級別50)。同時,Academy Server更適合合法播放(默認帳戶級別99)。
託管本地服務器時,默認情況下將可以訪問所有命令(帳戶級別1)。
有關可用命令的列表,請參見此頁面。