降低 RAM 使用量 / 避免閃退與錯誤 12(DXVK)
模三是一款 32 位元的老遊戲。不管新電腦有多強,它最多只能使用約 4GB 的 RAM。當遊戲記憶體逼近 3.2~3.8GB 時,就很容易出現各種狀況,比如錯誤 12、閃退、越來越卡等等。如果裝了很多 CC,又喜歡玩大地圖,還要長時間經營同一個存檔的話,DXVK 很值得嘗試。
附註我目前的遊戲環境是 Windows 11、AMD 處理器、NVIDIA 顯卡、光碟版 1.67。
沒用 Reshade。(如果有用,請參考原作者的教學內容)
手續繁雜,請準備一顆越挫越勇的耐心。
DXVK 是什麼
DXVK 會把遊戲從舊的 DirectX 9 轉換成 Vulkan。它的主要效果是:
- 把部分貼圖負擔轉移到顯示卡 VRAM
- 降低 RAM 壓力
- 提升穩定度
- 減少錯誤 12 的出現機率
如前言所說,不管新電腦有多好,模三最多只能用 4GB RAM,而執行時使用的記憶體只要接近 3.2~3.8GB 時就很可能會閃退(每台電腦情況略有差異)。而 DXVK 能轉移壓力,讓 RAM 大約控制在 2GB 左右。
前置作業
1. 以系統管理員身份執行遊戲(TS3W.exe)。
- 路徑:Program Files\Electronic Arts\模擬市民3\Game\Bin
- 右鍵→內容→相容性,設定區域勾選以系統管理員身分執行此程式
2. 設定 DEP(資料執行防止)。設定後穩定性會更好,避免可能會因為 DEP 阻擋而出現的啟動失敗、畫面異常、黑畫面。
- 開始→設定→系統→系統資訊,相關連結的「進階系統設定」
- 系統內容→在「進階」分頁裡找到「效能」,點「設定」
- 切換到「資料執行防止」分頁
- 點選「為所有的 Windows 程式與服務開啟 DEP,除了我選擇的這些」
- 新增,選擇路徑:Program Files\Electronic Arts\模擬市民3\Game\Bin
- 新增 S3Launcher、TS3、TS3W
- 確定保存後,務必重新開機,設定才會生效
3. 備份資料。萬一搞砸了,這就是救命稻草。
- 備份整個 BIN 資料夾。路徑:Program Files\Electronic Arts\模擬市民3\Game\Bin
- 備份 Options.ini 檔案。路徑:Documents\Electronic Arts\模擬市民3
Step 1 下載 DXVK
1. 前往官方 GitHub 下載 dxvk-2.7.1.tar.gz 檔案。目前最新版是 2.7.1,原作者當初使用的是 2.3.1,兩版我都試過了,都沒問題。我後來裝新版的。
2. 解壓縮後會看到 x32 和 x64 兩個資料夾。因為模擬市民三是 32 位元的遊戲,所以只需要 x32 裡的檔案。
3. 將 x32 裡 d3d9.dll 放到 BIN 資料夾。如果出現覆蓋提示,請按「是」。路徑:Program Files\Electronic Arts\模擬市民3\Game\Bin
Step 2 建立 DXVK.conf 設定檔
原作者網頁有提供已經編輯好的版本,但為了避免未來連結失效,順帶還是記錄建立設定檔方法。
1. 新增一個記事本文字檔案,命名為 DXVK.conf。注意副檔名要是 .conf,不是 .txt。
2. 在檔案中貼上以下文字:
3. 把 DXVK.conf 放到 BIN 資料夾。路徑:Program Files\Electronic Arts\模擬市民3\Game\Bin
Step 3 啟動遊戲
1. 直接開啟 BIN 資料夾裡的 TS3W.exe,遊戲就會執行,不用透過啟動器。光碟版可能會需要 NRaas no CD。
2. 原作者提醒有可能會花上一些時間才能順利開啟,請務必耐心等候。但可能因為我的電腦還沒有安裝太多 MOD,基本上還是秒開了。
3. 隨便進一個存檔稍微停留一會,不須存檔,就可以關遊戲了。也可以在遊戲執行時看看電腦的 RAM 是否已經完美控制在 2GB 上下。
4. 關閉遊戲後,檢查 BIN 資料夾中是否出現 TS3W.DXVK-cache 檔案。如果有,恭喜安裝成功~沒有的話,請回頭檢查是否所有步驟都正確無誤。
Step 4 修正 Options.ini
1. 找到 Options.ini 檔案(不是備份的那個,是目前在資料夾的)。路徑:Documents\Electronic Arts\模擬市民3
2. 用記事本開啟,搜尋以下文字:
3. 會找到像這樣的字串。複製最後一個分號後的數字,每個人的都不一樣,我的是 65535。
lastdevice = 0;10de;2d59;65535
4. 打開之前備份的 Options.ini,一樣搜尋「lastdevice =」。會找到雷同但後面數字相異的字串,例如我的是「lastdevice = 0;10de;2d59;9174」。
5. 把備份檔裡分號的最後一個數字(我的是 9174)改成新檔案裡的(我的是 65535),之後儲存。其他資料不要動。
6. 用更新後的 Options.ini 備份檔,放到資料夾取代現有的檔案。路徑:Documents\Electronic Arts\模擬市民3
Step 5 修改 MemCacheBudgetValue(非必要但建議)
這個設定決定「遊戲可以使用多少 VRAM 作為快取」。改不改差異不一定明顯,還是取決於電腦硬體。
1. 備份 GraphicsRules.sgr。路徑:Program Files\Electronic Arts\模擬市民3\Game\Bin
2. 用記事本開啟,搜尋以下文字:
3. 有兩行,分別代表高 RAM 狀態和低 RAM 狀態。第一行的數值一定要大於第二行。原始數值是(計算方式:200×1024×1024):
200MB = 209715200/160MB = 167772160
4. 把數值修改成需要的。可能需要反覆調整才能找到最適合的,原作者自己測試,改成以下狀況效果最好,所以我就跟風照抄了。
1GB = 1073741824;2GB = 2147483648;-1 = 無限制,建議別亂用。
第一行 → 2147483648/第二行 → 1073741824
5. 儲存檔案。恭喜完成這項大工程。
注意事項
1. TS3W.DXVK-cache 是 DXVK 的快取檔。會隨著遊戲進行慢慢變大,但還是只會佔幾 KB 而已,請不要刪除它。
2. 如果不想用 DXVK 了,刪除以下檔案就可以恢復原設定。
- d3d9.dll
- DXVK.conf
- TS3W.DXVK-cache





0 Comments