Welcome to Awesome Arcade Extensions
This is a list of MakeCode Arcade extensions that I find super useful (or just plain cool) in my projects.
Please note that this website is not developed, affiliated, or endorsed by Microsoft, the owner of MakeCode Arcade.
Built-in extensions
These extensions are already built in to the editor, all you have to do is go to the toolbox, click on Extensions
, and click on the extension you want to import!
arcade-sprite-data
Made by microsoft
It's local variables, but for sprites! Super useful for saving certain attributes of a sprite like the health of an enemy. This will add a section full of blocks called Data
under the Sprites
category in the toolbox.
arcade-timers
Made by microsoft
It's literal multithreading! Set up a callback for your code or run it in a separate fiber (thread) with this extension! This will add another category in the toolbox called Timer
.
pxt-settings-blocks
Made by microsoft
Save data in an easy-to-use JSON-like format, now available for the block users! This will add another category in the toolbox called settings
.
pxt-color
Made by jwunderl
Want some cool fade-in and fade-out effects for your cutscenes? Or want to change the default colors at runtime? This is the extension for you! This extension goes together nicely with the Story extension linked down below. This will add another category in the toolbox called Color
.
pxt-button-combos
Made by jwunderl
A simple-to-use extension that allows you to have handlers when buttons are pressed in a certain order. Great for a dancing game! This extension adds a section called Combos
in the Controller
category.
arcade-minimap
Made by microsoft
Want a map for your tilemap? You've come to the right extension! This will take your tilemap and scale it down to a specified ratio—you can also add sprites that will be drawn on top of the map! This extension adds a new category called Minimap
in the toolbox.
arcade-grid
Made by microsoft
Have an extension do that hard work of aligning sprites to a tilemap! This will add a new category called Grid
.
arcade-storytelling
Made by microsoft
The new and improved arcade-story
now part of the built-in extensions with new improvements! This will add a category called Story
in the toolbox. Note the old story extension is not compatible at all with this one!
arcade-tile-util
Made by microsoft
This is the updated tilemap extension allows you to do a lot more with tiles animate them move them and much, much more...
pxt-raycasting
Made by AqeeAqee
Ray casting has been implemented in many projects before, but this extension brings along a blocks API, allowing ray-casting games in blocks! Many new features have been added (saying text, jumping), and it has also been added as a built-in extension! This extension adds a 3D Render
category to the toolbox!
arcade-text
Made by microsoft
Easily add text in the form of sprites to your game with this extension! It gives a plethora of options to customize your text, plus with Unicode support! (At the expense of the text being larger) This extension adds a Text Sprite
category.
character-animations
Made by riknoll
A version of the Animation
extension but much easier to handle if your sprites (Ex. main player) has a lot of different movements, like moving up, down, left, and right. The character-animations
extension will automatically start and stop animations depending on what the player is doing. This will add another category in the toolbox called Character
.
Not built-in extensions
The following extensions, while just as good as the ones listed above, will require some slightly different steps while importing. First go to the toolbox, click on Extensions
, and you will see a text box that says Search or enter project URL...
This is where you will paste in the URL to the extension. The URL will be posted along with the extensions below.
arcade-tilemap-a-star
Made by jwunderl
Import this extension with the URL:Help your sprites find their way around your tilemaps with this extension! Just provide 2 locations on a tilemap, and it will automagically compute the fastest path between the 2 spots while also moving around walls using the A* algorithm! This will add another section in the Scene
category called Path Following
in the toolbox.
arcade-block-objects
Made by microsoft
Import this extension with the URL:OOP is no doubt an important topic in programming. This extension will help you make objects in blocks! Attach all sorts of data to an object, like numbers, strings, images, sprites, locations, and more! This will add a category in the toolbox called BlockObject
with 7 sub-categories.
arcade-story
Made by riknoll
Import this extension with the URL:Need some cutscenes with dialog? This extension is for you! Comes with a variety of blocks designed to make writing stories and scenes much easier. This extension pairs great with the pxt-color
extension linked above. This will add a new category called Story
in the toolbox.
arcade-split-screen
Made by riknoll
Import this extension with the URL:Playing MakeCode Arcade games with friends can be hard to do without a second device, without the split-screen extension! This extension allows the user to split the screen into two cameras, each following a different sprite. The extension adds a Split screen
category to the toolbox.
arcade-sprite-util
Made by jwunderl
Import this extension with the URL:As the name says, this extension has a bunch of utilities for sprites and more, especially anything dealing with trigonometry. This extension adds a new category called Sprite Utils
in the toolbox.
arcade-image-text
Made by pelikhan
Import this extension with the URL:Simple but sweet, this extension adds the very much-need blocks to print text onto images. This will add a new section called Text
under the Images category in the toolbox.
pxt-lantern
Made by felixtsu
Import this extension with the URL:Light up your games with this extension! It allows you to turn the lights on or off and add lanterns to sprites so that they have light around them when you turn the lights off. This will add 2 categories called Lantern
and Multilights
under the toolbox.
pxt-rtttl
Made by pelikhan
Import this extension with the URL:Play beautiful melodies encoded in the RTTTL language in MakeCode with this extension! You can use this website to turn your .midi
files into a RTTTL-compatible string of text! This extension adds a block in the Melody
section in the Music
category in the toolbox.
arcade-shader
Made by riknoll
Import this extension with the URL:Arcade games can get more realistic with shadows! This extension will add a category called Shaders
in the toolbox.
small-tilemaps
Made by riknoll
Import this extension with the URL:Easy access to a 8x8 tilemap in blocks! Note: If you're switching from a 16x16 to a 8x8 tilemap, don't forget to switch tiles in your code! And delete the 16x16 tiles in the tilemap editor, otherwise you're going to get really confused. This will add a block under the Tiles
section in the Scene
category.
Fast-Random-Blocks
Made by UnsignedArduino
Import this extension with the URL:Blocks for Fast Random! Have separate RNG objects for different aspects of your game, and with seeding! This will add a Random
category in the toolbox.
pxt-arcade-image-transform
Made by robo-technical-group
Import this extension with the URL:Rotate images with this extension! This works best with large images. Don't forget to enlarge the base image, so when it rotates, it has enough room to spin! This will add a Sprite Transforms
category in the Advanced
section of the toolbox.
pxt-password-save
Made by jacobcarpenter
Import this extension with the URL:Shove bytes and booleans into a string as a save code! This will add a category in the toolbox called Password Save
.
pxt-scaling
Made by jwunderl
Import this extension with the URL:This extension allows you to rotate and scale images. This extension adds a category called Scaling
in the toolbox.
Notifications
Made by UnsignedArduino
Import this extension with the URL:Shows and scrolls notifications like a sprite-say dialog but s c r e t c h e d out! It also supports variable speed and 8x8 icons! (Although it doesn't push notifications down when you display more than one at a time - you need to wait until the current notification is over otherwise you will cover it up - but there are blocks to wait for the notification to finish) This adds a category called Notification
.
Achievements
Made by UnsignedArduino
Import this extension with the URL:Your games can ascend to a new level with freaking achievements in MakeCode Arcade! Easily track and display achievements with this extension! This will add a category called Achievements
in the toolbox.
pxt-countup
Made by shakao
Import this extension with the URL:Stop hacking the built-in countdown in your code - it's ugly! Instead, use this extension which does the same thing for you in a nice little extension! This adds a section called Countup
in the Info
category.
pxt-sight
Made by felixtsu
Import this extension with the URL:Intelligent sight now comes to your sprites in MakeCode Arcade! This extension can help you detect whether one sprite can "see" another sprite with some math! (Much better than sending "see" sprites everywhere) This adds a section called Sprite Sight
in the toolbox.
smaller-tilemaps
Made by riknoll
Import this extension with the URL:Now we get 4x4, 2x2, and "1x1, at your own risk" tilemaps! Initialize a tilemap and use 4x4 or 2x2 or 1x1 images to manually draw your tiles by code. Note this extension was made in 1 hour, so it may be buggy and performance will not be as good as a 8x8 or 16x16 tilemap. This will add a Smaller Tilemaps
category.
arcade-background-scroll
Made by riknoll
Import this extension with the URL:Don't use a sprite to manually scroll the background—use this extension instead! It can scroll your background in with variable vx and vy too! This will add a Scroller
category in the toolbox.
pxt-image-morph
Made by UnicycleDumpTruck
Import this extension with the URL:"Morph" images in MakeCode Arcade! Very cool for switching between images and could be used in say, the reveal of a bad guy's true form! Also, useful for switching between images that are used as instructions instead of a snap change which is boring. This adds an Imagemorph
category in the toolbox.
grafxkid-tiles
Made by riknoll
Import this extension with the URL:Don't want to draw up a platformer tileset? @logic_lab on the MakeCode Forums has converted GrafxKid's tileset into MakeCode tiles, so you can use them as well! Comes in 4 different seasons and adds 4 new dropdown categorys in the tile category picker in the tilemap editor.
Inventory
Made by UnsignedArduino
Import this extension with the URL:Man, rendering inventories are a pain in the butt. Until you add this extension! This extension allows you to make items, (which can hold an image, a name, and more) toolbars, (like Minecraft hotbars) and inventories! This extension adds an Inventory
category in the toolbox.
Stats
Made by UnsignedArduino
Import this extension with the URL:The only reason this extension exists, so you can programmatically turn the FPS and sprite count on and off lol. This adds a Stats
category to your toolbox.
pxt-real-multiplayer
Made by distintiva
Import this extension with the URL:Makes coding multiplayer games over JACDAC easier! It works in the simulator as well! Note: At the time of writing, JACDAC for Arcade is in the middle of a rewrite so things are most likely broken. This will add a Real Multiplayer
category to the toolbox.
pxt-arcade-database
Made by distintiva
Import this extension with the URL:Extremely similar to the built-in settings-block
extension, this extension also allows you to save data like a database! This will add a Database
category.
TilemapPath
Made by UnsignedArduino
Import this extension with the URL:Don't manually place walls to make your A-star paths do what you want, use this! You can set a sprite to follow a path between tilemap locations and have handlers when they finish. Note that everytime you set a path, it will recalculate the paths using the A-star extension which can take a long time depending on how big the tilemap is and how many elements there are. This extension adds a TilemapPath
category.
ColorBlock
Made by UnsignedArduino
Import this extension with the URL:Imagine memorizing the values of colors in MakeCode Arcade. This extension will add a block at the very bottom of the Images
category.
arcade-camera-offset
Made by riknoll
Import this extension with the URL:This simple extension adds a block to the Scene
category that allows you to follow a sprite with the camera with an offset! Much better than hacking a sprite to always be off a certain amount.
RPGMuisic
Made by LucasMayhew
Import this extension with the URL:This extension adds another category called Music
which contains a block to play some (very nice) looping music made by @LucasMayhew!
Musical-Images
Made by UnsignedArduino
Import this extension with the URL:This extension allows you to easily add complex music to your games with a script! This adds a new category called MusicalImages
to your toolbox.
pxt-sound-effects
Made by klausw3
Import this extension with the URL:This extension allows custom sound effects other than the boring square wave! This adds a new category called Sound Effects
.
arcade-snapshot
Made by AqeeAqee
Import this extension with the URL:This extension allows you to take a screenshot of the screen, or a snapshot of the current tilemap and print it on the console! It will add a category called Snapshot
.
pxt-deltatime
Made by kiwiphoenix364
Import this extension with the URL:This small extension adds a category called Delta
which has a single block that exposes the delta time function in blocks, so projects that rely movement or time based on frames can work when the game is running slower than expected! Make sure to look at the example on how to use it!
pxt-blur
Made by kiwiphoenix364
Import this extension with the URL:This extension allows you to blur the screen in and out, just like the Colors extension does with fading! This adds a category called Blur
.
pxt-zoom
Made by kiwiphoenix364
Import this extension with the URL:This extension allows you to smoothly zoom in or out of the screen by calling a single block! A straightforward (0 < x < 1 for zoom out, and x > 1 to zoom in, and negatives for flipping screen upside down) extension that adds a Zoom
category in the toolbox.
arcade-sprite-events
Made by riknoll
Import this extension with the URL:The default sprite overlap and tilemap overlap blocks are called for every frame it is happening, which can lead to unexpected results. You can use a state variable to only run code when you start and stop overlapping sprites/tiles/areas, but that is annoying. This extension adds new blocks which make it great for advanced tilemap games or making sprite overlaps easier! This adds a category called Sprite Events
.
arcade-text
Made by AqeeAqee
Import this extension with the URL:This fork of the official extension adds multi-line support and fixes several bugs as well!
castletilesetvol1
Made by lucasmayhew
Import this extension with the URL:A beautiful set of tiles and images by @lucasmayhew fit for a game based on a castle! This adds a set of images and tiles to the gallery.
ArcadeMIDI
Made by UnsignedArduino
Import this extension with the URL:enums
Made by S0m3randomguy
Import this extension with the URL:Another simple yet sweet extension providing access to enums to block users! This adds an Enums
category.
bettersettings
Made by S0m3randomguy
Import this extension with the URL:A much-needed extension that adds more blocks to the block settings extension, allowing you to store even more data types, including arrays and images! This extension adds a category called BetterSettings
to the toolbox.
declutter
Made by S0m3randomguy
Import this extension with the URL:This extension adds simple dictionary/object-like functions to access an object where you can store sprites with a label, eliminating the need for tempSprite
and tempTitleSprite
and tempSelectorSprite
and tempTempTempSprite
and more! This adds a category called Declutter
.
pxt-clock
Made by Blobbey2000
Import this extension with the URL:You didn't know you needed this extension that provides blocks to manipulate a clock! No more variables and threads and string concatenations to make a simple clock, this extension eliminates all of those problems! Adds a Clock
category to the toolbox.
Experimental extensions
Shouldn't need an explanation.
"VERY UNSTABLE" - @livcheerful
arcade-soundtrack
Made by livcheerful
Import this extension with the URL:In this extension you can make soundtracks within images! But it is pretty confusing and "might break your game." This extension was made by @livcheerful in a hackathon.
Tools
Yes, this is about useful MakeCode Arcade extensions but these tools will level up your game-making experience!
Convert-Image-to-MakeCode-Arcade-Sprite
Made by kristianpedersen
Access this tool at:https://kristianpedersen.github.io/Convert-Image-to-MakeCode-Arcade-Sprite/
This tool will convert your images (like .png
files) to Arcade code! Simply copy the output, open JavaScript mode in your project, navigate to where you want the image block to go, and paste in the image code! You may need to remove some redundant characters. Remember that Arcade has a maximum image size of 500x500!
pxt-arcade-asset-tool
Made by riknoll
Access this tool at:https://riknoll.github.io/pxt-arcade-asset-tool/
This tool will also convert you images to Arcade code, but it also supports using 16-color palettes, in case you don't want to use the default palette! Simply copy the output, open JavaScript mode, navigate to where you want the image to go, and paste away! You may need to remove some redundant characters. Remember that Arcade has a maximum image size of 500x500!
arcade-sprite-pack
Made by shakao
Access this tool at:https://shakao.github.io/arcade-sprite-pack/
Have a bunch of images you want to send to someone, but they hate exercising their pinkie and pointer finger? This will convert a set of images into a MakeCode project that, when you import, will put the images into the image gallery! And as of December 2021, this tool has been updated to be even better than before, with support for animations, tiles, and tilemaps!
arcade-image-tools
Made by felixtsu
Access this tool at:https://felixtsu.github.io/arcade-image-tools/
The ultimate Arcade image manipulator! Rotate and flip your sprites with this!
arcade-font-renderer
Made by jacobcarpenter
Access this tool at:https://arcade-font-renderer.jacobcarpenter.com/
@jacobcarpenter on GitHub has written a neat tool that scrapes the MakeCode Forum's arcade section and shows the games in a gallery-like view! So you don't have to suffer and scroll through debug programs and tons of comments to find that dang link. You can also view the most liked-games of all-time and by author, like me, for example, hehe.
Image-to-MakeCode-Arcade
Made by UnsignedArduino
Access this tool at:https://github.com/UnsignedArduino/Image-to-MakeCode-Arcade
I have written a Python script that will turn images and multi-frame GIFs into MakeCode Arcade images and arrays! Note that this tools requires at least Python 3.9 on a computer, and command line knowledge is highly recommended!
ArcadeMIDIGenerator
Made by UnsignedArduino
Access this tool at:https://github.com/UnsignedArduino/ArcadeMIDIGenerator
I have written a Python script that will turn MIDI files into images compatible with the ArcadeMIDI extension! Note that this tools requires at least Python 3.9 on a computer, and command line knowledge is highly recommended!
ArcadeMIDIGeneratorOnline
Made by UnsignedArduino
Access this tool at:https://arcademidigeneratoronlinemain.gatsbyjs.io/
This is an online version of the ArcadeMIDI generator tool, removing the need for you to download/install the neccessary tools to convert MIDI files!