diff options
Diffstat (limited to 'docs/src/player-guide')
| -rw-r--r-- | docs/src/player-guide/about.md | 61 | ||||
| -rw-r--r-- | docs/src/player-guide/channel-chat/about.md | 108 | ||||
| -rw-r--r-- | docs/src/player-guide/channel-chat/chatmode.md | 30 | ||||
| -rw-r--r-- | docs/src/player-guide/channel-chat/moderation.md | 95 | ||||
| -rw-r--r-- | docs/src/player-guide/channel-chat/private-channel.md | 25 | ||||
| -rw-r--r-- | docs/src/player-guide/commands/lc/channel.md | 141 | ||||
| -rw-r--r-- | docs/src/player-guide/commands/lc/chatmode.md | 17 | ||||
| -rw-r--r-- | docs/src/player-guide/commands/lc/settings.md | 19 | ||||
| -rw-r--r-- | docs/src/player-guide/commands/lc/status.md | 9 | ||||
| -rw-r--r-- | docs/src/player-guide/commands/lcv/status.md | 9 | ||||
| -rw-r--r-- | docs/src/player-guide/commands/reply.md | 17 | ||||
| -rw-r--r-- | docs/src/player-guide/commands/tell.md | 11 | ||||
| -rw-r--r-- | docs/src/player-guide/direct-message.md | 65 | ||||
| -rw-r--r-- | docs/src/player-guide/getting-started.md | 77 | ||||
| -rw-r--r-- | docs/src/player-guide/index.md | 24 | ||||
| -rw-r--r-- | docs/src/player-guide/japanese-romanization.md | 101 |
16 files changed, 809 insertions, 0 deletions
diff --git a/docs/src/player-guide/about.md b/docs/src/player-guide/about.md new file mode 100644 index 0000000..933426f --- /dev/null +++ b/docs/src/player-guide/about.md @@ -0,0 +1,61 @@ +# LunaticChat について + +LunaticChat は Minecraft サーバソフトウェアである Paper / Velocity 向けのチャットプラグインです. + +2013年,[ucchyocean](https://github.com/ucchyocean) 氏が公開した [LunaChat](https://github.com/ucchyocean/LunaChat) の後継,そして最新版で動くように一から書き直したプラグインとして開発しています. + +現在 LunaChat は開発が終了しており,最新の Minecraft バージョンには対応していません.多くのサーバー管理者が LunaChat を Fork していますが, LunaticChat はその代替として,LunaChat の機能を引き継ぎつつ,最新の Minecraft バージョンで動作するよう設計されています. + +## 主な特徴 + +- **軽量で高速**: LunaticChat は高いパフォーマンスを維持しつつ,サーバーへの負荷を最小限に抑えるよう設計されています. +- **1on1 ダイレクトメッセージ機能**: /tell や /msg コマンドで,1対1のチャットが可能です. +- **クイック返信**: /reply で,直前にメッセージを送信した相手に素早く返信可能です. +- **かな・ローマ字変換**: ローマ字で入力したメッセージを,自動的に日本語に変換します. +- **チャンネルチャット機能**: 複数のチャットチャンネルを作成し,特定のチャンネルでのみメッセージを送信できる環境を実現します. +- **CoreProtect への対応**: LunaticChat のチャットログは CoreProtect と互換性があります. +- **キャッシュによる高速動作**: ローマ字から日本語の変換はキャッシュを使用し,従来の LunaChat よりも高速に動作します. +- **最新版の対応**: 他プラグインとの依存を完全に排除し,常に最新の Minecraft バージョンに対応します. + +## 比較 + +| | LunaticChat | LunaChat | +| ----- |-------------|----------------------------------------| +| 開発状況 | 継続的に開発中 | 開発終了 | +| 対応プラットフォーム | Paper / Velocity | Bukkit / Spigot / BungeeCord | +| サポートバージョン | 1.21.x ~ | 1.16.x まで | +| 使用言語 | Kotlin | Java | +| 依存プラグイン | なし | EssentialsX など | +| キャッシュ | あり | なし | +| ドキュメント | あり | なし | +| ライセンス | GNU General Public License v3.0 | GNU Lesser General Public License v3.0 | + +## FAQ + +### LunaticChat は無料で使えますか? + +オープンソースソフトウェアとして,LunaticChat は無料で使用,修正,配布できます. + +### LunaticChat はどの Minecraft バージョンに対応していますか? + +LunaticChat は Minecraft 1.21.x 以降のバージョンに対応しています. + +### LunaticChat は他のチャットプラグインと併用できますか? + +LunaticChat は他のチャットプラグインと併用できますが,競合を避けるために,チャット関連の機能が重複しないように注意してください. + +### LunaticChat のサポートはどこで受けられますか? + +LunaticChat のサポートは,[公式の GitHub Discussion](https://github.com/m1sk9/LunaticChat/discussions) で受けられます. + +### LunaticChat のソースコードはどこで入手できますか? + +LunaticChat のソースコードは,[GitHub](https://github.com/m1sk9/LunaticChat) で公開されています. + +### Spigot / BungeeCord 版の LunaticChat はありますか? + +ありません.対応する予定もありません.Paper / Velocity でご利用ください. + +### LunaticChat はどのようなライセンスで配布されていますか? + +LunaticChat は GNU General Public License v3.0 (GPLv3) の下で配布されています. diff --git a/docs/src/player-guide/channel-chat/about.md b/docs/src/player-guide/channel-chat/about.md new file mode 100644 index 0000000..f15fb17 --- /dev/null +++ b/docs/src/player-guide/channel-chat/about.md @@ -0,0 +1,108 @@ +# チャンネルチャット <Badge type="tip" text="v0.6.0" /> <Badge type="warning" text="試験的" /> + +特定のプレイヤー間で,チャットを共有できる機能です. + +::: warning 試験的機能 + +この機能は現在試験的な機能として提供されています.今後のアップデートで仕様が変更される可能性があります. + +::: + +::: tip この機能はサーバーで有効化する必要があります + +チャンネルチャットがサーバーで無効化されている場合,これらの機能は使用できません. + +サーバー管理者にお問い合わせください. + +::: + +## チャンネルを作成する + +チャンネルチャットを利用するには,まずチャットチャンネルを作成する必要があります. + +[`/lc channnel create`](../commands/lc/channel.md#lc-channel-create-チャンネルid-チャンネル名-チャンネルの説明-プライベート設定) コマンドを使用して,チャットチャンネルを作成します. + +``` +/lc channel create <チャンネルID> <チャンネル名> [チャンネルの説明] [プライベート設定] +``` + +- `<チャンネルID>` はチャンネルのIDを指定します. +- `<チャンネル名>` はチャンネルの名前を指定します. +- `[チャンネルの説明]` はチャンネルの説明を指定します (省略可能). + - `/lc channel list` コマンドでチャンネル一覧を表示した際に,説明が表示されます. +- `[プライベート設定]` はチャンネルの公開設定を指定します. + - `true` を指定するとプライベートチャンネルとして作成され,招待されたプレイヤーのみが参加できます. + - `false` を指定するか,省略した場合はパブリックチャンネルとして作成され,誰でも参加できます. + +::: tip チャンネルIDの要件 + +チャンネルIDは次の要件に従う必要があります: + +- 3文字以上,30文字以下であること +- 英数字,アンダースコア(_),ハイフン(-)のみを含むこと + +::: + +::: warning チャンネル名・チャンネルの説明を入力する際の注意点 + +チャンネル名・チャンネルの説明を入力する際は,引数を `"` (ダブルクォーテーション) で囲む必要があります. + +実行例は次のとおりです: + +``` +/lc channel create pvp_channel "PvP大好きクラブ" "PvPが大好きな人たちの集まり" false +``` + +::: + +チャンネルが正常に作成されると,チャットで確認メッセージが表示されます. + +## チャンネルに参加する + +作成されたチャンネルに参加するには,[`/lc channel join`](../commands/lc/channel.md#lc-channel-join-チャンネルid) コマンドを使用します. + +チャンネルに参加すると,チャットモードが全体チャットからチャンネルチャットに切り替わります. + +``` +/lc channel join <チャンネルID> +``` + +## チャンネル一覧を表示する + +参加可能なチャンネル一覧を表示するには,[`/lc channel list`](../commands/lc/channel.md#lc-channel-list) コマンドを使用します. + +チャット欄に参加可能なチャンネルの一覧が表示されます.クリックするか [`/lc channel join`](#チャンネルに参加する) コマンドを使用して,チャンネルに参加できます. + +``` +/lc channel list +``` + +## チャットモード + +LunaticChat では,プレイヤーがチャットを送信する際のモードとして,以下の2種類のチャットモードが存在します: + +1. 全体チャットモード: すべてのプレイヤーとチャットを共有します. +2. チャンネルチャットモード: 参加している特定のチャンネル内のプレイヤーとチャットを共有します. + +チャンネルチャットでは主に `2` のチャットモードが使用されます. + +詳しくは [こちら](./chatmode.md) をご覧ください. + +## アクティブチャンネルとメンバーシップ状態の違い + +LunaticChat では,プレイヤーのアクティブチャンネルとメンバーシップ状態は別々に管理されています. + +- アクティブチャンネル: チャンネルチャットモードで使用されるチャンネル +- メンバーシップ状態: プレイヤーが参加しているチャンネルの一覧 + +アクティブチャンネルは一度に一つのチャンネルのみを指定できます.メンバーシップ状態のチャンネルにアクティブチャンネルを切り替える場合は [`/lc channel switch`](../commands/lc/channel.md#lc-channel-switch-チャンネルid) コマンドを使用します. + +``` +/lc channel switch <チャンネルID> +``` + +メンバーシップ状態のチャンネルからアクティブチャンネルを解除してもチャンネルからは削除されません.チャンネルから退出するにはアクティブチャンネルに切り替えてから [`/lc channel leave`](../commands/lc/channel.md#lc-channel-leave) コマンドを使用します. + +``` +/lc channel leave +``` diff --git a/docs/src/player-guide/channel-chat/chatmode.md b/docs/src/player-guide/channel-chat/chatmode.md new file mode 100644 index 0000000..9e2712d --- /dev/null +++ b/docs/src/player-guide/channel-chat/chatmode.md @@ -0,0 +1,30 @@ +# チャットモード + +チャットモードは LunaticChat におけるプレイヤーがチャットを送信する際のモードを指します.LunaticChat では以下の2種類のチャットモードが存在します. + +1. 全体チャットモード: すべてのプレイヤーとチャットを共有します. +2. チャンネルチャットモード: 参加している特定のチャンネル内のプレイヤーとチャットを共有します. + +## チャットチャットモード + +チャンネルチャットモード中は,全てのチャットが参加しているチャンネルのプレイヤーのみに表示され,全体チャットには表示されません. + +::: tip 一時的に全体チャットを送信する + +チャンネルチャットモード中に,一時的に全体チャットを送信したい場合は,メッセージの先頭に `!` を付けて送信します. + +``` +!こんにちは、みんな元気? +``` + +::: + +## 全体チャットモード + +全体チャットモード中は,サーバー内のすべてのプレイヤーとチャットを共有します.通常の Minecraft チャットと同様の動作をします. + +## 一時的にチャットモードを切り替える + +チャットモードを一時的に切り替えるには,`/chatmode toggle` コマンドを使用します. + +このコマンドで切り替えた場合はチャンネルの入退出なしで,チャットモードを切り替えることができます. diff --git a/docs/src/player-guide/channel-chat/moderation.md b/docs/src/player-guide/channel-chat/moderation.md new file mode 100644 index 0000000..8e0555d --- /dev/null +++ b/docs/src/player-guide/channel-chat/moderation.md @@ -0,0 +1,95 @@ +# チャンネルの管理 + +チャンネルチャットのモデレート機能を使用して,チャンネル内のメンバー行動を管理できます. + +::: danger 注意 + +これらのモデレート機能はあくまで LunaticChat のチャンネルチャットに対して使用できるものです. + +実際にルール違反者に対して処罰が必要な場合は,サーバー管理者に通報することをお勧めします. + +::: + +## モデレート機能の仕様 + +モデレート機能にはいくつかの仕様があります. + +- Bypass 権限を持つプレイヤーは,モデレート機能の影響を受けません. + - つまり,サーバー管理者に対してはこれらの機能を使用できません. +- モデレート機能を使用するには,それぞれのチャンネルのロールとサーバー自体の権限が必要です. +- モデレート機能の効果はチャンネルごとに独立しています. + - 例えば,あるチャンネルで永久追放(BAN)されたプレイヤーは,他のチャンネルでは通常通りチャットできます. + +## ロール + +チャンネルには以下のロールが存在しています. + +- メンバー (Member): チャンネルに参加している通常のプレイヤー +- モデレーター (Moderator): チャンネルのモデレート機能を使用できるプレイヤー +- オーナー (Owner): チャンネルの作成者であり,すべてのモデレート機能を使用できるプレイヤー + +::: tip サーバー管理者によるモデレート + +サーバー管理者は一律で全てのチャンネルにおいてオーナー権限と同じ権限を持ちます. + +::: + +## メンバーを一時的に追放する (Kick) + +メンバーを一時的にチャンネルから追放するには,[`/lc channel kick`](../commands/lc/channel.md#lc-channel-kick-プレイヤーid) コマンドを使用します. + +``` +/lc channel kick <プレイヤーID> +``` + +このコマンドを実行すると,指定したプレイヤーがチャンネルから即座に退出されます. + +ただし,追放されたプレイヤーは再参加が可能です. + +## メンバーを永久に追放する (Ban) + +メンバーを永久にチャンネルから追放するには,[`/lc channel ban`](../commands/lc/channel.md#lc-channel-ban-プレイヤーid) コマンドを使用します. + +``` +/lc channel ban <プレイヤーID> +``` + +このコマンドを実行すると,指定したプレイヤーがチャンネルから即座に退出され,さらに再参加も禁止されます. + +## 永久追放を解除する + +永久追放されたメンバーの追放を解除するには,[`/lc channel unban`](../commands/lc/channel.md#lc-channel-unban-プレイヤーid) コマンドを使用します. + +``` +/lc channel unban <プレイヤーID> +``` + +## モデレーターを任命・解任する + +チャンネルのメンバーをモデレーターに任命/解任するには,[`/lc channel mod`](../commands/lc/channel.md#lc-channel-mod-プレイヤーid) コマンドを使用します. + +``` +/lc channel mod <プレイヤーID> +``` + +このコマンドを実行すると,指定したプレイヤーがモデレーターに任命されます.また任命状態のプレイヤーに対して再度このコマンドを実行すると,モデレーターから解任されます. + +## オーナー権限を譲渡する + +チャンネルのオーナー権限を他のメンバーに譲渡するには,[`/lc channel ownership`](../commands/lc/channel.md#lc-channel-ownership-プレイヤーid) コマンドを使用します. + +``` +/lc channel ownership <プレイヤーID> +``` + +このコマンドを実行すると,指定したプレイヤーに全てのオーナー権限が譲渡されます.元のオーナーはモデレーターになります. + +::: danger 実行時の注意点 + +- オーナー権限の譲渡は不可逆的な操作です. + - つまり,一度譲渡してしまうとオーナー権限を持つプレイヤーが再度譲渡しない限り,元のオーナーがオーナー権限を取り戻すことはできません. + - これはサーバー管理者であってもです. +- オーナー権限を譲渡する相手は,必ずチャンネルのメンバーである必要があります. +- オーナー権限は全てのモデレート機能を使用でき,かつチャンネルを削除できる強力な権限です.譲渡する相手を慎重に選んでください. + +::: diff --git a/docs/src/player-guide/channel-chat/private-channel.md b/docs/src/player-guide/channel-chat/private-channel.md new file mode 100644 index 0000000..eb321de --- /dev/null +++ b/docs/src/player-guide/channel-chat/private-channel.md @@ -0,0 +1,25 @@ +# プライベートチャンネル + +プライベートチャンネルは,特定のユーザーのみが参加できるチャットチャンネルです. + +## プライベートチャンネルの作成 + +プライベートを作成する場合は [`/lc channel create`](../commands/lc/channel.md) コマンドで,プライベート設定引数に `true` を指定します. + +``` +/lc channel create <チャンネルID> <チャンネル名> [チャンネルの説明] [プライベート設定] +``` + +## チャンネルへの招待 + +プライベートチャンネルは `/lc channel list` コマンドでは一覧表示されず, `/lc channel join` コマンドで参加することもできません. + +参加するにはオーナーもしくはモデレーターから招待を受ける必要があります. + +招待するには,[`/lc channel invite`](../commands/lc/channel.md#lc-channel-invite-プレイヤーid) コマンドを使用します. + +``` +/lc channel invite <プレイヤーID> +``` + +招待を受けたプレイヤーは自動でチャンネルに参加します. diff --git a/docs/src/player-guide/commands/lc/channel.md b/docs/src/player-guide/commands/lc/channel.md new file mode 100644 index 0000000..4b96559 --- /dev/null +++ b/docs/src/player-guide/commands/lc/channel.md @@ -0,0 +1,141 @@ +# /lc channel <Badge type="tip" text="v0.6.0" /> <Badge type="tip" text="Paper/Folia" /> + +### `/lc channel create <チャンネルID> <チャンネル名> [チャンネルの説明] [プライベート設定]` + +| パーミッション | +|------------------------------| +| `lunaticchat.command.lc.channel.create` | + +チャンネルを作成します. + +- `<チャンネルID>` はチャンネルのIDを指定します. +- `<チャンネル名>` はチャンネルの名前を指定します. +- `[チャンネルの説明]` はチャンネルの説明を指定します (省略可能). + - `/lc channel list` コマンドでチャンネル一覧を表示した際に,説明が表示されます. +- `[プライベート設定]` はチャンネルの公開設定を指定します. + - `true` を指定するとプライベートチャンネルとして作成され,招待されたプレイヤーのみが参加できます. + - `false` を指定するか,省略した場合はパブリックチャンネルとして作成され,誰でも参加できます. + +::: warning チャンネル名・チャンネルの説明を入力する際の注意点 + +チャンネル名・チャンネルの説明を入力する際は,引数を `"` (ダブルクォーテーション) で囲む必要があります. + +実行例は次のとおりです: + +``` +/lc channel create pvp_channel "PvP大好きクラブ" "PvPが大好きな人たちの集まり" false +``` + +::: + +### `/lc channel list` + +| パーミッション | +|---------------------------------------| +| `lunaticchat.command.lc.channel.list` | + +チャンネルの一覧を表示します. + +### `/lc channel join <チャンネルID>` + +| パーミッション | +|---------------------------------------| +| `lunaticchat.command.lc.channel.join` | + +指定したチャンネルに参加します. + +### `/lc channel leave` + +| パーミッション | +|----------------------------------------| +| `lunaticchat.command.lc.channel.leave` | + +現在アクティブなチャンネルから退出します. + +### `/lc channel switch <チャンネルID>` + +| パーミッション | +|-----------------------------------------| +| `lunaticchat.command.lc.channel.switch` | + +指定したチャンネルに切り替えます.チャンネルチャットモード中に他のチャンネルに切り替えたい場合に使用します. + +### `/lc channel status` + +| パーミッション | +|-----------------------------------------| +| `lunaticchat.command.lc.channel.status` | + +現在参加・アクティブ状態のチャンネルの情報を表示します. + +### `/lc channel delete <チャンネルID>` + +| パーミッション | +|-----------------------------------------| +| `lunaticchat.command.lc.channel.delete` | + +指定したチャンネルを削除します.チャンネルの作成者(オーナー) である必要があります. + +### `/lc channel info [<チャンネルID>]` + +| パーミッション | +|---------------------------------------| +| `lunaticchat.command.lc.channel.info` | + +指定したチャンネルの情報を表示します. + +引数を指定した場合は現在アクティブ状態のチャンネルの情報を表示します. + +### `/lc channel invite <プレイヤーID>` + +| パーミッション | +|-----------------------------------------| +| `lunaticchat.command.lc.channel.invite` | + +指定したプレイヤーを現在アクティブ状態のチャンネルに招待します. + +### `/lc channel kick <プレイヤーID>` + +| パーミッション | +|---------------------------------------| +| `lunaticchat.command.lc.channel.kick` | + +指定したプレイヤーを現在アクティブ状態のチャンネルから一時的に追放します. + +追放されたプレイヤーはそのチャンネルから即時退出されますが,再参加できます. + +### `/lc channel ban <プレイヤーID>` + +| パーミッション | +|-----------------------------------------| +| `lunaticchat.command.lc.channel.ban` | + +指定したプレイヤーを現在アクティブ状態のチャンネルから永久追放します. + +永久追放されたプレイヤーはそのチャンネルから即時退出され,再参加できません. + +### `/lc channel unban <プレイヤーID>` + +| パーミッション | +|----------------------------------------| +| `lunaticchat.command.lc.channel.unban` | + +指定したプレイヤーの永久追放の解除を行います. + +### `/lc channel mod <プレイヤーID>` + +| パーミッション | +|--------------------------------------| +| `lunaticchat.command.lc.channel.mod` | + +指定したプレイヤーを現在アクティブ状態のチャンネルのモデレーターに昇格/降格させます. + +### `/lc channel ownership <プレイヤーID>` + +| パーミッション | +|--------------------------------------------| +| `lunaticchat.command.lc.channel.ownership` | + +指定したプレイヤーに現在アクティブ状態のチャンネルのオーナー権を譲渡します. + +譲渡後,元のオーナーにはモデレーター権が付与されます. diff --git a/docs/src/player-guide/commands/lc/chatmode.md b/docs/src/player-guide/commands/lc/chatmode.md new file mode 100644 index 0000000..eee6238 --- /dev/null +++ b/docs/src/player-guide/commands/lc/chatmode.md @@ -0,0 +1,17 @@ +# /lc chatmode <Badge type="tip" text="v0.6.0" /> <Badge type="tip" text="Paper/Folia" /> + +### `/lc chatmode` + +| パーミッション | +|-----------------------------------| +| `lunaticchat.command.lc.chatmode` | + +現在のチャットモードを表示します. + +### `/lc chatmode toggle` + +| パーミッション | +|------------------------------------| +| `lunaticchat.command.lc.chatmode.toggle` | + +チャットモードを切り替えます. diff --git a/docs/src/player-guide/commands/lc/settings.md b/docs/src/player-guide/commands/lc/settings.md new file mode 100644 index 0000000..343ffd5 --- /dev/null +++ b/docs/src/player-guide/commands/lc/settings.md @@ -0,0 +1,19 @@ +# /lc settings <Badge type="tip" text="v0.5.0" /> <Badge type="tip" text="Paper/Folia" /> + +### `/lc settings <key> [value]` + +| パーミッション | +|-----------------------------------| +| `lunaticchat.command.lc.settings` | + +LunaticChat のプレイヤー設定を管理します.値を指定しなかった場合は設定値が表示されます. + +この設定は UUID で保存されるため, MCID を切り替えても設定が消えることはありません. + +#### 利用可能なキー + +| キー | 説明 | デフォルト値 | +|------------|----------------------------------------------------------|--------| +| `japanese` | ローマ字変換の有効化・無効化を切り替えます. | `true` | +| `notice` | `/tell` や `/reply` でダイレクトメッセージを受信した際に通知を受け取るかどうかを切り替えます. | `true` | +| `chNotice` | チャンネルチャットを受信した際に通知を受け取るかどうかを切り替えます. | `true` | diff --git a/docs/src/player-guide/commands/lc/status.md b/docs/src/player-guide/commands/lc/status.md new file mode 100644 index 0000000..02f75ce --- /dev/null +++ b/docs/src/player-guide/commands/lc/status.md @@ -0,0 +1,9 @@ +# /lc status <Badge type="tip" text="v0.5.0" /> <Badge type="tip" text="Paper/Folia" /> + +### `/lc status` + +| パーミッション | +|---------------------------------| +| `lunaticchat.command.lc.status` | + +LunaticChat のステータスを表示します. diff --git a/docs/src/player-guide/commands/lcv/status.md b/docs/src/player-guide/commands/lcv/status.md new file mode 100644 index 0000000..320e6fa --- /dev/null +++ b/docs/src/player-guide/commands/lcv/status.md @@ -0,0 +1,9 @@ +# /lcv status <Badge type="tip" text="v0.8.0" /> <Badge type="tip" text="Velocity" /> + +### `/lcv status` + +| パーミッション | +|------------------------------| +| `lunaticchat.command.lcv.status` | + +現在の LunaticChat の Velocity 連携ステータスを表示します. diff --git a/docs/src/player-guide/commands/reply.md b/docs/src/player-guide/commands/reply.md new file mode 100644 index 0000000..5e0752f --- /dev/null +++ b/docs/src/player-guide/commands/reply.md @@ -0,0 +1,17 @@ +# /reply <Badge type="tip" text="v0.1.0" /> <Badge type="tip" text="Paper/Folia" /> + +### `/reply <メッセージ>` + +| パーミッション | エイリアス | +|-----------------------------|-------| +| `lunaticchat.command.reply` | `/r` | + +直近で [`/tell`](tell.md) を使用し,やりとりをしたプレイヤーに対して返信します. + +::: info このコマンドが使用できない場合 + +このコマンドが無効化されている可能性があります (この機能は設定で ON/OFF できるため) + +サーバーの管理者に連絡してください. + +::: diff --git a/docs/src/player-guide/commands/tell.md b/docs/src/player-guide/commands/tell.md new file mode 100644 index 0000000..35edca8 --- /dev/null +++ b/docs/src/player-guide/commands/tell.md @@ -0,0 +1,11 @@ +# /tell <Badge type="tip" text="v0.1.0" /> <Badge type="tip" text="Paper/Folia" /> + +### `/tell <プレイヤーID> <メッセージ>` + +| パーミッション | エイリアス | +| ---- | ---- | +| `lunaticchat.command.tell` | `/t`, `/msg`, `/m`, `/w`, `/whisper` | + +指定したプレイヤーに対してメッセージを送信します. + +送信されたメッセージをクリックするとこのコマンドがチャット欄に自動入力されます. diff --git a/docs/src/player-guide/direct-message.md b/docs/src/player-guide/direct-message.md new file mode 100644 index 0000000..64fbb95 --- /dev/null +++ b/docs/src/player-guide/direct-message.md @@ -0,0 +1,65 @@ +# ダイレクトメッセージ <Badge type="tip" text="v0.1.0" /> + +特定のプレイヤーに対してのみメッセージを送信するダイレクトメッセージ機能です. + +## メッセージを送信する + +メッセージを送信するには [`/tell`](./commands/tell.md) コマンドを使用します. + +オンラインプレイヤーに対してのみメッセージを送信できます.オフラインプレイヤーには送信できません. + +``` +/tell <player> <message> +``` + +::: tip 補完機能 + +LunaticChat はチャット入力時にプレイヤー名の補完をサポートしています. + +例えば,`/tell Al` と入力した場合,`Al` で始まるオンラインプレイヤー名が候補として表示されます. + +::: + +::: warning GeyserMC 環境での動作 + +GeyserMC 環境を用いて Minecraft Bedrock Edition から接続しているプレイヤーに機能を提供している場合の動作は保証していません. + +LunaticChat は Minecraft Java Edition / Paper のチャットシステムを前提として設計されているため,GeyserMC 経由での動作に問題が発生する可能性があります.対応の予定はありません. + +::: + +## クイックリプライ機能 <Badge type="tip" text="v0.1.0" /> + +LunaticChat では,直前にダイレクトメッセージを送信した相手に対して素早く返信できるクイックリプライ機能が提供されています. + +クイックリプライを使用するには [`/reply`](./commands/reply.md) コマンドを使用します. + +``` +/reply <message> +``` + +::: warning このコマンドが使用できない場合 + +このコマンドが無効化されている可能性があります (この機能は設定で ON/OFF できるため) + +サーバーの管理者に連絡してください. + +::: + +## 通知設定 <Badge type="tip" text="v0.4.0" /> + +v0.4.0 以降,ダイレクトメッセージの通知設定を変更できるようになりました. + +ダイレクトメッセージを受信・送信時に通知音がなるようになります. + +通知設定を変更するには [`/lc settings`](./commands/lc/settings.md) コマンドを使用します. + +::: tip クライアントでの音量設定 + +この通知音はクライアント上の **プレイヤー** カテゴリーの音量設定に依存します. + +LunaticChat の通知音が聞こえない場合は,クライアントの音量設定を確認してください. + + + +::: diff --git a/docs/src/player-guide/getting-started.md b/docs/src/player-guide/getting-started.md new file mode 100644 index 0000000..440e287 --- /dev/null +++ b/docs/src/player-guide/getting-started.md @@ -0,0 +1,77 @@ +# プレイヤーガイド: はじめる + +LunaticChat が導入されたサーバーに参加したプレイヤー向けのガイドです. + +::: info サーバー管理者の方へ + +プラグインの導入・設定方法については [管理者ガイド: はじめる](../admin-guide/getting-started.md) を参照してください. + +::: + +## LunaticChat でできること + +LunaticChat は,Minecraft サーバーのチャット機能を拡張するプラグインです.以下の機能が利用できます: + +- **ダイレクトメッセージ**: 特定のプレイヤーへ 1 対 1 でメッセージを送信できます +- **クイック返信**: 直前にメッセージを送ってきた相手に,コマンド一つで素早く返信できます +- **チャンネルチャット**: プレイヤー同士でチャンネルを作成・参加し,特定のメンバー間でのみチャットができます +- **ローマ字変換**: ローマ字で入力したメッセージを,自動的にひらがなに変換します + +::: tip + +利用できる機能はサーバーの設定によって異なる場合があります.詳しくはサーバー管理者にお問い合わせください. + +::: + +## ダイレクトメッセージを送る + +[`/tell`](./commands/tell.md) コマンドを使用して,特定のプレイヤーにメッセージを送信できます. + +``` +/tell <プレイヤー名> <メッセージ> +``` + +メッセージを受け取った後,[`/reply`](./commands/reply.md) コマンドで素早く返信できます. + +``` +/reply <メッセージ> +``` + +詳しくは [ダイレクトメッセージ](./direct-message.md) を参照してください. + +## チャンネルチャットに参加する + +チャンネルチャットでは,特定のメンバー間だけで会話できるチャンネルを作成・参加できます. + +参加可能なチャンネルは [`/lc channel list`](./commands/lc/channel.md) で確認できます. + +``` +/lc channel list +``` + +チャンネルに参加するには [`/lc channel join`](./commands/lc/channel.md) を使用します. + +``` +/lc channel join <チャンネルID> +``` + +詳しくは [チャンネルチャット](./channel-chat/about.md) を参照してください. + +## ローマ字変換を使う + +LunaticChat はローマ字で入力したメッセージを自動的にひらがなに変換できます. + +ローマ字変換のオン / オフは [`/lc settings`](./commands/lc/settings.md) コマンドで切り替えられます. + +``` +/lc settings romanization <on|off> +``` + +詳しくは [ローマ字変換](./japanese-romanization.md) を参照してください. + +## 次は? + +- [チャンネルチャット](./channel-chat/about.md): チャンネルチャットの使い方を確認します +- [ダイレクトメッセージ](./direct-message.md): ダイレクトメッセージの使い方を確認します +- [ローマ字変換](./japanese-romanization.md): ローマ字変換機能の詳細を確認します +- [コマンド一覧](./index.md): LunaticChat で使用できるコマンド一覧を確認します diff --git a/docs/src/player-guide/index.md b/docs/src/player-guide/index.md new file mode 100644 index 0000000..621a347 --- /dev/null +++ b/docs/src/player-guide/index.md @@ -0,0 +1,24 @@ +# プレイヤー向けリファレンス + +このページは LunaticChat を使用するプレイヤー向けのリファレンスです。 + +プラグインの導入方法や設定方法については [ガイド](../admin-guide/getting-started.md) を参照してください。 + +## 凡例 + +コマンドリファレンスで使用される凡例は以下の通りです。 + +- `<引数>`: 必須の引数を示します.実行には必ず指定する必要があります. +- `[引数]`: 任意の引数を示します.実行時に省略可能です. +- `|`: 複数の選択肢がある場合に使用します.例えば,`<yes|no>` は `yes` または `no` のいずれかを指定することを意味します. +- `...` : 複数の引数を指定できることを示します.例えば,`<item>...` は複数のアイテムを指定できることを意味します. + +## ラベル + +以下のようなラベルが記載されている場合は,次のような意味を持ちます. + +- <Badge type="info" text="v0.1.0" /> : この機能が LunaticChat バージョン 0.1.0 で導入されたことを示します. +- <Badge type="tip" text="Paper" /> : この機能が Paper 環境で利用可能であることを示します. +- <Badge type="tip" text="Velocity" /> : この機能が Velocity 環境で利用可能であることを示します. +- <Badge type="tip" text="Paper / Velocity" /> : この機能が Paper / Velocity 環境で利用可能であることを示します. + diff --git a/docs/src/player-guide/japanese-romanization.md b/docs/src/player-guide/japanese-romanization.md new file mode 100644 index 0000000..cc982f0 --- /dev/null +++ b/docs/src/player-guide/japanese-romanization.md @@ -0,0 +1,101 @@ +# ローマ字変換 <Badge type="tip" text="v0.1.0" /> <Badge type="tip" text="Paper" /> + +LunaticChat では、日本語のテキストをローマ字に変換する機能が提供されています. + +## 有効化・無効化 + +ローマ字変換機能はデフォルトで有効化されています. + +[`/lc settings`](./commands/lc/settings.md) コマンドを使用して,ローマ字変換の設定を切り替えることができます. + +## 変換の仕組み + +LunaticChat はプレイヤーからのテキストを以下の手順で変換を行います. + +1. プレイヤーからのテキストがローマ字で構成されているかを検証する +2. メモリキャッシュから該当のフレーズがあるかどうかを調べる + 1. ここで該当フレーズがヒットした場合はそれをサーバーに返す +3. メモリキャッシュに存在していない場合は,ローマ字からひらがなに変換する +4. 変換した文字列を Google IME API へ送り,人が読める形に変換する +5. メモリキャッシュに保存し,それをサーバーに返す + +``` +┌───────────────────────────────────────────────────┐ +│ User Input │ +│ (Romanji Text) │ +└─────────────────────┬─────────────────────────────┘ + │ + ▼ +┌───────────────────────────────────────────────────┐ +│ RomanjiConverter │ +│ ┌───────────────────────────────────────────┐ │ +│ │ 1. Check Memory Cache │ │ +│ │ └─→ Hit: Return immediately │ │ +│ │ │ │ +│ │ 2. Call Google IME API │ │ +│ │ │ │ +│ │ 3. Store in Memory Cache │ │ +│ │ │ │ +│ │ 4. Queue for Disk Save (async) │ │ +│ └───────────────────────────────────────────┘ │ +└─────────────────────┬─────────────────────────────┘ + │ + ▼ +┌───────────────────────────────────────────────────┐ +│ Converted Text │ +│ (Japanese Text) │ +└───────────────────────────────────────────────────┘ +``` + +::: tip ファイルへの保存 + +メモリキャッシュの内容は負荷にならないよう,設定した秒毎・サーバ停止後にファイルキャッシュへ自動でセーブします. + +::: + +キャッシュファイルに関する情報は [こちら](../admin-guide/cache.md) をご覧ください. + +## 改善されたキャッシュ戦略 <Badge type="tip" text="v0.5.0" /> + +v0.5.0 以降,LunaticChat はローマ字変換のキャッシュ戦略を改善しました. + +プレイヤーのチャットを単語ごとにキャッシュするようになり,より効率的に変換を行えるようになりました. + +例えば,以下のような長文のチャットがあるとします. + +> konnichiwa minna ohayou gozaimasu kyou wa totemo ii tenki desu ne bokutachi wa issho ni asobi ni ikimashou kono atarashii game wo tameshite mitai to omoimasu sore wa totemo omoshiroi to kiite imasu arigatou gozaimasu mata ne + +LunaticChat はこの文章を一度に変換するのではなく,単語ごとに分割してキャッシュを行います. + +これにより,例えば「konnichiwa」や「minna」などの単語が既にキャッシュされている場合,それらの単語は再度変換する必要がなくなり,変換速度が大幅に向上します. + +### 1回目の変換 + +``` +入力: "konnichiwa minna ohayou gozaimasu" + +konnichiwa → API → こんにちは (キャッシュ保存) +minna → API → みんな (キャッシュ保存) +ohayou → API → おはよう (キャッシュ保存) +gozaimasu → API → ございます (キャッシュ保存) + +結果: "こんにちは みんな おはよう ございます" +APIコール: 4回 +``` + +### 2回目の変換 + +``` +入力: "ohayou gozaimasu kyou wa ii tenki desu" + +ohayou → キャッシュヒット → おはよう +gozaimasu → キャッシュヒット → ございます +kyou → API → 今日 (キャッシュ保存) +wa → API → は (キャッシュ保存) +ii → API → いい (キャッシュ保存) +tenki → API → 天気 (キャッシュ保存) +desu → API → です (キャッシュ保存) + +結果: "おはよう ございます 今日 は いい 天気 です" +APIコール: 5回(キャッシュヒット: 2回) +``` |
