Waternet - A net / netslide puzzle game

This is the Arduboy version of my Waternet game, which is a multiplatform puzzle game initially written for old consoles and handhelds like Game Boy (Color), Game Gear, Master System, Analogue Pocket and Mega Duck using the gbdk sdk. This a port with many changes to make it work for arduboy



Button Action
A Confirm in menu and level selector, rotate or slide action while playing
B Back in menu, level selector and game

Game Modes

The aim of the game, in any game mode is always to connect all pipes so that water can flow through them from the water point source. How you can accomplish this depends on the game mode. The game has a help section in the main menu where you can always check up on the rules of each game mode.

Rotate Mode

You need to connect all the pipes so water flows through them, by pressing the A button on a pipe, to rotate the single pipe.

Slide Mode

You need to connect all the pipes so water flows through them, by pressing the A on the arrows of a row or column. The row or column will move all pipes in the direction the arrow is pointing at.

Roslid Mode

You need to connect all the pipes so water flows through them, by pressing the A on the arrows of a row or column. The row or column will move all pipes in the direction the arrow is pointing at. You can also press the A on a pipe, to rotate the single pipe. This is a combination Rotate and Slide mode.

Arduboy FX bootloader menu image


Graphics (tiles), i converted using the Gimp Image Editor and the Gimp tilemap gb plugin from the gameboy tiles created in Game Boy Tile Designer and the titlescreen graphic is based on a modified title screen image from my waternet game i made for gp2x and windows. I designed the title screen in the Gimp Image Editor to just have the word waternet and the waterdrop. Afterwards i used Team ARG Cabi to convert the titlescreen to an RLE encoded bitmap as a constant.


Sound are single tones generated using the beepin2 class from Arduboy2 library


Music was made using Online Sequencer, i created single channel, non mixed music files and later converted this music to an array storing the frequencies of notes to be used on the arduboy. I got this idea from the sheep it up game developed by Dr. Ludos. He stored the frequencies to be used for the music notes in a array. So i used the same system and all i had todo was convert the music from onlinesequencer i made to such array (by hand) as well. The music is played using the Arduboy tones library

You can find the music files i used for the game below:


The game uses EEPROM for saving it’s progress, you can find and change these values in savestate.cpp

Start address End address Bytes used
493 505 13

Photo’s of the game running on real hardware


Waternet game concept is based on the Net and Netslide game from the Simon Tatham’s Portable Puzzle Collection, it’s my own implementation of these 2 game concepts mixed into one game

Libraries used

Tools used:

Source code:


This is excellent! I love puzzle games.

I have also added it to the cart!

Awesome game!!

Hell yeah custom font too!

Cool thanks, the easiest game mode is rotate, then roslid then slide. Slide is really really hard especially on bigger levels

thats fine thanks for that

thanks :slight_smile:

yeah the game is a port from a gameboy game i made and that was a port of a gp2x game (although i rewrote it completely). The gameboy sdk i used only had some default font if i remember correctly to use with print statements but i did not like it so designed my own in the gameboy tile program. There are actually 2 customn font’s i made, but to see the other font you’ll have to finish 25 levels in any difficulty or game mode :slight_smile: (or you could look on github for the assets)

Excellent game. It reminds me of one of my favorite Atari 8-bit games, Zenji. Got to load it on a real device and play a while now!


I bought an Gamebuino - meta, i was not aware gamebuino had a new version with color screen and other changes. So i started porting the arduboy version also to the gamebuino meta :slight_smile:

This is what i got from 1 night work, i based myself on the arduboy port i made here.


Nice works. 1 night of works. it’s fine and it’s show that you can learn to program on Arduboy, META, ESPboy, Pokitto, asw and that it’s fun any of these consoles have their advantages and it’s fine. Be sure that Roman will port it for ESPboy as soon as you’ll share META version. I hope someone will do same for Pokito too :wink:

1 Like

Oh there are more of such consoles ? all based on arduino ? nice will look them up.

But i might have to rethink the code base, it are all seperate versions with specific things and changes related to the system. I should have tried to make one codebase and build everything for all those handhelds from same codebase somehow but have no experiance with that

Pokitto isn’t programmed using Arduino. ESPboy uses Arduino.


It’s your first program for these harware so it’s fine that you don’t done all fine. It’s will say that after you’ll make another :wink:

When you beat a level the congratulations window covers the result. I would like to see it finished even for a second. Maybe it’s just me.

Very nice game!