# Wakanda Forever Game

## Overview

![](https://cdn-learn.adafruit.com/assets/assets/000/116/761/medium800/gaming_wf_main.jpg?1668992572)

https://youtu.be/0oHj4bO8Rfo

![](https://cdn-learn.adafruit.com/assets/assets/000/116/762/medium800thumb/gaming_wfgameplay.jpg?1668992588)

Code your own **Black Panther: Wakanda Forever** game using MakeCode Arcade!

Start with this [great tutorial](https://aka.ms/wakanda), and then customize or build your own totally new game using the excellent art assets provided.

The game build in this guide also includes optional NeoPixel Vibranium Gauntlet blasts when run on the PyGamer!

## Parts
Featured
### Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino

[Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino](https://www.adafruit.com/product/4242)
What&nbsp;fits in your pocket, is fully Open Source, and can run CircuitPython, MakeCode Arcade or Arduino games you write yourself? That's right, it's the **Adafruit PyGamer!** We wanted to make an entry-level gaming handheld for DIY gaming, and maybe a little...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4242)
[Related Guides to the Product](https://learn.adafruit.com/products/4242/guides)
![Angled shot of Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino.](https://cdn-shop.adafruit.com/640x480/4242-00.jpg)

Featured
### Adafruit NeoPixel LED Strip with 3-pin JST PH 2mm Connector

[Adafruit NeoPixel LED Strip with 3-pin JST PH 2mm Connector](https://www.adafruit.com/product/3919)
Plug in and glow, this **Adafruit NeoPixel LED Strip with JST PH Connector** has **30 total LEDs** in a **"60 LED per meter" spacing** , and is 0.5 meters long, in classy Adafruit Black. Its not too long, but has lots of glowing action.<a...></a...>

Out of Stock
[Buy Now](https://www.adafruit.com/product/3919)
[Related Guides to the Product](https://learn.adafruit.com/products/3919/guides)
![Adafruit NeoPixel LED Strip with 3-pin JST PH Connector lit up rainbow](https://cdn-shop.adafruit.com/640x480/3919-01.jpg)

If making a DIY NeoPixel Y-splitter, you'll need two JST PH 2mm 3-pin socket cables, and one JST PH 2mm 2-pin plug cable.

Featured
### JST PH 2mm 3-Pin Socket to Color Coded Cable - 200mm

[JST PH 2mm 3-Pin Socket to Color Coded Cable - 200mm](https://www.adafruit.com/product/4046)
This cable will let you turn a JST PH 3-pin cable _socket_ into 3 individual tinned wires. These are great to match up with our JST 3-PH cables, for extending and connecting sensors or LEDs, and the wires are even color coded!

[We...](https://www.adafruit.com/product/3893)

In Stock
[Buy Now](https://www.adafruit.com/product/4046)
[Related Guides to the Product](https://learn.adafruit.com/products/4046/guides)
![Angled shot of JST PH 3-Pin Socket to Color Coded Cable - 200mm](https://cdn-shop.adafruit.com/640x480/4046-02.jpg)

Featured
### JST PH 2mm 3-pin Plug-Plug Cable - 100mm long

[JST PH 2mm 3-pin Plug-Plug Cable - 100mm long](https://www.adafruit.com/product/4336)
This cable is a little over 100mm / 4" long&nbsp;and fitted with JST-PH 3-pin connectors on either end.&nbsp;

We dig the solid and compact nature of these connectors and the latch that keeps the cable from coming apart easily. We're carrying these to <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/4336)
[Related Guides to the Product](https://learn.adafruit.com/products/4336/guides)
![Angled shot of JST PH 3-pin Plug-Plug Cable - 100mm long.](https://cdn-shop.adafruit.com/640x480/4336-01.jpg)

Featured
### Mini Oval Speaker with Short Wires - 8 Ohm 1 Watt

[Mini Oval Speaker with Short Wires - 8 Ohm 1 Watt](https://www.adafruit.com/product/4227)
Hear the good news! This wee speaker&nbsp;is&nbsp;a&nbsp;great addition to any audio project where you need 8 ohm impedance and 1W or less of power. We particularly like this&nbsp;speaker&nbsp;as it is&nbsp;small and comes with nice skinny wires with a connector on the end. It has a handy...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4227)
[Related Guides to the Product](https://learn.adafruit.com/products/4227/guides)
![Mini Oval Speaker with Short Wires ](https://cdn-shop.adafruit.com/640x480/4227-06.jpg)

Featured
### Lithium Ion Polymer Battery with Short Cable - 3.7V 350mAh

[Lithium Ion Polymer Battery with Short Cable - 3.7V 350mAh](https://www.adafruit.com/product/4237)
Lithium-ion polymer (also known as 'lipo' or 'lipoly') batteries are thin, light, and powerful. The output ranges from 4.2V when completely charged to 3.7V. This battery has a capacity of 350mAh for a total of about 1.3 Wh. If you need a larger (or smaller!) battery, <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/4237)
[Related Guides to the Product](https://learn.adafruit.com/products/4237/guides)
![Lithium Ion Polymer Battery 3.7v 350mAh with JST 2-PH connector and short cable](https://cdn-shop.adafruit.com/640x480/4237-04.jpg)

Featured
### Adafruit PyGamer Acrylic Enclosure Kit

[Adafruit PyGamer Acrylic Enclosure Kit](https://www.adafruit.com/product/4238)
You've got your PyGamer, and you're ready to start jammin' on your favorite arcade games. You gaze adoringly at the charming silkscreen designed by Ada-friend PaintYourDragon.&nbsp;The nostalgia is palpable!

Cradling the PCB in your hands, you realize there's something...

In Stock
[Buy Now](https://www.adafruit.com/product/4238)
[Related Guides to the Product](https://learn.adafruit.com/products/4238/guides)
![Enclosure pieces and black, plastic hardware for a DIY handheld game console.](https://cdn-shop.adafruit.com/640x480/4238-00.jpg)

Featured
### Plastic Button Caps For Square Top (10-pack) - 8mm Diameter

[Plastic Button Caps For Square Top (10-pack) - 8mm Diameter](https://www.adafruit.com/product/4228)
These Reese's Piece's lookin' bits fit perfectly on top of tactile buttons with 2.4mm square tops and give a satisfying 8mm diameter surface area for your fingers to press.  
  
You get 10 candy-colored round caps. You get two of each color: **red, yellow, white,...**

In Stock
[Buy Now](https://www.adafruit.com/product/4228)
[Related Guides to the Product](https://learn.adafruit.com/products/4228/guides)
![Angled shot of 10 plastic button caps colored reddish-orange, yellow, white, and black.](https://cdn-shop.adafruit.com/640x480/4228-04.jpg)

 **or:**

Featured
### Adafruit PyGamer Starter Kit

[Adafruit PyGamer Starter Kit](https://www.adafruit.com/product/4277)
**Please note: you may get a royal blue _or_ purple case with your starter kit (they're both lovely colors)**

What&nbsp;fits in your pocket, is fully Open Source, and can run CircuitPython, MakeCode Arcade or Arduino games you write yourself? That's right,...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4277)
[Related Guides to the Product](https://learn.adafruit.com/products/4277/guides)
![Adafruit PyGamer Starter Kit with PCB, enclosure, buttons, and storage bag](https://cdn-shop.adafruit.com/640x480/4277-08.jpg)

# Wakanda Forever Game

## Code the Game

![](https://cdn-learn.adafruit.com/assets/assets/000/116/760/medium800thumb/gaming_wfgameplay.jpg?1668812168)

## Start Here

If you're new to MakeCode Arcade, check out [this intro](https://www.microsoft.com/en-us/makecode/teach/arcade?rtc=1) as well as some of these [Learn Guides on making games with MakeCode Arcade](https://learn.adafruit.com/search?q=makecode%2520arcade).

You can also check out this great [video playlist from Microsoft's MakeCode team](https://youtube.com/playlist?list=PLMMBk9hE-SeoU2gS3trU9gRKbX0hX8p7O), as well as the [MakeCode Arcade Game of the Week series.](https://www.youtube.com/playlist?list=PLjF7R1fz_OOUpC_QY_Y5CmPKm-a5Cg4Qo)

## Wakanda Forever Game

Click the button below to open the game in the MakeCode Arcade site in your web browser (it should open into a new window).

[Wakanda Forever Game](https://makecode.com/_HXkggf4dD8H6)
You can play the game in the browser and then continue below if you want to see how it's made and customize it.

Click on the **Edit Code** button in order to customize the code.

![gaming_editor.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/752/medium640/gaming_editor.jpg?1668804726)

![](https://cdn-learn.adafruit.com/assets/assets/000/116/736/medium800/gaming_wfgame1.jpg?1668799186)

## Extensions

Some extensions are used to add functionality to the program. From the Advanced category section, in the Extensions item, the following are added:

- **Sprite scaling** to allow re-sizing of the character sprites
- **Background scroll** to create multi-plane camera background layers
- **Light** to use NeoPixel strips
- **Feather** to add the Feather pins necessary to plug NeoPixel strips into the PyGamer hardware

![gaming_ext4.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/756/medium640/gaming_ext4.jpg?1668811282)

![gaming_ext3.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/757/medium640/gaming_ext3.jpg?1668811301)

![gaming_ext1.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/758/medium640/gaming_ext1.jpg?1668811329)

![gaming_ext2.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/759/medium640/gaming_ext2.jpg?1668811348)

## Title Sequence Function

A function called **title sequence** is used to place all of the opening title blocks in a single place that can be called from the main startup block when the game begins.

The text sprite blocks create the three lines of text, "Black Panther", "WAKANDA", and "FOREVER".

The sound block creates an ascending alert tone.

![gaming_wfg2.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/737/medium640/gaming_wfg2.jpg?1668800156)

## BG Layers Setup Function

Using the Background Scroll extension, a set of different background layers are created -- these were extracted from the tutorial image using copy, paste, and erase!

This give the game the illusion of depth using the parallax effect.&nbsp;

![gaming_wfg3.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/738/medium640/gaming_wfg3.jpg?1668800188)

## NeoPixel Setup Function

Add the **Light** extension to MakeCode Arcade.&nbsp;

First, open the Advanced category section and click on the Extensions item.

Next, click on the&nbsp; **light&nbsp;** extension, which adds the blocks we need.

Click the&nbsp; **Light&nbsp;** category to see the available blocks. Now you can click on the "..." category under Light to get the NeoPixel strip blocks.

Create a function called **NeoPixel setup** and add the strip blocks shown here.

![gaming_wfg4.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/739/medium640/gaming_wfg4.jpg?1668800214)

![gaming_MakeCode_Arcade_17.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/753/medium640/gaming_MakeCode_Arcade_17.jpg?1668810047)

![gaming_MakeCode_Arcade_and_Adafruit_Learning_System.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/754/medium640/gaming_MakeCode_Arcade_and_Adafruit_Learning_System.jpg?1668810067)

![gaming_MakeCode_Arcade_18.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/755/medium640/gaming_MakeCode_Arcade_18.jpg?1668810090)

## Vibranium Gauntlet Blast Function

This function will be called when the NeoPixel strand shoots a blast -- this is done by advancing the bright "photon" pixel by three, and doing so ten times. The strand has 30 LEDs, so this will blast forward through the whole strip.

![gaming_wfg5.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/740/medium640/gaming_wfg5.jpg?1668800261)

## Character Setup Function

In this function, the two character sprites are created and defined as " **player**" and " **enemy**", which are tags that are used for other behaviors later.

The character sprites are then scaled up in size to make them appear bigger on screen.

Shuri's position is set at the start, and the " **stay on screen**" flag is set **on** so she can't be moved off screen.

Namor is set to follow Shuri with a speed of 40.

Finally, Shuri is set to be controlled with the d-pad at a velocity of 100 on x and 220 on y.

![gaming_wfg6.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/741/medium640/gaming_wfg6.jpg?1668800300)

## On Start

The&nbsp; **on start** loop runs once at the beginning of the game to set up or run a number of commands and functions.

The&nbsp; **started&nbsp;** flag is set to&nbsp; **false** in order to prevent the&nbsp; **a button&nbsp;** from firing projectiles until the game has started.

The&nbsp; **title sequence function&nbsp;** is run, followed by the&nbsp; **BG setup function.**

Then, after a short pause, the title text sprites are removed from the screen, and then a&nbsp; **long text&nbsp;** is shown that says " **Battle Namor! But don't get hit!!**".

The&nbsp; **character setup&nbsp;**** function&nbsp;**is run, and Shuri's life counter is set to 10.

The&nbsp; **started&nbsp;** variable is set to&nbsp; **true,&nbsp;** and then the&nbsp; **NeoPixel setup** and&nbsp; **Vibranium Gauntlet blast functions&nbsp;** are called.

![gaming_wfg9.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/744/medium640/gaming_wfg9.jpg?1668800371)

## Namor Projectile Loop

All&nbsp; **forever** loops are run continuously once the game has started. This one is used to have Namor fire projectiles at Shuri at a randomized interval.

![gaming_wfg10.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/745/medium640/gaming_wfg10.jpg?1668800415)

## Namor Motion Constraint

Since the **follow&nbsp;** loop is running constantly to have Namor move toward Shuri in both x and y, we want to limit that motion to only the y axis. This is done here by setting Namor's x position to 138 constantly.

![gaming_wfg11.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/746/medium640/gaming_wfg11.jpg?1668800456)

## Fire Button

Whenever the&nbsp; **A&nbsp;** button is pressed, the check is made to see if the game has started **&nbsp;** (based on the state of the&nbsp; **started&nbsp;** variable).

Then, if that check passes, a projectile is emitted from Shuri's sprit, and sent on the x-axis at a velocity of 225 vx.

When the projectile hits a wall or sprite it is destroyed.

Each time the projectile is fired the&nbsp; **Vibranium Gauntlet blast function&nbsp;** is called to light up the NeoPixel strip.

![gaming_wfg12.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/747/medium640/gaming_wfg12.jpg?1668800496)

## Shuri Hit

If Shuri is hit by Namor's projectile, her life count decrements by one, a sound effect is played, and Namor's position is reset to a random location on the y-axis.

![gaming_wfg13.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/748/medium640/gaming_wfg13.jpg?1668800534)

## Namor Hit

When Namor is hit by Shuri's projectile, the score is incremented by 1, a sound effect is played, and Namor's position is reset.

![gaming_wfg14.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/749/medium640/gaming_wfg14.jpg?1668800562)

## Shuri Wins

When the score reaches 10, the player wins! Namor is destroyed, a "We are safe!" text is displayed, and Shuri proclaims, "WAKANDA FOREVER".

Then, the confetti effect plays, and the game is set to over with the WIN condition.

![gaming_wfg15.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/750/medium640/gaming_wfg15.jpg?1668800598)

## Next Steps

Ready to up your game? For an added challenge, now try to add features, such as extra life power-ups, add new levels, and adjust the difficulty!

# Wakanda Forever Game

## Build the PyGamer Case

![](https://cdn-learn.adafruit.com/assets/assets/000/076/820/medium800/gaming_4238-07.jpg?1560235214)

Here's how to assemble the laser cut acrylic case for the PyGamer. The kit comes with seven pieces of acrylic, and four screws and nuts. You've got ten button caps to pick from (you'll pick four), and you'll also want to connect the speaker and battery for the full portable experience.

![](https://cdn-learn.adafruit.com/assets/assets/000/076/824/medium800/gaming_untitled_0006_2k.jpg?1560235438)

## Prep

If you haven't already, remove the clear plastic screen protector film from the PyGamer display.

![gaming_untitled_0002_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/822/medium640/gaming_untitled_0002_2k.jpg?1560235390)

![gaming_untitled_0004_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/823/medium640/gaming_untitled_0004_2k.jpg?1560235399)

## Paper Protection

Remove the protective paper backing from both sides of all the acrylic pieces.

![gaming_untitled_0008_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/826/medium640/gaming_untitled_0008_2k.jpg?1560235477)

![gaming_untitled_0009_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/827/medium640/gaming_untitled_0009_2k.jpg?1560235486)

![gaming_untitled_0015_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/828/medium640/gaming_untitled_0015_2k.jpg?1560235507)

## Speaker

Plug the speaker into the speaker port on the PyGamer.

Then, remove the white oval plastic ring to expose the adhesive and press the speaker to the PyGamer where the silkscreen oval outline indicates.

![gaming_untitled_0020_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/829/medium640/gaming_untitled_0020_2k.jpg?1560235625)

![gaming_untitled_0022_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/830/medium640/gaming_untitled_0022_2k.jpg?1560235632)

![gaming_untitled_0024_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/831/medium640/gaming_untitled_0024_2k.jpg?1560235640)

## Battery

Plug the battery into the on-board connector. Very carefully, bend the wires so that the battery fits the spot shown.

![gaming_untitled_0025_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/832/medium640/gaming_untitled_0025_2k.jpg?1560235663)

![gaming_untitled_0027_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/833/medium640/gaming_untitled_0027_2k.jpg?1560235671)

![gaming_untitled_0029_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/834/medium640/gaming_untitled_0029_2k.jpg?1560235680)

## Button Caps

Pick four of the button caps and click them into place on the square shafts of the buttons. Which color combo will you choose?!

![gaming_untitled_0030_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/835/medium640/gaming_untitled_0030_2k.jpg?1560235755)

![gaming_untitled_0031_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/836/medium640/gaming_untitled_0031_2k.jpg?1560235762)

![gaming_untitled_0034_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/837/medium640/gaming_untitled_0034_2k.jpg?1560235771)

## Case Layers

The case assembly is pretty simple. Place the clear top side piece on as shown.

Next, place the smoked gray piece on.

![gaming_untitled_0035_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/838/medium640/gaming_untitled_0035_2k.jpg?1560235904)

![gaming_untitled_0037_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/839/medium640/gaming_untitled_0037_2k.jpg?1560235910)

## Spacers

Flip the board over, then place the four spacer pieces onto the back as shown.

![gaming_untitled_0039_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/840/medium640/gaming_untitled_0039_2k.jpg?1560235954)

![gaming_untitled_0040_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/841/medium640/gaming_untitled_0040_2k.jpg?1560235961)

## Backing

The last piece to go on is the thin bottom layer with the Feather header cutouts.

![gaming_untitled_0041_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/842/medium640/gaming_untitled_0041_2k.jpg?1560235980)

## Fasteners

Push the four screws through from front to back, being sure they go through the holes in all layers and the PyGamer.

Screw on the nuts to secure things. Hand tight is fine -- you don't want to crack anything by using excessive force.

![gaming_untitled_0046_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/844/medium640/gaming_untitled_0046_2k.jpg?1560236029)

![gaming_untitled_0042_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/843/medium640/gaming_untitled_0042_2k.jpg?1560236021)

![](https://cdn-learn.adafruit.com/assets/assets/000/076/857/medium800/gaming_untitled_0047_2k.jpg?1560236156)

![](https://cdn-learn.adafruit.com/assets/assets/000/076/870/medium800/gaming_untitled_0049_2k.jpg?1560236203)

![](https://cdn-learn.adafruit.com/assets/assets/000/076/887/medium800/gaming_4238-06.jpg?1560236264)

That's all there is to it -- you're ready to play with your PyGamer in its excellent, stylish case!

# Wakanda Forever Game

## Play on PyGamer with Vibranium Blast Strips

https://youtu.be/0oHj4bO8Rfo

First, [follow this page](https://learn.adafruit.com/adafruit-pybadge/load-makecode-game-on-pybadge) to load the game onto your PyGamer or PyBadge.

Plug the NeoPixel strip into the 3-pin JST connector marked D3 as shown here.

![gaming_wf-9960.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/763/medium640/gaming_wf-9960.jpg?1669003164)

Turn on the PyGamer and the game will start. Once you get past the loading screens, the NeoPixels will light up.

![gaming_wf-9962.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/764/medium640/gaming_wf-9962.jpg?1669003309)

![](https://cdn-learn.adafruit.com/assets/assets/000/116/765/medium800/gaming_wf-9963.jpg?1669003352)

## Advance DIY Double Strand Hack
## Double Blasters

Despite being listed in the NeoPixel strip pin list, the D2 JST plug can't be used in MakeCode Arcade at the moment. However, there's another way to use double Vibranium Gauntlet blaster strips! Since NeoPixels can run in parallel, a DIY wire y-splice will do the trick. [See this guide](https://learn.adafruit.com/make-it-glow-how-to-solder-neopixels-a-beginners-guide/splicing-wires#step-3062814) for more on wire splicing.

Here, the ground, 3.3V and data pins from the D3 JST port have been spliced to two adapter cables.

By plugging in a pair of strips to the adapter, you get twice the NeoPixel action! They will run identically to each other, which works well in this case.

![gaming_wf-9958.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/767/medium640/gaming_wf-9958.jpg?1669003374)

![gaming_wf-9957.jpg](https://cdn-learn.adafruit.com/assets/assets/000/116/768/medium640/gaming_wf-9957.jpg?1669003556)

![](https://cdn-learn.adafruit.com/assets/assets/000/116/771/medium800/gaming_wf-9953.jpg?1669003576)


## Guide Products

### Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino

[Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino](https://www.adafruit.com/product/4242)
What&nbsp;fits in your pocket, is fully Open Source, and can run CircuitPython, MakeCode Arcade or Arduino games you write yourself? That's right, it's the **Adafruit PyGamer!** We wanted to make an entry-level gaming handheld for DIY gaming, and maybe a little...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4242)
[Related Guides to the Product](https://learn.adafruit.com/products/4242/guides)
### Adafruit NeoPixel LED Strip with 3-pin JST PH 2mm Connector

[Adafruit NeoPixel LED Strip with 3-pin JST PH 2mm Connector](https://www.adafruit.com/product/3919)
Plug in and glow, this **Adafruit NeoPixel LED Strip with JST PH Connector** has **30 total LEDs** in a **"60 LED per meter" spacing** , and is 0.5 meters long, in classy Adafruit Black. Its not too long, but has lots of glowing action.<a...></a...>

Out of Stock
[Buy Now](https://www.adafruit.com/product/3919)
[Related Guides to the Product](https://learn.adafruit.com/products/3919/guides)
### JST PH 2mm 3-Pin Socket to Color Coded Cable - 200mm

[JST PH 2mm 3-Pin Socket to Color Coded Cable - 200mm](https://www.adafruit.com/product/4046)
This cable will let you turn a JST PH 3-pin cable _socket_ into 3 individual tinned wires. These are great to match up with our JST 3-PH cables, for extending and connecting sensors or LEDs, and the wires are even color coded!

[We...](https://www.adafruit.com/product/3893)

In Stock
[Buy Now](https://www.adafruit.com/product/4046)
[Related Guides to the Product](https://learn.adafruit.com/products/4046/guides)
### JST PH 2mm 3-pin Plug-Plug Cable - 100mm long

[JST PH 2mm 3-pin Plug-Plug Cable - 100mm long](https://www.adafruit.com/product/4336)
This cable is a little over 100mm / 4" long&nbsp;and fitted with JST-PH 3-pin connectors on either end.&nbsp;

We dig the solid and compact nature of these connectors and the latch that keeps the cable from coming apart easily. We're carrying these to <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/4336)
[Related Guides to the Product](https://learn.adafruit.com/products/4336/guides)
### Mini Oval Speaker with Short Wires - 8 Ohm 1 Watt

[Mini Oval Speaker with Short Wires - 8 Ohm 1 Watt](https://www.adafruit.com/product/4227)
Hear the good news! This wee speaker&nbsp;is&nbsp;a&nbsp;great addition to any audio project where you need 8 ohm impedance and 1W or less of power. We particularly like this&nbsp;speaker&nbsp;as it is&nbsp;small and comes with nice skinny wires with a connector on the end. It has a handy...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4227)
[Related Guides to the Product](https://learn.adafruit.com/products/4227/guides)
### Lithium Ion Polymer Battery with Short Cable - 3.7V 350mAh

[Lithium Ion Polymer Battery with Short Cable - 3.7V 350mAh](https://www.adafruit.com/product/4237)
Lithium-ion polymer (also known as 'lipo' or 'lipoly') batteries are thin, light, and powerful. The output ranges from 4.2V when completely charged to 3.7V. This battery has a capacity of 350mAh for a total of about 1.3 Wh. If you need a larger (or smaller!) battery, <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/4237)
[Related Guides to the Product](https://learn.adafruit.com/products/4237/guides)
### Adafruit PyGamer Acrylic Enclosure Kit

[Adafruit PyGamer Acrylic Enclosure Kit](https://www.adafruit.com/product/4238)
You've got your PyGamer, and you're ready to start jammin' on your favorite arcade games. You gaze adoringly at the charming silkscreen designed by Ada-friend PaintYourDragon.&nbsp;The nostalgia is palpable!

Cradling the PCB in your hands, you realize there's something...

In Stock
[Buy Now](https://www.adafruit.com/product/4238)
[Related Guides to the Product](https://learn.adafruit.com/products/4238/guides)
### Plastic Button Caps For Square Top (10-pack) - 8mm Diameter

[Plastic Button Caps For Square Top (10-pack) - 8mm Diameter](https://www.adafruit.com/product/4228)
These Reese's Piece's lookin' bits fit perfectly on top of tactile buttons with 2.4mm square tops and give a satisfying 8mm diameter surface area for your fingers to press.  
  
You get 10 candy-colored round caps. You get two of each color: **red, yellow, white,...**

In Stock
[Buy Now](https://www.adafruit.com/product/4228)
[Related Guides to the Product](https://learn.adafruit.com/products/4228/guides)

## Related Guides

- [Introducing Adafruit PyGamer](https://learn.adafruit.com/adafruit-pygamer.md)
- [Facial Detection and Recognition with MEMENTO](https://learn.adafruit.com/facial-detection-and-recognition-with-memento.md)
- [Creating Slideshows in CircuitPython](https://learn.adafruit.com/creating-slideshows-in-circuitpython.md)
- [Milk Jug Glow Skull](https://learn.adafruit.com/milk-jug-glow-skull.md)
- [CYBERDECK Bonnet and HAT for Raspberry Pi 400](https://learn.adafruit.com/cyberdeck-bonnet-and-hat.md)
- [Motion Sensor Bat](https://learn.adafruit.com/motion-sensor-bat.md)
- [Circuit Playground Gizmo Ornaments](https://learn.adafruit.com/display-ornaments-with-circuit-playground.md)
- [TFT Gizmo Turtle](https://learn.adafruit.com/tft-gizmo-turtle.md)
- [CircuitPython Turtle Graphics](https://learn.adafruit.com/circuitpython-turtle-graphics.md)
- [Bluefruit TFT Gizmo ANCS Notifier for iOS](https://learn.adafruit.com/ancs-gizmo.md)
- [PyPaint Drawing Program In CircuitPython](https://learn.adafruit.com/pypaint.md)
- [Two Player Game System for PyGamer and RFM69HCW Radio Wing](https://learn.adafruit.com/two-player-game-system-for-pygamer-and-rfm69hcw-radio-wing.md)
- [Toddler Timer](https://learn.adafruit.com/toddler-timer.md)
- [Making oscilloscope images with DACs](https://learn.adafruit.com/dac-oscilloscope-images.md)
- [MakeCode Arcade Platformer Level Design](https://learn.adafruit.com/makecode-arcade-platform-level.md)
- [HalloWing Lightsabers](https://learn.adafruit.com/hallowing-lightsaber.md)
