UpdatePhotonThrottling only runs when using Photon over UDP, is disabled for TCP.

Added Photon server config documentation
This commit is contained in:
2025-08-18 22:33:48 -04:00
parent 95078cf3b4
commit eeae720d56
5 changed files with 54 additions and 17 deletions

View File

@@ -5,15 +5,31 @@
Requests are sent after the game client authenticates with the server.
## Endpoints
### `API: GET "/api/undead/v1/emotes"`
Expects: `List<EmoteConfigDTO>`
[EmoteConfigDTO](#emoteconfigdto)
### `API: GET "/api/undead/v1/emotes"`
Expects: `List<EmoteConfigDTO>` [(to DTO)](#emoteconfigdto)
Replace existing emotes in the game with these, keyed by `UniqueName`.
See [the source](./Core/CustomRecNet/CustomEmotes/RecNetEmotes.cs) for more information.
See [the source](.\Core\CustomRecNet\CustomEmotes\RecNetEmotes.cs) for more information.
### `API: GET "/api/undead/v1/photon"`
Expects: `PhotonConfigDTO` [(to DTO)](#photonconfigdto)
The patch uses a Photon configuration given by the server.<br>
When this fails, the patch will fall back to the local config, if enabled.
`ConnectionProtocol` is 0 for UDP, or 1 for TCP. Use UDP if you don't know what to use.<br>
`ServerAddress`, `ServerPort`, and `ConnectionProtocol` are ignored when `SelfHosted` is enabled.
When using a self-hosted server, ideally, you should set the `AppID` *and* `VoiceAppID` to the name<br>
of your application, e.g. Master when using the port for a default Masterserver.<br>
Voice will go over the same gameserver port as PUN does when selfhosting.
See [the source](.\Core\Content\CustomRecNet\CustomPhoton\CustomPhoton.cs) for more information.
## DTOs
### `EmoteConfigDTO`
```c#
public class EmoteConfigDTO
@@ -25,4 +41,18 @@ public class EmoteConfigDTO
public bool ForceEmoteBubble { get; set; }
public bool OnlyBroadcastToTeam { get; set; }
}
```
### `PhotonConfigDTO`
```c#
public class PhotonConfigDTO
{
public bool Logging { get; set; }
public string AppID { get; set; }
public string VoiceAppID { get; set; }
public bool SelfHosted { get; set; }
public string ServerAddress { get; set; }
public int ServerPort { get; set; }
public byte ConnectionProtocol { get; set; }
}
```