UNPKG

@akashic/akashic-sandbox

Version:
126 lines (85 loc) 4.89 kB
<p align="center"> <img src="img/akashic-sandbox.png"/> </p> # Akashic Sandbox Akashic Sandboxは、 [Akashic Engine](https://akashic-games.github.io/) を使って作成されたゲームの動作確認ツールです。 ## インストール Node.js が必要です。次のコマンドでインストールできます。 ``` npm install -g @akashic/akashic-sandbox ``` ## 利用方法 ``` akashic-sandbox [-p <port>] [--cascade<cascade-path>] [<path>] ``` で、 `<path>` に置かれているAkashicのゲームを起動できます。 出力される案内にしたがって、Webブラウザで `http://localhost:3000/game/` を開いてください。 `<path>` には `game.json` が存在する必要があります。省略された場合、 `<path>` はカレントディレクトリ (`.`) です。 `-p` オプションを指定すると、サーバのポート番号を変更できます。たとえば `-p 3100` とした場合、 Webブラウザで開くURLは `http://localhost:3100/game/` になります。 `--cascade <cascade-path>` を与えると、 `path` にある game.json に対して `<cascade-path>` にある game.json がカスケードされます。 `--cascade` を複数指定した場合、指定した順でカスケードされます。 Akashic Engineの詳細な利用方法については、 [公式ページ](https://akashic-games.github.io/) を参照してください。 ## Akashic Engine 2.0 を利用したコンテンツの起動方法 `game.json` に以下の記述を追加すると、対象のゲームを Akashic Engine 2.0 として実行します。 ```js { .. "environment": { "sandbox-runtime": "2" } } ``` ## 表示オプション * http://localhost:3000/game/?profiler=1 にアクセスすると、プロファイラー表示モードでゲームを実行することができます * http://localhost:3000/game/?fit=1 にアクセスすると、画面を最大まで拡大した状態でゲームを実行することができます * http://localhost:3000/game/?bg=1 にアクセスすると、バックグラウンドとゲームに色をつけた状態でゲームを実行することができます ## デベロッパーメニュー * ゲーム画面右上の歯車マークをクリックするとデベロッパーメニューが開きます。 * http://localhost:3000/game/?devmode=disable にアクセスするとデベロッパーメニューを無効化できます。 ## 設定ファイルの利用 コンテンツの `game.json` と同じディレクトリに `sandbox.config.js` を置いた場合、実行時の挙動をカスタマイズできます。 ```js var config = { /** ゲーム実行時にeventsの同名メンバーをイベントとして送信します */ autoSendEventName: "event0", /** ゲーム実行時にデベロッパーメニューを開きます */ showMenu: true, /** デベロッパーメニューに登録済みのイベントとして表示します */ events: { event0: [32, null, "9999", {foo: "foo"}, false], event1: [32, null, "9999", {var: "var"}, false] } } module.exports = config; ``` ## ビルド方法 **akashic-sandbox** はTypeScriptで書かれたJSモジュールであるため、ビルドにはNode.jsが必要です。 `npm run build` にてビルドできます。 ```sh npm install npm run build # src/以下をビルド ``` ## 内部モジュールの更新方法 akashic-sandbox は、以下の内部モジュールのコードをリポジトリ内に直接保持しています。 * @akashic/engine-files また、これらのコードには Akashic Engine v1 系と v2 系が存在します。 akashic-sandbox の開発者がこれらのコードを更新するには次のコマンドを実行してください。 ```sh npm run update ``` ## 内部モジュールの動作確認方法 akashic-sandbox を用いて内部モジュール (とくに [engine-files](https://github.com/akashic-games/engine-files)) の動作確認を行いたい場合、以下の手順を行ってください。 * 別で生成した engine-files のビルド成果物 `engineFilesV{version}.js``./js/v2/` または `./js/v1` にコピーします。 * バージョンが異なる場合は `./engine-src/engineFilesVersion.json` をビルドした engine-files に合わせてください。 ## テスト方法 1. [TSLint](https://github.com/palantir/tslint "TSLint")を使ったLint 2. [Jasmine](http://jasmine.github.io/ "Jasmine")を使ったユニットテスト が実行されます。 ```sh npm test ``` ## ライセンス 本リポジトリは MIT License の元で公開されています。 詳しくは [LICENSE](./LICENSE) をご覧ください。 ただし、画像ファイルおよび音声ファイルは [CC BY 2.1 JP](https://creativecommons.org/licenses/by/2.1/jp/) の元で公開されています。