diff options
| author | Sho Sakuma <me@m1sk9.dev> | 2026-08-05 04:51:22 +0900 |
|---|---|---|
| committer | Sho Sakuma <me@m1sk9.dev> | 2026-08-05 04:51:22 +0900 |
| commit | 7e791eaef4e838f590585ab4dc3a3c0e6e7f0972 (patch) | |
| tree | ed5510c8737c13728dbfcf5b360b385fd2652f6b /website/src/docs | |
| parent | 89c8e68341b0ff9cb3c69f0ff6e4c34bbec43ae9 (diff) | |
| download | LunaticChat-7e791eaef4e838f590585ab4dc3a3c0e6e7f0972.tar.gz LunaticChat-7e791eaef4e838f590585ab4dc3a3c0e6e7f0972.tar.bz2 LunaticChat-7e791eaef4e838f590585ab4dc3a3c0e6e7f0972.zip | |
docs: correct the cross-server DM server name and two related claims
The `@<server>` argument resolves against the server names registered in
`velocity.toml`, not the `features.velocityIntegration.serverName` of the
destination: PresenceTracker publishes `serverInfo.name` and
CrossServerDirectMessageRelay matches the target against the same, so the
previous text had it exactly backwards. Following it on a proxy where the two
names differ produces SERVER_NOT_FOUND every time, and points the reader at the
wrong file to fix. `serverName` still matters, for `{server}` and for
recognising local players, so what it does is stated instead.
Also corrects two claims made while widening these pages:
- `/lcv status` reports only this server's protocol version, not both sides'.
The Velocity bug template leaned on it as its most important field, so a
reporter would have pasted output that cannot answer the compatibility
question. It now also says to run it after a player has joined, since the
handshake waits for one - the same caveat the README install steps needed.
- Spies see pre-conversion text for direct messages only. Channel messages are
converted before the handler runs, so spies get the same formatted string the
members do.
Co-Authored-By: Claude <noreply@anthropic.com>
Diffstat (limited to 'website/src/docs')
| -rw-r--r-- | website/src/docs/features/admin.md | 2 | ||||
| -rw-r--r-- | website/src/docs/features/direct-message.md | 8 | ||||
| -rw-r--r-- | website/src/docs/features/velocity.md | 2 |
3 files changed, 7 insertions, 5 deletions
diff --git a/website/src/docs/features/admin.md b/website/src/docs/features/admin.md index 0c185fb..3f71dcc 100644 --- a/website/src/docs/features/admin.md +++ b/website/src/docs/features/admin.md @@ -28,7 +28,7 @@ Players with the `lunaticchat.spy` permission (default: op) can view both the di - Direct messages are delivered to spies, excluding the sender and the recipient - Channel messages are delivered to spies, excluding the sender and the channel's own members -- Spy players see the original message before romaji conversion +- For direct messages, spies see the original text before romaji conversion. Channel messages reach spies in the same converted form the members see - Hover text indicates the message is a spy message - Spy players themselves are not included in the normal sender/recipient list diff --git a/website/src/docs/features/direct-message.md b/website/src/docs/features/direct-message.md index f3d39e4..ec0f24e 100644 --- a/website/src/docs/features/direct-message.md +++ b/website/src/docs/features/direct-message.md @@ -42,14 +42,16 @@ To message a player on another server, specify the player argument as `playerNam /tell <player>@<server> <message> ``` -`serverName` is the `features.velocityIntegration.serverName` configured on the **destination** server, not the name Velocity uses internally. A server left at the default `"Unknown"` cannot be addressed meaningfully, so give every server a name before enabling this. +`serverName` is the name of the destination server **as registered in your Velocity configuration** (`velocity.toml`), which is what the proxy resolves the target against. Tab completion offers the names and players it currently knows about. + +Set `features.velocityIntegration.serverName` on each backend to that same name. It does not affect routing, but it fills `{server}` in cross-server chat and is how a server recognises which players are its own — if it disagrees with the Velocity name, local players are treated as remote in tab completion. Delivery can fail in two ways, and the sender is told which: | Reason | Meaning | |--------|---------| -| `SERVER_NOT_FOUND` | No server behind the proxy reports that `serverName` | -| `TARGET_OFFLINE` | The server was found, but that player is not online on it | +| `SERVER_NOT_FOUND` | No server registered on the proxy has that name | +| `TARGET_OFFLINE` | The server exists, but that player is not on it — including when they are online on a different server | ## Notification Settings diff --git a/website/src/docs/features/velocity.md b/website/src/docs/features/velocity.md index 29b59f2..7842a24 100644 --- a/website/src/docs/features/velocity.md +++ b/website/src/docs/features/velocity.md @@ -83,7 +83,7 @@ The handshake timeout is 5 seconds. If the handshake times out, the state become | `enabled` | `false` | Enable Velocity integration | | `crossServerGlobalChat` | `false` | Enable cross-server global chat | | `crossServerDirectMessage` | `false` | Enable cross-server direct messages | -| `serverName` | `"Unknown"` | Server name displayed in cross-server chat, and the name `/tell <player>@<server>` matches against | +| `serverName` | `"Unknown"` | This server's own name. Fills `{server}` in cross-server chat and is how the server recognises its own players. Set it to the name registered in `velocity.toml` | | `messageDeduplicationCacheSize` | `100` | Size of the message deduplication cache | ## Message Format |
