Connection Diagnostics

ConnectionTroubleshooting

Keep your Avalanche Trivia games running smoothly with our comprehensive connection diagnostic tools.

Avalanche Trivia runs entirely in the browser. When players freeze, the issue is usually Firestore, Socket.IO, or network connectivity. Use these guides to diagnose and resolve connection problems quickly.

Browser Friendly
Firebase Backed
Real-time Diagnostics

Diagnostic Steps

Follow these systematic steps to identify and resolve connection issues quickly.

Start with the basics

Rule out simple problems before diving into logs or configuration changes.

  1. Open another site (for example https://www.google.com) in the same browser tab to confirm the device still has internet access.
  2. If you are on Wi-Fi, move closer to the router or temporarily tether through mobile data to compare stability.
  3. Refresh the Avalanche page. Player tabs keep their `playerId` in `localStorage`, so a normal reload will not cost progress.
  4. Ask the host if anyone else is seeing delays. If everybody freezes at the same time the host connection is the more likely culprit.
💡 A quick reload is safe for both hosts and players – the app restores state from Firestore as soon as the network comes back.

Check Firestore connectivity

Avalanche depends on Firebase Firestore for game state. When that connection fails, the UI stops updating.

  1. Open your browser devtools (F12) and switch to the Console tab. Try to answer a question or open `/join`; watch for red `permission-denied` or `unavailable` errors coming from `firestore.googleapis.com`.
  2. If you see repeated `net::ERR_BLOCKED_BY_CLIENT` messages, disable ad blockers or network privacy extensions for the site and reload.
  3. Corporate or school networks sometimes block Firestore. Test from a personal hotspot to confirm if filtering is the issue.
  4. Hosts should look at the player list on the dashboard. If no documents are updating, the Firestore listener has dropped and the page needs a refresh.
💡 You can verify Firestore status globally at https://status.firebase.google.com – rare outages appear there first.

Confirm Socket.IO events

Certain features – avalanche prompts and fast host notifications – also use a Socket.IO channel.

  1. Open devtools → Network → WS and reload the page. You should see a connection to the Cloud Functions socket endpoint (`https://us-central1-.../socket`).
  2. If the connection upgrades to WebSocket and stays open, sockets are healthy. If it fails immediately, a firewall or proxy may be blocking long-lived connections.
  3. Set the environment variable `NEXT_PUBLIC_DISABLE_SOCKETS=true` (or add `?disableSockets=1` in development) to force the app to rely on Firestore only. This is a good fallback when WebSockets are filtered.
  4. Hosts who disable sockets lose the avalanche sound cue but the core gameplay continues – keep the event log open to compensate.
💡 When sockets disconnect repeatedly you’ll see `[socket] Connection error` in the console. Share the exact message with support to speed up diagnosis.

Frequently Asked Questions

Quick answers to common connection issues and troubleshooting scenarios.

Why does everything freeze when the host switches tabs?

Most browsers throttle background tabs. If the host leaves the dashboard while an avalanche animation runs, the completion signal might be delayed. Keep the host page visible (or on a dedicated monitor) until animations finish.

Players in the room are fine, but remote users lag behind.

Remote players rely on their own networks plus yours. Stream the host board at a lower resolution and encourage remote users to close video streams they don’t need. If they are on restricted networks, have them disable VPNs or ask IT to allow Firestore and Socket.IO domains.

Can I switch to a different region when latency is high?

Avalanche currently runs from a single Firebase project in the US. There’s no in-app region picker. If you frequently host games far from that region, send us your location and sample latency so we can gauge demand for additional deployments.

What bandwidth do I actually need?

Individual players use well under 1 Mbps. Consistent latency matters more than raw throughput. If you stay under ~150 ms and keep packet loss near zero, the mountain board updates instantly.

My ad blocker keeps the join page from loading.

Some privacy filters block Google APIs. Whitelist the site or use the browser’s built-in shield exception menu, then reload. You should see fresh Firestore requests in the network panel immediately afterward.

Deep-dive guides

Still Having Connection Issues?

Can't resolve your connection problem? Our support team is here to help with personalized assistance.

Visual Reference Materials

Browser devtools console showing Firestore errors highlighted.
Network → WS tab with a successful Socket.IO handshake to `.../socket`.
Host dashboard player list with live updates to `percentageCompleted`.
Event log snippet illustrating an avalanche trigger entry.