Setup
"HttpService is not allowed to send requests" error
"HttpService is not allowed to send requests" error
Where do I get an API Key?
Where do I get an API Key?
Are the test and production API URLs different?
Are the test and production API URLs different?
| Environment | URL | Status |
|---|---|---|
| Dev | https://wave-api.playwave.dev/v1 | Available |
| QA | https://wave-api-qa.playwave.dev/v1 | Coming soon |
| Live | https://wave-api.playwave.io/v1 | Coming soon |
Sessions
What happens to users who connect without the PlayWave launcher?
What happens to users who connect without the PlayWave launcher?
LaunchData will be empty, so OTT extraction returns nil. This is normal behavior — simply don’t grant PC cafe benefits to these users. Normal gameplay is unaffected.I keep getting OTT_EXPIRED errors
I keep getting OTT_EXPIRED errors
PlayerAdded event.What happens if I don't send heartbeats?
What happens if I don't send heartbeats?
Should I keep sending heartbeats after CHARGE_EXHAUSTED?
Should I keep sending heartbeats after CHARGE_EXHAUSTED?
Can is_pc_cafe be false after a successful verify?
Can is_pc_cafe be false after a successful verify?
is_pc_cafe is always true on successful verification. However, we recommend checking the flag in your code for future extensibility.What happens to sessions when the server restarts?
What happens to sessions when the server restarts?
game:BindToClose calls the end session API for all active sessions. Even if the calls fail, sessions are automatically cleaned up via TTL expiration after 4 minutes.Teleport
PC cafe benefits are lost after teleporting to a SubPlace
PC cafe benefits are lost after teleporting to a SubPlace
TeleportOptions when teleporting. Call PlayWaveServer.prepareForTeleport(player, teleportOptions) before TeleportAsync. See the Teleport integration guide for details.Do I need to install the SDK on every SubPlace?
Do I need to install the SDK on every SubPlace?
My callback code disappeared after updating the plugin
My callback code disappeared after updating the plugin
PlayWaveSetup and PlayWaveClient scripts. Always back up your existing callback code before reinstalling the SDK, then restore it afterward.What happens if I don't implement teleport integration?
What happens if I don't implement teleport integration?
Roblox-specific
Is there a LaunchData length limit?
Is there a LaunchData length limit?
Does the HTTP call in PlayerRemoving complete reliably?
Does the HTTP call in PlayerRemoving complete reliably?
game:BindToClose. BindToClose has a 30-second time limit — HTTP calls must complete within that window.Is the task.spawn heartbeat loop stable for long sessions?
Is the task.spawn heartbeat loop stable for long sessions?
task.spawn + task.wait loop pattern is stable for long-running sessions in Roblox. The loop continues while the player is in-game and automatically terminates when the session is removed from the activeSessions table.Do I need to whitelist external domains for HttpService?
Do I need to whitelist external domains for HttpService?