After you start the game, you need to wait a few seconds to be connected to the multiplayer server. After you are connected, you can move your dot around. Your dot is black, and other people's dots are grey. You will also see other people's positions. You need to be Scratcher to use the game. Also, the game supports a maximum of eight users at the same time. In case you can't join, you will need to wait until other people leave.
The game uses cloud variables to store player's position. There are eight variables for eight players, one variable for cloud check, and one variable to standings, which is not used in this project. When the player joins the game, the program reserves the first free player variable. Each of the player variables stores player's position and username, both encoded as numbers. Also, it stores a random number which changes frequently to tell other players that the player is active. When the game is loaded, the dot is cloned for each player. In case if the player is not active, the dot will be hidden, and when it is active, the dot will be grey. These dots will always move to the position of their player. Also, the dark dot, the original sprite, always moves according to arrow keys and publishes its position to cloud. There is also support for cloud scoreboard. There is a custom block that adds the user into the scoreboard, which then correctly places the user into right place and updates publishes scoreboard. Scoreboard usernames are stored in one list and scores are stored in the other one. They are already in the right place so you just need to show them when needed. This project is meant to be reused for other games and projects, so feel free to remix it. As the implementation is also quite modular, you don't have to worry about most implementation details. The only big change you will need is in case you want to store more details in cloud variables. Implementation broadcasts different messages so you can use them to tell the user about specific things. Most variables and lists are local, so they don't clutter variables in other sprites. However, lists like player position, online players and scoreboard are globals as you will need them for implementation of other sprites.