summaryrefslogtreecommitdiff
path: root/docs/src/admin-guide/configuration.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/src/admin-guide/configuration.md')
-rw-r--r--docs/src/admin-guide/configuration.md318
1 files changed, 318 insertions, 0 deletions
diff --git a/docs/src/admin-guide/configuration.md b/docs/src/admin-guide/configuration.md
new file mode 100644
index 0000000..dfe8094
--- /dev/null
+++ b/docs/src/admin-guide/configuration.md
@@ -0,0 +1,318 @@
+# 設定
+
+```yaml
+# ----------------------------------------------
+# -------------- LunaticChat ---------------
+# ----------------------------------------------
+#
+# Docs: https://lc.m1sk9.dev
+# GitHub: https://github.com/m1sk9/LunaticChat
+#
+# This configuration file is for customizing LunaticChat's behavior.
+# Please specify appropriate values to ensure LunaticChat functions correctly.
+#
+# For detailed configuration options, please refer to the documentation:
+# Japanese: https://lc.m1sk9.dev/guide/admin/configuration
+# English: https://lc.m1sk9.dev/en/guide/admin/configuration
+# ----------------------------------------------
+
+# If enabled, Activate LunaticChat's debug mode, which provides detailed logging for troubleshooting.
+debug: false
+
+# Path to the YAML file storing player settings
+userSettingsFilePath: 'player-settings.yaml'
+
+# If enabled, LunaticChat will check for updates on startup.
+checkForUpdates: true
+
+# Plugin Configuration Language. This setting applies only to player feedback and does not affect plugin logs or similar outputs.
+language: 'en'
+
+# ----------------------------------------------
+# ----------- Features Settings ------------
+# ----------------------------------------------
+
+features:
+ quickReplies:
+ # If enabled, the quick reply feature via the /reply command will be activated.
+ enabled: true
+ japaneseConversion:
+ # If enabled, enables the conversion function from Roman letters to hiragana.
+ enabled: false
+ cache:
+ # Specifies the maximum number of entries to store in the Romanization conversion cache.
+ maxEntries: 500
+ # Specify the interval (in seconds) for saving the Romanization conversion cache to disk.
+ saveIntervalSeconds: 300
+ # Specify the file path where the cache for Romanization conversion is saved.
+ filePath: 'conversion_cache.json'
+ api:
+ # Specify the timeout duration (in milliseconds) for API requests to the Romanization conversion service.
+ timeout: 3000
+ # Specify the number of retry attempts for failed API requests to the Romanization conversion service.
+ retryAttempts: 2
+ channelChat:
+ # If enabled, channel-based chat functionality will be activated.
+ enabled: false
+ # Maximum number of channels that can be created per server. Set to 0 for unlimited.
+ maxChannelsPerServer: 0
+ # Maximum number of members allowed in a single channel. Set to 0 for unlimited.
+ maxMembersPerChannel: 0
+ # Maximum number of channels a single player can join. Set to 0 for unlimited.
+ maxMembershipPerPlayer: 0
+ # Channel message logging configuration
+ messageLogging:
+ # If enabled, all channel messages will be logged to NDJSON files for analysis and archival.
+ enabled: true
+ # Number of days to retain log files. Set to 0 to keep logs indefinitely.
+ retentionDays: 30
+ # Maximum size of a single log file in megabytes. Files exceeding this size will stop accepting new entries.
+ maxFileSizeMB: 100
+ velocityIntegration:
+ # If enabled, enables integration with Velocity proxy plugin.
+ # This allows Paper and Velocity instances to communicate and verify compatibility.
+ enabled: false
+ # If enabled, global chat messages will be shared across all Paper servers connected to the Velocity proxy.
+ # Players on different servers can communicate through the GLOBAL chat mode.
+ crossServerGlobalChat: false
+ # Server name to display in cross-server chat (e.g., "survival", "creative", "lobby").
+ # This should match the server name defined in your Velocity configuration.
+ serverName: 'Unknown'
+ # Size of the message deduplication cache to prevent duplicate messages from appearing.
+ # Keeps track of the most recent N message IDs to filter out duplicates.
+ messageDeduplicationCacheSize: 100
+
+# ----------------------------------------------
+# --------- Message Format Settings --------
+# ----------------------------------------------
+#
+# Customize the format of various chat messages here.
+# You can use placeholders such as {sender}, {message}, etc.
+#
+# {sender} - The name of the message sender
+# {recipient} - The name of the message recipient
+# {message} - The content of the message
+# {channel} - The name of the chat channel (only for channel chat)
+# {server} - The name of the server (only for Velocity cross-server chat)
+# ----------------------------------------------
+
+messageFormat:
+ # Configure the format for direct messages sent via /tell or /msg
+ directMessageFormat: '§7[§e{sender} §7>> §e{recipient}§7] §f{message}'
+ # Configure the format for messages sent in channel chat
+ channelMessageFormat: '§7[§b#{channel}§7] §e{sender}: §f{message}'
+ # Configure the format for global chat messages in Velocity integration
+ crossServerGlobalChatFormat: '§7[§6{server}§7] §e{sender}: §f{message}'
+```
+
+## General Settings
+
+### `debug`
+
+- Type: `boolean`
+- Default: `false`
+
+LunaticChat をデバッグモードで起動します.
+
+### `userSettingsFilePath`
+
+- Type: `string`
+- Default: `player-settings.yaml`
+
+LunaticChat がプレイヤーの設定を保存する YAML ファイルのパスを指定します.
+
+### `checkForUpdates`
+
+- Type: `boolean`
+- Default: `true`
+
+LunaticChat の起動時・権限を持ったプレイヤーがサーバに参加した際に,LunaticChat のアップデートを促すかどうか設定します.
+
+### `language`
+
+- Type: `string`
+- Default: `en`
+
+LunaticChat のプレイヤー向けメッセージの言語を指定します.
+
+### Supported languages:
+
+- `en`: English
+- `ja`: 日本語
+
+## Features Settings
+
+### `features.quickReplies.enabled`
+
+- Type: `boolean`
+- Default: `true`
+
+LunaticChat の [`/reply`](../player-guide/commands/reply.md) コマンドによるクイックリプライ機能を有効にします.
+
+無効にすると [`/reply`](../player-guide/commands/reply.md) コマンドは Paper に登録されず,使用できなくなります.
+
+### `features.japaneseConversion.enabled`
+
+- Type: `boolean`
+- Default: `false`
+
+ローマ字からひらがなへの変換機能を有効にします.
+
+### `features.japaneseConversion`
+
+#### `cache.maxEntries`
+
+- Type: `integer`
+- Default: `500`
+
+ローマ字変換のキャッシュに保存する最大エントリ数を指定します.
+
+この値を超えると,最も古いエントリから順に削除されます.
+
+値を高く設定すれば,変換のパフォーマンスが向上しますが,メモリ使用量・キャッシュファイルサイズも増加します.
+
+#### `cache.saveIntervalSeconds`
+
+- Type: `integer`
+- Default: `300`
+
+ローマ字変換のキャッシュをディスクに保存する間隔(秒)を指定します.
+
+#### `cache.filePath`
+
+- Type: `string`
+- Default: `conversion_cache.json`
+
+ローマ字変換のキャッシュを保存するファイルパスを指定します.
+
+ここで設定したパスは `plugins/LunaticChat/` ディレクトリを基準とした相対パスとして解釈されます.
+
+#### `api.timeout`
+
+- Type: `integer`
+- Default: `3000`
+
+ローマ字変換 API へのリクエストのタイムアウト時間(ミリ秒)を指定します.
+
+#### `api.retryAttempts`
+
+- Type: `integer`
+- Default: `2`
+
+ローマ字変換 API へのリクエストが失敗した場合の再試行回数を指定します.
+
+### `features.channelChat`
+
+#### `enabled`
+
+- Type: `boolean`
+- Default: `false`
+
+チャンネルチャット機能を有効にします.
+
+#### `maxChannelsPerServer`
+
+- Type: `integer`
+- Default: `0`
+
+サーバーあたりで作成可能なチャンネルの最大数を指定します.
+
+`0` に設定すると無制限になります.
+
+#### `maxMembersPerChannel`
+
+- Type: `integer`
+- Default: `0`
+
+1 つのチャンネルに参加可能なメンバーの最大数を指定します.
+
+`0` に設定すると無制限になります.
+
+#### `maxMembershipPerPlayer`
+
+- Type: `integer`
+- Default: `0`
+
+1 人のプレイヤーが参加可能なチャンネルの最大数を指定します.
+
+`0` に設定すると無制限になります.
+
+#### `messageLogging.enabled`
+
+- Type: `boolean`
+- Default: `true`
+
+チャンネルチャットのメッセージを NDJSON 形式でログに記録するかどうかを指定します.
+
+#### `messageLogging.retentionDays`
+
+- Type: `integer`
+- Default: `30`
+
+チャンネルチャットのログファイルを保存する日数を指定します.
+
+`0` に設定すると,ログファイルは削除されません.
+
+#### `messageLogging.maxFileSizeMB`
+
+- Type: `integer`
+- Default: `100`
+
+チャンネルチャットのログファイルの最大サイズ(メガバイト)を指定します.
+
+`maxFileSizeMB` を超えたログファイルは新しいエントリを受け付けなくなります.
+
+### `features.velocityIntegration`
+
+#### `enabled`
+
+- Type: `boolean`
+- Default: `false`
+
+Velocity プロキシプラグインとの連携を有効にします.
+
+#### `crossServerGlobalChat`
+
+- Type: `boolean`
+- Default: `false`
+
+Velocity プロキシに接続されたすべての Paper サーバー間でチャットメッセージを共有するかどうかを指定します.
+
+#### `serverName`
+
+- Type: `string`
+- Default: `Unknown`
+
+Velocity クロスサーバーチャットで表示されるサーバー名を指定します.
+
+例: `survival`, `creative`, `lobby`
+
+#### `messageDeduplicationCacheSize`
+
+- Type: `integer`
+- Default: `100`
+
+メッセージの重複排除キャッシュのサイズを指定します.
+
+## Message Format Settings
+
+使用できるプレースホルダー:
+
+- `{sender}`: メッセージ送信者の名前
+- `{recipient}`: メッセージ受信者の名前
+- `{message}`: メッセージの内容
+- `{channel}`: チャットチャンネルの名前 (チャンネルチャットの場合のみ)
+
+### `messageFormat.directMessageFormat`
+
+- Type: `string`
+- Default: `§7[§e{sender} §7>> §e{recipient}§7] §f{message}`
+
+ダイレクトメッセージ( [`/tell`](../player-guide/commands/tell.md) や [`/reply`](../player-guide/commands/reply.md) コマンド)で送信されるメッセージのフォーマットを指定します.
+
+### `messageFormat.channelMessageFormat`
+
+- Type: `string`
+- Default: `§7[§b#{channel}§7] §e{sender}: §f{message}`
+
+チャンネルチャットで送信されるメッセージのフォーマットを指定します.