# \[Extension\] arcade-second-screen

**URL:** https://forum.makecode.com/t/extension-arcade-second-screen/44095
**Category:** Show & Tell
**Tags:** extension
**Created:** [May 21, 2026, 1:06am UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095 "2026-05-21T01:06:49Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![richard](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/richard/32/5417_2.png) [@richard](https://forum.makecode.com/u/richard)
#### Post date: [May 21, 2026, 1:06am UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/1 "2026-05-21T01:06:49Z")

</div>

Hey folks!

Thanks to the [research](https://forum.makecode.com/t/multiplayer-games-with-two-different-screens/44084) 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](https://github.com/riknoll/arcade-second-screen)!

> **[GitHub - riknoll/arcade-second-screen: A MakeCode Arcade extension for drawing a second...](https://github.com/riknoll/arcade-second-screen)**
>
> A MakeCode Arcade extension for drawing a second screen for players 2-4 in online multiplayer

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:

> **[rock-paper-scissors](https://arcade.makecode.com/S51049-44277-43860-55484)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

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

> **[second-screen-camera](https://arcade.makecode.com/S95407-84737-40652-59638)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

---

<div class="post-metadata">

### Author: ![CopySprite](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/copysprite/32/35475_2.png) [@CopySprite](https://forum.makecode.com/u/CopySprite)
#### Post date: [May 21, 2026, 2:15am UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/2 "2026-05-21T02:15:16Z")

</div>

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

---

<div class="post-metadata">

### Author: ![AlexK](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/alexk/32/33339_2.png) [@AlexK](https://forum.makecode.com/u/AlexK)
#### Post date: [May 21, 2026, 2:15am UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/3 "2026-05-21T02:15:59Z")

</div>

The multiplayer system does not allow custom screen resolutions.

---

<div class="post-metadata">

### Author: ![BitBot](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/bitbot/32/33272_2.png) [@BitBot](https://forum.makecode.com/u/BitBot)
#### Post date: [May 21, 2026, 2:16am UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/4 "2026-05-21T02:16:08Z")

</div>

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

---

<div class="post-metadata">

### Author: ![VoxelMaster64](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/voxelmaster64/32/32075_2.png) [@VoxelMaster64](https://forum.makecode.com/u/VoxelMaster64)
#### Post date: [May 21, 2026, 2:16am UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/5 "2026-05-21T02:16:15Z")

</div>

this is so awesome…

---

<div class="post-metadata">

### Author: ![redSprite](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/redsprite/32/34262_2.png) [@redSprite](https://forum.makecode.com/u/redSprite)
#### Post date: [May 21, 2026, 1:07pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/6 "2026-05-21T13:07:16Z")

</div>

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.

---

<div class="post-metadata">

### Author: ![Bilangus](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/bilangus/32/33219_2.png) [@Bilangus](https://forum.makecode.com/u/Bilangus)
#### Post date: [May 21, 2026, 1:07pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/7 "2026-05-21T13:07:23Z")

</div>

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

 ![Absolute Makecode20260521062102](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/5/a/5ac586469c2b17266b7e95ac1098d22486d767f0.jpeg)

---

<div class="post-metadata">

### Author: ![richard](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/richard/32/5417_2.png) [@richard](https://forum.makecode.com/u/richard)
#### Post date: [May 21, 2026, 1:07pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/8 "2026-05-21T13:07:42Z")

</div>

i finished it after stream!

---

<div class="post-metadata">

### Author: ![NeverStopTheCoder](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/neverstopthecoder/32/21194_2.png) [@NeverStopTheCoder](https://forum.makecode.com/u/NeverStopTheCoder)
#### Post date: [May 21, 2026, 6:31pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/9 "2026-05-21T18:31:15Z")

</div>

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

---

<div class="post-metadata">

### Author: ![WoofWoof](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/woofwoof/32/32523_2.png) [@WoofWoof](https://forum.makecode.com/u/WoofWoof)
#### Post date: [May 21, 2026, 7:20pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/10 "2026-05-21T19:20:43Z")

</div>

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.

---

<div class="post-metadata">

### Author: ![Soleb244](https://avatars.discourse-cdn.com/v4/letter/s/aeb1de/32.png) [@Soleb244](https://forum.makecode.com/u/Soleb244)
#### Post date: [May 21, 2026, 7:23pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/11 "2026-05-21T19:23:11Z")

</div>

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.

---

<div class="post-metadata">

### Author: ![Astro](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/astro/32/35479_2.png) [@Astro](https://forum.makecode.com/u/Astro)
#### Post date: [May 21, 2026, 7:25pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/12 "2026-05-21T19:25:42Z")

</div>

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

---

<div class="post-metadata">

### Author: ![NeverStopTheCoder](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/neverstopthecoder/32/21194_2.png) [@NeverStopTheCoder](https://forum.makecode.com/u/NeverStopTheCoder)
#### Post date: [May 21, 2026, 7:25pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/13 "2026-05-21T19:25:51Z")

</div>

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

---

<div class="post-metadata">

### Author: ![miguelsanto17598-gli](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/miguelsanto17598-gli/32/35185_2.png) [@miguelsanto17598-gli](https://forum.makecode.com/u/miguelsanto17598-gli)
#### Post date: [May 22, 2026, 4:36pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/14 "2026-05-22T16:36:49Z")

</div>

I can rest peacefully now

---

<div class="post-metadata">

### Author: ![codeFan413](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/codefan413/32/26855_2.png) [@codeFan413](https://forum.makecode.com/u/codeFan413)
#### Post date: [May 22, 2026, 4:36pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/15 "2026-05-22T16:36:52Z")

</div>

interesting…  
  ![Captura de pantalla 2025-11-20 103445](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/0/9/0900b0c60d8c258672e445546e27373f9d0cd9c2.png)

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

---

<div class="post-metadata">

### Author: ![WoofWoof](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/woofwoof/32/32523_2.png) [@WoofWoof](https://forum.makecode.com/u/WoofWoof)
#### Post date: [May 22, 2026, 4:36pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/16 "2026-05-22T16:36:55Z")

</div>

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

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

```

---

<div class="post-metadata">

### Author: ![mrmojangles49](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/mrmojangles49/32/33383_2.png) [@mrmojangles49](https://forum.makecode.com/u/mrmojangles49)
#### Post date: [May 22, 2026, 4:37pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/17 "2026-05-22T16:37:24Z")

</div>

This, along with split screen, is peak.

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

> **[survive mr wegawobble - makecode edition - Play as WegaWobble](https://arcade.makecode.com/S48329-64220-16821-19786)**
>
> your goal is to avoid this guy... except your friend is Mr WegaWobble.

---

<div class="post-metadata">

### Author: ![mrmojangles49](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/mrmojangles49/32/33383_2.png) [@mrmojangles49](https://forum.makecode.com/u/mrmojangles49)
#### Post date: [May 22, 2026, 7:39pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/18 "2026-05-22T19:39:18Z")

</div>

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

---

<div class="post-metadata">

### Author: ![undefined\_62796](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/undefined_62796/32/31874_2.png) [@undefined\_62796](https://forum.makecode.com/u/undefined_62796)
#### Post date: [May 22, 2026, 10:07pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/19 "2026-05-22T22:07:09Z")

</div>

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

---

<div class="post-metadata">

### Author: ![VoxelMaster64](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/voxelmaster64/32/32075_2.png) [@VoxelMaster64](https://forum.makecode.com/u/VoxelMaster64)
#### Post date: [May 22, 2026, 10:07pm UTC](https://forum.makecode.com/t/extension-arcade-second-screen/44095/20 "2026-05-22T22:07:12Z")

</div>

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

[Next page](https://forum.makecode.com/t/extension-arcade-second-screen/44095.md?page=2)
