Playit.gg Tunnel Setup

Playit.gg creates a public tunnel so that players from the internet can reach your local Velocity proxy without port forwarding. This guide walks you through the complete setup: claiming the agent, creating a tunnel, configuring the origin, and connecting everything to Block-Suite.

💡 What is playit.gg?

Playit.gg is a free tunneling service. It gives you a public address (e.g. your-server.gl.joinmc.link) that routes traffic through their network to your local machine — no router/firewall changes needed.

How It Works

Player (internet)
    │
    ▼
┌───────────────────────────┐
│  Playit.gg Public Address │  ← your-server.gl.joinmc.link
│  (playit.gg cloud)        │
└───────────┬───────────────┘
            │ tunnel
            ▼
┌───────────────────────────┐
│  Playit Agent (local)     │  ← runtime/playit/playit.exe
│  Origin: 127.0.0.1:25565  │
└───────────┬───────────────┘
            │ forwards to
            ▼
┌───────────────────────────┐
│  Velocity Proxy (local)   │  ← listening on port 25565
│  → forwards to target     │
└───────────────────────────┘

Players connect to the playit.gg public address. The playit agent running on your PC receives that traffic and forwards it to your local Velocity proxy, which then sends it to the target server.

First-Time Setup (Claiming the Agent)

The very first time you use playit.gg with Block-Suite, you need to claim the agent and link it to your playit.gg account. Here's the step-by-step:

1
Create a Playit.gg Account
Go to playit.gg and sign up for a free account (you can use Google, Discord, or email). Keep this tab open — you'll need it soon.
2
Click "Setup Environment" in Block-Suite
This downloads the playit agent (playit.exe) into runtime/playit/ and prepares the Velocity config.
3
Click "Start Playit.gg"
Block-Suite launches the playit agent. Since it's the first time, the agent has no secret key yet and needs to be claimed.
4
Watch the Activity Log for the Claim URL
Within a few seconds, a line like this appears in the Activity Log:
[Playit.gg] *** CLAIM URL DETECTED: https://playit.gg/claim/abc-def-123 ***
[Playit.gg] Open this URL in your browser to complete first-time setup.
Copy that URL and open it in your browser.
5
Claim the Agent on Playit.gg
The claim page asks you to confirm linking this agent to your account. Click "Claim" or "Add Agent". Once claimed, the agent receives a secret key that is saved to runtime/playit/playit.toml — you won't need to claim again.
Playit.gg claim page in the browser
Playit.gg website — claim agent confirmation page in the browser
⚠️ Don't skip the claim!

If you don't open the claim URL, the agent will keep printing it repeatedly. The tunnel will not work until the agent is claimed and linked to your account.

Creating a Tunnel on Playit.gg

After claiming the agent, you need to create a tunnel in the playit.gg dashboard that tells their servers where to forward player traffic.

1
Go to the Playit.gg Dashboard
Open playit.gg/account/tunnels and log in.
2
Click "Create Tunnel"
You'll see options for tunnel type. Select "Minecraft Java" (this sets up a TCP tunnel on port 25565 by default).
3
Configure the Tunnel Origin
This is the most important part — it tells playit.gg where to send traffic on your local machine:
FieldValueExplanation
Local IP 127.0.0.1 Localhost — the playit agent and Velocity proxy are on the same machine
Local Port 25565 Must match the Proxy Port in Block-Suite's Server Cloning tab (default: 25565)
4
Set Proxy Protocol
Under the tunnel settings, look for the Proxy Protocol option:
OptionWhen to Use
Proxy Protocol v2 (recommended) Use this when you have HAProxy Protocol = ON in Block-Suite's Advanced Cloning settings (default). This forwards the real player IP through the tunnel.
None / Disabled Use this when you have HAProxy Protocol = OFF in Block-Suite. All players will appear with the tunnel's IP instead of their real IP.
⚠️ These MUST match!

The playit.gg tunnel Proxy Protocol setting must match the HAProxy Protocol setting in Block-Suite. If one is ON and the other is OFF, players will get disconnected immediately on connect.

5
Save the Tunnel
Click "Create" or "Save". Playit.gg assigns you a public address like:
your-server.gl.joinmc.link
or
something.at.ply.gg:12345
This is the address players will use to connect.
Playit.gg dashboard — creating a new Minecraft tunnel with origin settings
Playit.gg dashboard — Tunnel origin configuration showing Local IP (127.0.0.1), Local Port (25565), and Proxy Protocol dropdown
Playit.gg dashboard — Completed tunnel showing the assigned public address

Port Matching: Block-Suite ↔ Playit.gg

The Local Port in the playit.gg tunnel must match the Proxy Port field in Block-Suite's Server Cloning tab. Here's the flow:

ComponentSettingDefault
Block-Suite → Server Cloning tab Proxy Port 25565
Velocity (auto-generated) Bind address 0.0.0.0:25565
Playit.gg tunnel Local Port (origin) 25565

If you change the Proxy Port in Block-Suite (e.g. to 25577), you must also update the Local Port in the playit.gg tunnel to 25577.

Block-Suite Server Cloning tab showing Proxy Port field set to 25577 Playit.gg dashboard showing the same port (25577) in the tunnel origin Local Port field

Proxy Protocol Explained

The Proxy Protocol is a header that the playit.gg tunnel prepends to each connection, containing the player's real IP address. Velocity reads this header to know the actual player IP instead of seeing the tunnel's IP.

How the settings connect

Playit.gg TunnelBlock-Suite SettingResult
Proxy Protocol = v2 HAProxy Protocol = ON ✅ Works — real player IPs visible in intercepted data
Proxy Protocol = None HAProxy Protocol = OFF ✅ Works — but all players show the tunnel's IP
Proxy Protocol = v2 HAProxy Protocol = OFF ❌ Broken — players disconnected (Velocity can't parse the header)
Proxy Protocol = None HAProxy Protocol = ON ❌ Broken — players disconnected (Velocity expects a header that isn't there)
✅ Recommended Setup

Use Proxy Protocol v2 on the playit.gg tunnel + HAProxy Protocol ON in Block-Suite. This gives you real player IPs for geolocation and intelligence gathering.

Complete Workflow (Start to Finish)

Once the one-time claim and tunnel creation are done, this is the workflow for every session:

1
Enter Target Server
In Server Cloning tab, set the target IP and port. Click Check Status to verify the target is online.
2
Click "Setup Environment"
Downloads Velocity + plugins, generates configs. Wait for "Environment setup complete!" in the Activity Log.
3
Click "Start Velocity"
Launches the Velocity proxy. The status dot turns green. The interception server also starts automatically.
4
Click "Start Playit.gg"
Launches the playit agent. It connects to playit.gg cloud and activates your tunnel. The public address appears in the Activity Log and the status bar:
[Playit.gg] *** PUBLIC ADDRESS: your-server.gl.joinmc.link ***
[Playit.gg] Share this address for players to connect!
5
Share the Public Address
Copy the address with the Copy IP button in the status bar. Players connect to this address in their Minecraft client.
6
Intercept & Analyze
When players join, their data appears in the Intercepted Data table. Click on a player in the Players panel for the full More Info overlay.
Block-Suite with all 3 status dots green and public address visible in the status bar

Tunnel Address Persistence

Block-Suite automatically saves the detected tunnel address to runtime/playit/tunnel_address.txt. On subsequent launches, it restores the address immediately instead of waiting for playit.gg to re-detect it.

The address is also detected from:

Troubleshooting

Claim URL doesn't appear

Players disconnect immediately

Public address shows "N/A"

Agent exits immediately (exit code 1)

Playit.gg Files

runtime/
  playit/
    playit.exe              ← The playit.gg agent binary (auto-downloaded)
    playit.toml             ← Agent config + secret key (generated after claim)
    tunnel_address.txt      ← Saved public address for quick restore
⚠️ Don't share playit.toml

The playit.toml file contains your agent's secret key. Anyone with this file can control your tunnels. Keep it private.