RPG アツマールに RPG ツクール MV 製ではないゲームをアップロードしてみた
「紫と霊夢の終わらない夏」のWeb体験版をRPGアツマールに投稿しました。ダウンロード不要で Web上で遊べます。内容は例大祭頒布と同じです。未プレイの方はぜひこの機会に https://t.co/du6CFmNRHP #gm3860 #RPGアツマール #紫と霊夢の終わらない夏
— さい@1日目東ラ-14b (@saigyojiyu) 2017年7月15日
弊サークル作品の「紫と霊夢の終わらない夏」の体験版を RPG アツマールに投稿できたので、アップロードにあたって、やったことをまとめます。
ゲームの概要
「紫と霊夢の終わらない夏」は PC向け 2D アクションパズルゲームです。RPGでもなければ、RPG ツクールMV 製でもありません。
技術的には、HTML5 + javaScript で開発されており、 Electron を使って、PC 向けにビルドして頒布しております。
アップロードのやり方
RPG アツマールは RPG ツクール製のゲームがアップロードできるサイトです。PRG ツクール製ゲームのアップロードに向いていますが、Web の技術で作られたゲームであれば、RPGツクール製でないゲームでもアップロード可能です。
RPG アツマールの仕様やアップロードの仕方については、 先人の方がいて、すでにまとめられてますので、以下のURLをご参照ください。
http://qiita.com/hajimehoshi/items/2a28b16a2e587c82ac5d
やったこと
Web ブラウザ上で動くゲームならそのままアップロードできるはずですが、 アツマールの仕様上、「紫と霊夢の終わらない夏」では以下の対応を行いました。
音楽ファイルを wav から m4a と ogg に変換
RPG ツクールMVが、m4a や ogg といった音楽ファイルしか使用できない制限のため、RPG アツマールでは、wav などの一部の音楽ファイルのアップロードが制限されています。
よって、wav ファイルを m4a と ogg の両方に変換し、ゲーム側で、 ogg あるいは m4a を再生しわけるように修正しました。
(Chrome では ogg が再生できますが、safari では ogg が再生できないので、m4a を使用します。)
index.htmlに埋め込みでjavascriptが書けない
セキュリティ上の理由で、index.html に javascript を記述できないので、javascript コードは全て js ファイルに記述して、script タグで読み込むように修正しました。
safari でフォントの読み込みが終わらない
これはRPGアツマールの仕様というより、Safari の挙動が怪しい話です。 弊ゲームでは以下のようなコードで、ゲームで使用するフォントの読み込みが完了するまで、ゲームをローディング画面で待機させています。
しかし、Safari のみ、loadingdone イベントが発火しません(バージョンは10.0)
// フォントの読み込みが完了 if(document.fonts) { document.fonts.addEventListener('loadingdone', function() { game.fontLoadingDone(); }); } else { // フォントロードに対応してなければ無視 game.fontLoadingDone(); }
これは、以下のように safari だけブラウザ判定して、 フォント読み込み待ちをしないことで修正しました。
// フォントの読み込みが完了 if(document.fonts && !navigator.userAgent.toLowerCase().indexOf("safari")) { document.fonts.addEventListener('loadingdone', function() { game.fontLoadingDone(); }); } else { // フォントロードに対応してなければ無視 game.fontLoadingDone(); }
.gitkeep が含まれていてアップロードできない
RPG アツマールにアップロードできるファイルは、 非常に限られており、未対応のファイルをアップロードすると、 アップロードした時点で、どのファイルが未対応か教えてくれます(便利)
私の場合、.gitkeep ファイルが残ったままだったのでアップロードに失敗しました。 これは、.gitkeep を全て削除して解決しました。
おしまい
RPG アツマールでは、特に規約上でもRPG ツクールMV 製でないゲームのアップロードは禁止されていません。
「紫と霊夢の終わらない夏」のようなオリジナルゲームエンジン製のゲームをアップロードすることもできますし、例えばティラノスクリプト製のノベルゲームをアップロードすることもできます。
みんなも Let’s try!
追記
RPGアツマールのスクリーンショット機能や、画面最大化機能が使えない。canvas DOM に振ったIDが悪い気がするので調査する