-
-
Notifications
You must be signed in to change notification settings - Fork 121
Hosting and Joining
- From the main menu, click on "Multiplayer"
- Select "Join Game"
- Enter the host's IP address or hostname:
- For local network: Use the host's local IP (e.g., 192.168.1.x)
- For internet: Use the host's public IP or VPN address
- For same computer: Use "127.0.0.1" or "localhost"
- If the port is not specified, it will use the default port of 8469.
- Enter password if required
- Click "Join Game"
- When first joining the game, it will show the lobby where you can select the starting planet.
- When there is existing player data in server, you will spawn at the last recorded position.
This option requires Host to have either public IP or Ngrok address for client to connect.
You can accept an invitation from the Host, or send the Host a request to join the game. See discord rich presence for more info.
In order to send invites the host must go to Discord's User Settings -> Activity Status and make sure Display current activity as a status message.
is turned on.
Nebula uses direct IP connection with TCP using port 8469.
To get the host address, open chat (Alt+~
) and type /info
.
For more detail, check Network Connectivity Solutions sections below.
- From the main menu, click on "Multiplayer"
- Select "New Game (Host)"
- Configure your galaxy settings as desired
- Click "Start" to create and host your new game
- From the main menu, click on "Multiplayer"
- Select "Load Game (Host)"
- Choose your saved game from the list
- The game will load and automatically start hosting
You can configure your server in the game settings:
- Go to Settings → Multiplayer → Network
- Set your preferred port (default: 8469)
- Enable/disable password protection
- ... and more
If you can't connect (could not reach server):
- Make sure host is in multiplayer mode (Nebula version in top-right, welcome message & chat enable).
If the host click 'Continue' in main menu, it will be the single player mode, NOT multiplayer mode. - Ensure DSP is in the firewall whitelist for both host and client
- Verify the host has properly set up port forwarding or VPN
To host the game, either Main Menu → Multiplayer → New Game (Host) or Load Game (Host). The other options to load game will lead to single-player mode game.
When you enter multiplayer mode, you should see the Nebula version below game version on the button right corner, and a blue welcome message for the first time hosting/joining. The chat is only available in multiplayer mode.
Nebula uses listen server architecture, so the hosting player need to have an accessible IP address for clients to join.
Nebula uses WebSocket (TCP) to transfer packets, with a default port of 8469
, which is configurable in the settings.
Type /info
in the in-game chat (open with Alt + ~
by default) to see the port status reported by ipify.
The command will show multiple addresses (click to copy). Choose the address given different situations:
- Local IP: If both Host and client are in the same LAN.
- IPv4 IP: If the port is opened (host is not behind NAT).
- IPv6 IP: If the port is opened, and both host and client support IPv6.
If the status shows Unavailable, you can use different online port checkers to check the port status.
If WAN ports are closed, you have to port forwarding or use tunneling software.
Below are different solutions. For beginners, it's recommended to use Radmin or Playit.gg.
This solution is good for lowering latency, but it's hard for beginners.
How to Port Forward – General Guide to Multiple Router Brands
If the router managing the NAT is accessible, you can do port-forwarding. Once forwarded, check the port status using /info
or an online port check tool. It should show Port status: Open
.
If your ISP uses CGNAT, then standard port forwarding won't work for you without you taking out a plan with your ISP to allow it. If this is the case you have no choice but to use other tunneling solutions.
How do I know if my router is behind CGNAT?
Click to expand
Enable UPnp/Pmp support
- When enabled, it will try to use Open.NAT to forward the port if your NAT devices support UPNP (Universal Plug & Play) or PMP (Port Mapping Protocol).
Nebula has built-in Ngrok support (Video guide). Other options like FRP (Fast Reverse Proxy) can work too.
These solutions only require host to install the tunneling app.
Click to expand
Video guide. The difference is step 7 (tunnel type and port).
- Create an account on https://playit.gg/
- Download and install the app at https://playit.gg/download
- Open the app (playit.exe) and keep it running during hosting.
- Copy and paste the link in the app into your browser.
- Create a tunnel.
- Agree to not post malware on playit.gg.
- Set the tunnel type to TCP and the local port to
8469
.
- Set the IP to
127.0.0.1
if it hasn't already. - Check the app; it should be connected.
- Copy the selected address and give it to the players. For example, the address is audio-merger.gl.at.ply.gg:49631
Click to expand
Note: The new Ngrok account requires credit card info now. It's not recommended anymore for the new players.
For free Ngrok account the address will be reset each time the Host disconnects, and it has limited bandwidth and usage(1GB/month).
In Settings -> Multiplayer -> Network, there are Ngrok options:
-
Enable Ngrok support
: When enabled, the game will try to start up Ngrok. It will download Ngrok to the mod folder when hosting for the first time. -
Ngrok Authtoken
: By registering in Ngrok, you'll get an authtoken from the dashboard. Copy and paste it here. -
Ngrok Regions
: Available regions are us, eu, au, ap, sa, jp, in.
After installation, type /info
in chat and copy the Ngrok address. The clients can join by inputting the Ngrok address.
For example, client can now join by 0.tcp.jp.ngrok.io:16416
There are many VPN services, such as Radmin, Zerotier or Hamachi.
When using a VPN, port checkers can't determine if the connection is accessible. So port status in /info
can be ignored.
Instead, use the address provided by the VPN to connect.
These solutions require both host and client to install the tunneling app.
Click to expand
- Install and open the Radmin app
- Go to Network -> Create New Network. Set name and password.
- Let clients join the network. They can then connect using the IP shown in Radmin.
For example, client can now join by 26.81.236.68
Click to expand
How to Create a VPN tunnel with ZeroTier (Windows) is a tutorial on paperspace. For the latest version the difference is that in step 5 and 6 you'll need to open the control panel and enter Network ID there.
Start ZeroTier app, click Open Control panel
Enter Network ID in the input field below. After joining, the device will get a managed IP.
If the network is private, the network owner will need to go to ZeroTier Central and click on the Auth button to approve each device.
After joining the network, clients can now join the game by inputting the host's managed IP.
Factorio wiki - Multiplayer - Joining a Multiplayer game section
Dyson Sphere Program Nebula multiplayer mod using Ngrok
Enable online multiplayer in Single player world with playit.gg - 1 minute
戴森球计划FRP联机教程 - 14 minute video for FRP
連線到Minecraft基岩版伺服器:使用ZeroTier建立虛擬區域網路 - 3 minute video for ZeroTierOne v1.8.3