Getting Started with Godot on PlayFlow
This guide assumes you have some or all of your game already written using Godot and are now ready to use PlayFlow to implement a dedicated server. You can also use PlayFlow throughout the development process as its one-click deployment makes it easy to setup a temporary server for testing.Godot 4.x - This guide uses Godot 4.4, but any 4.x version should work. We’ll be using WebSocket networking for cross-platform compatibility.
Before We Begin
1
Starting Project
If you don’t have a project already setup but want to follow this tutorial, you can create a complete multiplayer game from scratch using our comprehensive guide.
Create Your First Multiplayer Game
Complete tutorial for building a multiplayer game in Godot with PlayFlow
2
Configure Server Auto-Start
Configure your game to automatically start as a server in headless builds. In your main multiplayer manager script, add server detection:This ensures your server starts automatically when deployed to PlayFlow.
Deploying Your Game with PlayFlow
1
Create Your PlayFlow Account
Go to the PlayFlow Cloud website and sign-up using your email, or log in with your GitHub or Google account. If asked, confirm your email address to complete the setup.
2
Create a Game Studio
Create a Game Studio to organize your game projects.
- Enter a studio name
- Select Hobby or Pro plan
- Click Create Studio
You can change the plan and name later. Pro plans include team collaboration features.
3
Create a New Project
Click Create New Project and enter:
- Project Name: Your game name
- Game Engine: Other (Godot)
- Game Type: Choose what fits (or Other)
4
Export Your Server Build
- Go to Project → Export in Godot
- Add a Linux/X11 export preset
- In the Resources tab, set Export Mode to “Export as dedicated server”
- IMPORTANT: Name your executable “Server” (required by PlayFlow)
- Export your project and create a .zip archive of all files
The dedicated server export creates a headless build perfect for PlayFlow deployment.
5
Upload Your Server Build
- In the PlayFlow dashboard, go to the Builds tab
- Click Upload Build
- Upload your .zip file containing the server executable
- Wait for the upload to complete
PlayFlow will automatically detect and configure your Godot server build.
6
Setup the PlayFlow Port
Now we will setup the port to use in the PlayFlow dashboard. Open up the website and head to the Configuration tab and then Network Ports section. Click the Add Your First Port button and fill in the fields.

- Port Name:
godot_websocket
- Port Number:
8080
(or your configured port) - Protocol: TCP
- Enable TLS: Yes (required for “wss://” connections from web clients)
- Description (Optional): WebSocket port for Godot multiplayer
Enable TLS is critical for web browser compatibility. Without TLS, web clients cannot connect using “wss://” protocol.
7
Create the Server
Now we are ready to start our server, head over to the Servers tab and click the Create Your First Server button.
A window will pop-up letting you customize the settings for this server. You can change the Name to “Godot Game Server”, or choose any name you like as well as customizing the other settings to better suit your needs. Once you are happy, press Create Server.You should now see the server in the Servers tab and you can see its details or stop it directly from here.


8
Connect to the Server
Click on the Details button to see the details of the server. Look at the Details → Network section and copy the Host and External Port.
Configure your Godot client with the PlayFlow server details:In your connection script:

For Web Builds: Always use “wss://” protocol for secure WebSocket connections. For local testing, you can use “ws://” but production deployments should use TLS.
9
Test the Game
- Run your Godot project locally or export a client build
- Enter the PlayFlow Host and External Port in your connection UI
- Connect to the server
- Your game should connect to the PlayFlow server and work correctly!
Testing Multiple Clients: Enable Debug → Customize Run Instances → Enable Multiple Instances in Godot to test multiple clients connecting to your PlayFlow server.
Take the Next Steps!
Well done! You’ve now learned how to setup and deploy your Godot server using PlayFlow.Resources
- PlayFlow Documentation: documentation.playflowcloud.com
- PlayFlow Discord: discord.gg/P5w45Vx5Q8
- Godot Documentation: docs.godotengine.org
- Godot Multiplayer: docs.godotengine.org/en/stable/tutorials/networking
Next Steps
Complete Multiplayer Tutorial
Build a complete multiplayer game from scratch
Lobby System
Add lobbies to your Godot game
Matchmaking
Implement matchmaking for competitive play
Common Issues
Server not starting automatically
Server not starting automatically
Ensure your server detection script uses
OS.has_feature("dedicated_server")
and that the “Export as dedicated server” option is enabled in your export preset.Web clients can't connect
Web clients can't connect
- Verify TLS is enabled in PlayFlow port configuration
- Ensure you’re using “wss://” protocol for web clients
- Check that the port (8080) matches between your server code and PlayFlow configuration
- Verify firewall rules aren’t blocking connections
Players not spawning or synchronizing
Players not spawning or synchronizing
- Check that MultiplayerSpawner is properly configured
- Verify MultiplayerSynchronizer is set up on player scenes
- Ensure players are being added to the correct groups
- Check that spawn functions are called when peers connect
Connection timeout or failed
Connection timeout or failed
- Verify the server URL and port are correct
- Check that the PlayFlow server instance is running
- For local testing, use “ws://” instead of “wss://”
- Ensure your networking code handles connection failures gracefully