# Online Multiplayer
Back to Frequently Asked Questions
Is online multiplayer supported?
There was experimental support for online multiplayer since version 0.6.2. Experimental support has been temporarily removed in version 1.0.0 and a new implementation has entered the preview phase in version 3.3.0. Online multiplayer is still not fully stable and has many bugs in this preview phase. Also, there is no guarantee of backward compatibility between individual multiplayer preview builds, so it is recommended that you use the latest build, or at least the same build version, on all devices. Please report any bugs in the appropriate channel on Discord or GitHub.
It supports cross-platform play between all supported platforms – Windows, Linux, macOS, Android, Switch and Xbox. Emscripten (web browser) version is not included yet. Players with Jazz² Resurrection cannot connect to players with original game and vice versa.
You can connect to public or local server from main menu. List of these servers is also available here. To connect to private server, you have to run Jazz2.exe
with /connect <ip>
or /connect <ip>:<port>
parameter, where <ip>
is IPv4 address, IPv6 address or hostname, and <port>
is UDP port of dedicated server. Default port is 7438
. Player can set their name in Options > User Profile. If Discord integration is enabled, player name can't be changed manually, because Discord nickname is used instead. Unique Player ID can also be found in Options > User Profile and is unique for each player.
Server can be created from the main menu. Alternatively, a dedicated server can be run from the terminal.
How to run dedicated server?
Dedicated server can be started using /server
startup parameter. After that you can specify path to the configuration file as another parameter. Otherwise, "Jazz2.Server.config"
is used as default configuration file. Public servers with suitable IP address are automatically published on server list.
The server uses UDP port 7438
to communicate with clients and uses IPv6 sockets with dual stack enabled to allow IPv4 connections. Dedicated servers use fewer resources because they automatically skip loading textures, SFX, and music.
The server supports following commands:
/exit
//quit
– close the server (dedicated server only)/clear
– clear console output/help
– show help Not implemented yet!/info
– show info and connected players/endpoints
– show list of all server addresses/players
– show list of all connected players/set <name> <value>
– set server variable by<name>
to<value>
(see Available server variables)/refresh
– reload server configuration file/reset points
– reset points of all players/playlist
– change level to next level if playlist mode is active/alert <message>
– show in-game message<message>
to all players
Available server variables
level
– set current level in<episode>/<level>
format. Level will be immediately changed to new value.mode
– set current game mode. Following modes are available:b
/battle
– Battletb
/teambattle
– Team Battler
/race
– Racetr
/teamrace
– Team Raceth
/treasurehunt
– Treasure Hunttth
/teamtreasurehunt
– Team Treasure Huntctf
/capturetheflag
– Capture the Flagc
/coop
/cooperation
– Cooperation
name
– set server name shown in server list. Default isUnnamed server
.welcome
– set welcome message in the lobby.spawning
– iftrue
, dead player will be automatically respawned. Default istrue
.
Server configuration files
Server configuration can be loaded from file "Jazz2.Server.config"
in the same directory where "Jazz2.config"
is saved on your platform by default.
Detailed description of the file format can be found in the developer documentation.
Known issues
This list outlines known issues of online multiplayer.
- Some graphical effects are missing:
- Particles on enemy destruction
- Missing lights
Electro
weapon- Some springs are misaligned
- Some sounds are not played properly.
- Players have unlimited lives in cooperation.
- Local server discovery requires IPv6 multicast which is not supported on all devices and networks.
- Not all commands are implemented.
- Currently it's not possible to connect to private servers from Android/Switch, because the IP address can't be entered anywhere.
What is missing?
This list outlines missing features of online multiplayer and its progress.
- Game modes
- Battle
- Team Battle
- Race
- Team Race
- Treasure Hunt
- Team Treasure Hunt
- Capture The Flag
- Cooperation
- Gameplay features
- Spectate mode
- Server-side features
- Console commands with suggestions
- Player movement interpolation
- Server-side object/collectible spawning
- Server-side collision checking
- Persistent configuration
- Server-side scripting and plugins
- Client-side features
- HUD elements for respective game modes
- Common - list of players
- Battle - number of kills and deaths
- Team Battle
- Race - number of laps, time
- Treasure Hunt - number of collected gems
- Capture the Flag
- In-game admin commands
- In-game chat
- Player names
- Local server discovery
- Public server list
- Automatic download of levels and tilesets from servers and caching
- HUD elements for respective game modes
- Misc. features
- Welcome messages/announcements
- Discord integration to allow quick join
- Enable multiplayer on WebAssembly platform with automatic WebSocket proxy (lower performance is expected)