特點|下載並運行 |建築|免責聲明
適用於 Windows 10/11 (x64/ARM64)、Linux (AppImage/Flatpak) 和 macOS(11.0+ 通用)的最新版本: https://github.com/stenzek/duckstation/releases/tag/latest
遊戲相容性清單: https://docs.google.com/spreadsheets/d/e/2PACX-1vRE0jjiK_aldpICoy5kVQlpk2f81Vo6P4p9vfg4d7YoTOoDlH4PQHoXjTD2F7SdN8SSBLoAIhtmlI
不和諧伺服器: https://www.duckstation.org/discord.html
DuckStation 是 Sony PlayStation(TM) 控制台的模擬器/模擬器,著重於可玩性、速度和長期可維護性。目標是盡可能準確,同時保持適合低端設備的性能。不鼓勵使用「Hack」選項,預設配置應支援所有可玩遊戲,僅部分增強功能有相容性問題。
啟動模擬器和玩遊戲需要 PS1 或 PS2“BIOS”ROM 映像。您可以使用任何硬體版本或區域的映像,但不符的遊戲區域和 BIOS 區域可能會出現相容性問題。由於法律原因,模擬器未提供 ROM 映像,您應該使用 Caetla 或其他方式從您自己的控制台轉儲該映像。
DuckStation 具有使用 Qt 建構的功能齊全的前端,以及基於 Dear ImGui 的全螢幕/電視 UI。
其他功能包括:
CPU 重新編譯器/JIT(x86-64、armv7/AArch32、AArch64、RISC-V/RV64)。
硬體(D3D11、D3D12、OpenGL、Vulkan、Metal)和軟體渲染。
硬體渲染器中的升級、紋理過濾和真實彩色(24 位元)。
透過光柵化器順序視圖/片段著色器聯鎖進行精確混合。
PGXP 用於幾何精度、紋理校正和深度緩衝區模擬。
硬體渲染器中的紋理替換系統。
運動自適應去隔行。
自適應下取樣濾波器。
垂直或「TATE」shmup 遊戲的畫面旋轉。
後處理著色器鏈(GLSL 和 Reshade FX)。
“快速啟動”用於跳過 BIOS 啟動/介紹。
保存狀態支持,具有超前運行和倒回功能。
Windows、Linux、macOS 支援。
支援直接從 CD、bin/cue 影像、原始 bin/img 檔案、MAME CHD、單軌 ECM、MDS/MDF 和未加密的 PBP 格式讀取。
將光碟映像預先載入到 RAM 以避免磁碟休眠故障。
自動載入/套用 PPF 補丁。
直接啟動自製可執行檔。
直接載入便攜式聲音格式 (psf) 檔案。
當跑步速度超出 100% 時,音訊會被時間拉伸。
用於輸入的數位和類比控制器(隆隆聲被轉發到主機)。
GunCon 和 Justifier 光槍支援(用滑鼠模擬)。
NeGcon 支持。
Qt 和「大圖」UI。
自動更新預覽和最新頻道。
自動內容掃描 - 遊戲標題/雜湊值由 redump.org 提供。
每個遊戲可選擇自動切換記憶卡。
支援從現有清單載入作弊。
記憶卡編輯器和儲存導入器。
模擬CPU超頻。
整合和遠端調試。
Multitap 控制器(最多 8 個設備)。
復古成就。
不和諧豐富的存在。
使用 Media Foundation (Windows) 和 FFmpeg(所有平台)後端進行視訊擷取。
比馬鈴薯還快的CPU。但它需要是 x86_64、AArch32/armv7、AArch64/ARMv8 或 RISC-V/RV64。
對於硬體渲染器,需要支援 OpenGL 3.1/OpenGL ES 3.1/Direct3D 11 功能等級 10.0(或 Vulkan 1.0)及更高版本的 GPU。所以,基本上所有的東西都是在過去十年左右的時間內製作的。
SDL、XInput 或 DInput 相容遊戲控制器(例如 XB360/XBOne/XBSeries)。 Windows 上的 DualShock 3 用戶需要安裝 PlayStation Now 中包含的官方 DualShock 3 驅動程式。
適用於 Windows x64/ARM64、Linux x86_64(AppImage/Flatpak 格式)和 macOS 通用二進位檔案的 DuckStation 二進位檔案可透過 GitHub Releases 取得,並在每次提交/推送時自動建置。
根據 CC-BY-NC-ND 條款,允許重新分發未修改的版本和代碼。但是,我們更希望您連結到 https://www.duckstation.org/。請注意,預先配置的設定和套件被視為修改。
對於 x86 機器(大多數系統),您需要一個支援 SSE4.1 指令集的 CPU 來進行「正常」建置。這包括 2007 年後製造的所有 Intel CPU 和 2011 年之後製造的 AMD CPU。
DuckStation需要Windows 10/11,特別是 1809 或更高版本。如果您仍在使用 Windows 7/8/8.1,DuckStation將無法在您的作業系統上運作。在 2023 年運行這些作業系統應被視為有安全風險,我建議更新到獲得供應商支援的系統。如果您必須使用較舊的作業系統,v0.1-5624 是最後執行的版本。但不要指望得到任何幫助,這些構建不再受支援。
下載:
前往 https://github.com/stenzek/duckstation/releases/tag/latest,然後下載 Windows x64 版本。這是一個包含預先建置二進位檔案的 zip 檔案。
或者,直接下載連結:https://github.com/stenzek/duckstation/releases/download/latest/duckstation-windows-x64-release.zip
將存檔解壓縮到子目錄中。該檔案沒有根子目錄,因此如果不解壓縮到子目錄,則解壓縮到目前目錄會在下載目錄中刪除一堆檔案。
下載並解壓縮後,您可以使用duckstation-qt-x64-ReleaseLTCG.exe
啟動模擬器。請依照安裝精靈開始操作。
如果您收到有關vcruntime140_1.dll
遺失的錯誤,則需要更新 Visual C++ 執行階段。您可以從此頁面執行此操作:https://support.microsoft.com/en-au/help/2977003/the-latest-supported-visual-c-downloads。具體來說,您需要 x64 運行時,可以從 https://aka.ms/vs/17/release/vc_redist.x64.exe 下載。
DuckStation 以 AppImage 和 Flatpak 格式為 x86_64 Linux 提供。 Flathub 上的版本是正式版本,並與 GitHub 上最新的滾動/穩定版本同步。
AppImages 需要相當於 Ubuntu 22.04 或更高版本的發行版才能運作。
前往 https://github.com/stenzek/duckstation/releases/tag/latest,下載duckstation-x64.AppImage
。
在下載的 AppImage 上執行chmod a+x
- 依照此步驟,AppImage 可以像典型的執行檔一樣運作。
前往 https://github.com/stenzek/duckstation/releases/tag/latest,並下載duckstation-x64.flatpak
。
運行flatpak install ./duckstation-x64.flatpak
。
或者,如果您設定了 FlatHub:
運行flatpak install org.duckstation.DuckStation
。
使用flatpak run org.duckstation.DuckStation
啟動,或在桌面環境的啟動器中選擇DuckStation
。請依照安裝精靈開始操作。
為 x64 和 ARM64 (Apple Silicon) 提供通用 MacOS 版本。
需要 MacOS Big Sir (11.0),因為這也是 Qt 的最低要求。
下載:
前往 https://github.com/stenzek/duckstation/releases/tag/latest,下載duckstation-mac-release.zip
。
雙擊 zip 檔案將其解壓縮。
打開 DuckStation.app,可以選擇先將其移動到您想要的位置。
根據 GateKeeper 配置,您可能需要在第一次運行時右鍵單擊 -> 打開,因為對於帶來零收入的項目來說,代碼簽署證書是不可能的。
您將需要具有armv7(32位元ARM)、AArch64(64位元ARM)或x86_64(64位元x86)的裝置。 64 位元是首選,32 位元的要求更高,您可能至少需要 1.5GHz CPU。
從 Google Play 下載:https://play.google.com/store/apps/details?id=com.github.stenzek.duckstation
APK 與測試版下載:https://www.duckstation.org/android/
不為 Android 應用程式提供支持,它是免費的,您的期望應該與此一致。請不要向我發送有關此問題的電子郵件,或尋求協助,您將被忽略。
使用方法:
首次安裝並運行該應用程式。
請依照設定精靈進行操作。
如果您有外部控制器,則需要在設定中映射按鈕和搖桿。
許多 PAL 地區遊戲使用 LibCrypt 保護,需要額外的 CD 子通道資訊才能正常運作。 libcrypt 不起作用通常表現為掛起或崩潰,但有時也會影響遊戲玩法,這取決於遊戲如何實現它。
對於這些遊戲,請確保 CD 映像及其對應的 SBI (.sbi) 檔案具有相同的名稱並放置在同一目錄中。當在 CD 映像旁邊找到 SBI 檔案時,DuckStation 會自動載入該檔案。
例如,如果您的光碟映像名為Spyro3.cue
,則您可以將 SBI 檔案放置在同一目錄中,並將其命名為Spyro3.sbi
。
還支援具有內建子通道資訊的 CHD 影像。
如果您直接從光碟播放,且您的 CD/DVD 光碟機不支援子頻道讀取,或與傳回的 SubQ 有偏差,則可以將 SBI 檔案放在使用者目錄下的subchannel
目錄中,序號或標題為遊戲。
DuckStation 附帶一個內建的作弊和補丁資料庫,兩者均由社區提供。歡迎在 https://github.com/duckstation/chtdb 上做出貢獻。
每個版本都包含最新版本的資料庫,但是您也可以手動更新到最新版本。
要求:
視覺工作室 2022
克隆儲存庫: git clone https://github.com/stenzek/duckstation.git
。
從 https://github.com/stenzek/duckstation-ext-qt-minimal/releases/download/latest/deps-x64.7z 下載依賴包,並將其解壓縮到depmsvc
。
開啟根目錄中的 Visual Studio 解決方案duckstation.sln
,或「開啟資料夾」進行 cmake 建置。
建置解決方案。
二進位檔案位於bin/x64
。
執行duckstation-qt-x64-Release.exe
或您使用的任何配置。
Ubuntu/Debian 軟體包名稱:
autoconf automake build-essential clang cmake curl extra-cmake-modules git libasound2-dev libcurl4-openssl-dev libdbus-1-dev libdecor-0-dev libegl-dev libevdev-dev libfontconfig-dev libfreetype-dev libgtk-3-dev libgudev-1.0-dev libharfbuzz-dev libinput-dev libopengl-dev libpipewire-0.3-dev libpulse-dev libssl-dev libudev-dev libwayland-dev libx11-dev libx11-xcb-dev libxcb1-dev libxcb-composite0-dev libxcb-cursor-dev libxcb-damage0-dev libxcb-glx0-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-present-dev libxcb-randr0-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-shape0-dev libxcb-shm0-dev libxcb-sync-dev libxcb-util-dev libxcb-xfixes0-dev libxcb-xinput-dev libxcb-xkb-dev libxext-dev libxkbcommon-x11-dev libxrandr-dev libtool lld llvm nasm ninja-build pkg-config zlib1g-dev
Fedora 軟體包名稱:
alsa-lib-devel autoconf automake brotli-devel clang cmake dbus-devel egl-wayland-devel extra-cmake-modules fontconfig-devel gcc-c++ gtk3-devel libavcodec-free-devel libavformat-free-devel libavutil-free-devel libcurl-devel libdecor-devel libevdev-devel libICE-devel libinput-devel libSM-devel libswresample-free-devel libswscale-free-devel libX11-devel libXau-devel libxcb-devel libXcomposite-devel libXcursor-devel libXext-devel libXfixes-devel libXft-devel libXi-devel libxkbcommon-devel libxkbcommon-x11-devel libXpresent-devel libXrandr-devel libXrender-devel libtool lld llvm make mesa-libEGL-devel mesa-libGL-devel nasm ninja-build openssl-devel patch pcre2-devel perl-Digest-SHA pipewire-devel pulseaudio-libs-devel systemd-devel wayland-devel xcb-util-cursor-devel xcb-util-devel xcb-util-errors-devel xcb-util-image-devel xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xcb-util-xrm-devel zlib-devel
Arch 套件名稱:
base-devel clang cmake curl dbus extra-cmake-modules freetype git libjpeg-turbo libpng libwebp libx11 libxrandr lld llvm ninja qt6-base qt6-imageformats qt6-svg qt6-tools wayland zstd
克隆儲存庫: git clone https://github.com/stenzek/duckstation.git
, cd duckstation
。
建構依賴關係。如果您願意,您可以將它們保存在樹之外。這需要一段時間。 scripts/deps/build-dependencies-linux.sh deps
。
運行 CMake 以配置建置系統。假設建構子目錄為build-release
,運行cmake -B build-release -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_EXE_LINKER_FLAGS_INIT="-fuse-ld=lld" -DCMAKE_MODULE_LINKER_FLAGS_INIT="-fuse-ld=lld" -DCMAKE_SHARED_LINKER_FLAGS_INIT="-fuse-ld=lld" -DCMAKE_PREFIX_PATH="$PWD/deps" -G Ninja
.如果您想要發布(優化)構建,請包含-DCMAKE_BUILD_TYPE=Release -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
。
編譯原始碼。對於上面的範例,運行ninja -C build-release
運行位於./build-release/bin/duckstation-qt
下的建置目錄中的二進位檔案。
要求:
CMake
Xcode
克隆儲存庫: git clone https://github.com/stenzek/duckstation.git
。
建構依賴關係。這需要一段時間。 scripts/deps/build-dependencies-mac.sh deps
。
運行 CMake 以配置構建系統: cmake -Bbuild-release -DCMAKE_BUILD_TYPE=Release -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_PREFIX_PATH="$PWD/deps"
。
編譯原始碼: cmake --build build-release --parallel
。
執行位於bin/DuckStation.app
下的建置目錄中的二進位檔案。
「使用者目錄」是您放置 BIOS 映像、儲存設定以及預設儲存記憶卡/儲存狀態的位置。可選的 SDL 遊戲控制器資料庫檔案也可以放置在這裡。
根據您使用的平台,它位於以下位置:
Windows:我的文件DuckStation
Linux: $XDG_DATA_HOME/duckstation
或~/.local/share/duckstation
。
macOS: ~/Library/Application Support/DuckStation
。
因此,如果您使用的是 Linux,則可以將 BIOS 映像放置在~/.local/share/duckstation/bios
中。該目錄將在第一次執行 DuckStation 時建立。
如果您希望使用「便攜式」構建,其中使用者目錄與可執行檔案所在的位置相同,請在與 DuckStation 可執行檔案相同的目錄中建立名為portable.txt
空檔案。
您的鍵盤或遊戲控制器可用於模擬各種 PlayStation 控制器。控制器輸入透過 DInput、XInput 和 SDL 後端支持,並且可以透過Settings -> Controllers
進行更改。
若要綁定輸入設備,請前往Settings -> Controllers
,然後選擇要對應的虛擬控制器。自動映射可處理大多數控制器。但是,如果您需要手動綁定控制器,請按一下按鈕/軸名稱下方的框,然後按您想要綁定的輸入裝置上的按鍵或按鈕。
DuckStation 版本附帶了 SDL 控制器後端的遊戲控制器映射資料庫,由 https://github.com/mdqinc/SDL_GameControllerDB 提供。包含的gamecontrollerdb.txt
檔案可以在DuckStation 程式目錄的resources
子目錄中找到。
如果您在將控制器與 SDL 控制器後端綁定時遇到問題,您可能需要在資料庫檔案中新增自訂映射。製作gamecontrollerdb.txt
的副本並將其放置在您的使用者目錄中(或直接放置在程式目錄中,如果以便攜帶模式運行),然後按照 SDL_GameControllerDB 儲存庫中的說明建立新映射。將此映射新增至gamecontrollerdb.txt
的新副本中,然後您的控制器應該可以正確識別。
控制器和熱鍵的綁定可以在Settings -> Controllers
中更改。
控制器1:
左搖桿: W/A/S/D
右搖桿: T/F/G/H
方向鍵:上/左/下/右
三角形/正方形/圓形/十字: I/J/L/K
L1/R1: Q/E
L2/R2: 1/3
L3/R3: 2/4
開始:輸入
選擇:退格鍵
熱鍵:
Escape:開啟暫停選單
F1:載入狀態
F2:保存狀態
F3:選擇上一個儲存狀態
F4:選擇下一個儲存狀態
F10:儲存螢幕截圖
F11:切換全螢幕
選項卡:暫時停用限速器
空格:暫停/恢復仿真
圖示來自 icon8:https://icons8.com/icon/74847/platforms.undefined.short-title
「PlayStation」和「PSX」是索尼互動娛樂歐洲有限公司的註冊商標。該項目與索尼互動娛樂公司沒有任何關係。