快轉到主要內容

ProtonUp-QT和Protontricks用法,調整Steam Proton環境的小工具

分類   Linux系統 Linux玩遊戲
標籤   Steam Steam Deck Bottles for Linux Lutris Wine
🗓️ 民國113年 甲辰年
✍ 切換正體/簡體字
目錄

Steam內建方便的Proton工具,基於Wine研發,讓我們可以輕鬆啟動遊戲

但如果要調整一些設定就很不方便…若我們想要修改遊戲字體大小呢?如果要更換第三方Wine版本呢?若是有額外的字體要裝呢?若想要強制程式以指定視窗解析度執行呢?若要給遊戲打補丁呢?

以上操作在Wine環境下可以用Winetricks達成,但是Steam並沒有提供此工具。於是就有開發者寫了工具「ProtonUp-QT」和「ProtonTricks」,專門針對Steam Proton環境設計,方便我們調整遊戲的設定值。

在使用本文介紹的二款工具前,請先安裝 Linux版Steam客戶端

0. Steam的Proton Prefix是什麼
#

Linux版Steam之所以能夠執行Windows遊戲,背後乃是採用了名為Proton的轉譯技術。而Proton是基於「Wine」這款軟體研發而來的。

根據 Steam官方文件的說明,每個Windows遊戲安裝後都會建立Proton Prefix。

Proton使用了Wine的Wine Prefix功能來建立多個Windows環境,這裡叫做Proton Prefix。Proton Prefix可以想成是給每個Windows程式都建立一個C槽 (容器),每個Proton Prefix的資料夾都是獨立的,確保exe之間不會互相干擾。並且使用者調整某個遊戲設定的時候,不會破壞其他遊戲的設定。

下圖是Proton Prefix的結構,每個資料夾的數字對應一個Steam遊戲ID,每個資料夾下面都有自己的C槽和設定檔。

預設Steam的Proton Prefix路徑位於~/.steam/steamapps/compatdata/Steam遊戲ID/pfx/

Flatpak版Steam的Proton Prefix路徑位於~/.var/app/com.valvesoftware.Steam/data/Steam/steamapps/compatdata/Steam遊戲ID/pfx/

其實仔細觀察,Proton Prefix所在的路徑就是Steam遊戲收藏庫的位置。如果你有多個遊戲收藏庫,Proton Prefix的位置也會跟著變。

1. ProtonUp-QT用法
#

原始碼位於 Github

這款工具能夠下載不同開發者維護的Wine,並將其套用至Steam、Lutris、Bottles的容器環境。

其中,Proton-GE是開源社群維護的Proton,開發進度較官方Proton快,內含一些修補程式,或許可以提昇遊戲性能。

  1. 如果Steam是用Flatpak安裝的,那麼透過 Flatpak安裝ProtonUp-QT:
flatpak --user install flathub net.davidotek.pupgui2
  1. 賦予ProtonUp-QT讀取Steam收藏庫目錄的權限,此處是Flatpak版
flatpak --user override --filesystem="~/.var/app/com.valvesoftware.Steam/data/Steam/steamapps" net.davidotek.pupgui2
  1. 在應用程式列表找到ProtonUp-QT,開啟後應該會偵測到Steam的路徑

  2. 點選「新增版本」下載要使用的Proton

  3. 下載完之後,點選「顯示遊戲列表」,給個別Steam遊戲設定要使用哪個Proton版本,之後按下套用(回到Steam的界面再設定也可以)

2. Protontricks用法
#

原始碼位於 Github

Protontricks功能等同Winetricks,可以給Proton容器安裝字體、調整字體大小、安裝額外exe或dll、打patch(打補丁)、修改登錄檔、啟動命令提示字元等等操作。

  1. 如果Steam是用Flatpak安裝的,那麼透過 Flatpak安裝:
flatpak --user install flathub com.github.Matoking.protontricks
  1. 賦予讀取Steam收藏庫目錄的權限。(如果你的遊戲不是裝在Steam收藏庫目錄,那麼也要另外賦予讀取權限)
flatpak --user override --filesystem="~/.var/app/com.valvesoftware.Steam/data/Steam/steamapps" com.github.Matoking.protontricks
  1. Protontricks圖形界面啟動後,會要你選擇Steam遊戲再操作

  2. 接下來會跳出面板

名字很明顯的我就不講了,常用的選項如下:

  • 安裝一個Windows應用:快速安裝.Net framework、DirectX、Winamp、Winrar等軟體。

  • 安裝字型:安裝Windows系統的字型,例如中日韓文裝cjkfonts

  • 修改設定:調整Wine的環境,例如模擬其他Windows版本

  • 執行Wine設定程式:也就是winecfg,在這裡可以設定字體大小(螢幕解析度DPI),勾選「桌面大小」的話則會在啟動程式前開一個虛擬桌面出來,讓程式變成在視窗執行。

  1. 遊戲打補丁通常得透過exe操作。在你下載好補丁程式後,於Linux系統檔案管理器對exe按右鍵,選擇以Protontricks Launcher開啟,再選取遊戲程式,即可將補丁安裝到那個遊戲的目錄。

  2. Protontricks也可以用指令來操作,加快安裝軟體的速度,語法 參考Winetricks。Flatpak版執行指令的語法如下:

# 給Steam ID為15320的遊戲容器安裝cjkfonts字體

flatpak run com.github.Matoking.protontricks 15320 cjkfonts
  1. 或者執行protontricks-launch指令,執行任意exe
flatpak run com.github.Matoking.protontricks --command=protontricks-launch "exe路徑"

如果安裝exe的時候出現Unknown arg...錯誤,代表Protontricks版本太舊,可能得等作者更新。

相關文章

Lutris使用教學,安裝與管理Linux的遊戲收藏
分類   Linux系統 Linux玩遊戲
標籤   Lutris Wine Steam Steam Deck RetroArch
精選數十款Linux玩遊戲的輔助程式,適用Windows與原生Linux遊戲
分類   Linux系統 Linux玩遊戲
標籤   Wine Steam Linux
如何在Linux執行Windows exe檔,用Bottles管理多版本的Wine容器
分類   Linux系統 Linux好用軟體
標籤   Bottles for Linux Wine Steam Deck

留言板

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Giscus留言板,需要Github帳號才能留言。支援markdown語法,若要上傳圖片請貼Imgur或Postimages。您的留言會在Github Discussions向所有人公開。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。為防止垃圾內容,有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。若要上傳圖片請善用圖床網站。