In April 2019, from my work in Digit S.r.l. offices, CodyColor Multiplayer was born: a web app, accessible from any device that has a web browser, which lets anyone play and compete with their friends in a multiplayer game mode.

Over the last few years has been proposing games to use as tools to help teach coding in schools. The objective is to help children learn the basics of programming - coding - without needing to have an advanced knowledge of computer science and technology.

One of the more popular and appreciated games is CodyColor. More precisely, it's a coding method, which means it's a set of basic rules with which you can invent various gameplay methods.

The rules are the following: the game field is a standard 5x5 grid (virtually extendible to any dimension). Each box can be coloured with one of three different colors: yellow, red or grey. The grid can physically be built in any way, independently from the type of material used or dimension of the boxes.

Every player will then be able to control a robot, Roby, moving it within the grid based on the color of the box it's in:

  • If yellow, the robot will rotate 90° left on the spot;
  • If red, it will rotate 90° right on the spot;
  • A grey box will make Roby move forward.

Once the robot has rotated left or right it will continue to the next box, moving in the direction the it will be looking after the rotation.

We can go and define different gameplay modes following these simple rules, for example adding an exit from the grid and telling the students to find a path so that the robot will exit exactly in that point of the grid, or inviting the players to find the longest possible path, and so on. Imagination is the only limit: on the CodeMOOC platform there are a few of these gameplays.

Into the web!

Digit S.r.l., right from the beginning, has been involved in the project: it gives the platform various support and collaboration activities. Having seen the possibilities of CodyColor, we asked ourselves what we could do to make the game more accessible by students and teachers alike.

Our idea, simple yet effective, was to create a "plugged" implementation of the game. And so, in april 2019 CodyColor Multiplayer was born: a web app, accessible from any device that has a web browser, which lets anyone play and compete with their friends in a multiplayer game mode.

The game can be used by anyone since it's accessible like a website: it has complete multi-platform compatibility, letting users on different devices (like a smartphone or pc) challenge each other.

Rules & features

CodyColor Multiplayer uses the longest possible path as its gameplay challenge: every player will have to position their Roby in one of the squares of the 5x5 grid within a specific time limit. Whoever chose the starting point that makes Roby walk the longest path is the winner. In case of a draw, the player that chose the starting point for first will win. The winner will receive points for the win (2 points for each step on the grid, plus a maximum of 15 points depending on how quickly the robot was positioned) that will be summed with all the points of the previous games so there can be a winner even in a series of multiple matches.

Different matchmaking modes were developed based on this gameplay:

  • Random Game: the game itself will take care of the matchmaking, choosing a random adversary for each player, between the ones that are currently in the matchmaking lobby. The 2 players can then interact and play consecutive 1vs1 games.
  • Custom Game: each player can specify various aspects of the challenge, offering the possibility to invite an adversary and so choose who to play against.
  • Battle Royale: a custom game with everyone against everyone: it gives you the chance to challenge different users at the same time.
  • Practice Mode: you can hone your gaming skills with single player games, or against an AI with different difficulty levels.

An interesting aspect of the game is that is was developed using PWA (Progressive Web App) technologies: in other words, it was developed to emulate in all aspects le functionalities of a native app for mobile devices. This means that the game, for example, is accessible also offline, if it's a game mode that doesn't require internet connection (like the practice mode). On Android mobile devices that use Chrome, it can also be installed on the phone's launcher, so it will show up exactly like a native app.

Up to now, CodyColor Multiplayer is still in a Beta version: this means that the development team is still expanding the game's functionalities. There are many new features currently being developed, like the possibility to access a personal area to keep track of the gameplay history and the single scores, global rankings and other functions like a direct-elimination tournament.