You can play Lucifer's Atoms with other people, either on the same computer, or over a network. Multiplayer games can be competitive, co-operative, or a mixture of the two.

Local multiplayer

To start a local multiplayer game, you need to choose a fixed-creation multiplayer level on the choose level screen. Fixed-creation multiplayer levels are those that have a list of numbered creations – one for each player. Once you've chosen the creation for the number of players you want to play with and clicked on Play, run the simulation in the normal way and all the players will be able to control their creations.

Input bindings

Player 1 has the normal single-player input bindings. The default input bindings give player 2 the second game controller and the numeric keypad.

7 8 9
4 5 6
1 2 3

The default input bindings give players 3 and 4 the third and fourth game controllers.

Network multiplayer

To start a network multiplayer game, click on Start multiplayer game. From here, you can choose whether to join a server or start you own server.

Local port is an IP port number. You can change it if you want, but it shouldn't need to be changed from the default value.

Server type is either public or private. A public server is listed on the web site, to allow other players to find it and join it. If you start a private server, you will need to tell your IP address and Local port to anyone you want to join, and they will have to enter these values in the Join specific section to connect to it. If you start a private server behind a NAT router then no-one on the other side will be able to connect to it.

Lucifer's Atoms uses UDP, and the hole punching method to attempt to establish a connection, which should work with all RFC 4787 compliant NAT routers. However, if you find that you aren't able to join any public servers, it may be due to your router's non-compliant NAT behaviour. In this case, you may have to change your router's configuration to perform port forwarding for Local port.

Client-server model

When playing a network multiplayer game, one of the players is designated the server and the others are clients. The server has authority over the game – it decides what level to play and when. The server talks to all the clients, but each client only talks to the single server. Therefore a server requires more bandwidth than a client.

If a client player disconnects from the server, the game (residing on the server) still goes on. But if the server player quits the game then the game immediately terminates for all the client players.

Game flow

The server starts off waiting for other players on the lobby screen. Clients that connect at this time will see the lobby screen too. This shows the players that are currently connected and allows players to chat to each other (press the ` key to enable/disable chat). The server player can also change the level and all players can change their chosen creation.

When the server player decides to start the game, it switches to the play screen. Clients that connect at this time will view the current game in progress as a spectator, but will be able to play in the next game. You can also chat on the play screen. When the game ends (or the server player stops the game), it switches back to the lobby screen again.

Player/fixed-creation multiplayer levels

You can play two types of levels in network multiplayer mode. If the server player chooses a player-creation multiplayer level, each of the players supply their own creation (which must be allowed by the rules of the server's chosen level). If the server player chooses a fixed-creation multiplayer level then all the players have their creations defined for them by the server's chosen level.

Player-creation multiplayer levels give players the freedom to build their own creations (and if the level prevents player input then it turns into a pure building contest).

Fixed-creation multiplayer levels allow the server to enforce a level playing field for all players, removing the building aspect and making a pure control contest. Fixed-creation multiplayer levels also allow the creations to be joined to the level and each other.

Creating multiplayer levels

Player-creation multiplayer levels require start positions to be defined for each of the players.

Fixed-creation multiplayer levels don't need any start positions defined (they'll just be ignored if present). But you need to build a creation for each player and save it as a number, naming the first one 1, the second one 2, and so on, for as many players as you want to be able to play. Then just choose the highest numbered creation when starting a multiplayer game to include all the numbered creations for that number of players.