Files
mod_my_novel_game/docs/ja.md
T

6.9 KiB

My Novel — 自分のビジュアルノベルの出発点

My Novel はプロジェクトでいちばん小さな完成したビジュアルノベルです。夕暮れの町、バー、家が選択肢でつながっています。キャラクターもアイテムも戦闘もなく、あるのはシーン、短いシナリオファイル、その翻訳だけ。コピーされることを前提としたモッドです。名前を変えて、この三つの場所から自分の物語を育ててください。

プレイ → My Novel → ニューゲーム から始めます。My Novel ゲーム(コレクション novel_template)のコンテンツです。

My Novel のバー:バーの背景と「バーは暖かくにぎやかだが、今夜ここですることは何もない。」の行。

中身

my_novel_game/
├── manifest.json
├── scenes/
│   ├── my_novel_town.json      町の入り口。ゲームはここから始まる
│   ├── my_novel_bar.json       環境音付きのバー
│   └── my_novel_home.json      家の玄関
├── scenarios/
│   ├── my_novel_town.scenario
│   ├── my_novel_bar.scenario
│   └── my_novel_home.scenario
└── locale/
    ├── en.properties           MOD の名前と説明
    └── scenarios_<lang>.properties   シナリオの各行の翻訳

画像とバーの音はこの MOD には入っていません。Town Pack から来るので、テンプレートは小さなまま、ゲームが共有コンテンツを再利用するようすを見せられます。音楽は Music Pack から。エンジン MOD は 2D シェル、会話エンジン、オーディオエンジンです。

物語の流れ

町が中心です。訪れるたびに同じ選択肢が現れ、バーも家も必ず戻ってきます。

            ┌────────────────────┐
            │   my_novel_town    │  (開始)
            │  「どこへ行く?」   │
            └──┬──────────────┬──┘
      バーに入る            家に帰る
               ▼              ▼
     ┌──────────────┐  ┌──────────────┐
     │ my_novel_bar │  │ my_novel_home│
     └──────┬───────┘  └──────┬───────┘
            └─ 町に戻る ─┘

My Novel の最初のシーンである町の入り口と、「夕暮れの町。街灯はもうともり、石畳を涼しい風が吹き抜けていく。」の行。

シーンのファイルは背景と環境音を指名します:

{
  "name": "my_novel_bar",
  "defaultBackground": "bar/bar",
  "defaultAmbient": "bar/bar_ambient"
}

シーンと同じ名前のシナリオは、そのシーンに入ったときに再生されます:

scene: my_novel_town
priority: 10
---
# The town is the hub: every visit shows the same choice.
text "Evening town. The street lamps are already lit and a cool draught runs along the cobbles." key=my_novel/town/intro
select "Where to go?" key=my_novel/town/prompt
option "Go into the bar" key=my_novel/town/opt_bar -> :bar
option "Go back home" key=my_novel/town/opt_home -> :home

:bar
switch_scene my_novel_bar
end

:home
switch_scene my_novel_home
end

英語のテキストはシナリオに直接書かれています。各 key= はその行の翻訳を locale/scenarios_<lang>.properties で指名します。たとえばスペイン語では:

my_novel/town/intro = La ciudad al anochecer. Las farolas ya están encendidas y una corriente fresca recorre los adoquines.

自分のものにする

  1. MOD をコピーして名前を変える。 自分のゲームの名前に _game 接尾辞を付けたものにします。たとえば harbor_game。フォルダー名と manifest.json の id を同じ値に変え、locale/*.properties のキー mod_my_novel_game_name / _desc を mod_harbor_game_name / _desc に変えます。
  2. ゲームを作る。 Mods & Collections → コレクション で My Novel の構成を開いて 複製 を押し、ストーリー ブロックの my_novel_game を自分の MOD に置き換えます。開始シーンはコレクションで指定します("entry": { "scene": "my_novel_town" })。
  3. シーンの名前を変える(任意)。 シーンの name、そのファイル、シナリオの scene: ヘッダー、そこへ通じるすべての switch_scene が一致していなければなりません。
  4. アートを保つか置き換える。 町を残すなら depends に town_pack を残します。自分の backgrounds/ と sounds/ を追加し、defaultBackground / defaultAmbient をそちらへ向けてもかまいません。

最初の変更:場所を一つ追加する

これはエディターでの実際の作業です。My Novel に Editor Tools MOD を追加した状態で行いました。シーンエディターがシーン my_novel_park を作り、町のシナリオに選択肢を一つとラベルを一つ打ち込みました:

my_novel_town.scenario を開いたシナリオエディター:新しい行 option "Go to the park" -> :park と新しいブロック :park / switch_scene my_novel_park / end。ステータスバーはファイルが保存されたと伝えています。

option "Go to the park" -> :park

:park
switch_scene my_novel_park
end

保存すると、町はすぐに新しい道を示し、選ぶと新しいシーンが開きます:

町の選択肢は今や三つ:バーに入る、Go to the park、家に帰る。

自分のゲームでエディターを使うには、構成で Editor Tools MOD を追加するか、一ゲーム分だけそれらと一緒に起動します:

godot --path . -- --game=novel_template --new --with-mods=editor_tools

key= のない新しい行はどの言語でもリテラルのテキストを表示します。物語を翻訳する準備ができたら、キーと翻訳を追加してください。

うまくいかないとき

  1. 選択肢がどこにも行かない。 switch_scene の名前は、大文字小文字を含めて対象シーンの name と一致しなければなりません。
  2. シーンにテキストがない。 そのシナリオの scene: ヘッダーが、そのシーンの名前を指している必要があります。
  3. 別の言語でテキストが英語のまま。 行に key= がないか、その言語の scenarios_<lang>.properties にキーがありません。
  4. 背景が真っ暗。 背景名のつづりが間違っているか、画像を持つ MOD が depends に入っていません。