ProtontricksでLinux上のSteamゲームを動かす!エラー解決の完全ガイド
2018年から2019年にかけて、Windows/Mac向けタイトルをできるだけ多くLinuxに対応させるための大きな取り組みが行われました。この流れの中でゲームを試したことがある方なら、Steamが貢献した「Proton」という仕組みをご存じでしょう。しかし、依存関係の多い一部のゲームをProtonで実行しようとすると、WindowsからLinuxへの移行が必ずしもスムーズにいかないケースがあることにすぐ気づくはずです。
Protonでゲームを起動しようとした際にエラーが表示される場合、「protontricks」という便利なツールを使えば、簡単に問題を解決できます。
Protontricksの仕組み
Protontricksは、ターミナルベースのユーティリティです。WINE環境用のヘルパースクリプトである「winetricks」を手動で操作してSteamゲームの不具合を解消する場合、多くの手間がかかりますが、Protontricksはその作業の大部分を自動化してくれます。賢くスクリプトを活用することで、プロセスを可能な限りスムーズにしてくれるのです。
SteamのProtonでゲームが起動できない原因の多くは、Steamがインストールしていない依存関係(ランタイム)がアプリケーションに欠けていることです。Protontricksはwinetricksの上にレイヤーとして機能し、必要なランタイムをゲームのSteamディレクトリに直接インストールすることで、この問題を手軽に克服できるようにします。
事前準備
何かを始める前に、まずSteam Playが正しく有効になっており、クライアント側の設定がすべて完了していることを確認しましょう。設定方法については、先に「WindowsゲームをLinuxで動かす方法」のガイドを参照してください。
Protontricksは、こうした基本的な設定を行ってもなおSteamがゲームを起動できない特定の状況のためのツールです。
依存関係のインストール
現在Linuxを使用しているほとんどの方はすでにWINEをインストールしており、多くのWindowsアプリケーションを実行できる状態にあるでしょう。しかし、Winetricksがインストールされていない人も少なくありません。Protontricksを使用するには、まずWinetricksをインストールする必要があります。
Linux Mint、Ubuntu系システム、Debian、MX Linuxなどでは、次のコマンドを使用します。
sudo apt install winetricks
Manjaroの場合、通常は標準で含まれていますが、もし含まれていなければ「システム → ソフトウェアの追加と削除」を開き、「wine」を検索してください。パッケージの一覧が表示されるので、「wine」と「winetricks」の両方がインストールされていることを確認します。
その他のディストリビューションをお使いの場合は、以下の汎用コマンドでWinetricksを入手できます。
cd "${HOME}/Downloads"
wget "https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks"
chmod +x winetricks
sudo cp winetricks /usr/local/bin
さらに、Protontricksを動作させるにはpipxも必要です。
Arch Linux / Manjaro:
sudo pacman -S python-pip python-pipx python-setuptools python-virtualenv
Debian / Ubuntu / Mint / MX:
sudo apt install python3-pip python3-setuptools python3-venv pipx
Protontricksのインストール
前提となるアプリケーションのインストールが完了したら、いよいよ本体をインストールします。ここで注意したいのは、これまでコマンドを実行していたターミナルではなく、新しくクリーンなターミナルを開いて作業することです。
あとは以下のコマンドを入力するだけです。
pipx install protontricks
これで完了です。次に、この小さなツールがどれほど強力で、なぜこれほどの手間をかける価値があるのかを見ていきましょう。
.NETランタイムが不足しているゲームへの対処法
Protontricksは、ゲームを起動したときに「特定のランタイムがインストールされていません」というエラーが表示される場面のために設計されています。多くの場合、それは.NET Frameworkの特定バージョンです。いずれにせよ、Protontricksを活用する前に、エラーが出たままでも良いので、まずはゲームを一度起動しておく必要があります。
最初に、ゲームに何が不足しているかを把握しましょう。ゲームを起動しようとした際に、どのバージョンの.NETが必要だと警告されているかをメモしておきます。
その後、ゲームのSteam IDを調べます。最も簡単な方法は、ターミナルで以下のコマンドを入力することです。
protontricks -s [ゲーム名]
検索は大文字小文字を区別せず、部分的な名前でも受け付けます。大文字小文字が一致しない検索と部分一致検索の両方の例は、下の画像をご覧ください。
IDが見つかり、必要な.NETのバージョンを確認できたら、「dotnet」の後にバージョン番号(ドットやスペースなし)を続けて指定してインストールを実行します。例えば、Elite Dangerousで機能するコマンドは以下のようになります。
protontricks 35920 dotnet472
この後、Protontricksは該当するSteamフォルダ内にゲーム用の互換性ディレクトリを作成し、指定したバージョンの.NET Frameworkのインストールを試みます。64ビットのWINEプレフィックスで実行する必要があることに関する恐ろしげなエラーが多数表示されますが、これらは無視しても問題ありません。
その他の問題の修正
この「魔法のような」修正を行っても、まだ動作しないゲームも数多く存在します。そもそも、問題が.NETランタイムの不足ではない可能性もあります。
特殊なケースについては、ProtonDBで自分のゲームを検索することをおすすめします。ユーザーが、Protontricksを使った修正方法や、Steamライブラリのゲームプロパティに入力できる起動オプションなどを投稿していることがよくあります。「このコマンドを入力すれば一発解決!」とはいかないことも多いですが、Protontricksのコマンドを使ったり、いくつかのファイルを調べたりする数分間の微調整で、うまくいく解決策が見つかるかもしれません。
提案の中には複雑で、あなたの環境では機能しないものもあるかもしれません。しかし、どうしても特定のゲームをLinuxで動かしたいと強く望み、数時間を費やす覚悟があるなら、一般的な方法でうまくいかなかった人にとって、これは最高の情報リポジトリです。
ただし、たとえゲームが起動できても、パフォーマンスがWindowsと比べて大幅に劣る場合がある点には留意してください。なぜかシングルプレイヤーでは快適に動作するのに、マルチプレイヤー機能を使おうとした瞬間にパフォーマンスが崩壊するゲームが少なくありません。
完璧ではないものの、Linuxでのゲーミングはイライラさせられる作業から徐々に脱却しつつあり、さらに簡単にするためのツールも開発され続けています。Protontricksは、winetricks単体で作業する場合に経験する面倒さを素早く取り除ける、最もシンプルかつエレガントな方法の一つと言えるでしょう。
あなた自身、Linuxでゲームを動かすのに役立ったツールはありますか?ぜひコメントで教えてください。取り上げてほしいツールがあれば、お知らせください!
-
Arch Linuxのインストール方法を徹底解説!初心者向けステップバイステップガイド
UbuntuやLinux Mintとは異なり、Arch Linuxは「ローリングリリース」方式を採用したLinuxディストリビューションです。一度インストールしてしまえば、常に最新バージョンへと自動的にアップデートされ続けます。また、Arch Linuxは必要最小限の構成から始まるディストリビューションのため、システムに何をインストールするかを完全に自分でコントロールできるのも大きな魅力です。さらに、Linuxコミュニティ屈指の充実度を誇る「Arch Wiki」が存在する点も見逃せません。ただし、Arch Linuxで注意すべき点はそのインストールプロセスです。決して心臓の弱い方向けではありま
-
Homebrewの使い方:LinuxとWindowsにソフトウェアを簡単インストールする方法
長年にわたり、HomebrewはMacユーザーにとって欠かせない便利なツールであり続けてきましたが、その対象はMacユーザーだけに限られていました。このアプリはLinuxスタイルのパッケージ管理を実現し、コマンドラインユーティリティを手軽にインストールできるようにするものです。しかし、バージョン2.0.0以降、HomebrewはもはやMac専用ではなくなりました。 現在、HomebrewはLinuxユーザー向けにも提供されており、WindowsユーザーもWSL(Windows Subsystem for Linux)を通じて利用できます。ただし、1つだけ重要な違いがあります。それは「名前」で