Portal 1 和 Portal 2 的 Nintendo Switch 外掛程式允許加載 game.zip 以外的文件,因此每次您想要更改某些內容時,不再需要重新打包和發送巨大的檔案。
您必須擁有 Portal 2 版本 1.0.3 以及 Portal 版本 1.0.2 或 1.0.3
從版本下載:
Portal-NXSideLoader.zip
沒有網路補丁(它不會阻止您使用網路):
- Portal2-NXSideLoader.zip
使用網路補丁(對於阻止任天堂伺服器的人,它將阻止遊戲連接到網路以防止崩潰+幫助調試):
- Portal2-NoWeb-NXSideLoader.zip
將atmosphere
資料夾放入SD卡根目錄(是的,您的CFW不會被刪除...)
根據遊戲,將主 mod 資料夾重新命名為(例如,在 Portal Reloaded 的情況下,它是「portalreloaded」):
portal
portal2_dlc3
並將此資料夾放入:
atmosphere/contents/01007BB017812000/romfs/nxcontent/
atmosphere/contents/0100ABD01785C000/romfs/nxcontent/
romfs 資料夾內的所有資料夾和檔案名稱必須小寫!
Some mods are overwriting menu options, so you can lose access to Switch controller settings.
If after installing mod you can't save anything in options, try to delete `gameinfo.txt` from mod folder. You may also delete custom options menu.
They are stored either freely somewhere inside mod folder OR they are packed to some vpk file.
Mod 需要有適當最佳化的 CPU 程式碼,否則 Switch 會卡住。
正確優化的模組範例:
優化不佳的模組範例:
nxcontent
中的少數檔案可能不受支持,因為它們是透過單獨的函數預先載入的。我需要添加對一個函數的特定支持,以便加載rom_boot_params.txt
。如果有任何文件不起作用而您希望它起作用,請寫一個問題。
遊戲支援 vscript。
此 mod 不支援修改原始碼。您需要手動製作自己的掛鉤。
遊戲開發人員重新設計了整個 cstdio 以使用 game.zip 作為檔案系統。門戶遊戲開啟大多數檔案都使用名為fopen_nx()
函數。要讀取此檔案 - fread_nx()
等。
fopen_nx()
fopen()
並使用以rom:/
開頭的正確路徑此解決方案有兩個問題:
rom_boot_params.txt
,所以我掛鉤了讀取該文件的函數,並重新設計了它以從 SD 卡加載文件。後來發現同樣的函數負責從 bsp 檔案載入聲音檔案和紋理。fopen_nx()
路徑載入忽略大小寫 + 優先檢查檔案是否在nxcontent
資料夾內,如果不是,則檢查 zip 的根目錄。在鉤子內部,我重新實作了此檢查+使用tolower()
作為檔案路徑,因為 HOS romfs 檔案載入區分大小寫,並且所有原始檔案都是小寫的。您需要使用 Switch-dev 安裝標準 devkitpro。
用這個補丁來自exefs的main.npdm
,否則外掛程式會崩潰:https://github.com/skyline-dev/skyline/blob/master/scripts/patchNpdm.py
若要為 Portal 1 編譯它,請使用指令
make PORTAL="-DPORTAL"
對於傳送門 2
make PORTAL="-DPORTAL2"
帶有互聯網補丁,允許透過阻止訪問任天堂伺服器的網路進行調試
make PORTAL="-DPORTAL2 -DPDEBUG"