Settings File
Overview
A settings file passed to Wiener Standalone.
How to Specify
Specify the settings YAML when running Wiener Standalone.
Wiener.exe -settings settings\develop_settings.yaml
Example
# Path to Wiener's message file (from the current directory)
wiener_text_path: "../tools/wiener/WienerText.csv"
# Language of Wiener's message file
wiener_text_language: "ja"
output_format:
# C# output
- format: CSharp
bom: false
newline_lf: true
# UE5 output
- format: UE5
bom: false
newline_lf: true
# JSON output
- format: Json
bom: false
newline_lf: true
# SQL output
- format: SQL
bom: false
newline_lf: true
# CSV output
- format: CSV
bom: true
newline_lf: true
# PHP output
- format: PHP
bom: false
newline_lf: true
# Manual output
- format: Manual
bom: false
newline_lf: true
# UE5
ue5:
# Disable UTC time
is_utc: false
# PHP
php:
# Input template path for table hash output
input_hash_list_template: "HashListPhp.php"
# Table hash output path
output_hash_list: "HashList.php"
# Manual
manual:
# HTML title
title: "Static Game Data Manual"
# Path to YAML directory (from the current directory)
yaml_search_path: "yaml"
# Path to local table input directory (from the current directory; optional when using only Google Sheets)
input_search_path: "../excel"
# Output path (from the current directory)
output_path: "makes"
# Template path (from the current directory; required for PHP output)
template_path: "../template"
# Windows time zone
windows_timezone: "Tokyo Standard Time"
# Time zone for Mac / Linux
unix_timezone: "Asia/Tokyo"
# Enable development mode
development: true
# Namespace for generated code (empty defaults to Wiener)
namespace: ""
# Google Sheets input settings
google_sheets:
credential_path: "../secrets/wiener-service-account.json"
# Localization settings
localization:
enable: true
input:
path: "localize/translations.csv"
target_languages:
- value: "ja"
- value: "en"
# Number of parallel processes
processor_count: 1
# Master version field name in Excel
version_excel_name: "master_version"
Details
wiener_text_path
wiener_text_path: "../tools/wiener/WienerText.csv"
- Definition: Required
Specify (from the current directory) the path to the message file used internally by Wiener.
wiener_text_language
wiener_text_language: "ja"
- Definition: Required
Specify the language of the message file used internally by Wiener.
Specify the string in the first row of WienerText.csv.
output_format
output_format:
- format: CSharp
bom: false
newline_lf: true
- Definition: Required
Define one or more output formats.
format
- Definition: Required
Specify one of the following items.
| Value | Description |
|---|---|
| CSharp | Output C# code |
| UE5 | Output Unreal Engine 5 code |
| Json | Output JSON files |
| SQL | Output SQL files |
| CSV | Output CSV files |
| PHP | Output PHP files |
| Manual | Output manual HTML |
| Binary | Output binary (for Unity Asset version use; not typically used directly from the Standalone version) |
bom
- Definition: Optional
- Default: true
Output is UTF-8; specify whether to include a BOM.
newline_lf
- Definition: Optional
- Default: true
Specify the line ending.
| Value | Line ending |
|---|---|
| true | LF |
| false | CRLF |
ue5
ue5:
is_utc: false
- Definition: Optional
is_utc
- Definition: Optional
- Default: false
Align DateTime output to UTC.
php
php:
input_hash_list_template: "HashListPhp.php"
output_hash_list: "HashList.php"
- Definition: Optional
input_hash_list_template
- Definition: Optional
Specify the template file name for PHP hash tables.
Specify a relative path from template_path in settings.
output_hash_list
- Definition: Optional
Specify the output path for the PHP data hash list file.
Specify a relative path from output_path.
Intended to record hash values for each dataset and reload only data that has changed since the last output.
manual
manual:
title: "Static Game Data Manual"
- Definition: Optional
title
- Definition: Optional
Title of the manual HTML.
yaml_search_path
yaml_search_path: "yaml"
- Definition: Required
Specify the path (from the current directory) to the YAML directory.
input_search_path
input_search_path: "../excel"
- Definition: Conditional (required when
google_sheets.credential_pathis not set)
Specify the path (from the current directory) to the local table input directory.
Local Excel paths in header.input_path are resolved from this directory. Google Sheets URLs are not resolved from this directory.
You can omit this when all table inputs are Google Sheets URLs and google_sheets.credential_path is set.
output_path
output_path: "makes"
- Definition: Required
Specify the path (from the current directory) to the output directory.
template_path
template_path: "../template"
- Definition: Conditional (required when
output_formatincludesPHP)
Specify the path (from the current directory) to the template directory.
You can omit this when PHP output is not used.
windows_timezone
windows_timezone: "Tokyo Standard Time"
- Definition: Required
Specify the Windows time zone.
unix_timezone
unix_timezone: "Asia/Tokyo"
- Definition: Required
Specify the time zone for Mac/Linux.
development
development: true
- Definition: Optional
- Default: false
Enables development mode. Setting this to true changes the following behavior:
- Rows marked with "@" in column A of table input are included in output
- YAML
header.development_input_pathentries are loaded as additional input - Convert errors for untranslated localization entries (
----) are suppressed
Enabling "@" rows in column A {#development-excel-at}
| Value | Behavior |
|---|---|
| true | Include rows marked with "@" in column A |
| false | Skip rows marked with "@" in column A |
In development data, put "@" in column A and operate with true in development and false in production.
Enabling development_input_path {#development-input-path}
Paths listed in header.development_input_path are loaded only when development: true. When development: false, those entries are ignored.
Use this to keep development-only input (e.g. test data) separate from production input.
Suppressing untranslated localization errors
When using the localization feature, any untranslated (----) entries cause a convert error in production mode (development: false). This check is suppressed when development: true.
google_sheets
google_sheets:
credential_path: "../secrets/wiener-service-account.json"
- Definition: Optional
Configure this when using Google Sheets URLs in header.input_path, or when specifying a spreadsheet URL in the localization input or output path.
See Google Sheets Input for detailed setup instructions.
credential_path
- Definition: Conditional (required when using Google Sheets)
Specify the path to a Google service account credential JSON file. The service account must have read and write permission for the target spreadsheet.
namespace
namespace: "Wiener"
- Definition: Optional
- Default: "Wiener"
Specifies the namespace for generated C# / UE5 code.
When omitted, code is generated under the existing Wiener namespace. The manager class name is always WienerManager.
localization
- Definition: Optional
Configure this to use the localization feature.
Read from CSV, write to CSV (simplest configuration)
localization:
enable: true
input:
path: "localize/translations.csv"
Read from spreadsheet, write to spreadsheet
localization:
enable: true
input:
path: "https://docs.google.com/spreadsheets/d/xxxxxxxx/edit#gid=0"
sheet: "translations"
Read from spreadsheet, write to CSV
localization:
enable: true
input:
path: "https://docs.google.com/spreadsheets/d/xxxxxxxx/edit#gid=0"
sheet: "translations"
output:
path: "localize/translations.csv"
enable
- Definition: Optional
- Default: false
Set to true to enable the localization feature.
Recommended workflow during development
When enable: true, the translation CSV is updated every time a convert runs, causing CSV commits on every Static Game Data change.
During development, keep enable: false (or omit the setting), and only set enable: true at the following times. Note that untranslated ---- entries cause a convert error when running in production mode (development: false).
- Before starting translation work (update the CSV to its latest state and hand it to translators)
- When actually testing or verifying a localized binary
- During production converts
input
- Definition: Conditional (required when enable is true)
Specifies where translation data is read from.
input.path
- Definition: Required
Specify the path to the translation file.
Specify a path relative to the current directory, or a Google Sheets URL.
If the value starts with http:// or https://, it is treated as a spreadsheet.
The file is automatically created and updated at convert time (when no separate output is specified).
input.sheet
- Definition: Required for spreadsheet URLs
Specify the sheet name to read from when the input path is a spreadsheet URL.
output
- Definition: Optional
Specifies where translated data is written. If omitted, data is written to the same location as input (writes are skipped if the content is unchanged when input and output are the same).
output.path
- Definition: Optional
Specify the write destination path for the translation file.
Specify a path relative to the current directory, or a Google Sheets URL.
output.sheet
- Definition: Required for spreadsheet URLs
Specify the sheet name to write to when the output path is a spreadsheet URL.
Diff output
When source text changes or keys are deleted, diff data is output.
| Output destination | Diff write location |
|---|---|
| CSV file | {csv-name}_diff_{timestamp}.csv (same directory) |
| Spreadsheet | New sheet named diff_{timestamp} in the same spreadsheet |
target_languages
- Definition: Optional
Narrows down which languages are checked for untranslated entries in production mode (development: false).
When not defined (or empty), all language columns in the CSV are subject to the error check. When defined, only languages in the list are checked; languages not in the list are allowed to have untranslated (----) entries and fall back to the source text.
This is useful when adding a new language to an existing production project: by keeping the new language out of target_languages until its translations are complete, production converts can continue without errors during the translation period.
output_info_path
output_info_path: "output_info.json"
- Definition: Optional
- Default: ""
Specify the path to output a JSON file containing convert result information.
Specify a relative path from output_path.
The output includes YamlHash and DataHash in JSON format.
If not specified, no file is output.
processor_count
processor_count: 1
- Definition: Optional
- Default: number of threads on the machine
Specify the level of parallelism.
If not set, it runs with an optimal number of threads.
version_excel_name
version_excel_name: "master_version"
- Definition: Optional
- Default: ""
Specify the field name in table inputs used for versioned output.