Spludlow Tetris Introduction
A network implementation of Tetris game allowing multiple
players connected to a server. The game is played as normal but with the option
to “target” other players, so your completed lines are sent to the bottom of
To send you need to complete more than one line at a time
and that many minus one will be sent: 2 sends 1, 3 sends 2, and 4 sends 3.
You can run as many servers where you like:
Local Host – Single Computer multiple players on same desktop
Local Network – Run the server on your LAN (local network) and
play from other computers on the network
Internet – Run the server configured to accept connections from
the Internet public network
A standard 2 player on one desktop game:
Download & Install
Ensure .net Framework is up to date, click here for latest
NOTE: Remove previous versions using Settings->Apps->Spludlow
Tetris->Uninstall OR Control Panel->Programs and
Windows 64-bit the easy to use MSI (Microsoft Installer) is available here.
You may have to get round Windows / Browser security as the
program is not yet commonly downloaded.
binaries (without an Installer) and source code see the Spludlow Downloads
The Library (DLL) containing all the code project name is
“Spludlow.Tetris”, the UI project name is “SpludlowTetris”.
NOTE: 32 Bit Windows will run Spludlow Tetris (download the
“SpludlowTetris” project binaries), just ensure the .net framework is up to
Play On-Line now!
You can play other people on the Tetris Server at:
NOTE: This server is currently open for any connections.
This may not always be the case.
Please do the following.
Start Spludlow Tetris (By default it will start a local host
server and connect to it)
Press F1 – Settings Dialogue
Click the “Stop Server” button, the dialogue will close
Click “OK” on the Server Stopped Message Box
Press F1 again
Enter your display name
Enter the hostname: tetris.spludlow.co.uk
Click the “Start Client” button, the dialogue will close
You are in play, use the target key “A” to change who you send
short video of this can be viewed here
Written in C# the source code is open source available under
the GNU v3 licence.
the source code here
to compile Visual Studio Projects are available from the Spludlow downloads
Spludlow Tetris – 8 Player Desktop
Running on one computer, if you have the joysticks.
Spludlow Tetris – 300 Bot Farm
An example of a load test to stress the server.
Spludlow Tetris – Board Size
You can run the server with whatever board size you like.
Spludlow Tetris – 20 Client Overload
Here the clients CPU was maxed out with this test.
Spludlow Tetris Server Modes
Spludlow Tetris – Standard Mode
Spludlow Tetris – Creative Mode
Here is the server running in “Creative Mode” (use a server
tick of 0):
Spludlow Tetris – Battle Royale Mode
In this mode all players play to the death, leaving one
player standing at the end who is the winner.
The game is started in standard mode all contenders are
given the opportunity to connect to the server, set up their controls, and warm
up with a friendly game.
When everyone is ready the “BR” command is sent to the
server, this resets all players boards and the match is started.
Players play as in standard mode targeting other players and
sending them lines. When a player dies they are removed from the game but stay
connected to the server so they can watch the remaining players, by changing
the target board.
When only one player is left they are declared the winner
and the server returns to standard mode.
Spludlow Tetris – Levels Server Mode (Coming Soon)
The current implementation is pretty much as simple as a
multiplayer game can be, keep it simple to start with and build from there.
The new server mode will work like this:
Each player is in a level, they start at 0 when they join the
Levels are progressed by the number of lines sent (say 50), when
you send 50 lines you go to level 1
Each level will have a faster tick speed (say 50 milliseconds
You can only send lines to players on your level
Level 0 will have a maximum number of players (say 50) and not
allow additional new connections (until players have progressed out of level
Other levels (over 0) will not have player limits.
If you die in level 0 you are kicked off the server.
If you die from level 1 (maybe higher) or higher you are put in
This should allow for many players competing against players
of similar ability on the same server.
I’ve thought it through, just got to bang the code out.
00/00/2019 – V1.9
Added Battle Royale Mode
07/12/2018 – V1.8
Rewrite of Spludlow Tetris UI using WPF (Windows
Presentation Foundation). All board flicker is now removed and board drawing
code simplified, just change colour of rectangles rather than using Graphics to
draw directly to form.
Settings are now persisted to files in “C:\Users\%USERNAME%\AppData\Roaming\SpludlowV1\SpludlowTetris”
for each running instance. For example if you setup 2 players the target
server, display name, window size and position, and input device will already
be configured the next time you start 2 instances.
Settings dialogue improved now allows key mappings to be
The F2 key will now cycle through input devices to make
selection of joystick easy for each instance.
class thread safety using SharpDX.XAudio2 fixed not waiting for buffer to flush
before submitting new buffer, test methods created for extreme loading.
class tweaked for auto-repeat to behave more like the keyboard and fixed to
allow input devices to be removed without throwing and exception.
15/10/2018 – V1.7