對 Retro Engine v4 以及 Sonic 1 和 2 (2013) 選單的完整反編譯。
如果沒有官方版本的資產,該反編譯將無法運作。
您可以從以下位置取得 Sonic 1 和 Sonic 2 的正式版本:
即使您的平台不受官方版本支持,您也必須購買或正式下載平台的資產(您不需要運行官方版本,您只需要遊戲資產)。
如果您想從官方行動版本轉移存檔, Android 永久檔案路徑為Android/data/com.sega.sonic1 or 2/SGame.bin
(其他版本可能有不同的檔案路徑) )。將該檔案複製到反編譯的資料夾中,名稱為SData.bin
。
settings.ini
文件,遊戲使用它來加載所有設置,類似於Sonic Mania。ESC
鍵從任何地方存取開發功能表。F12
暫停、 F11
步過和快轉調試功能均已移植,如果在配置中啟用了devMenu
,則可以啟用這些功能。F1
將載入演示階段清單中的第一個場景(通常是標題畫面)。F2
和F3
將載入目前舞台清單中的上一個和下一個場景。F5
將重新載入目前場景以及所有資源和腳本。F8
和F9
將使觸控螢幕和物件碰撞箱可視化。F10
將啟動調色板疊加層,即時顯示遊戲的 8 個內部調色板。該專案使用 CMake,這是一種支援許多不同編譯器和平台的多功能建置系統。您可以在此下載 CMake。 (確保在安裝過程中啟用將 CMake 新增至系統 PATH 的功能!)
為了克隆存儲庫,您需要安裝 Git,可以在此處取得。
使用以下指令遞歸複製儲存庫: git clone --recursive https://github.com/RSDKModding/RSDKv4-Decompilation
如果您已經複製了儲存庫,請在儲存庫內執行以下命令: git submodule update --init --recursive
為了處理依賴關係,您需要安裝 Visual Studio Community(確保在安裝過程中安裝了Desktop development with C++
包)和 vcpkg(您只需按照1 - Set up vcpkg
)。
安裝這些後,在命令提示字元中執行以下命令(確保將[vcpkg root]
替換為 vcpkg 安裝路徑!):
[vcpkg root]vcpkg.exe install glew sdl2 libogg libvorbis --triplet=x64-windows-static
(如果您正在編譯 32 位元版本,請將x64-windows-static
替換為x86-windows-static
。)最後,請依照下列編譯步驟使用-DCMAKE_TOOLCHAIN_FILE=[vcpkg root]/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows-static -DCMAKE_PREFIX_PATH=[vcpkg root]/installed/x64-windows-static/
cmake -B build
.
[vcpkg root]
的每個實例替換為 vcpkg 安裝路徑!x64-windows-static
的每個實例替換為x86-windows-static
。安裝以下相依性:然後按照以下編譯步驟進行:
sudo pacman -S base-devel cmake glew sdl2 libogg libvorbis
sudo apt install build-essential cmake libglew-dev libglfw3-dev libsdl2-dev libogg-dev libvorbis-dev
sudo dnf install make gcc cmake glew-devel glfw-devel sdl2-devel libogg-devel libvorbis-devel zlib-devel
sudo apk add build-base cmake glew-dev glfw-dev sdl2-dev libogg-dev libvorbis-dev
請按照此處的 Android 建置說明進行操作。
編譯非常簡單,只需在根儲存庫目錄中鍵入以下內容即可:
cmake -B build
cmake --build build --config release
產生的建置將位於build/
中的某個位置,具體取決於您的系統。
編譯時可以使用以下 cmake 參數:
-D[flag-name]=[value]
新增至cmake -B build
命令的末尾來使用它們。例如,要在RETRO_DISABLE_PLUS
設定為 on 的情況下進行構建,請將-DRETRO_DISABLE_PLUS=on
加入到命令中。RETRO_REVISION
:要編譯的版本。接受一個整數,預設為3
(Origins)。RETRO_DISABLE_PLUS
:是否停用 Plus DLC。採用布林值(開/關):編譯分發時使用on
進行建置。預設為off
。RETRO_FORCE_CASE_INSENSITIVE
:載入檔案時強制不區分大小寫。採用布林值,預設為off
。RETRO_MOD_LOADER
:啟用或停用模組載入器。採用布林值,預設為on
。RETRO_NETWORKING
:啟用或停用用於 Sonic 2 的 2P VS 模式的網路功能。採用布林值,預設為on
。RETRO_USE_HW_RENDER
:啟用主選單和觸控 UI 使用的硬體渲染器。採用布林值,預設為on
。RETRO_ORIGINAL_CODE
:刪除任何自訂程式碼。啟用此功能後將無法建立可玩的遊戲。採用布林值,預設為off
。RETRO_SDL_VERSION
:僅當您知道自己在做什麼時才更改此設定。在使用 SDL1 或 SDL2 之間切換。採用1
或2
的整數,預設為2
。 請按照每個分支的自述文件中的安裝說明進行操作。
由於這些分支是非官方的,我們無法為它們提供支持,而且它們可能不是最新的。
目前唯一支援的平台是上面列出的平台,但是後端使用libogg、libvorbis 和SDL2 來為其提供支援(以及用於mod API 的tinyxml2 和用於網路的asio),因此程式碼庫是非常多平台的。如果可以的話,您可以克隆此儲存庫並將其移植到不在清單中的平台。
多人遊戲伺服器需要 Python 3.8 或更高版本。您可以在此處下載 Python。若要使用伺服器,請在 Server.py 所在的資料夾中開啟命令提示符,然後執行命令py -3 Server.py [local IPv4 address] [port] debug
。您可以使用命令ipconfig
找到您的本機 IPv4 位址。請注意,在Server
資料夾中找到的 C++ 伺服器已被棄用並且不再運作。它已保存在存儲庫中以供參考。
您可以在這裡找到常見問題。
加入 Retro Engine Modding Discord 伺服器,以了解您可能需要了解的有關反編譯或修改的任何其他問題。