AdhocServerを立ててLinux上でPPSSPPをマルチプレイヤーで遊ぼう
せっかくPPSSPPをelementaryOS(Linux)にインストールして、一緒に遊べる仲間や兄弟がいたらマルチプレイで遊んでみたいよね!
というわけで、Ubuntu Server上にPSPのAdhocServerを立ててみました。
AdhocServerとは
AdhocServerのAdhoc(アドホック)とは無線LANの子機同士がピアツーピアで接続する通信のこと(対してインフラストラクチャはアクセスポイントに接続する通信)で、PSP時代お友達のPSP同士で接続してマルチプレイをしていましたが、それをLAN上で実現するソフトウェア(サーバ)です。
準備
まずlibsqlite3-devがインストールされていない場合は、インストールしておきます。
$ sudo apt install libsqlite3-dev
次にGithubにppsspp-adhoc-serverのソースコードが公開されていますので以下のようにしてダウンロードします。
$ git clone https://github.com/Souler/ppsspp-adhoc-server
Cloning into 'ppsspp-adhoc-server'...
remote: Enumerating objects: 32, done.
remote: Total 32 (delta 0), reused 0 (delta 0), pack-reused 32
Unpacking objects: 100% (32/32), done.
ダウンロードが終わるとppsspp-adhoc-serverフォルダが作成されますのでフォルダの中に入ります。
$ cd ppsspp-adhoc-server
そしてmake!!
$ make configure
$ make
makeが完了すると同一フォルダに「AdhocServer」のファイルが生成されますので、以下のように移動します。
(※筆者は/usr/local/bin/に移動しております。)
$ mv AdhocServer /usr/local/bin/
これで、以下のように実行すればサーバは起動します。
$ /usr/local/bin/AdhocServer &
AdhocServerをsystemdに組み込む
このままではサーバの再起動時などは手動で起動する必要があります。
これを自動起動させたい場合は以下のようにファイルを作成します。
# vi /lib/systemd/system/psp-adhoc.service
ファイルの内容は以下を記述します。
[Unit]
Description = PPSSPP Adhoc Server daemon
[Service]
ExecStart = /usr/local/bin/AdhocServer
Restart = always
Type = forking
[Install]
WantedBy = multi-user.target
保存して、リストに含まれているか確認します。
# systemctl list-unit-files --type=service|grep psp
psp-adhoc.service static
起動!!
すべての準備が完了ですね、いよいよ、以下で起動します。
# systemctl start psp-adhoc
起動しているか確認するには以下
# systemctl status psp-adhoc
以下のようにステータスが表示されます。
● psp-adhoc.service - PPSSPP Adhoc Server daemon
Loaded: loaded (/lib/systemd/system/psp-adhoc.service; enabled; vendor preset: enabled)
Active: activating (start) since Sat 2020-03-28 11:10:08 JST; 39s ago
Cntrl PID: 16031 (AdhocServer)
Tasks: 1 (limit: 4915)
CGroup: /system.slice/psp-adhoc.service
└─16031 /usr/local/bin/AdhocServer
3月 28 11:10:08 X230-Linux systemd[1]: Starting PPSSPP Adhoc Server daemon...
3月 28 11:10:08 X230-Linux AdhocServer[16031]: Listening for Connections on TCP Port 27312.
3月 28 11:10:46 X230-Linux AdhocServer[16031]: New Connection from 192.168.1.92.
3月 28 11:10:46 X230-Linux AdhocServer[16031]: PPSSPP (MAC: 18:6C:1E:2C:C1:17 - IP: 192.168.1.92) started playing
3月 28 11:10:46 X230-Linux AdhocServer[16031]: PPSSPP (MAC: 18:6C:1E:2C:C1:17 - IP: 192.168.1.92) requested infor
3月 28 11:10:47 X230-Linux AdhocServer[16031]: PPSSPP (MAC: 18:6C:1E:2C:C1:17 - IP: 192.168.1.92) joined ULJM0580
上記の下段のように接続すると接続元のIPアドレスなどのログが表示されます。
PSPのモンハンは今でも十分遊べますね。上の動画は我が家の子供とのプレイをキャプチャしたものです。
我が家の子供達もお気に入りのゲームとなっています。
オヤジは昔を懐かしく思い出しながら、ノスタルジーに浸りつつ、オヤジと子供たちと一緒にコミュニケーションを取れる、知的好奇心も満たせるLinuxは良いオモチャです。
今日はここまで、それではHappy PPSSPPライフを!