[Extension] arcade-second-screen

Hey folks!

Thanks to the research performed by MakeCode Scientist @WoofWoof, I’ve created an extension that lets you take advantage of the ability to have more than one screen on multiplayer. I present: riknoll/arcade-second-screen!

From the README:

A MakeCode Arcade extension that allows you to have two screens in online multiplayer games: one for player 1 and one for players 2-4. This extension is perfect for 1v1 games and asymmetric 1v2 or 1v3 games!

With this extension, you can:

  • Create sprites that only render on one screen or the other
  • Create two cameras that follow different sprites
  • Set different background images/colors for different screens

Note: There is no way to have more than 2 screens or to allocate the screens differently (e.g. players 1+2 on one screen and players 3+4 on the other). There will always be one screen for player 1 and one for all of the other players. This is due to how MakeCode Arcade’s online multiplayer is implemented and there is no way to workaround it.

And here’s an obligatory demo game:

And here’s another demo game that has a tilemap and separate cameras for the players:

25 Likes

Does this allow a second screen to have a custom resolution?

7 Likes

The multiplayer system does not allow custom screen resolutions.

8 Likes

Wow! This a great discovery by @WoofWoof and for posting it, @richard!

4 Likes

this is so awesome…

7 Likes

Was I dozing off during the stream? I swear y’all didn’t finish this during the stream runtime.
Buy anyway… Quite the BIGGEST invention of MakeCode Arcade history.

7 Likes

ALREADY??? This right here isnt just an extension, this is…

5 Likes

i finished it after stream!

9 Likes

i can finally reset in peace thank @richard and @WoofWoof but also how was this possible because wasent this built for make code only 1 camera

5 Likes

Every screen update, the host sends a copy of the screen to all the other people. We just make it send a different screen instead and remove the loop that sends the normal screen.

5 Likes

This is super cool! I can imagine so many things that are possible that werent possible before. Only limitation is that its for two players only, not four, but still, this is extremly usefull. I have so many ideas on how this could be used.

3 Likes

an interesting bit of code in the multiplayer bit. I wouldn’t know though, woofy or Richard, correct me if I’m wrong.

3 Likes

ohhhh I think I saw something like that on the Chess video by matbatwings on YouTube for minecraft

1 Like

I can rest peacefully now

1 Like

interesting…
Captura de pantalla 2025-11-20 103445

it won’t be "One"body edits for much longer

2 Likes

Richard if you really don’t want to cast as any, you can do this:

function unregisterMultiplayerHandler() {
    for (let handler of game.currentScene().eventContext['frameCallbacks']) {
        if (handler.order == 210) {
            game.currentScene().eventContext.unregisterFrameHandler(handler)
        }
    }
}
4 Likes

This, along with split screen, is peak.

I’ve also made use of this and made an online version of survive mr wegawobble.

3 Likes

Now all it needs is a little extra programming and we can get 4 player different screen games

3 Likes

Please! I am trying to make a game that requires this to be done!

1 Like

that may be a while bc

  1. The host does all the work
  2. it’s only host and non-host, not p1 p2 p3 etc
4 Likes