RPGツクールMV スマートフォンアプリ iOSアプリ化手順

投稿者:

iOSアプリをパッケージングするのには、別途MacOSXの機体が必要です。

筆者のパッケージング環境はMacOS High Sierraで、この記事を執筆している時点での

バージョンは

10.13.6

また、Xcodeというパッケージング環境が必要になります。XcodeはMacのAppStoreにあります。

Xcode 10….

ここまでの情報については、ツクールMV公式ヘルプにも大体の内容が書かれてあります(MacOSXであったり、Xcodeについて)

自分の作品を広く、多くの人にプレイしてもらいたいという人は、まずはRPGツクールMVを手に入れてください。基本的なことは全てRPGツクールMVの公式ヘルプRPGツクールMVを起動してF1キー)に書かれています。

iOSアプリのパッケージングはミドルウェアにCordovaを使っています。

CordovaのパッケージングスクリプトはAndroidアプリをパッケージングするのと似ています。

基本的なことから、動作を軽快にするCordovaプラグインまでを紹介しています。

参考に以下のリンクを掲載しておきます。

【2019年版】RPGツクールMVで作ったゲームをiOSで実機テストする方法(Mac+Cordova)

【cordova】WKWebViewを使ってiOSアプリを劇的に軽くする方法

Cordovaビルドについての補足というか、経験則ですが、ビルドエラーして途中からやり直したいときは、

cd ~/Desktop/sample

cordova platforms rm ios

上記のようにターミナルにコマンドを入力し階層をデスクトップ上にあるプロジェクトフォルダに戻って、プラットフォームフォルダの情報をすべてリムーブするという方法が良いと思います。

基本的な部分はRPGツクールMVの公式ヘルプを参照していただくこととして、2019年12月現在でのRPGツクールMVでデプロイしたゲームがiOSデバイスできちんと遊べるかどうかについて、今までの経験則を述べたいと思います。

iOS用にデプロイしたゲームファイルをMacにコンバートするのですが、筆者はUSBフラッシュメモリにWindowsでツクールMVのデプロイファイルを入れています。

USBフラッシュメモリに入れたファイルをMacに挿入してデスクトップに移動します。

ツクールMV公式ヘルプでconfig.xmlを編集する箇所がありますが、iOS版聖剣レイヴランシル物語のconfig.xmlはこのようになっています。

まず、現在のiOSで注意しなければならないのが、iOS9.0から任意で設定しなければならなくなった項目があります。

<preference name=”DisallowOverscroll” value=”true” />

これを設定しないと、アプリを起動したときにスクロールオーバーが起きます。もっと詳細に記述すると、タップしてキャラクターを移動させたいなどの操作がすべてスワイプ操作になってしまいます。

あと、聖剣レイヴランシル物語では外部リンクを設けていて、外部リンクが動作するツクールMVのプラグインはYEP_ExternalLinks.jsで設定しています。そのため、CordovaプラグインではInAppBrowserを使ってブラウザを表示するための外部HTML通信をしています。

InAppBrowserとの通信には、RPGツクールMVでのプラグイン YEP_ExternalLinks.js を用いてタイトル画面に「NEWS」というリンクを張っていますが、 YEP_ExternalLinks.js を現在のiOSでの通信の方法に変えてやる必要があります。

InAppBrowserでエラーを出さずにするには YEP_ExternalLinks.js でwindow.openをvarコンストラクタして、ウィンドウを開く箇所を以下のように改変しました。

var win=window.open(url, "https://example.com");//'_blank'//

win focus(window.open(url,"https://example.com"));

283行目で、フォーカスを外してやらなければ、InAppBrowserでは動作しません。正確にはAppleの仕様のために機能しません。

window.open;

フォーカスを外して、ブラウザのブランクにURLを入れているという方法です。

同時にconfig.xmlには通信の安全性やプラグインの安全性を保証するホワイトリストがあり、その記述やホワイトリスト以下の記述をきちんとすることで、iOSでの挙動の安定性や通信の安全性を許可しています。

今回はCordovaのwkwebeviewengineはin Appbrowserとは競合するためビルドエラーが出て使用しませんでした。

また、アプリは外部との通信を許可する必要があると書きましたが、アプリ自体はローカル通信なので、

<allow-navigation href=“http://localhost”*
/>

この表記が必要になり、この表記がないツクールMVのデプロイファイルは通信が出来なくてエラーを返します。

感覚としてはツクールMV公式ヘルプにあるローカルサーバーを建てる状況と同じで、現在のWEBブラウザが不必要な外部通信を遮断する動きになっているためです。

アプリゲーム内に表示できる、ゲームパッドについては、様々なものが出ています。検索ワードとしては「アプリ バーチャルゲームパッド」「ツクールMV バーチャルゲームパッド」などで検索して、ゲームの雰囲気やイメージに合うものをお使いください。

本稿ではバーチャルゲームパッドの互換性を保証していません。

また、要研究段階ですが、HTML5とCSSとJavaScriptでのWEB系ネイティブ言語で作成されたアプリのパッケージングにも対応しています。こちらの詳細については研究段階の知見も含めて後日記述します。

2019年12月14日 更新

2019年12月吉日

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA