Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
13d9b4cdc1 | ||
|
|
34e66b3298 | ||
|
|
8150743e3b | ||
|
|
7b699a642b | ||
|
|
f9bb809ed1 |
No files matched your search
+38
@@ -0,0 +1,38 @@
|
||||
# Godot 4.x
|
||||
.godot/
|
||||
.idea/
|
||||
sdk/
|
||||
bin/
|
||||
obj/
|
||||
|
||||
#ai
|
||||
.omo/
|
||||
.opencode/
|
||||
|
||||
gen/
|
||||
obj/
|
||||
bin/
|
||||
art_sources/
|
||||
|
||||
*.tres~
|
||||
*.tscn~
|
||||
|
||||
# GDScript LSP
|
||||
.godot/
|
||||
|
||||
# Export
|
||||
*.exe
|
||||
*.dmg
|
||||
*.apk
|
||||
*.aab
|
||||
*.pck
|
||||
*.zip
|
||||
*.log
|
||||
|
||||
# OS
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
|
||||
# Editor
|
||||
*.import
|
||||
*.godot.uid
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 33 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 47 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 54 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 41 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 26 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 37 KiB |
+52
@@ -0,0 +1,52 @@
|
||||
# Scenario Studio — debugging and editing scenarios while the game runs
|
||||
|
||||
Scenario Studio is a dock beside the running game that shows which scenario is playing and which line is on the screen. It can pause the dialog, step through it line by line, stop at breakpoints, move the next line, restart a scenario with the game's state rolled back, and change the scenario on the spot — and then shows the change in the game at once.
|
||||
|
||||
It has two modes: **Novice** shows the story moment in plain blocks; **Author** shows the scenario text with line numbers.
|
||||
|
||||
## Opening it
|
||||
|
||||
A game that includes the Developer Tools toolset (mechanic *Scenario Studio*) has a **Studio** button — the quill — on its toolbar. The launch flag `--studio` opens the dock at start. The pictures below are from the Cthangover kitchen; edits went into a test layer, never into the game's own files.
|
||||
|
||||
## Novice mode
|
||||
|
||||

|
||||
|
||||
The **Now** tab shows the moment on the screen: the line, the question and every answer with where it leads. **Edit** changes a text, **Choose where** changes where an answer leads (a label, another scene, the end), **+ Line** and **+ Answer** add to the moment. Every change shows in **This change affects** which mod or layer it will be written to.
|
||||
|
||||
## Author mode, pausing and breakpoints
|
||||
|
||||

|
||||
|
||||
- **Pause** holds the dialog before its next line; **Step** runs one line; **Continue** goes on.
|
||||
- A click in the margin sets a **breakpoint**: the dialog stops before that line.
|
||||
- Dragging the **▶** marker to another line makes that line run next.
|
||||
- **+ Line**, **+ Choice**, **+ Go to scene** add after the current line; **Edit text** edits the whole scenario.
|
||||
|
||||
## Apply and restart
|
||||
|
||||
**Apply** writes the changes and restarts the scenario. Here a line "New line" was added before the question; after Apply it is on the screen:
|
||||
|
||||

|
||||
|
||||
**Restart** offers: the scenario again without rollback, the scenario again **with state rollback** (flags, items, the clock and the rest are put back as they were when the scenario started), the scene again, or continuing from the current label.
|
||||
|
||||
## Inspecting state
|
||||
|
||||

|
||||
|
||||
The **State** tab shows the game state grouped by owner: the clock, the variables of the running dialog, the quests the scenario refers to, the inventory and which scenarios already ran. Variables, item counts and quest status can be changed (Enter writes them into the game) to try another branch. **Scene** lists the scenarios of the current scene, **Map** shows the scenes and the ways between them (and where to drop new backgrounds), and **Log** records what happened:
|
||||
|
||||

|
||||
|
||||
## Where changes are written
|
||||
|
||||
- A mod installed as a folder can be changed in place.
|
||||
- Otherwise changes go to the game's **studio layer** (`user://studio/<game>`), which wins over every mod and leaves the mods untouched. The layer can be exported as a new mod, which is then added to the game's collection.
|
||||
- **Resources** re-reads backgrounds dropped into a mod or into the layer's `backgrounds/` folder while the game runs; a new scene can then be made on such a background from the Map tab.
|
||||
|
||||
## If something goes wrong
|
||||
|
||||
1. **There is no Studio button.** The game's collection does not include the studio; add the Developer Tools toolset or launch with `--studio`.
|
||||
2. **Step does nothing.** The dialog waits for an answer: pick one first.
|
||||
3. **Other players do not see a change.** Changes in the studio layer stay in this game on this computer; export the layer as a mod to share them.
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
# Scenario Studio — depura y edita escenarios con el juego en marcha
|
||||
|
||||
Scenario Studio es un panel acoplado junto al juego en marcha que muestra qué escenario se está reproduciendo y qué línea hay en pantalla. Puede pausar el diálogo, avanzar línea a línea, detenerse en puntos de ruptura, mover la siguiente línea, reiniciar un escenario con el estado del juego revertido y cambiar el escenario al vuelo — y enseguida muestra el cambio en el juego.
|
||||
|
||||
Tiene dos modos: **Principiante** muestra el momento de la historia en bloques sencillos; **Autor** muestra el texto del escenario con números de línea.
|
||||
|
||||
## Cómo abrirlo
|
||||
|
||||
Un juego que incluye el conjunto Developer Tools (la mecánica *Scenario Studio*) tiene un botón **Estudio** — la pluma — en su barra de herramientas. La opción de arranque `--studio` abre el panel nada más empezar. Las capturas de abajo son de la cocina de Cthangover; las ediciones se hicieron en una capa de prueba, nunca en los archivos del propio juego.
|
||||
|
||||
## Modo Principiante
|
||||
|
||||

|
||||
|
||||
La pestaña **Ahora** muestra el momento en pantalla: la línea, la pregunta y cada respuesta con adónde lleva. **Editar** cambia un texto, **Elige adónde** cambia a dónde conduce una respuesta (una etiqueta, otra escena, el final), **+ Línea** y **+ Respuesta** añaden al momento. Cada cambio muestra en **Este cambio afecta a** en qué mod o capa se escribirá.
|
||||
|
||||
## Modo Autor, pausa y puntos de ruptura
|
||||
|
||||

|
||||
|
||||
- **Pausa** detiene el diálogo antes de su siguiente línea; **Paso** ejecuta una línea; **Continuar** sigue.
|
||||
- Un clic en el margen pone un **punto de ruptura**: el diálogo se detiene antes de esa línea.
|
||||
- Arrastrar el marcador **▶** a otra línea hace que esa línea sea la siguiente en ejecutarse.
|
||||
- **+ Línea**, **+ Elección**, **+ Ir a escena** añaden tras la línea actual; **Editar texto** edita el escenario entero.
|
||||
|
||||
## Aplicar y reiniciar
|
||||
|
||||
**Aplicar** escribe los cambios y reinicia el escenario. Aquí se añadió una línea «Nueva línea» antes de la pregunta; tras aplicar, ya está en pantalla:
|
||||
|
||||

|
||||
|
||||
**Reiniciar** ofrece: el escenario de nuevo sin reversión, el escenario de nuevo **revirtiendo el estado** (las marcas, los objetos, el reloj y el resto vuelven a como estaban cuando empezó el escenario), la escena de nuevo, o continuar desde la etiqueta actual.
|
||||
|
||||
## Inspeccionar el estado
|
||||
|
||||

|
||||
|
||||
La pestaña **Estado** muestra el estado del juego agrupado por dueño: el reloj, las variables del diálogo en curso, las misiones a las que remite el escenario, el inventario y qué escenarios ya se ejecutaron. Variables, cantidades de objetos y estado de misiones se pueden cambiar (Intro los escribe en el juego) para probar otra rama. **Escena** lista los escenarios de la escena actual, **Mapa** muestra las escenas y los caminos entre ellas (y dónde soltar fondos nuevos), y **Registro** apunta lo que ocurrió:
|
||||
|
||||

|
||||
|
||||
## Dónde se escriben los cambios
|
||||
|
||||
- Un mod instalado como carpeta se puede cambiar en el sitio.
|
||||
- Si no, los cambios van a la **capa de estudio** del juego (`user://studio/<game>`), que gana a todos los mods y los deja intactos. La capa se puede exportar como un mod nuevo, que luego se añade a la colección del juego.
|
||||
- **Recursos** vuelve a leer los fondos soltados en un mod o en la carpeta `backgrounds/` de la capa mientras el juego corre; sobre ese fondo se puede crear después una escena nueva desde la pestaña Mapa.
|
||||
|
||||
## Si algo sale mal
|
||||
|
||||
1. **No hay botón de Estudio.** La colección del juego no incluye el estudio; añade el conjunto Developer Tools o arranca con `--studio`.
|
||||
2. **Paso no hace nada.** El diálogo espera una respuesta: elige una primero.
|
||||
3. **Otros jugadores no ven un cambio.** Los cambios de la capa de estudio se quedan en este juego en este ordenador; exporta la capa como mod para compartirlos.
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
# Scenario Studio — ゲームの実行中にシナリオをデバッグし、その場で編集する
|
||||
|
||||
Scenario Studio は、実行中のゲームの脇に開くドックで、いまどのシナリオが再生され、どの行が画面に出ているかを示します。ダイアログを一時停止し、一行ずつステップ実行し、ブレークポイントで止め、次の行を付け替え、ゲームの状態を巻き戻してシナリオを再開始し、その場でシナリオを書き換えられます——そして変更はすぐにゲームの中に現れます。
|
||||
|
||||
モードは二つ。**初心者**モードは物語の瞬間をシンプルなブロックで示し、**作者**モードは行番号付きのシナリオテキストを示します。
|
||||
|
||||
## 開き方
|
||||
|
||||
Developer Tools ツールセットを含むゲーム(メカニクス *Scenario Studio*)には、ツールバーに**スタジオ**ボタン——羽根ペン——があります。起動フラグ `--studio` を付けると、開始時にドックが開きます。以下の画像は Cthangover の台所でのものです。編集はテストレイヤーに入れてあり、ゲーム本来のファイルには触れていません。
|
||||
|
||||
## 初心者モード
|
||||
|
||||

|
||||
|
||||
**現在**タブは画面の瞬間を示します: 行、質問、そして各行き先付きの回答すべて。**編集**はテキストを直し、**行き先を選ぶ**は回答の行き先(ラベル、別のシーン、終わり)を変え、**+ 行**と**+ 回答**はその瞬間に足します。変更ごとに、**この変更が影響するもの**にどの MOD かレイヤーに書かれるかが表示されます。
|
||||
|
||||
## 作者モード、一時停止、ブレークポイント
|
||||
|
||||

|
||||
|
||||
- **一時停止**は次の行の前でダイアログを止め、**ステップ**は一行だけ実行し、**続行**はそのまま進めます。
|
||||
- 余白をクリックすると**ブレークポイント**が付きます: ダイアログはその行の前で止まります。
|
||||
- **▶** マーカーを別の行へドラッグすると、その行が次に実行されます。
|
||||
- **+ 行**、**+ 選択肢**、**+ シーンへ移動**は現在行のあとに追加し、**テキストを編集**はシナリオ全体を編集します。
|
||||
|
||||
## 適用と再開始
|
||||
|
||||
**適用**は変更を書き込み、シナリオを再開始します。ここでは質問の前に「新しい行」を足しました。適用後、それが画面に出ています:
|
||||
|
||||

|
||||
|
||||
**再開始**では選べます: ロールバックなしでもう一度、**状態を巻き戻して**もう一度(フラグ、持ち物、時計などがシナリオ開始時の状態へ戻ります)、シーンを入り直す、現在のラベルから続ける。
|
||||
|
||||
## 状態の確認
|
||||
|
||||

|
||||
|
||||
**状態**タブはゲームの状態を持ち主ごとに示します: 時計、進行中のダイアログの変数、シナリオが参照するクエスト、インベントリ、そしてどのシナリオがすでに実行されたか。変数、持ち物の数、クエストの状態は変えられ(Enter でゲームに書き込まれます)、別の分岐を試せます。**シーン**タブは現在のシーンのシナリオ一覧、**マップ**はシーンとその間の経路(新しい背景のドロップ先)を示し、**ログ**は何が起きたかを記録します:
|
||||
|
||||

|
||||
|
||||
## 変更の書き込み先
|
||||
|
||||
- フォルダーとしてインストールされた MOD は、その場で書き換えられます。
|
||||
- それ以外の変更は、ゲームの**スタジオレイヤー**(`user://studio/<game>`)に入ります。レイヤーはどの MOD よりも優先され、MOD には触れません。レイヤーは新しい MOD として書き出せ、それをゲームのコレクションに追加します。
|
||||
- **リソース**は、ゲームの実行中に MOD やレイヤーの `backgrounds/` フォルダーへ置かれた背景を読み直します。その背景からなら、マップタブから新しいシーンを作れます。
|
||||
|
||||
## うまくいかないとき
|
||||
|
||||
1. **スタジオボタンがない。** そのゲームのコレクションにスタジオが入っていません。Developer Tools ツールセットを追加するか、`--studio` を付けて起動してください。
|
||||
2. **ステップが何もしない。** ダイアログが回答を待っています: 先に一つ選んでください。
|
||||
3. **他のプレイヤーに変更が見えない。** スタジオレイヤーの変更は、この PC のこのゲームの中にとどまります。共有するにはレイヤーを MOD として書き出してください。
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
# Scenario Studio — 게임 실행 중에 시나리오를 디버그하고 편집하기
|
||||
|
||||
Scenario Studio는 실행 중인 게임 옆에 열리는 도크로, 지금 어떤 시나리오가 재생되고 어떤 줄이 화면에 있는지 보여 줍니다. 대화를 일시 정지하고, 한 줄씩 진행하고, 중단점에서 멈추고, 다음 줄을 옮기고, 게임 상태를 되돌려 시나리오를 다시 시작하고, 그 자리에서 시나리오를 바꿀 수 있습니다 — 그리고 변경은 곧바로 게임에 나타납니다.
|
||||
|
||||
모드는 두 가지입니다. **초보자** 모드는 이야기 장면을 단순한 블록으로 보여 주고, **작성자** 모드는 줄 번호가 붙은 시나리오 텍스트를 보여 줍니다.
|
||||
|
||||
## 열기
|
||||
|
||||
Developer Tools 도구 모음이 들어 있는 게임(메커니즘 *Scenario Studio*)에는 도구 모음에 **스튜디오** 버튼 — 깃펜 — 이 있습니다. 실행 플래그 `--studio`를 붙이면 시작할 때 도크가 열립니다. 아래의 그림은 Cthangover의 주방에서 찍은 것으로, 편집은 테스트 레이어에 기록되었고 게임 자체 파일은 건드리지 않았습니다.
|
||||
|
||||
## 초보자 모드
|
||||
|
||||

|
||||
|
||||
**지금** 탭은 화면의 장면을 보여 줍니다: 줄, 질문, 그리고 각 답변이 어디로 이어지는지. **편집**은 텍스트를 바꾸고, **갈 곳 선택**은 답변의 행선지(레이블, 다른 장면, 끝)를 바꾸며, **+ 줄**과 **+ 답변**은 그 장면에 더합니다. 변경마다 **이 변경이 영향을 주는 곳**에 어느 모드나 레이어에 기록될지 표시됩니다.
|
||||
|
||||
## 작성자 모드, 일시 정지, 중단점
|
||||
|
||||

|
||||
|
||||
- **일시 정지**는 다음 줄 앞에서 대화를 멈추고, **한 단계**는 한 줄만 실행하며, **계속**은 계속 진행합니다.
|
||||
- 여백을 클릭하면 **중단점**이 생깁니다: 대화가 그 줄 앞에서 멈춥니다.
|
||||
- **▶** 표시를 다른 줄로 끌면 그 줄이 다음에 실행됩니다.
|
||||
- **+ 줄**, **+ 선택지**, **+ 장면으로 이동**은 현재 줄 뒤에 더하고, **텍스트 편집**은 시나리오 전체를 편집합니다.
|
||||
|
||||
## 적용과 다시 시작
|
||||
|
||||
**적용**은 변경을 기록하고 시나리오를 다시 시작합니다. 여기서는 질문 앞에 "새 줄"을 추가했습니다. 적용 후 화면에 나타납니다:
|
||||
|
||||

|
||||
|
||||
**다시 시작**은 선택지를 제공합니다: 되돌리지 않고 시나리오 다시, **상태를 되돌려** 다시(플래그, 아이템, 시계 등이 시나리오가 시작했을 때의 상태로 돌아갑니다), 장면 다시, 현재 레이블에서 계속하기.
|
||||
|
||||
## 상태 살펴보기
|
||||
|
||||

|
||||
|
||||
**상태** 탭은 게임 상태를 소유자별로 보여 줍니다: 시계, 진행 중인 대화의 변수, 시나리오가 참조하는 퀘스트, 인벤토리, 그리고 어떤 시나리오가 이미 실행됐는지. 변수, 아이템 개수, 퀘스트 상태는 바꿀 수 있고(Enter가 게임에 기록합니다), 이를 통해 다른 분기를 시험할 수 있습니다. **장면** 탭은 현재 장면의 시나리오를, **지도** 탭은 장면과 그 사이의 길(그리고 새 배경을 놓을 곳)을 보여 주고, **로그**는 무슨 일이 있었는지 기록합니다:
|
||||
|
||||

|
||||
|
||||
## 변경이 기록되는 곳
|
||||
|
||||
- 폴더로 설치된 모드는 그 자리에서 바꿀 수 있습니다.
|
||||
- 그 외의 변경은 게임의 **스튜디오 레이어**(`user://studio/<game>`)로 갑니다. 레이어는 모든 모드보다 우선하며 모드 자체는 건드리지 않습니다. 레이어는 새 모드로 내보낼 수 있고, 이를 게임 컬렉션에 추가하면 됩니다.
|
||||
- **리소스**는 게임이 실행되는 동안 모드나 레이어의 `backgrounds/` 폴더에 넣은 배경을 다시 읽습니다. 그런 배경 위로는 지도 탭에서 바로 새 장면을 만들 수 있습니다.
|
||||
|
||||
## 문제가 생겼을 때
|
||||
|
||||
1. **스튜디오 버튼이 없습니다.** 게임 컬렉션에 스튜디오가 들어 있지 않습니다. Developer Tools 도구 모음을 추가하거나 `--studio`로 실행하세요.
|
||||
2. **한 단계가 아무것도 하지 않습니다.** 대화가 답변을 기다리고 있습니다: 먼저 하나 고르세요.
|
||||
3. **다른 플레이어에게 변경이 보이지 않습니다.** 스튜디오 레이어의 변경은 이 컴퓨터의 이 게임에만 남습니다. 공유하려면 레이어를 모드로 내보내세요.
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
# Scenario Studio — отладка и правка сценариев прямо во время игры
|
||||
|
||||
Scenario Studio — это панель рядом с запущенной игрой, которая показывает, какой сценарий играет и какая строка сейчас на экране. Она умеет ставить диалог на паузу, идти по нему строка за строкой, останавливаться на точках останова, переносить следующую строку, перезапускать сценарий с откатом состояния игры и менять сценарий на ходу — и тут же показывает изменения в игре.
|
||||
|
||||
Режима два: **Новичок** показывает сюжетный момент простыми блоками, **Автор** — текст сценария с номерами строк.
|
||||
|
||||
## Как открыть
|
||||
|
||||
У игры, в которую входит набор Developer Tools (механика *Scenario Studio*), на панели инструментов есть кнопка **Студия** — перо. Флаг запуска `--studio` открывает панель сразу при старте. Снимки ниже сделаны на кухне Cthangover; правки уходили в тестовый слой, а не в файлы самой игры.
|
||||
|
||||
## Режим «Новичок»
|
||||
|
||||

|
||||
|
||||
Вкладка **Сейчас** показывает момент на экране: реплику, вопрос и все ответы с тем, куда каждый ведёт. **Изменить** правит текст, **Выбрать, куда** меняет, куда ведёт ответ (метка, другая сцена, конец), **+ Реплика** и **+ Вариант ответа** добавляют к моменту. У каждой правки блок **Изменение затронет** показывает, в какой мод или слой она попадёт.
|
||||
|
||||
## Режим «Автор», пауза и точки останова
|
||||
|
||||

|
||||
|
||||
- **Пауза** задержит диалог перед следующей строкой; **Шаг** выполнит одну строку; **Дальше** продолжит.
|
||||
- Клик на поле слева ставит **точку останова**: диалог остановится перед этой строкой.
|
||||
- Перетаскивание маркера **▶** на другую строку назначает её следующей.
|
||||
- **+ Реплика**, **+ Выбор**, **+ Переход в сцену** добавляют после текущей строки; **Править текст** правит весь сценарий.
|
||||
|
||||
## Применение и перезапуск
|
||||
|
||||
**Применить** записывает правки и перезапускает сценарий. Здесь перед вопросом добавлена реплика «Новая реплика»; после применения она на экране:
|
||||
|
||||

|
||||
|
||||
**Перезапуск** предлагает: прогнать сценарий заново без отката, прогнать заново **с откатом состояния** (флаги, предметы, часы и остальное вернутся к тому, как было при старте сценария), заново войти в сцену или продолжить с текущей метки.
|
||||
|
||||
## Осмотр состояния
|
||||
|
||||

|
||||
|
||||
Вкладка **Состояние** показывает состояние игры по владельцам: часы, переменные идущего диалога, задания, на которые ссылается сценарий, инвентарь и какие сценарии уже выполнялись. Переменные, количество предметов и статус заданий можно менять (Enter записывает их в игру), чтобы попробовать другую ветку. Вкладка **Сцена** перечисляет сценарии текущей сцены, **Карта** показывает сцены и пути между ними (и куда бросать новые фоны), а **Журнал** записывает, что происходило:
|
||||
|
||||

|
||||
|
||||
## Куда пишутся изменения
|
||||
|
||||
- Мод, установленный папкой, можно менять на месте.
|
||||
- Иначе правки уходят в **слой студии** игры (`user://studio/<game>`), который главнее любого мода и не трогает сами моды. Слой можно выгрузить в новый мод, который затем добавляется в коллекцию игры.
|
||||
- **Ресурсы** перечитывает фоны, брошенные во время игры в мод или в папку `backgrounds/` слоя; после этого на таком фоне можно завести новую сцену прямо со вкладки «Карта».
|
||||
|
||||
## Если что-то пошло не так
|
||||
|
||||
1. **Кнопки «Студия» нет.** В коллекцию игры не входит студия — добавьте набор Developer Tools или запустите с `--studio`.
|
||||
2. **«Шаг» ничего не делает.** Диалог ждёт ответ: сначала выберите его.
|
||||
3. **Другие игроки не видят правку.** Изменения в слое студии остаются в этой игре на этом компьютере; выгрузите слой как мод, чтобы поделиться.
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
# Scenario Studio — gỡ lỗi và chỉnh sửa kịch bản khi trò chơi đang chạy
|
||||
|
||||
Scenario Studio là một bảng gắn bên cạnh trò chơi đang chạy, cho biết kịch bản nào đang chơi và dòng nào đang hiện trên màn hình. Nó có thể tạm dừng hội thoại, đi từng dòng một, dừng ở điểm ngắt, dịch dòng tiếp theo, khởi động lại kịch bản với trạng thái game được hoàn lại, và sửa kịch bản ngay tại chỗ — rồi lập tức hiện thay đổi trong game.
|
||||
|
||||
Nó có hai chế độ: **Người mới** hiển thị khoảnh khắc câu chuyện bằng các khối đơn giản; **Tác giả** hiển thị văn bản kịch bản với số dòng.
|
||||
|
||||
## Mở nó
|
||||
|
||||
Trò chơi có bộ Developer Tools (cơ chế *Scenario Studio*) sẽ có nút **Xưởng** — cây bút lông — trên thanh công cụ. Cờ khởi động `--studio` mở bảng ngay khi bắt đầu. Các hình dưới đây chụp từ căn bếp của Cthangover; các chỉnh sửa được ghi vào một lớp thử nghiệm, không đụng tới tệp của game.
|
||||
|
||||
## Chế độ Người mới
|
||||
|
||||

|
||||
|
||||
Thẻ **Hiện tại** hiển thị khoảnh khắc trên màn hình: dòng, câu hỏi và từng câu trả lời cùng nơi nó dẫn tới. **Sửa** đổi một đoạn văn bản, **Chọn nơi đến** đổi nơi một câu trả lời dẫn tới (một nhãn, cảnh khác, hay kết thúc), **+ Dòng** và **+ Câu trả lời** thêm vào khoảnh khắc. Mỗi thay đổi đều cho biết trong **Thay đổi này ảnh hưởng đến** rằng nó sẽ được ghi vào mod hay lớp nào.
|
||||
|
||||
## Chế độ Tác giả, tạm dừng và điểm ngắt
|
||||
|
||||

|
||||
|
||||
- **Tạm dừng** giữ hội thoại trước dòng tiếp theo; **Từng bước** chạy một dòng; **Tiếp tục** chơi tiếp.
|
||||
- Bấm vào lề là đặt một **điểm ngắt**: hội thoại dừng trước dòng đó.
|
||||
- Kéo ký hiệu **▶** sang dòng khác sẽ khiến dòng đó chạy tiếp theo.
|
||||
- **+ Dòng**, **+ Lựa chọn**, **+ Đến cảnh** thêm vào sau dòng hiện tại; **Sửa văn bản** sửa cả kịch bản.
|
||||
|
||||
## Áp dụng và khởi động lại
|
||||
|
||||
**Áp dụng** ghi các thay đổi và chạy lại kịch bản. Ở đây một dòng "Dòng mới" được thêm trước câu hỏi; sau khi áp dụng nó đã hiện trên màn hình:
|
||||
|
||||

|
||||
|
||||
**Khởi động lại** đưa ra các lựa chọn: chạy lại kịch bản không hoàn trạng thái, chạy lại **có hoàn trạng thái** (cờ, vật phẩm, đồng hồ và mọi thứ trở lại như khi kịch bản bắt đầu), vào lại cảnh, hay tiếp tục từ nhãn hiện tại.
|
||||
|
||||
## Xem trạng thái
|
||||
|
||||

|
||||
|
||||
Thẻ **Trạng thái** hiển thị trạng thái game theo từng chủ sở hữu: đồng hồ, các biến của hội thoại đang chạy, các nhiệm vụ mà kịch bản nhắc tới, túi đồ và những kịch bản đã chạy. Biến, số lượng vật phẩm và trạng thái nhiệm vụ có thể đổi (Enter ghi chúng vào game) để thử nhánh khác. **Cảnh** liệt kê các kịch bản của cảnh hiện tại, **Bản đồ** cho thấy các cảnh và đường đi giữa chúng (và nơi thả phông nền mới), còn **Nhật ký** ghi lại những gì đã xảy ra:
|
||||
|
||||

|
||||
|
||||
## Thay đổi được ghi vào đâu
|
||||
|
||||
- Mod cài dưới dạng thư mục có thể được sửa trực tiếp.
|
||||
- Nếu không, thay đổi sẽ vào **lớp xưởng** của game (`user://studio/<game>`), lớp này thắng mọi mod và không đụng tới các mod. Lớp có thể được xuất thành mod mới, rồi thêm vào bộ sưu tập của game.
|
||||
- **Tài nguyên** đọc lại các phông nền thả vào mod hoặc vào thư mục `backgrounds/` của lớp trong khi game chạy; sau đó có thể tạo cảnh mới trên phông nền đó ngay từ thẻ Bản đồ.
|
||||
|
||||
## Khi có trục trặc
|
||||
|
||||
1. **Không có nút Xưởng.** Bộ sưu tập của game không chứa xưởng; hãy thêm bộ Developer Tools hoặc chạy với `--studio`.
|
||||
2. **Từng bước không làm gì.** Hội thoại đang chờ một câu trả lời: hãy chọn một cái trước.
|
||||
3. **Người chơi khác không thấy thay đổi.** Thay đổi trong lớp xưởng chỉ ở lại game này trên máy này; hãy xuất lớp thành mod để chia sẻ.
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
# Scenario Studio — 游戏运行时调试与编辑剧本
|
||||
|
||||
Scenario Studio 是一个停靠在运行中游戏旁边的面板,会显示当前播放的是哪个剧本、屏幕上正停在哪一行。它可以暂停对话、逐行单步执行、停在断点上、挪动下一行、带着回滚的游戏状态重启剧本,还能当场修改剧本——并且立刻把改动呈现到游戏里。
|
||||
|
||||
它有两种模式:**新手**模式用简单的块面呈现剧情时刻;**作者**模式显示带行号的剧本文本。
|
||||
|
||||
## 打开方式
|
||||
|
||||
包含 Developer Tools 工具集的游戏(机制 *Scenario Studio*)工具栏上有一个**工作室**按钮——羽毛笔。启动参数 `--studio` 会在开局时直接打开面板。下面的截图来自 Cthangover 的厨房;编辑都写进了测试层,没有碰游戏自己的文件。
|
||||
|
||||
## 新手模式
|
||||
|
||||

|
||||
|
||||
**现在**标签页显示屏幕上的时刻:台词、问题和每个回答的去向。**编辑**修改文本,**选择去向**修改一个回答指向哪里(某个标签、另一个场景或结尾),**+ 台词**和**+ 回答**往这个时刻里添加内容。每处修改都会在**此修改影响**里显示将写入哪个模组或哪一层。
|
||||
|
||||
## 作者模式:暂停与断点
|
||||
|
||||

|
||||
|
||||
- **暂停**让对话停在下一行之前;**单步**执行一行;**继续**照常往下走。
|
||||
- 在边栏点一下即可设置**断点**:对话会在那一行之前停下。
|
||||
- 把 **▶** 标记拖到另一行,就能让那一行成为下一行。
|
||||
- **+ 台词**、**+ 选项**、**+ 前往场景**添加在当前行之后;**编辑文本**编辑整个剧本。
|
||||
|
||||
## 应用与重启
|
||||
|
||||
**应用**会写入改动并重启剧本。这里在问题前加了一行「新台词」;应用之后它已经显示在画面上:
|
||||
|
||||

|
||||
|
||||
**重启**提供几种选择:不带回滚地重跑剧本、**带状态回滚**重跑(标记、物品、时钟等都会回到剧本开始时的样子)、重进场景,或从当前标签继续。
|
||||
|
||||
## 检查状态
|
||||
|
||||

|
||||
|
||||
**状态**标签页按归属分组显示游戏状态:时钟、正在进行的对话的变量、剧本引用到的任务、背包,以及哪些剧本已经运行过。变量、物品数量和任务状态都可以修改(按 Enter 写入游戏),以便尝试其他分支。**场景**列出当前场景的剧本,**地图**显示各场景及其间的通路(以及可以把新背景拖放到的位置),**日志**记录发生的事情:
|
||||
|
||||

|
||||
|
||||
## 改动写到哪里
|
||||
|
||||
- 以文件夹形式安装的模组可以就地修改。
|
||||
- 否则改动会进入游戏的**工作室层**(`user://studio/<game>`),它的优先级高于所有模组,且不会碰模组本身。这一层可以导出为新模组,再加入游戏的合集中。
|
||||
- **资源**会重新读取游戏运行时拖入模组或层的 `backgrounds/` 文件夹的背景;之后可以在「地图」标签页直接用这样的背景新建场景。
|
||||
|
||||
## 出问题了怎么办
|
||||
|
||||
1. **没有工作室按钮。** 游戏的合集没包含工作室;添加 Developer Tools 工具集,或用 `--studio` 启动。
|
||||
2. **单步没有反应。** 对话正在等待回答:先选一个。
|
||||
3. **其他玩家看不到改动。** 工作室层里的修改只留在这台电脑的这个游戏里;把层导出为模组即可分享。
|
||||
@@ -1,5 +1,5 @@
|
||||
mod_scenario_studio_name = Scenario Studio
|
||||
mod_scenario_studio_desc = Debug and edit scenarios while the game runs: pause, step, restart, the current line, why scenarios started, game state, an event log and the scene map. Author and Novice modes.
|
||||
mod_scenario_studio_desc = A dock beside the running game that pauses, steps and edits the playing scenario: breakpoints, restarts with state rollback, live edits into a mod or a per-game layer.
|
||||
studio/title = Studio
|
||||
studio/mode_author = Author
|
||||
studio/mode_novice = Novice
|
||||
|
||||
@@ -0,0 +1,167 @@
|
||||
mod_scenario_studio_name = Estudio de escenarios
|
||||
mod_scenario_studio_desc = Un panel junto al juego en marcha que pausa, avanza paso a paso y edita el escenario en reproducción: puntos de ruptura, reinicios revirtiendo el estado y ediciones en vivo en un mod o en la capa propia de cada juego.
|
||||
studio/title = Estudio
|
||||
studio/mode_author = Autor
|
||||
studio/mode_novice = Principiante
|
||||
studio/close = Cerrar el estudio
|
||||
studio/state_running = en marcha
|
||||
studio/state_paused = en pausa
|
||||
studio/pause = ‖ Pausa
|
||||
studio/step = ▶| Paso
|
||||
studio/continue = ▶ Continuar
|
||||
studio/restart = ⟲ Reiniciar ▾
|
||||
studio/restart_scenario = Escenario de nuevo (sin revertir)
|
||||
studio/restart_rollback = Escenario de nuevo revirtiendo el estado
|
||||
studio/restart_scene = Escena de nuevo
|
||||
studio/restart_from_label = Continuar desde la etiqueta actual
|
||||
studio/crumb_scene = escena
|
||||
studio/crumb_scenario = escenario
|
||||
studio/tab_now = Ahora
|
||||
studio/tab_scene = Escena
|
||||
studio/tab_state = Estado
|
||||
studio/tab_log = Registro
|
||||
studio/tab_map = Mapa
|
||||
studio/edits_go_to = los cambios van a la capa «{0}»
|
||||
studio/after_line = después de la línea {0}
|
||||
studio/add_line = + Línea
|
||||
studio/add_choice = + Elección
|
||||
studio/add_jump = + Ir a escena
|
||||
studio/new_line_text = Nueva línea
|
||||
studio/new_choice_text = Nueva elección
|
||||
studio/affects = Este cambio afecta a
|
||||
studio/overrides = sustituye a
|
||||
studio/pending = Cambios pendientes: {0}
|
||||
studio/no_pending = Sin cambios
|
||||
studio/edit_text = Editar texto
|
||||
studio/apply = Aplicar ⟲
|
||||
studio/scope_own = carpeta
|
||||
studio/scope_overlay = zip
|
||||
studio/scope_layer = capa
|
||||
studio/scope_readonly = código
|
||||
studio/cand_running = en marcha
|
||||
studio/cand_skipped = omitido
|
||||
studio/cand_completed = completado
|
||||
studio/cand_shadowed = eclipsado
|
||||
studio/cand_hint = Los escenarios de esta escena en orden de arranque: por qué empezó o no cada uno.
|
||||
studio/run_now = Ejecutar
|
||||
studio/reset_completed = Restablecer «completado»
|
||||
studio/log_scene = escena
|
||||
studio/log_skip = omitir
|
||||
studio/log_scenario = escenario
|
||||
studio/log_stop = detener
|
||||
studio/log_edit = edición
|
||||
studio/state_hint = Los valores se pueden cambiar para probar otra rama.
|
||||
studio/map_from = Viene de
|
||||
studio/map_to = Salidas desde aquí
|
||||
studio/map_go = Ir
|
||||
studio/map_new_scene = + Nueva escena
|
||||
studio/map_link = + Enlace
|
||||
studio/node_here = estás aquí
|
||||
studio/node_visited = visitada
|
||||
studio/node_next = salida
|
||||
studio/node_new = nueva
|
||||
studio/priority = prioridad {0}
|
||||
studio/no_condition = sin condición
|
||||
studio/one_run = de una vez
|
||||
studio/error_label_missing = etiqueta {0} no encontrada
|
||||
studio/reason_completed = de una vez, ya completado
|
||||
studio/group_time = Tiempo
|
||||
studio/group_quests = Misiones
|
||||
studio/group_inventory = Inventario
|
||||
studio/group_dialog_vars = Variables de diálogo
|
||||
studio/group_completed = Escenarios completados
|
||||
studio/state_day = día
|
||||
studio/state_hour = hora
|
||||
studio/value_yes = sí
|
||||
studio/log_text_enter = entró en {0}
|
||||
studio/log_text_condition = {0}: la condición es falsa
|
||||
studio/log_text_completed = {0}: ya completado
|
||||
studio/log_text_started = empezó {0}
|
||||
studio/log_text_breakpoint = punto de interrupción, línea {0}
|
||||
studio/log_text_applied = {0}: +{1} → {2}
|
||||
studio/quote = «{0}»
|
||||
studio/say_question = Pregunta
|
||||
studio/say_line = Línea
|
||||
studio/say_new = {0} · nueva
|
||||
studio/moment_now = En pantalla ahora
|
||||
studio/moment_answers = Respuestas
|
||||
studio/moment_next = Lo siguiente en la escena
|
||||
studio/moment_empty = Nada en pantalla: no se ejecuta ningún escenario o está en una línea de servicio.
|
||||
studio/outcome_scene = va a la escena
|
||||
studio/outcome_action = acción
|
||||
studio/outcome_end = fin del escenario
|
||||
studio/outcome_continue = el diálogo continúa
|
||||
studio/outcome_broken = no lleva a ninguna parte
|
||||
studio/edit = Editar
|
||||
studio/choose_target = Elige adónde ▾
|
||||
studio/add_line_before = + Línea antes de la pregunta
|
||||
studio/add_line_after = + Línea después
|
||||
studio/add_option = + Respuesta
|
||||
studio/new_option_text = Nueva respuesta
|
||||
studio/next_waiting = {0} espera su turno
|
||||
studio/next_none = No hay nada más en cola en esta escena
|
||||
studio/reason_condition_false = la condición de cabecera es falsa
|
||||
studio/applied_to = Aplicado a «{0}», escenario reiniciado con reversión
|
||||
studio/bad_name = Nombre: letras latinas minúsculas, dígitos y _, empezando por una letra
|
||||
studio/ok = Aceptar
|
||||
studio/cancel = Cancelar
|
||||
studio/cand_failed = falló
|
||||
studio/cand_none = La escena no se compuso mientras el estudio estaba activo: entra de nuevo en ella.
|
||||
studio/cand_queued = en cola
|
||||
studio/edit_done = Hecho
|
||||
studio/error_no_target = la respuesta no lleva a ninguna parte
|
||||
studio/error_unknown_command = comando desconocido {0}
|
||||
studio/exported = Capa exportada como el mod «{0}»: añádelo a la colección del juego
|
||||
studio/log_end = fin
|
||||
studio/log_text_ended = terminó {0}
|
||||
studio/log_text_exported = capa exportada como el mod {0}
|
||||
studio/log_text_failed = {0}: no se pudo crear
|
||||
studio/log_text_paused = en pausa, línea {0}
|
||||
studio/log_text_scenario_created = nuevo escenario {0} para la escena {1}
|
||||
studio/log_text_scene_created = nueva escena {0} (escenario {1})
|
||||
studio/log_text_shadowed = {0}: eclipsado ({1})
|
||||
studio/log_text_state = {0} = {1}
|
||||
studio/map_export = Exportar capa como mod
|
||||
studio/new_scenario = + Nuevo escenario para la escena
|
||||
studio/no_scenario = Todavía no se ha ejecutado ningún escenario. Entra en una escena o inicia uno en la pestaña Escena.
|
||||
studio/prompt_edit_title = Nuevo texto
|
||||
studio/prompt_export_title = Id del nuevo mod
|
||||
studio/prompt_scene_title = Nombre de la nueva escena
|
||||
studio/reason_failed = no se pudo crear el evento, mira el registro SCENE
|
||||
studio/reason_queued = en cola con prioridad {0}
|
||||
studio/reason_running = en marcha ahora
|
||||
studio/reason_shadowed = eclipsado por un escenario con el mismo nombre de otro mod o de la capa
|
||||
studio/run_failed = No se pudo iniciar: el cuadro de diálogo está ocupado
|
||||
studio/scenario_created = Escenario «{0}» creado en la capa: vuelve a entrar en la escena o inícialo
|
||||
studio/scene_created = Escena «{0}» creada en la capa
|
||||
studio/state_held = parada
|
||||
studio/state_idle = sin diálogo
|
||||
studio/step_needs_answer = Primero elige una respuesta en el diálogo
|
||||
studio/target_end = Fin del escenario
|
||||
studio/target_labels = Etiquetas
|
||||
studio/target_scene = → escena {0}
|
||||
studio/target_scenes = Escenas
|
||||
studio/via_layer = nueva escena de la capa
|
||||
studio/via_scenario = desde {0}
|
||||
studio/map_here = Estás aquí
|
||||
studio/map_no_exits = Ningún escenario lleva todavía a ninguna parte desde esta escena: «+ Enlace» añade una salida.
|
||||
studio/checkpoint = Punto de control
|
||||
studio/checkpoint_save = Recordar el estado
|
||||
studio/checkpoint_restore = Volver al punto de control
|
||||
studio/checkpoint_saved = Estado recordado
|
||||
studio/checkpoint_restored = De vuelta en el punto de control
|
||||
studio/checkpoint_none = No hay punto de control guardado
|
||||
studio/log_text_checkpoint_saved = punto de control en {0}
|
||||
studio/log_text_checkpoint_restored = de vuelta al punto de control en {0}
|
||||
studio/drag_next_line = Arrastra a otra línea para ejecutarla a continuación
|
||||
studio/next_line_failed = El diálogo no puede continuar desde esta línea
|
||||
studio/log_text_next_line = la siguiente línea pasó a {0}
|
||||
studio/reload_assets = Recursos
|
||||
studio/reload_assets_tip = Volver a leer los fondos añadidos durante el juego en backgrounds/ de un mod o de la capa ({0})
|
||||
studio/map_assets_hint = Pon los fondos nuevos en backgrounds/ de tu mod o de la capa ({0}) y pulsa «Recursos» en la barra de arriba. Un <background>_depth a su lado alimenta la iluminación.
|
||||
studio/assets_reloaded = Recursos releídos: {0} fondos, nada nuevo
|
||||
studio/assets_reloaded_new = Recursos releídos: {0} fondos, nuevos: {1}
|
||||
studio/log_text_assets_reloaded = recursos releídos: {0} fondos, {1} nuevos
|
||||
studio/background_current = Fondos de la escena actual
|
||||
studio/backgrounds = Fondos
|
||||
studio/background_item = fondo {0} · {1}
|
||||
@@ -0,0 +1,167 @@
|
||||
mod_scenario_studio_name = シナリオスタジオ
|
||||
mod_scenario_studio_desc = 実行中のゲームの脇に開くドック。再生中のシナリオを一時停止・ステップ実行・その場で編集します: ブレークポイント、状態を巻き戻しての再開始、MOD やゲームごとのレイヤーへのライブ編集。
|
||||
studio/title = スタジオ
|
||||
studio/mode_author = 作者
|
||||
studio/mode_novice = 初心者
|
||||
studio/close = スタジオを閉じる
|
||||
studio/state_running = 実行中
|
||||
studio/state_paused = 一時停止中
|
||||
studio/pause = ‖ 一時停止
|
||||
studio/step = ▶| ステップ
|
||||
studio/continue = ▶ 続行
|
||||
studio/restart = ⟲ 再開始 ▾
|
||||
studio/restart_scenario = シナリオをもう一度(巻き戻しなし)
|
||||
studio/restart_rollback = 状態を巻き戻してシナリオをもう一度
|
||||
studio/restart_scene = シーンをもう一度
|
||||
studio/restart_from_label = 現在のラベルから続ける
|
||||
studio/crumb_scene = シーン
|
||||
studio/crumb_scenario = シナリオ
|
||||
studio/tab_now = 現在
|
||||
studio/tab_scene = シーン
|
||||
studio/tab_state = 状態
|
||||
studio/tab_log = ログ
|
||||
studio/tab_map = マップ
|
||||
studio/edits_go_to = 編集は「{0}」レイヤーに書き込まれます
|
||||
studio/after_line = {0} 行目の後
|
||||
studio/add_line = + 行
|
||||
studio/add_choice = + 選択肢
|
||||
studio/add_jump = + シーンへ移動
|
||||
studio/new_line_text = 新しい行
|
||||
studio/new_choice_text = 新しい選択肢
|
||||
studio/affects = この変更が影響するもの
|
||||
studio/overrides = 上書き
|
||||
studio/pending = 保留中の変更:{0}
|
||||
studio/no_pending = 変更なし
|
||||
studio/edit_text = テキストを編集
|
||||
studio/apply = 適用 ⟲
|
||||
studio/scope_own = フォルダー
|
||||
studio/scope_overlay = zip
|
||||
studio/scope_layer = レイヤー
|
||||
studio/scope_readonly = コード
|
||||
studio/cand_running = 実行中
|
||||
studio/cand_skipped = スキップ
|
||||
studio/cand_completed = 完了
|
||||
studio/cand_shadowed = 隠された
|
||||
studio/cand_hint = このシーンのシナリオを開始順に:それぞれが始まった理由、始まらなかった理由。
|
||||
studio/run_now = 実行
|
||||
studio/reset_completed = 「完了」をリセット
|
||||
studio/log_scene = シーン
|
||||
studio/log_skip = スキップ
|
||||
studio/log_scenario = シナリオ
|
||||
studio/log_stop = 停止
|
||||
studio/log_edit = 編集
|
||||
studio/state_hint = 値を変えて別の分岐を試せます。
|
||||
studio/map_from = 来た場所
|
||||
studio/map_to = ここからの出口
|
||||
studio/map_go = 移動
|
||||
studio/map_new_scene = + 新しいシーン
|
||||
studio/map_link = + リンク
|
||||
studio/node_here = 現在地
|
||||
studio/node_visited = 訪問済み
|
||||
studio/node_next = 出口
|
||||
studio/node_new = 新規
|
||||
studio/priority = 優先度 {0}
|
||||
studio/no_condition = 条件なし
|
||||
studio/one_run = 一度きり
|
||||
studio/error_label_missing = ラベル {0} が見つかりません
|
||||
studio/reason_completed = 一度きり、完了済み
|
||||
studio/group_time = 時間
|
||||
studio/group_quests = クエスト
|
||||
studio/group_inventory = インベントリ
|
||||
studio/group_dialog_vars = ダイアログ変数
|
||||
studio/group_completed = 完了したシナリオ
|
||||
studio/state_day = 日
|
||||
studio/state_hour = 時
|
||||
studio/value_yes = はい
|
||||
studio/log_text_enter = {0} に入った
|
||||
studio/log_text_condition = {0}:条件が偽
|
||||
studio/log_text_completed = {0}:完了済み
|
||||
studio/log_text_started = {0} が始まった
|
||||
studio/log_text_breakpoint = ブレークポイント、{0} 行目
|
||||
studio/log_text_applied = {0}:+{1} → {2}
|
||||
studio/quote = 「{0}」
|
||||
studio/say_question = 質問
|
||||
studio/say_line = 行
|
||||
studio/say_new = {0} · 新規
|
||||
studio/moment_now = いま画面に
|
||||
studio/moment_answers = 回答
|
||||
studio/moment_next = シーンで次に
|
||||
studio/moment_empty = 画面に何もない:シナリオが動いていないか、サービス行で止まっている。
|
||||
studio/outcome_scene = シーンへ移動
|
||||
studio/outcome_action = アクション
|
||||
studio/outcome_end = シナリオの終わり
|
||||
studio/outcome_continue = 会話が続く
|
||||
studio/outcome_broken = どこにも行かない
|
||||
studio/edit = 編集
|
||||
studio/choose_target = 行き先を選ぶ ▾
|
||||
studio/add_line_before = + 質問の前に行
|
||||
studio/add_line_after = + 後に行
|
||||
studio/add_option = + 回答
|
||||
studio/new_option_text = 新しい回答
|
||||
studio/next_waiting = {0} は順番待ち
|
||||
studio/next_none = このシーンで他に待っているものはない
|
||||
studio/reason_condition_false = ヘッダーの条件が偽
|
||||
studio/applied_to = 「{0}」に適用し、巻き戻してシナリオを再開始した
|
||||
studio/bad_name = 名前:小文字のラテン文字、数字、_ で、先頭は文字
|
||||
studio/ok = OK
|
||||
studio/cancel = キャンセル
|
||||
studio/cand_failed = 失敗
|
||||
studio/cand_none = スタジオが有効な間にシーンが組み立てられなかった:もう一度入ってください。
|
||||
studio/cand_queued = 順番待ち
|
||||
studio/edit_done = 完了
|
||||
studio/error_no_target = 回答がどこにも行かない
|
||||
studio/error_unknown_command = 不明なコマンド {0}
|
||||
studio/exported = レイヤーを MOD「{0}」として書き出した:ゲームのコレクションに追加してください
|
||||
studio/log_end = 終了
|
||||
studio/log_text_ended = {0} が終わった
|
||||
studio/log_text_exported = レイヤーを MOD {0} として書き出した
|
||||
studio/log_text_failed = {0}:作成できなかった
|
||||
studio/log_text_paused = 一時停止、{0} 行目
|
||||
studio/log_text_scenario_created = シーン {1} の新しいシナリオ {0}
|
||||
studio/log_text_scene_created = 新しいシーン {0}(シナリオ {1})
|
||||
studio/log_text_shadowed = {0}:隠された({1})
|
||||
studio/log_text_state = {0} = {1}
|
||||
studio/map_export = レイヤーを MOD として書き出す
|
||||
studio/new_scenario = + シーンの新しいシナリオ
|
||||
studio/no_scenario = まだどのシナリオも動いていません。シーンに入るか、「シーン」タブで開始してください。
|
||||
studio/prompt_edit_title = 新しいテキスト
|
||||
studio/prompt_export_title = 新しい MOD の id
|
||||
studio/prompt_scene_title = 新しいシーンの名前
|
||||
studio/reason_failed = イベントを作成できなかった。SCENE ログを見てください
|
||||
studio/reason_queued = 優先度 {0} で順番待ち
|
||||
studio/reason_running = いま実行中
|
||||
studio/reason_shadowed = 他の MOD かレイヤーにある同名のシナリオに隠されている
|
||||
studio/run_failed = 開始できません:ダイアログボックスが使用中です
|
||||
studio/scenario_created = レイヤーにシナリオ「{0}」を作成した:シーンに入り直すか開始してください
|
||||
studio/scene_created = レイヤーにシーン「{0}」を作成した
|
||||
studio/state_held = 停止
|
||||
studio/state_idle = ダイアログなし
|
||||
studio/step_needs_answer = 先にダイアログで回答を選んでください
|
||||
studio/target_end = シナリオの終わり
|
||||
studio/target_labels = ラベル
|
||||
studio/target_scene = → シーン {0}
|
||||
studio/target_scenes = シーン
|
||||
studio/via_layer = レイヤーの新しいシーン
|
||||
studio/via_scenario = {0} から
|
||||
studio/map_here = 現在地
|
||||
studio/map_no_exits = このシーンからどこかへ通じるシナリオはまだありません:「+ リンク」で出口を追加できます。
|
||||
studio/checkpoint = チェックポイント
|
||||
studio/checkpoint_save = 状態を記憶
|
||||
studio/checkpoint_restore = チェックポイントに戻る
|
||||
studio/checkpoint_saved = 状態を記憶した
|
||||
studio/checkpoint_restored = チェックポイントに戻った
|
||||
studio/checkpoint_none = 保存されたチェックポイントはありません
|
||||
studio/log_text_checkpoint_saved = {0} のチェックポイント
|
||||
studio/log_text_checkpoint_restored = {0} のチェックポイントに戻った
|
||||
studio/drag_next_line = 別の行へドラッグすると、次にその行を実行します
|
||||
studio/next_line_failed = この行からは会話を続けられません
|
||||
studio/log_text_next_line = 次の行を {0} に移した
|
||||
studio/reload_assets = リソース
|
||||
studio/reload_assets_tip = ゲーム中に MOD かレイヤーの backgrounds/ に置いた背景を読み直す({0})
|
||||
studio/map_assets_hint = 新しい背景を自分の MOD かレイヤーの backgrounds/({0})に置き、上のバーの「リソース」を押してください。隣に <background>_depth があればライティングに使われます。
|
||||
studio/assets_reloaded = リソースを読み直した:背景 {0} 枚、新しいものなし
|
||||
studio/assets_reloaded_new = リソースを読み直した:背景 {0} 枚、新規:{1}
|
||||
studio/log_text_assets_reloaded = リソースを読み直した:背景 {0} 枚、新規 {1}
|
||||
studio/background_current = 現在のシーンの背景
|
||||
studio/backgrounds = 背景
|
||||
studio/background_item = 背景 {0} · {1}
|
||||
@@ -0,0 +1,167 @@
|
||||
mod_scenario_studio_name = 시나리오 스튜디오
|
||||
mod_scenario_studio_desc = 실행 중인 게임 옆에 열리는 도크. 재생 중인 시나리오를 일시 정지하고 한 단계씩 진행하며 그 자리에서 편집합니다: 중단점, 상태를 되돌리는 다시 시작, 모드나 게임별 레이어에 바로 반영하는 편집.
|
||||
studio/title = 스튜디오
|
||||
studio/mode_author = 작성자
|
||||
studio/mode_novice = 초보자
|
||||
studio/close = 스튜디오 닫기
|
||||
studio/state_running = 실행 중
|
||||
studio/state_paused = 일시 정지됨
|
||||
studio/pause = ‖ 일시 정지
|
||||
studio/step = ▶| 한 단계
|
||||
studio/continue = ▶ 계속
|
||||
studio/restart = ⟲ 다시 시작 ▾
|
||||
studio/restart_scenario = 시나리오 다시 (되돌리기 없음)
|
||||
studio/restart_rollback = 상태를 되돌려 시나리오 다시
|
||||
studio/restart_scene = 장면 다시
|
||||
studio/restart_from_label = 현재 라벨부터 계속
|
||||
studio/crumb_scene = 장면
|
||||
studio/crumb_scenario = 시나리오
|
||||
studio/tab_now = 지금
|
||||
studio/tab_scene = 장면
|
||||
studio/tab_state = 상태
|
||||
studio/tab_log = 로그
|
||||
studio/tab_map = 지도
|
||||
studio/edits_go_to = 편집은 "{0}" 레이어에 기록됩니다
|
||||
studio/after_line = {0}번째 줄 뒤
|
||||
studio/add_line = + 줄
|
||||
studio/add_choice = + 선택지
|
||||
studio/add_jump = + 장면으로 이동
|
||||
studio/new_line_text = 새 줄
|
||||
studio/new_choice_text = 새 선택지
|
||||
studio/affects = 이 변경이 영향을 주는 곳
|
||||
studio/overrides = 덮어씀
|
||||
studio/pending = 대기 중인 변경: {0}
|
||||
studio/no_pending = 변경 없음
|
||||
studio/edit_text = 텍스트 편집
|
||||
studio/apply = 적용 ⟲
|
||||
studio/scope_own = 폴더
|
||||
studio/scope_overlay = zip
|
||||
studio/scope_layer = 레이어
|
||||
studio/scope_readonly = 코드
|
||||
studio/cand_running = 실행 중
|
||||
studio/cand_skipped = 건너뜀
|
||||
studio/cand_completed = 완료됨
|
||||
studio/cand_shadowed = 가려짐
|
||||
studio/cand_hint = 이 장면의 시나리오를 시작 순서대로: 각각이 왜 시작했거나 시작하지 않았는지.
|
||||
studio/run_now = 실행
|
||||
studio/reset_completed = "완료됨" 초기화
|
||||
studio/log_scene = 장면
|
||||
studio/log_skip = 건너뜀
|
||||
studio/log_scenario = 시나리오
|
||||
studio/log_stop = 정지
|
||||
studio/log_edit = 편집
|
||||
studio/state_hint = 값을 바꿔 다른 분기를 시험할 수 있습니다.
|
||||
studio/map_from = 온 곳
|
||||
studio/map_to = 여기서 나가는 곳
|
||||
studio/map_go = 이동
|
||||
studio/map_new_scene = + 새 장면
|
||||
studio/map_link = + 연결
|
||||
studio/node_here = 현재 위치
|
||||
studio/node_visited = 방문함
|
||||
studio/node_next = 출구
|
||||
studio/node_new = 새로 만듦
|
||||
studio/priority = 우선순위 {0}
|
||||
studio/no_condition = 조건 없음
|
||||
studio/one_run = 한 번만
|
||||
studio/error_label_missing = 라벨 {0}을(를) 찾을 수 없음
|
||||
studio/reason_completed = 한 번만, 이미 완료됨
|
||||
studio/group_time = 시간
|
||||
studio/group_quests = 퀘스트
|
||||
studio/group_inventory = 인벤토리
|
||||
studio/group_dialog_vars = 대화 변수
|
||||
studio/group_completed = 완료된 시나리오
|
||||
studio/state_day = 일
|
||||
studio/state_hour = 시
|
||||
studio/value_yes = 예
|
||||
studio/log_text_enter = {0}에 들어감
|
||||
studio/log_text_condition = {0}: 조건이 거짓
|
||||
studio/log_text_completed = {0}: 이미 완료됨
|
||||
studio/log_text_started = {0} 시작됨
|
||||
studio/log_text_breakpoint = 중단점, {0}번째 줄
|
||||
studio/log_text_applied = {0}: +{1} → {2}
|
||||
studio/quote = "{0}"
|
||||
studio/say_question = 질문
|
||||
studio/say_line = 줄
|
||||
studio/say_new = {0} · 새로 만듦
|
||||
studio/moment_now = 지금 화면에
|
||||
studio/moment_answers = 답변
|
||||
studio/moment_next = 장면에서 다음
|
||||
studio/moment_empty = 화면에 아무것도 없음: 실행 중인 시나리오가 없거나 서비스 줄에 멈춰 있습니다.
|
||||
studio/outcome_scene = 장면으로 이동
|
||||
studio/outcome_action = 액션
|
||||
studio/outcome_end = 시나리오 끝
|
||||
studio/outcome_continue = 대화가 이어짐
|
||||
studio/outcome_broken = 아무 데도 가지 않음
|
||||
studio/edit = 편집
|
||||
studio/choose_target = 갈 곳 선택 ▾
|
||||
studio/add_line_before = + 질문 앞에 줄
|
||||
studio/add_line_after = + 뒤에 줄
|
||||
studio/add_option = + 답변
|
||||
studio/new_option_text = 새 답변
|
||||
studio/next_waiting = {0}이(가) 차례를 기다림
|
||||
studio/next_none = 이 장면에 더 대기 중인 것이 없음
|
||||
studio/reason_condition_false = 헤더 조건이 거짓
|
||||
studio/applied_to = "{0}"에 적용, 되돌려서 시나리오를 다시 시작함
|
||||
studio/bad_name = 이름: 소문자 라틴 문자, 숫자, _로, 문자로 시작
|
||||
studio/ok = 확인
|
||||
studio/cancel = 취소
|
||||
studio/cand_failed = 실패
|
||||
studio/cand_none = 스튜디오가 켜져 있는 동안 장면이 구성되지 않았습니다: 다시 들어가세요.
|
||||
studio/cand_queued = 대기 중
|
||||
studio/edit_done = 완료
|
||||
studio/error_no_target = 답변이 아무 데도 가지 않음
|
||||
studio/error_unknown_command = 알 수 없는 명령 {0}
|
||||
studio/exported = 레이어를 모드 "{0}"(으)로 내보냄: 게임 컬렉션에 추가하세요
|
||||
studio/log_end = 끝
|
||||
studio/log_text_ended = {0} 끝남
|
||||
studio/log_text_exported = 레이어를 모드 {0}(으)로 내보냄
|
||||
studio/log_text_failed = {0}: 만들 수 없음
|
||||
studio/log_text_paused = 일시 정지, {0}번째 줄
|
||||
studio/log_text_scenario_created = 장면 {1}의 새 시나리오 {0}
|
||||
studio/log_text_scene_created = 새 장면 {0} (시나리오 {1})
|
||||
studio/log_text_shadowed = {0}: 가려짐 ({1})
|
||||
studio/log_text_state = {0} = {1}
|
||||
studio/map_export = 레이어를 모드로 내보내기
|
||||
studio/new_scenario = + 장면의 새 시나리오
|
||||
studio/no_scenario = 아직 실행된 시나리오가 없습니다. 장면에 들어가거나 장면 탭에서 시작하세요.
|
||||
studio/prompt_edit_title = 새 텍스트
|
||||
studio/prompt_export_title = 새 모드의 id
|
||||
studio/prompt_scene_title = 새 장면의 이름
|
||||
studio/reason_failed = 이벤트를 만들 수 없음, SCENE 로그를 보세요
|
||||
studio/reason_queued = 우선순위 {0}(으)로 대기 중
|
||||
studio/reason_running = 지금 실행 중
|
||||
studio/reason_shadowed = 다른 모드나 레이어의 같은 이름 시나리오에 가려짐
|
||||
studio/run_failed = 시작할 수 없음: 대화 상자가 사용 중입니다
|
||||
studio/scenario_created = 레이어에 시나리오 "{0}"을(를) 만들었습니다: 장면에 다시 들어가거나 시작하세요
|
||||
studio/scene_created = 레이어에 장면 "{0}"을(를) 만들었습니다
|
||||
studio/state_held = 멈춤
|
||||
studio/state_idle = 대화 없음
|
||||
studio/step_needs_answer = 먼저 대화에서 답변을 고르세요
|
||||
studio/target_end = 시나리오 끝
|
||||
studio/target_labels = 라벨
|
||||
studio/target_scene = → 장면 {0}
|
||||
studio/target_scenes = 장면
|
||||
studio/via_layer = 레이어의 새 장면
|
||||
studio/via_scenario = {0}에서
|
||||
studio/map_here = 현재 위치
|
||||
studio/map_no_exits = 아직 이 장면에서 어디로든 이어지는 시나리오가 없습니다: "+ 연결"로 출구를 추가하세요.
|
||||
studio/checkpoint = 체크포인트
|
||||
studio/checkpoint_save = 상태 기억
|
||||
studio/checkpoint_restore = 체크포인트로 돌아가기
|
||||
studio/checkpoint_saved = 상태를 기억했습니다
|
||||
studio/checkpoint_restored = 체크포인트로 돌아왔습니다
|
||||
studio/checkpoint_none = 저장된 체크포인트가 없습니다
|
||||
studio/log_text_checkpoint_saved = {0}의 체크포인트
|
||||
studio/log_text_checkpoint_restored = {0}의 체크포인트로 돌아감
|
||||
studio/drag_next_line = 다른 줄로 끌어다 놓으면 다음에 그 줄을 실행합니다
|
||||
studio/next_line_failed = 이 줄에서는 대화를 이어갈 수 없습니다
|
||||
studio/log_text_next_line = 다음 줄을 {0}(으)로 옮김
|
||||
studio/reload_assets = 리소스
|
||||
studio/reload_assets_tip = 게임 중 모드나 레이어의 backgrounds/에 넣은 배경을 다시 읽습니다 ({0})
|
||||
studio/map_assets_hint = 새 배경을 내 모드나 레이어의 backgrounds/({0})에 넣고 위쪽 막대의 "리소스"를 누르세요. 옆에 있는 <background>_depth는 조명에 쓰입니다.
|
||||
studio/assets_reloaded = 리소스를 다시 읽었습니다: 배경 {0}개, 새것 없음
|
||||
studio/assets_reloaded_new = 리소스를 다시 읽었습니다: 배경 {0}개, 새것: {1}
|
||||
studio/log_text_assets_reloaded = 리소스 다시 읽음: 배경 {0}개, 새것 {1}개
|
||||
studio/background_current = 현재 장면의 배경
|
||||
studio/backgrounds = 배경
|
||||
studio/background_item = 배경 {0} · {1}
|
||||
@@ -1,5 +1,5 @@
|
||||
mod_scenario_studio_name = Студия сценариев
|
||||
mod_scenario_studio_desc = Отладка и правка сценариев прямо во время игры: пауза, шаг, перезапуск, текущая строка, причины запуска сценариев, состояние игры, журнал и карта сцен. Режимы «Автор» и «Новичок».
|
||||
mod_scenario_studio_desc = Панель рядом с запущенной игрой, которая ставит играющий сценарий на паузу, делает шаги и правит его на ходу: точки останова, перезапуск с откатом состояния, правки прямо в мод или в слой конкретной игры.
|
||||
studio/title = Студия
|
||||
studio/mode_author = Автор
|
||||
studio/mode_novice = Новичок
|
||||
|
||||
@@ -0,0 +1,167 @@
|
||||
mod_scenario_studio_name = Xưởng kịch bản
|
||||
mod_scenario_studio_desc = Bảng gắn bên cạnh trò chơi đang chạy, cho tạm dừng, đi từng bước và chỉnh sửa kịch bản đang chơi: điểm ngắt, khởi động lại với hoàn tác trạng thái, chỉnh sửa trực tiếp vào mod hoặc lớp riêng của từng game.
|
||||
studio/title = Xưởng
|
||||
studio/mode_author = Tác giả
|
||||
studio/mode_novice = Người mới
|
||||
studio/close = Đóng xưởng
|
||||
studio/state_running = đang chạy
|
||||
studio/state_paused = đã tạm dừng
|
||||
studio/pause = ‖ Tạm dừng
|
||||
studio/step = ▶| Từng bước
|
||||
studio/continue = ▶ Tiếp tục
|
||||
studio/restart = ⟲ Khởi động lại ▾
|
||||
studio/restart_scenario = Chạy lại kịch bản (không hoàn trạng thái)
|
||||
studio/restart_rollback = Chạy lại kịch bản và hoàn trạng thái
|
||||
studio/restart_scene = Vào lại cảnh
|
||||
studio/restart_from_label = Tiếp tục từ nhãn hiện tại
|
||||
studio/crumb_scene = cảnh
|
||||
studio/crumb_scenario = kịch bản
|
||||
studio/tab_now = Hiện tại
|
||||
studio/tab_scene = Cảnh
|
||||
studio/tab_state = Trạng thái
|
||||
studio/tab_log = Nhật ký
|
||||
studio/tab_map = Bản đồ
|
||||
studio/edits_go_to = chỉnh sửa được ghi vào lớp "{0}"
|
||||
studio/after_line = sau dòng {0}
|
||||
studio/add_line = + Dòng
|
||||
studio/add_choice = + Lựa chọn
|
||||
studio/add_jump = + Đến cảnh
|
||||
studio/new_line_text = Dòng mới
|
||||
studio/new_choice_text = Lựa chọn mới
|
||||
studio/affects = Thay đổi này ảnh hưởng đến
|
||||
studio/overrides = ghi đè
|
||||
studio/pending = Thay đổi đang chờ: {0}
|
||||
studio/no_pending = Không có thay đổi
|
||||
studio/edit_text = Sửa văn bản
|
||||
studio/apply = Áp dụng ⟲
|
||||
studio/scope_own = thư mục
|
||||
studio/scope_overlay = zip
|
||||
studio/scope_layer = lớp
|
||||
studio/scope_readonly = mã
|
||||
studio/cand_running = đang chạy
|
||||
studio/cand_skipped = bỏ qua
|
||||
studio/cand_completed = đã xong
|
||||
studio/cand_shadowed = bị che
|
||||
studio/cand_hint = Các kịch bản của cảnh này theo thứ tự khởi động: vì sao từng cái đã hoặc chưa bắt đầu.
|
||||
studio/run_now = Chạy
|
||||
studio/reset_completed = Đặt lại "đã xong"
|
||||
studio/log_scene = cảnh
|
||||
studio/log_skip = bỏ qua
|
||||
studio/log_scenario = kịch bản
|
||||
studio/log_stop = dừng
|
||||
studio/log_edit = sửa
|
||||
studio/state_hint = Có thể đổi các giá trị để thử nhánh khác.
|
||||
studio/map_from = Đến từ
|
||||
studio/map_to = Lối ra từ đây
|
||||
studio/map_go = Đi
|
||||
studio/map_new_scene = + Cảnh mới
|
||||
studio/map_link = + Liên kết
|
||||
studio/node_here = bạn ở đây
|
||||
studio/node_visited = đã ghé
|
||||
studio/node_next = lối ra
|
||||
studio/node_new = mới
|
||||
studio/priority = ưu tiên {0}
|
||||
studio/no_condition = không điều kiện
|
||||
studio/one_run = chạy một lần
|
||||
studio/error_label_missing = không tìm thấy nhãn {0}
|
||||
studio/reason_completed = chạy một lần, đã xong
|
||||
studio/group_time = Thời gian
|
||||
studio/group_quests = Nhiệm vụ
|
||||
studio/group_inventory = Túi đồ
|
||||
studio/group_dialog_vars = Biến hội thoại
|
||||
studio/group_completed = Kịch bản đã xong
|
||||
studio/state_day = ngày
|
||||
studio/state_hour = giờ
|
||||
studio/value_yes = có
|
||||
studio/log_text_enter = đã vào {0}
|
||||
studio/log_text_condition = {0}: điều kiện sai
|
||||
studio/log_text_completed = {0}: đã xong
|
||||
studio/log_text_started = {0} đã bắt đầu
|
||||
studio/log_text_breakpoint = điểm dừng, dòng {0}
|
||||
studio/log_text_applied = {0}: +{1} → {2}
|
||||
studio/quote = "{0}"
|
||||
studio/say_question = Câu hỏi
|
||||
studio/say_line = Dòng
|
||||
studio/say_new = {0} · mới
|
||||
studio/moment_now = Đang trên màn hình
|
||||
studio/moment_answers = Câu trả lời
|
||||
studio/moment_next = Tiếp theo trong cảnh
|
||||
studio/moment_empty = Không có gì trên màn hình: không kịch bản nào chạy hoặc đang dừng ở một dòng dịch vụ.
|
||||
studio/outcome_scene = đi đến cảnh
|
||||
studio/outcome_action = hành động
|
||||
studio/outcome_end = hết kịch bản
|
||||
studio/outcome_continue = hội thoại tiếp tục
|
||||
studio/outcome_broken = không dẫn đến đâu
|
||||
studio/edit = Sửa
|
||||
studio/choose_target = Chọn nơi đến ▾
|
||||
studio/add_line_before = + Dòng trước câu hỏi
|
||||
studio/add_line_after = + Dòng sau
|
||||
studio/add_option = + Câu trả lời
|
||||
studio/new_option_text = Câu trả lời mới
|
||||
studio/next_waiting = {0} đang chờ đến lượt
|
||||
studio/next_none = Không còn gì xếp hàng trong cảnh này
|
||||
studio/reason_condition_false = điều kiện ở đầu tệp sai
|
||||
studio/applied_to = Đã áp dụng cho "{0}", kịch bản được khởi động lại và hoàn trạng thái
|
||||
studio/bad_name = Tên: chữ Latin thường, chữ số và _, bắt đầu bằng chữ cái
|
||||
studio/ok = OK
|
||||
studio/cancel = Hủy
|
||||
studio/cand_failed = thất bại
|
||||
studio/cand_none = Cảnh chưa được dựng khi xưởng đang bật: hãy vào lại.
|
||||
studio/cand_queued = đang xếp hàng
|
||||
studio/edit_done = Xong
|
||||
studio/error_no_target = câu trả lời không dẫn đến đâu
|
||||
studio/error_unknown_command = lệnh không rõ {0}
|
||||
studio/exported = Đã xuất lớp thành mod "{0}": hãy thêm nó vào bộ sưu tập game
|
||||
studio/log_end = kết thúc
|
||||
studio/log_text_ended = {0} đã kết thúc
|
||||
studio/log_text_exported = đã xuất lớp thành mod {0}
|
||||
studio/log_text_failed = {0}: không tạo được
|
||||
studio/log_text_paused = đã tạm dừng, dòng {0}
|
||||
studio/log_text_scenario_created = kịch bản mới {0} cho cảnh {1}
|
||||
studio/log_text_scene_created = cảnh mới {0} (kịch bản {1})
|
||||
studio/log_text_shadowed = {0}: bị che ({1})
|
||||
studio/log_text_state = {0} = {1}
|
||||
studio/map_export = Xuất lớp thành mod
|
||||
studio/new_scenario = + Kịch bản mới cho cảnh
|
||||
studio/no_scenario = Chưa có kịch bản nào chạy. Hãy vào một cảnh hoặc khởi động một kịch bản ở thẻ Cảnh.
|
||||
studio/prompt_edit_title = Văn bản mới
|
||||
studio/prompt_export_title = Id của mod mới
|
||||
studio/prompt_scene_title = Tên cảnh mới
|
||||
studio/reason_failed = không tạo được sự kiện, xem nhật ký SCENE
|
||||
studio/reason_queued = xếp hàng với ưu tiên {0}
|
||||
studio/reason_running = đang chạy
|
||||
studio/reason_shadowed = bị che bởi kịch bản cùng tên của mod khác hoặc của lớp
|
||||
studio/run_failed = Không thể bắt đầu: hộp thoại đang bận
|
||||
studio/scenario_created = Đã tạo kịch bản "{0}" trong lớp: vào lại cảnh hoặc khởi động nó
|
||||
studio/scene_created = Đã tạo cảnh "{0}" trong lớp
|
||||
studio/state_held = dừng
|
||||
studio/state_idle = không có hội thoại
|
||||
studio/step_needs_answer = Hãy chọn một câu trả lời trong hội thoại trước
|
||||
studio/target_end = Hết kịch bản
|
||||
studio/target_labels = Nhãn
|
||||
studio/target_scene = → cảnh {0}
|
||||
studio/target_scenes = Cảnh
|
||||
studio/via_layer = cảnh mới của lớp
|
||||
studio/via_scenario = từ {0}
|
||||
studio/map_here = Bạn ở đây
|
||||
studio/map_no_exits = Chưa có kịch bản nào dẫn từ cảnh này đi đâu cả: "+ Liên kết" thêm một lối ra.
|
||||
studio/checkpoint = Điểm kiểm tra
|
||||
studio/checkpoint_save = Ghi nhớ trạng thái
|
||||
studio/checkpoint_restore = Quay về điểm kiểm tra
|
||||
studio/checkpoint_saved = Đã ghi nhớ trạng thái
|
||||
studio/checkpoint_restored = Đã quay về điểm kiểm tra
|
||||
studio/checkpoint_none = Chưa lưu điểm kiểm tra nào
|
||||
studio/log_text_checkpoint_saved = điểm kiểm tra trong {0}
|
||||
studio/log_text_checkpoint_restored = quay về điểm kiểm tra trong {0}
|
||||
studio/drag_next_line = Kéo sang dòng khác để chạy dòng đó tiếp theo
|
||||
studio/next_line_failed = Hội thoại không thể tiếp tục từ dòng này
|
||||
studio/log_text_next_line = dòng tiếp theo chuyển sang {0}
|
||||
studio/reload_assets = Tài nguyên
|
||||
studio/reload_assets_tip = Đọc lại các phông nền được thả vào backgrounds/ của một mod hoặc của lớp trong lúc chơi ({0})
|
||||
studio/map_assets_hint = Đặt phông nền mới vào backgrounds/ của mod bạn hoặc của lớp ({0}), rồi nhấn "Tài nguyên" trên thanh phía trên. Tệp <background>_depth bên cạnh dùng cho chiếu sáng.
|
||||
studio/assets_reloaded = Đã đọc lại tài nguyên: {0} phông nền, không có gì mới
|
||||
studio/assets_reloaded_new = Đã đọc lại tài nguyên: {0} phông nền, mới: {1}
|
||||
studio/log_text_assets_reloaded = đã đọc lại tài nguyên: {0} phông nền, {1} mới
|
||||
studio/background_current = Phông nền của cảnh hiện tại
|
||||
studio/backgrounds = Phông nền
|
||||
studio/background_item = phông nền {0} · {1}
|
||||
@@ -0,0 +1,167 @@
|
||||
mod_scenario_studio_name = 剧本工作室
|
||||
mod_scenario_studio_desc = 停靠在运行中游戏旁边的面板:暂停、单步并编辑正在播放的剧本,支持断点、带状态回滚的重启,以及写入模组或游戏专属层的实时修改。
|
||||
studio/title = 工作室
|
||||
studio/mode_author = 作者
|
||||
studio/mode_novice = 新手
|
||||
studio/close = 关闭工作室
|
||||
studio/state_running = 运行中
|
||||
studio/state_paused = 已暂停
|
||||
studio/pause = ‖ 暂停
|
||||
studio/step = ▶| 单步
|
||||
studio/continue = ▶ 继续
|
||||
studio/restart = ⟲ 重启 ▾
|
||||
studio/restart_scenario = 重新运行剧本(不回滚)
|
||||
studio/restart_rollback = 回滚状态后重新运行剧本
|
||||
studio/restart_scene = 重新进入场景
|
||||
studio/restart_from_label = 从当前标签继续
|
||||
studio/crumb_scene = 场景
|
||||
studio/crumb_scenario = 剧本
|
||||
studio/tab_now = 现在
|
||||
studio/tab_scene = 场景
|
||||
studio/tab_state = 状态
|
||||
studio/tab_log = 日志
|
||||
studio/tab_map = 地图
|
||||
studio/edits_go_to = 修改写入"{0}"层
|
||||
studio/after_line = 第 {0} 行之后
|
||||
studio/add_line = + 台词
|
||||
studio/add_choice = + 选项
|
||||
studio/add_jump = + 前往场景
|
||||
studio/new_line_text = 新台词
|
||||
studio/new_choice_text = 新选项
|
||||
studio/affects = 此修改影响
|
||||
studio/overrides = 覆盖
|
||||
studio/pending = 待应用的修改:{0}
|
||||
studio/no_pending = 没有修改
|
||||
studio/edit_text = 编辑文本
|
||||
studio/apply = 应用 ⟲
|
||||
studio/scope_own = 文件夹
|
||||
studio/scope_overlay = zip
|
||||
studio/scope_layer = 层
|
||||
studio/scope_readonly = 代码
|
||||
studio/cand_running = 运行中
|
||||
studio/cand_skipped = 已跳过
|
||||
studio/cand_completed = 已完成
|
||||
studio/cand_shadowed = 被遮蔽
|
||||
studio/cand_hint = 本场景的剧本按启动顺序排列:每个为何启动或没有启动。
|
||||
studio/run_now = 运行
|
||||
studio/reset_completed = 重置"已完成"
|
||||
studio/log_scene = 场景
|
||||
studio/log_skip = 跳过
|
||||
studio/log_scenario = 剧本
|
||||
studio/log_stop = 停止
|
||||
studio/log_edit = 编辑
|
||||
studio/state_hint = 可以修改这些值来测试另一个分支。
|
||||
studio/map_from = 来自
|
||||
studio/map_to = 从这里出发
|
||||
studio/map_go = 前往
|
||||
studio/map_new_scene = + 新场景
|
||||
studio/map_link = + 连接
|
||||
studio/node_here = 你在这里
|
||||
studio/node_visited = 已访问
|
||||
studio/node_next = 出口
|
||||
studio/node_new = 新
|
||||
studio/priority = 优先级 {0}
|
||||
studio/no_condition = 无条件
|
||||
studio/one_run = 仅一次
|
||||
studio/error_label_missing = 找不到标签 {0}
|
||||
studio/reason_completed = 仅一次,已完成
|
||||
studio/group_time = 时间
|
||||
studio/group_quests = 任务
|
||||
studio/group_inventory = 背包
|
||||
studio/group_dialog_vars = 对话变量
|
||||
studio/group_completed = 已完成的剧本
|
||||
studio/state_day = 日
|
||||
studio/state_hour = 时
|
||||
studio/value_yes = 是
|
||||
studio/log_text_enter = 进入了 {0}
|
||||
studio/log_text_condition = {0}:条件不成立
|
||||
studio/log_text_completed = {0}:已完成
|
||||
studio/log_text_started = {0} 已启动
|
||||
studio/log_text_breakpoint = 断点,第 {0} 行
|
||||
studio/log_text_applied = {0}:+{1} → {2}
|
||||
studio/quote = "{0}"
|
||||
studio/say_question = 问题
|
||||
studio/say_line = 台词
|
||||
studio/say_new = {0} · 新
|
||||
studio/moment_now = 当前画面
|
||||
studio/moment_answers = 回答
|
||||
studio/moment_next = 场景中的下一项
|
||||
studio/moment_empty = 画面上什么都没有:没有剧本在运行,或者停在一条服务行上。
|
||||
studio/outcome_scene = 前往场景
|
||||
studio/outcome_action = 动作
|
||||
studio/outcome_end = 剧本结束
|
||||
studio/outcome_continue = 对话继续
|
||||
studio/outcome_broken = 无去向
|
||||
studio/edit = 编辑
|
||||
studio/choose_target = 选择去向 ▾
|
||||
studio/add_line_before = + 在问题前加台词
|
||||
studio/add_line_after = + 在后面加台词
|
||||
studio/add_option = + 回答
|
||||
studio/new_option_text = 新回答
|
||||
studio/next_waiting = {0} 正在排队等候
|
||||
studio/next_none = 本场景没有其他排队项
|
||||
studio/reason_condition_false = 头部条件不成立
|
||||
studio/applied_to = 已应用到"{0}",剧本已回滚并重启
|
||||
studio/bad_name = 名称:小写拉丁字母、数字和 _,以字母开头
|
||||
studio/ok = 确定
|
||||
studio/cancel = 取消
|
||||
studio/cand_failed = 失败
|
||||
studio/cand_none = 工作室开启期间该场景没有组装:请重新进入。
|
||||
studio/cand_queued = 排队中
|
||||
studio/edit_done = 完成
|
||||
studio/error_no_target = 回答无去向
|
||||
studio/error_unknown_command = 未知命令 {0}
|
||||
studio/exported = 层已导出为模组"{0}":把它加入游戏合集
|
||||
studio/log_end = 结束
|
||||
studio/log_text_ended = {0} 已结束
|
||||
studio/log_text_exported = 层已导出为模组 {0}
|
||||
studio/log_text_failed = {0}:无法创建
|
||||
studio/log_text_paused = 已暂停,第 {0} 行
|
||||
studio/log_text_scenario_created = 场景 {1} 的新剧本 {0}
|
||||
studio/log_text_scene_created = 新场景 {0}(剧本 {1})
|
||||
studio/log_text_shadowed = {0}:被遮蔽({1})
|
||||
studio/log_text_state = {0} = {1}
|
||||
studio/map_export = 把层导出为模组
|
||||
studio/new_scenario = + 为场景新建剧本
|
||||
studio/no_scenario = 还没有运行过剧本。进入一个场景,或在"场景"标签页启动一个。
|
||||
studio/prompt_edit_title = 新文本
|
||||
studio/prompt_export_title = 新模组的 id
|
||||
studio/prompt_scene_title = 新场景的名称
|
||||
studio/reason_failed = 无法创建事件,请查看 SCENE 日志
|
||||
studio/reason_queued = 以优先级 {0} 排队
|
||||
studio/reason_running = 正在运行
|
||||
studio/reason_shadowed = 被其他模组或层中同名的剧本遮蔽
|
||||
studio/run_failed = 无法启动:对话框正忙
|
||||
studio/scenario_created = 已在层中创建剧本"{0}":重新进入场景或启动它
|
||||
studio/scene_created = 已在层中创建场景"{0}"
|
||||
studio/state_held = 停住
|
||||
studio/state_idle = 无对话
|
||||
studio/step_needs_answer = 请先在对话中选择一个回答
|
||||
studio/target_end = 剧本结束
|
||||
studio/target_labels = 标签
|
||||
studio/target_scene = → 场景 {0}
|
||||
studio/target_scenes = 场景
|
||||
studio/via_layer = 层中的新场景
|
||||
studio/via_scenario = 来自 {0}
|
||||
studio/map_here = 你在这里
|
||||
studio/map_no_exits = 还没有剧本从这个场景通往别处:"+ 连接"可添加出口。
|
||||
studio/checkpoint = 检查点
|
||||
studio/checkpoint_save = 记住状态
|
||||
studio/checkpoint_restore = 回到检查点
|
||||
studio/checkpoint_saved = 已记住状态
|
||||
studio/checkpoint_restored = 已回到检查点
|
||||
studio/checkpoint_none = 没有保存的检查点
|
||||
studio/log_text_checkpoint_saved = {0} 中的检查点
|
||||
studio/log_text_checkpoint_restored = 回到 {0} 中的检查点
|
||||
studio/drag_next_line = 拖到另一行,让它下一个执行
|
||||
studio/next_line_failed = 对话无法从这一行继续
|
||||
studio/log_text_next_line = 下一行已移到 {0}
|
||||
studio/reload_assets = 资源
|
||||
studio/reload_assets_tip = 重新读取游戏期间放入模组或层 backgrounds/ 中的背景({0})
|
||||
studio/map_assets_hint = 把新背景放进你的模组或层的 backgrounds/({0}),然后按上方栏中的"资源"。旁边的 <background>_depth 用于光照。
|
||||
studio/assets_reloaded = 已重新读取资源:{0} 个背景,没有新的
|
||||
studio/assets_reloaded_new = 已重新读取资源:{0} 个背景,新增:{1}
|
||||
studio/log_text_assets_reloaded = 已重新读取资源:{0} 个背景,{1} 个新的
|
||||
studio/background_current = 当前场景的背景
|
||||
studio/backgrounds = 背景
|
||||
studio/background_item = 背景 {0} · {1}
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
"name": "Scenario Studio",
|
||||
"version": "0.1.0",
|
||||
"author": "ct",
|
||||
"description": "In-game scenario debugger and live editor: a non-modal dock over the running game with pause, step, breakpoints and restarts (with state rollback), the current scenario line, scene candidates with the reason they did or did not start, editable game state, an event log and the scene map. Edits go into folder mods or into a per-game studio layer over read-only mods, which can be exported as a mod; backgrounds dropped into a mod or the layer during the game are picked up with the \"Resources\" button of the transport bar. Author mode shows the script, novice mode the story moment.",
|
||||
"description": "A dock beside the running game that pauses, steps and edits the playing scenario: breakpoints, restarts with state rollback, live edits into a mod or a per-game layer.",
|
||||
"category": "tools, editor",
|
||||
"sources": [
|
||||
"src/**/*.cs"
|
||||
|
||||
@@ -29,13 +29,12 @@ namespace Cthangover.Mods.ScenarioStudio
|
||||
var layer = new StudioLayer(args);
|
||||
layer.Mount();
|
||||
|
||||
var root = (Godot.Engine.GetMainLoop() as SceneTree)?.Root;
|
||||
root?.CallDeferred("add_child", new StudioLive(layer));
|
||||
ModRoot.AddDeferred(new StudioLive(layer));
|
||||
|
||||
if (!args.Contains(Flag))
|
||||
return;
|
||||
GameLogger.Log("UI", "Scenario studio: --studio given, the dock opens with the first scene");
|
||||
root?.CallDeferred("add_child", new StudioAutoOpenNode());
|
||||
ModRoot.AddDeferred(new StudioAutoOpenNode());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2,6 +2,7 @@ namespace Cthangover.Mods.ScenarioStudio
|
||||
{
|
||||
using System.Text;
|
||||
using Cthangover.Core.UI.Theming;
|
||||
using Cthangover.Mods.Interface.Theming;
|
||||
using Cthangover.Mods.Dialog.Scenarios;
|
||||
using Godot;
|
||||
|
||||
@@ -15,29 +16,9 @@ namespace Cthangover.Mods.ScenarioStudio
|
||||
/// </summary>
|
||||
public static class StudioSyntax
|
||||
{
|
||||
/// <summary>
|
||||
/// Highlighter for the inline text editor with the same palette: every
|
||||
/// registered command word (plus <c>select</c>/<c>option</c>) gold, quoted
|
||||
/// text ink, comments faint, <c>:labels</c> teal.
|
||||
/// </summary>
|
||||
/// <summary>Uses the same scenario syntax as the full editor and embedded command fields.</summary>
|
||||
public static CodeHighlighter CreateHighlighter()
|
||||
{
|
||||
var highlighter = new CodeHighlighter
|
||||
{
|
||||
NumberColor = UiTokens.Body,
|
||||
SymbolColor = UiTokens.Muted,
|
||||
FunctionColor = UiTokens.Body,
|
||||
MemberVariableColor = UiTokens.Body,
|
||||
};
|
||||
foreach (var command in ScenarioCommandStrategyFactory.GetAllCommandNames())
|
||||
highlighter.AddKeywordColor(command, UiTokens.AccentBright);
|
||||
highlighter.AddKeywordColor("select", UiTokens.AccentBright);
|
||||
highlighter.AddKeywordColor("option", UiTokens.AccentBright);
|
||||
highlighter.AddColorRegion("\"", "\"", UiTokens.Ink);
|
||||
highlighter.AddColorRegion("#", "", UiTokens.Faint, true);
|
||||
highlighter.AddColorRegion(":", " ", UiTokens.TypeTarget, true);
|
||||
return highlighter;
|
||||
}
|
||||
=> SourceSyntax.CreateScenarioHighlighter(ScenarioCommandStrategyFactory.GetAllCommandNames());
|
||||
|
||||
public static string ToBbCode(string line)
|
||||
{
|
||||
|
||||
@@ -35,7 +35,7 @@ namespace Cthangover.Mods.ScenarioStudio.Tests.Live
|
||||
|
||||
driverQueued = true;
|
||||
GameLogger.Log("TEST", $"StudioLiveTestInitializer: activating studio live test, shots='{shots ?? ""}'");
|
||||
(Godot.Engine.GetMainLoop() as SceneTree)?.Root?.CallDeferred("add_child", new StudioLiveDriverNode(shots));
|
||||
ModRoot.AddDeferred(new StudioLiveDriverNode(shots));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user