GD↔OB Converterの使い方

GD↔OB Converter 技術仕様および運用マニュアル

1. 本ドキュメントの目的

本ドキュメントは、GDevelopプロジェクトにおけるデータ管理の効率化を目的として開発された変換ツール『GD↔OB Converter』(以下、本ツール)の技術仕様、および運用方法を解説する公式マニュアルです。

本ツールは、人間にとって可読性の高いMarkdown(Obsidian)形式と、システム処理に適したJSON形式を相互に変換することで、ゲーム開発におけるアセット管理の工数削減を目指すものです。

2. 基本機能

本ツールは以下の二系統の変換プロセスを提供します。

  • Obsidian → JSON 変換(順変換): 階層化されたリストテキストを、GDevelopの構造体変数(Structure)または配列変数(Array)に適合するJSON形式へ変換します。

  • JSON → Obsidian 変換(逆変換): 既存のJSONデータを、編集・閲覧しやすいMarkdownリスト形式へ再構成します。
    子要素もそのままObsidianでネストされるので、GDevelopの変数エディターのように親要素以下を展開・収納できます。
    『GD↔OB Converter』で読み込むGDevelop側の変数を、JSON形式でファイルに保存するには、当サイトで配布している拡張機能の「DataHelper」をご活用ください。

3. 記述仕様(Syntax)

本ツールの解析アルゴリズムは、行頭のシンボルおよび特定の接頭辞に基づき、データ型を自動判別します。

3.1 構造体(Structure)の定義

行頭にハイフンおよび半角スペース()を記述することで、オブジェクトのプロパティを定義します。行頭のインデント(半角スペース)により階層構造を形成します。半角スペース1つで『子要素』として扱われ、半角スペースが二つなら『孫要素(子要素の子要素)』として扱われます。

3.2 配列(Array)の定義

  • ルート配列モード: 第1行に行頭シンボル()を持たないテキストを入力した場合、全体が「純粋な配列」として処理されます。

  • 明示的配列フィールド: 構造体内でキー名の末尾に [] を付与することで、その配下を配列として宣言します(例: - Inventory[])。

3.3 データ型の指定方法

明示的に型を指定する場合、以下の識別子を使用してください。

  • 数値型 (Number): 値の直前に # を付与します(例: - Level: #99)。

  • 真偽値型 (Boolean)@true または @false を記述します。

  • 文字列型 (String): 上記以外の入力は、すべて文字列として処理されます。

3.4 配列要素内における改行の保持

配列要素(セリフ等)において、『 | 』(パイプライン)が出現するまでの改行は、JSON出力時に改行コード(\n)として内部的に保持されます。これにより、長文のダイアログ管理が容易となります。
セリフの終わりなどに『 | 』(パイプライン)を入れると1要素として区切られます。

4. GDevelopへのインポート手順

変換されたJSONデータをGDevelopプロジェクトへ反映させるには、以下の手順に従ってください。

  1. JSONデータの生成: 本ツールを用いて、設計したデータをJSON形式で保存します。

  2. 拡張機能の利用: 作成したデータを読み込む場合は、GDevelopのIDE内で、拡張機能『JSON Resource Loading』を導入してください。

  3. アクションの実行:

    • 何らかの条件下で、外部ファイルからあらかじめ宣言している変数にJSON文字列を格納します。

    • アクション「JSONをオブジェクト変数に読み込む(Parse JSON into Object Variable)」等を用いて、対象のオブジェクト配列・構造体変数へデータをバインドします。
      または、シーン変数やグローバル変数として読み込みます。
      最初に一括でグローバル変数に読み込むか、適宜シーン変数やオブジェクト変数に読み込むかを、状況に応じて使い分けます。



配列の場合

Obsidianでの記述例

変換後

構造体の場合

Obsidianでの記述例

変換後

変数→Markdown形式

5. 推奨される運用環境

本ツールは、以下の環境での併用を推奨しています。

  • エディタObsidian(GDevelopに使用感が似ており、Markdown形式でのデータストックに最適)

  • 開発環境GDevelop 5 (Desktop / Web)

6. 補足事項

  • 本ツールはクライアントサイドで動作するため、入力されたデータが外部サーバーへ送信されることはありません。

  • 仕様外の記述が入力された場合、出力エリアに // Error という警告が表示される仕様となっています。

著者注記

本ツールは、Cratierの設計思想に基づき、AIアシスタント(Gemini)との対話を通じて最適化されました。GDevelopコミュニティにおけるデータ管理のスタンダードを目指し、今後も継続的な改善を図ってまいります。ご意見・ご要望などはコメント欄にてお願いします。




最後までお読みいただきありがとうございました😆
もしよろしければ下記のボタンから応援よろしくお願いします🙇



こちらの記事はいかがでしたか?
ぜひご評価をおねがいします🙏

プロフィール


My name is Cratier.
I'm an indie game developer.


Read more...

便利ツール & 拡張機能

このブログを検索

Translate

UPDATE

最新コメント

人気の投稿

アーカイブ

リンク元ランキング

カテゴリー

アンケート



Q.クレイティアのGD覚書でお気に入りのコンテンツはどれですか?

チュートリアル
TIPS
RTA Develop
雑記
That's談
その他


Q.あなたのGDvelop使用歴はどれくらいですか?

1ヶ月未満
半年未満
1年未満
1年以上
2年以上
3年以上
4年以上
5年以上

オープンチャット

ご連絡

名前

メール *

メッセージ *

💗雑談CHAT💗
お気軽にお話しください🐹
同時接続人数:

もしよろしければ下記のボタンから応援よろしくお願いします🙇




QooQ