ADVENT CALENDAR 2019

スクロールアクション向けマップ作成ツールの紹介

By GON

こちらAmusement Creators Advent Calender 2019 その2 22日目の記事です。

はじめに

こんにちは! GONです。(2回目)
前回記事は、ゲーム制作サークルらしくない記事だったのでちょっと真面目に書きます。

ということで、今回は今年の夏コミで頒布した「ちみちみざむらい」で導入したスクロールアクション向けマップ作成ツールを紹介したいと思います。
ただの紹介なんで、技術的なことはほとんど書いてないです。

Scroll Action Tool

Scroll Action Toolが今回紹介する弊ツールの名称です。(略してSAT)
安直な名前なんでいい感じのプロダクト名考え中です。

SATの機能ざっと挙げてみました。

  • マップ作成
  • マップのプレビュー
  • C#スクリプトでプレイヤー、敵などのオブジェクトの作成
  • 各種オブジェクトのプレビュー
  • シナリオの記述

ゲーム開発で苦労するオブジェクトが持つパラメータやマップレイアウトなどの調整をスクリプト機能とプレビュー機能によって、 ツールで完結させることができるようになっています。

これから各機能をざっくり紹介していきます。

マップ

マップ 基本的にSATのレイアウトは、以下の3つにわけられます。

  • ツールバー(左)
  • エディター(中央)
  • プロパティ(右)

基本的には、Adobe製品に近いレイアウトになっています。

ツールバー

上から順に、

  • 選択
  • 足場四角作成
  • 足場三角作成
  • ドア(マップ内・外遷移オブジェクト)作成
  • 敵・アイテム作成
  • NPC(イベント時に動かすオブジェクト)作成
  • イベント作成
  • カメラ侵入禁止領域作成
  • セーブポイント作成

となっています。
クリックして、ツールを切り替えられます。

エディター

エディター

エディターでは、選択したオブジェクトの移動・コピペや クリックによる各種オブジェクトの配置ができます。
また、マウス中ボタン・未選択時に左ボタンドラッグで視点移動、 マウスホイールで拡大縮小ができます。

プロパティ

プロパティ

プロパティでは、各種パラメータを設定できます。
SAT共通の項目としてリソースのルートパスを指定することが必須です。
マップ編集の場合、 マップ名・背景・BGM・オブジェクトテンプレート・ビューアが常時表示しています。
そして、オブジェクト選択時、選択オブジェクトのパラメータを表示するようになっています。

以下では、特筆すべきマップ編集機能を説明します。

背景

SATは、背景を任意枚数配置することが可能で、 各背景にプレイヤー用カメラへの追従率を設定することで、奥行表現をすることができます。 たとえば、追従率を1以上にすることでプレイヤーより手前にある前景とすることも可能です。
また、C#アニメーションスクリプトを指定することで、動く背景も配置可能です。

プレビュー

後述するプレイヤースクリプト機能で作成されたスクリプトを指定することで、 瞬時にプレビューすることができます。
敵の配置によるゲームバランスの調整に役立ちます。

イベント

シナリオ

ある領域に侵入したときに発生するイベントを設定することができます。
イベント時には、テキスト・キャラグラフィック表示とオブジェクト・カメラをプログラマブルに動かすことができます。
キャラグラフィックは、差分を入れることが可能です。(アクション以外にも使えるかもしれませんね)

テキスト表示は、「ちみちみざむらい」にて下のように導入してます。 シナリオ

プレイヤースクリプト

プレイヤー

プレイヤースクリプト編集の場合、スクリプトエディターが中央に表示されます。
このスクリプトエディターで読みこむリソースや挙動を記述し、プロパティにあるビルドボタンによって、左のビューアーによって即座にデバッグできるフローになっています。
スクリプトは、C#の同様のシンタックスで記述でき、補完を効かすことでVisual Studioと あまり変わらないようなコーディングを可能にするようにしています。

補完

オブジェクトスクリプト

プレイヤースクリプトとほぼ同じですが、プレビュー画面にてクリックすることで配置する点が異なります。
作成済みのプレイヤースクリプトをプロパティで指定することで、プレビュー画面にて、 プレイヤーによるオブジェクトの挙動のチェックが可能になります。

導入方法

Windowsで動きます。 割と安定しているver20191024.2をDLしてください。
雙峰祭版ちみちみざむらいで導入しているバージョンです。

ソースコードを見たい方は、GitHubから。
PR、Issueお気軽にどうぞ!

今後の展望

安定してない箇所も多々あるので、随時更新していきたいですね。
たぶん来年になる気がします。
個人的な目標として、下に書き残しておきます。 (たくさん達成できるといいな)

  • ver1.0安定版リリース
  • ロード時間の短縮
  • Undo/Redoのロジック修正
  • Copy&Pasteのロジック修正
  • ゲームエンジンをAltseed2に切り替える
  • スクリプト機能の拡充
  • マルチプラットフォーム対応🤔

みなさんぜひSATを試してみてください!!

SHARE THIS POST