スマホで同人ゲームをする方法(自宅サーバーを立てる)

2021年11月8日

スマホで同人ゲームをするにあたり、一番お勧めな方法は自宅サーバーを立てることです。ただし、知識と下準備とお金が必要になります。

面倒ですが、それだけの価値はあります。

ツクールMV/MZのゲームは。

ツクールMV製とツクールMZ製のゲームは、HTML5とjavascriptで制作されています。これは、ブラウザでプレイすることが可能という意味です。というかWindows上のプレイでも、裏ではgoogle chromeが動いてるようです。

そこで、自宅にウェブサーバーを立てる。すると、タブレットやスマホからsafari、chrome、Edgeでのプレイが理論上は可能になります。

ただしツクールMVという開発ツールは、実はブラウザ前提でのデバッグをしていないようで、たまに不具合がでます。その代わり、次作のツクールMZは比較的安定しています。

ですので、ツクールMV製のゲームはプレイできるかは、実際にやってみないと分かりません。

ウェブサーバを用意する。

ウェブサーバというのは、雑に言うと「フォルダ内のデータをブラウザで見れるようにする」プログラムです。

なので、WindowsだろうがiPhoneだろうがAndroidだろうが、相応のアプリを使えばウェブサーバを起動することができます。

しかし、これらはウェブサーバに最適化したパソコンではありません。それなりに不便を伴います。

そこで、ある程度ウェブサーバに特化したパソコンを用意する必要があります。それがNAS「Network Attached Storage」です。「ネットワーク対応ハードディスク」とも訳されますが、正確な表現ではないです。

NASは、24時間電気をつけてデータを保管し続ける、簡易パソコンのようなものです。そこにウェブサーバを構築し、ゲームデータを保管します。

すると、スマホからアクセスしてゲームができるようになるのです。

家庭向けNASを買いましょう

家庭向けNASは色々な会社が出していますが、SynalogyとQNAPが人気あります。ともに台湾の会社です。

蛇足ですが、台湾はインターネットに関しては大変保守的です。世間はクラウドが主流とは言いますが、台湾ではオンプレミスが好まれます。

オンプレミスとは、クラウドの反対で「社内にサーバを立ててデータを管理する」ことを言います。

そんな技術を使って、家庭向けNASを作ってます。人気があるのも当然といえましょう。なんで台湾はそんなのが流行っているんですかね。

一方で国産のNASには、BUFFALOかI-O DATAがあります。こちらは手を出していませんので詳しく分かりません。BUFFALOの方は多分いけると思います、が保証はできかねます。

お勧めはSynalogyですので、Synalogyを前提とした説明をします。

ただし、他のNASでも基本的にやることは変わりません。見かけの画面が変わるだけですのでそれぞれの説明書を読んでもらえればと思います。

SMBサーバをたてる。

(2021年現在)快適なゲーム環境を作るにはSMBサーバとWEBサーバの構築が必要になります。

SMBサーバとは、windowsのエクスプローラでファイルを見れるようにするプログラムのことです。windowsからwebサーバにデータを簡単に転送することができるようになります。

Synalogy画面で言うと「コントロールパネル」>「ファイルサービス」>「SMB」で設定します。

SMBサービスを有効化して下さい。

Webサーバたてる。

Webサーバをたてるには、Synalogyの場合には標準では入っていないのでダウンロードが必要になります。

「パッケージセンター」>「Web Station」>「インストール」して下さい。

Webサーバを立ち上げればOKです。初期設定では「Web」共有フォルダがWebサーバとして利用されるようです。

Windowsで同人ゲームを解凍する。

Dlsite/Fanzaから購入したzipをダウンロードしましょう。ダウンロードが終了したら解凍します。

しかしここに問題があります。

基本的にSynalogyを含めたほぼ全てのNASはLinux系列のOSで動いています。すると、Windowsと文字コードが異なるわけです。

文字コードとは「文字を数字に当てはめる決まり」のことです。例えば、半角英数字は、120=x、121=y、122=zと決められています。

半角英数字は一つの決まりで定められているので、まだ良いのです。しかし、日本語の場合は複数の文字コードがあります。

ですので、windowsからNASにそのままデータを移すと文字の解釈が異なるために、特に日本語が文字化けします。

では日本語のファイルを組み込まなければ良いのか、というわけでもありません。内部テキストデータも文字化けします。ゲーム全てが英文でもない限りは、根本的に正しく変換しない限りは解決しません。

よって、WindowsのアプリであるツクールMVやMZで作られ、zip圧縮されたゲームは、一度Windowsで解凍する必要があるわけです。

そこで、一番信用できるのは7-zipという解凍ツールです。Windows、Mac間のデータやり取りにも文字化けしにくいと、昔から定番の解凍ソフトだそうです。

なので7-zipで解凍してください。

必要なファイルだけ転送する。

SMBサーバが認識されると、「エクスプローラ」>「ネットワーク」の部分にWeb Stationで設定したサーバ名が表示されるようになります。(私はHomeServerと設定しました)

そして「ネットワーク」>「HomeServer」>Webフィルダにデータを移すだけでWebサーバに転送したことになります。便利な世の中になりましたね。

では、ゲームデータを転送しましょう。

ツクールMV製のゲームの場合、「www」というフォルダがあります。そのフォルダだけ転送すれば良いです。まあ、フォルダ名ぐらいは改名しておいても良いでしょう。

ツクールMZ製のゲームの場合は、データを丸ごと転送して下さい。Windows用ファイルとブラウザ用ファイルがごちゃ混ぜになっています。なんでそんな仕様にしたんだ。

後は、該当するURLをブラウザで入力すれば、おめでとうございます。ゲームができるようになりました。

例えば、上記の場合はiPhoneのSafariで「http://homeserver.local/Games/(フォルダ名)/index.html」と入力すれば良いです。Windowsだと「http://homeserver/Games/(フォルダ名)/index.html」でも良いみたいです。

古いOS、古いブラウザの場合も上記のWebサーバ名が通らないようです。その場合は、「192.168.xxx.xxx/Games/(フォルダ名)/index.html」とWebサーバのIPアドレスを入れてください。

ゲーム管理プログラムでも作る?

Webサーバですので、phpやらpythonで個人用のウェブアプリを作ることができます。私は簡単なゲーム管理アプリでゲームを管理しています。

最初にメリットについて話をさせていただきましたが、この管理のしやすさはかなりのメリットだと思います。

注意事項や他の細々した点など

なお(個人契約の)外部Webサーバにゲームデータを転送するのは著作権的にも色々アウトだと思いますのでおやめください。

ついでに、非常に回線が速いWifi-6やCAT7のLANケーブルを揃えるのお勧めです。H-BOXのオンラインゲームは回線が遅いと大変ですが、そういった面倒さもなく爆速です。

一番のメリットはいざとなったら、人に頼まなくとも遠隔操作でハードディスクを初期化できる。やったー病気になっても、心残りなく死ねるね。

準備