Ubuntu日和

【第84回】Steamだけじゃない! Ubuntuでもっともっとゲームを楽しむ方法

起動したHeroic Games Launcherの画面

 本連載では何度か、UbuntuでSteamのゲームを遊ぶ方法を紹介してきた。Steamであれば、Windows用のゲームがLinux上で動くのは、もはや当たり前の光景になったと言っていいだろう。これはValve社が開発している、Linux上でWindowsゲームを動かすための互換レイヤー(Proton)の成果によるところが大きい。

 Steamは世界最大規模のゲーム配信プラットフォームだ。だがそれ以外のプラットフォームでゲームを遊びたいと考える人もいるだろう。たとえばEpic Gamesや、DRMフリーをうたうGOG.comなどだ。

 Epic Gamesは定期的にゲームの無料配布を行なっているし、GOG.comもAmazon Prime経由でゲームがもらえたりする。そのため、「とりあえずアカウントは持っていて、無料のものはもらって積んでいる」「せっかくなので、これをLinuxで動かしたい」という人も、それなりにいるのではないかと思う。また同人ゲームや各種体験版、ベンチマークソフトのように、ストアを介さず開発元から直接EXEをダウンロードして実行するタイプのゲームもあるだろう。

 今回はこうしたSteam以外のゲームをUbuntu上で楽しむ方法を紹介する。

Heroic Games Launcherとは

 Linux上でWindowsアプリを動かすのであれば、実行したいアプリ一式を用意し、WineやProtonといった互換レイヤーを通して起動すればよい。ただしこれを手動で行なうのは面倒だ。そこでゲームを管理し、複雑なパラメータを意識することなくGUIから起動できるランチャーを使用することをおすすめする。

 Heroic Games Launcherは、Linux/Windows/macOSに対応した、オープンソースでマルチプラットフォームのゲームランチャーだ。Epic GamesやGOG.comのほか、手動でEXEを登録して実行することもできる。

Heroic Games Launcherのインストールと起動

 Heroic Games LauncherはDeb形式のパッケージのほかに、ユニバーサルパッケージであるFlatpakやAppImageでも提供されている。今回はFlatpakを使った。以下のコマンドを実行し、UbuntuにFlatpak本体をインストールしよう。

bash
$ sudo apt install -U -y flatpak

 続いて以下のコマンドを実行し、flathubのリポジトリを追加する。

bash
$ flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

 これでflathubからパッケージのインストールが可能になった。ここで一度Ubuntuを再起動しておこう。Flatpak + flathubの追加自体に再起動は不要なのだが、flathubのセットアップ手順には再起動しろと書かれているため、想定外のトラブルを避けるためにも従っておいた方が無難だろう。

 リポジトリが追加できていると、以下のコマンドでHeroic Games Launcherをインストールできる。

bash
$ flatpak install flathub com.heroicgameslauncher.hgl -y

インストールが完了したら、以下のコマンドでHeroic Games Launcherを起動しよう。

bash
$ flatpak run com.heroicgameslauncher.hgl

 まず最初に、サイドバーの「Settings」→「General」を開き、アプリの言語設定を日本語にしておくとよいだろう。

言語を日本語に変更した状態

Epic Gamesのタイトルを遊ぶ

 まず手始めに、Epic Gamesのタイトルを遊んでみよう。Epicのアカウントがあり、ライブラリにゲームを所有している前提で進める。

 サイドバーから「ログイン」をクリックする。ログインするプラットフォームの選択肢が表示されるので、「EPIC GAMESログイン」をクリックしよう。

 するとWebブラウザからEpicを開いた時と同様に、以下の画面が表示される。自分が普段使っているメソッドでサインインしよう。筆者はメールアドレスでサインインした。

 これだけで完了だ。「ライブラリ」に所有しているタイトルが表示されるはずだ。

 続いて、遊びたいタイトルをインストールしよう。サムネイルの下に表示されているダウンロードボタン(下向きの矢印)をクリックする。すると以下のダイアログが表示される。

 「インストールパス」は、デフォルトでホームディレクトリ内の「Games/Heroic」以下となっている。ここは特に変更しなくてもいいだろう。「Wineの設定を表示する」をクリックすると、Wine環境のディレクトリや、使用するProton GE/Wine GEのバージョンを選択できる。

 Wine環境のディレクトリとは、Wineのprefix(仮想Windows環境)として使われるものだ。また使用するProtonのバージョンは後から変更もできる(後述)。基本的にはどちらも変更する必要はない。「インストール」をクリックすると、ゲームのインストールが始まるので、終了までしばらく待機しよう。

 インストールが完了すると、ライブラリ内のダウンロードボタンが緑色のプレイボタンに変化する。ここをクリックすればゲームが起動する。

起動したEpic版の「Shadowverse: Worlds Beyond」の画面。Ubuntuで動作していることが分かりやすいようウィンドウモードにしているが、当然フルスクリーン化も可能

GOG.comのタイトルも遊んでみよう

 サイドバーの「アカウント管理」から、別のプラットフォームのアカウントを追加できる。Epicの時と同様に、GOG.comにログインしてみよう。ログインが完了すると、ライブラリに(Epicのタイトルに混じって)GOG.comで所有しているタイトルがリストアップされるはずだ。

アカウント管理からGOG.comにログインする

 ゲームのインストール方法や起動方法は、Epicの時と変わらない。手持ちのタイトルを試してみよう。

GOG.com版の「ボウと月夜の碧い花」の画面

使用するGE-Protonのバージョンを変更するには

 HeroicではAPI変換レイヤーとして、通常はGE-Protonの最新版を利用する。これはValveが開発している本家Protonではなく、Glorious Eggroll氏が開発している派生版だ。最新のWineをベースにビルドされており、本家Protonに含まれていない機能、修正やメディア形式のサポートなども追加されている。

 サイドバーから「Wineマネージャー」をクリックすると、インストールできるGE-Protonの一覧が表示される。通常は最新版がインストールされているはずだが、ここで任意のバージョンをインストールすることも可能だ。

GE-Protonの任意のバージョンをインストールできる

 ライブラリからゲームの設定画面を表示すると、インストールされているGE-Protonの中から、使用するバージョンを指定することもできる。

そのタイトルで使用するGE-Protonのバージョンを指定する

 もし特定のバージョンでゲームの動作がおかしいような場面に遭遇したら、個別にバージョンを指定して切り替えることで、動作が改善するかもしれない。

 なおGE-Protonではなく、WINE-GEという変換レイヤーを使用することもできる。ただし現在では、WINE-GEの利用はおすすめしない。

 ProtonはSteamが提供する専用のLinux向けランタイムに依存しており、本来Steam外での利用は想定されていない。そこでProtonの機能を通常のWineとしてSteam外でも利用できるよう、Protonをベースにビルドされたカスタム版WineがWINE-GEだ。

 従来Steam外でProtonを使うには、このWINE-GEを使うのが定番だった。だがその後、UMUという仕組みが登場する。UMUとは、簡単にいえばSteamランタイムのクローンだ。UMUでProtonをラップすることによって、Steam外でも直接Protonの恩恵を受けられるようになった。そしてWINE-GEはその役目を終え、その開発は終了した。現在のHeroicでは、UMUに対応した最新のGE-Protonを選択することが推奨されている。

 詳しくはWINE-GEの最後のリリースノートを見てほしい。

ストアを経由しないでゲームを遊ぶ

 前述の通り、EpicやGOGのゲームはログインするだけで簡単に動かすことができた。対してアーカイブを展開してEXEを実行するタイプのゲームは、手動で登録する必要がある。ここでは例として、ストリートファイター6のベンチマークを動かしてみよう。なおスト6のベンチマークは最初にインストーラを実行しなければならないため、少しトリッキーな作業が必要となる。

 まずは前述のサイトからZIPをダウンロードして展開する。すると「StreetFighter6_Benchmark」というディレクトリができるので、このディレクトリをホームディレクトリにある「Games/Heroic」以下にまるごとコピーしよう。またこれと同時に実際のインストール先として、同じく「Games/Heroic」以下に「sf6bench」ディレクトリを作成しておこう。

~/Games/Heroic以下にインストーラーディレクトリをコピーした上で、実際のインストール先ディレクトリも手動で作成する

 Heroicのサイドバーから「ライブラリ」を開き、「ゲームを追加」をクリックすると、以下の画面が表示される。

 まずゲームタイトルには「sf6bench」と入力した。ここは判別ができればなんでもいい。「Wineの設定を表示する」をクリックして、詳細な設定を表示させる。そして「Wine環境」に、先ほどコピーしたインストーラーのディレクトリ「~/Games/Heroic/StreetFighter6_Benchmark」を指定しよう。その状態で「最初にインストーラを実行」をクリックする。

Wine環境を指定してからインストーラを実行する

 するとインストーラのバイナリを指定するダイアログが開くので、「~/Games/Heroic/StreetFighter6_Benchmark」内にある「setup.exe」を指定して実行しよう。これでインストーラが起動する。

setup.exeを指定する

 あとはWindowsと同じように、インストーラの指示に従えばいい。ただし注意点が1つある。インストール先のディレクトリを、先ほど手動で作成した「~/Games/Heroic/sf6bench」に変更することだ。Ubuntuのルートファイルシステムは、インストーラからは「X:」ドライブとして見えているので、ツリーを辿って指定しよう。

インストール先の指定に注意

 インストーラが完了したら、先ほどのゲーム追加画面に戻る。ここで改めて「Wine環境」を、インストール先である「~/Games/Heroic/sf6bench」に変更し直そう。そして「実行可能ファイルを選択」をクリックし、「sf6bench」ディレクトリ内に作成されている「StreetFighter6.exe」を指定する。最後に「終了」をクリックすればゲームの追加は完了だ。

Wine環境をインストール先に変更することと、実行可能ファイルを指定することを忘れずに

 これでEpicやGOG.comのゲームと同じように、ライブラリからスト6のベンチマークが起動できる。

起動したスト6ベンチマーク。Radeon 780M搭載のミニPCで試してみたが、グラフィックプリセットをLowにすれば、おおよそ60FPSで動作した

 なおインストーラの実行が必要ないゲームであれば、当然だがインストーラの実行プロセスは省略できる。いきなりWine環境と実行可能ファイルを指定するだけで動くので、もっとお手軽だ。

Steam以外のゲームもそれなりに動く。ただし一部不具合のある場合も

 このようにHeroicを使えば、EpicやGOG.comのゲーム、またストア外のゲームも動かせる。ただし筆者の環境に起因する問題の可能性もあるが、「ゲームはきちんと起動し、コントローラではきちんと動くが、キーボード/マウス入力があやしい」といったタイトルがいくつか存在した。

 またEpicの目玉タイトルと言えばフォートナイトだが、Ubuntu上で動かすことはできなかった。Easy Anti-Cheat自体はLinuxに対応しているのだが、EpicがLinuxを公式にサポートしていないため、どうやら簡単には動かせないようだ。このあたりは公式にLinux対応をがんばっているSteamと比較すると、どうしても劣ってしまう部分なのかもしれない。

残念ながら動かせなかったフォートナイト

 とはいえ、Steam以外のゲーム、特にストア外のアプリをランチャーで管理でき、面倒なProtonまわりのセットアップも簡単に行なえるのは、うれしい人も多いのではないだろうか。ゲームは好きだけどメインはSteamじゃないんだよね、という理由で諦めていた人は、ぜひ明日から積みゲーを崩してみてほしい。