Hardware components | ||||||
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
Software apps and online services | ||||||
![]() |
| |||||
Hand tools and fabrication machines | ||||||
| ||||||
| ||||||
| ||||||
| ||||||
|
I wanted to expand on my "Cat Away" MakeCode Arcade game, where you're a pile of fish bones trying to avoid the hungry cats that are coming your way. I first started the game with basic movement on the fish bones and cats spawning in from the corners. Ever since then, there have been some updates made; a background has been added, along with background music, and a condition for whenever you lose the game that it'll encourage you to try your best next time. I've also included the A and B buttons for added functionality to the game.
Tilting would move the fish in the corresponding directions; left, right, up, and down. Shaking would activate the A Button and completely flipping the controller over would be the B button.
With all those things said, when looking for ideas for my strange controller, I decided to expand on my game and while I thought the fish bones might not be an ideal idea, it proved to be an educational and eventful project. The head is about 20 stitches wide, then moving on down the ribs, it was 26, 16, and 8, with the tail keeping that final width. I employed familiar stitching techniques that I knew to give the fish its' dimensions. I had hoped to fill the ribs with stuffing but found the interior spacing too small to fit the filling. I instead just stitched the set of ribs together and allowed the tail to be a single piece just because of the way that stitching works and how narrow rows of stitches tend to curl. The spine was then attached to the head, fed through the ribs, and finally sewn onto the tail. The eyes were then crocheted and attached to the head, finishing the housing unit.
In the end, we're left with a pile of fish bones looking controller, ready to house the CPX. The CPX is then placed into the mouth of the fish and there are many ways to hold the fish to tackle the game with this unique controller. Two hands on the whole fish would make it more challenging but entertaining to play, while having both hands on the head and just moving the head would cause the body to move along with how you're moving the head piece.
Cat Away MakeCode Arcade Game
JavaScriptinfo.onCountdownEnd(function () {
if (info.score() <= 0) {
game.over(true)
} else if (info.score() > 0) {
game.splash("Good try!", "Now, avoid all the cats!")
game.over(false)
}
})
sprites.onOverlap(SpriteKind.Player, SpriteKind.Projectile, function (sprite, otherSprite) {
mySprite.startEffect(effects.bubbles, 200)
info.changeScoreBy(1)
})
let projectile: Sprite = null
let mySprite: Sprite = null
scene.setBackgroundImage(img`
6666688888888888888888888666668888888888888888888888888666668888888888888888888888888666668888888888888888888888888888888888888888888888888888888666668888888888
6666688888888888888888888666668888888888888888888888888666668888888888888888888888888666668888888888888888888888888888888888888888888888888888888666668888888888
6666688888888888888888888666668888888888888888888888888666668888888888888888888888888666668888888888888888888888888888888888888888888888888888888666668888888888
6666688888888888888888888666668888888888888888888888888666668888888888888888888888888666668888888888888888888888888888888888888888888888888888888666668888888888
6666688888888888888888888666668888888888888888888888888666668888888888888888888888888666668888888888888888888888888888888888888888888888888888888666668888888888
8888866666888888888866666888888888888888888888888888888666668888888888888888888888888666668888888888888888888888888888886666666666888888888888888888886666688888
8888866666888888888866666888888888888888888888888888888666668888888888888888888888888666668888888888888888888888888888886666666666888888888888888888886666688888
8888866666888888888866666888888888888888888888888888888666668888888888888888888888888666668888888888888888888888888888886666666666888888888888888888886666688888
8888866666888888888866666888888888888888888888888888888666668888888888888888888888888666668888888888888888888888888888886666666666888888888888888888886666688888
8888866666888888888866666888888888888888888888888888888666668888888888888888888888888666668888888888888888888888888888886666666666888888888888888888886666688888
8888888888666666666688888888888888888888888888888888888888886666688888888888888866666888888888888888888888888888888666668888888888666668888888888888888888866666
8888888888666666666688888888888888888888888888888888888888886666688888888888888866666888888888888888888888888888888666668888888888666668888888888888888888866666
8888888888666666666688888888888888888888888888888888888888886666688888888888888866666888888888888888888888888888888666668888888888666668888888888888888888866666
8888888888666666666688888888888888888888888888888888888888886666688888888888888866666888888888888888888888888888888666668888888888666668888888888888888888866666
8888888888666666666688888888888888888888888888888888888888886666688888888888888866666888888888888888888888888888888666668888888888666668888888888888888888866666
8888888888888888888888888888888888888888888888888888888888888888866666666666666688888888888888888888888888888866666888886666688888888886666688888888888888888888
8888888888888888888888888888888888888888888888888888888888888888866666666666666688888888888888888888888888888866666888886666688888888886666688888888888888888888
8888888888888888888888888888888888888888888888888888888888888888866666666666666688888888888888888888888888888866666888886666688888888886666688888888888888888888
8888888888888888888888888888888888888888888888888888888888888888866666666666666688888888888888888888888888888866666888886666688888888886666688888888888888888888
8888888888888888888888888888888888888888888888888888888888888888866666666666666688888888888888888888888888888866666888886666688888888886666688888888888888888888
8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888866666888888888888888888886666688888888888888888888
8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888866666888888888888888888886666688888888888888888888
8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888866666888888888888888888886666688888888888888888888
8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888866666888888888888888888886666688888888888888888888
8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888866666888888888888888888886666688888888888888888888
6666666666888888888888888888886666666666666666666688888888888888888888888888888866666666668888888888888888888888888666668888888888666668888888888888888888888888
6666666666888888888888888888886666666666666666666688888888888888888888888888888866666666668888888888888888888888888666668888888888666668888888888888888888888888
6666666666888888888888888888886666666666666666666688888888888888888888888888888866666666668888888888888888888888888666668888888888666668888888888888888888888888
6666666666888888888888888888886666666666666666666688888888888888888888888888888866666666668888888888888888888888888666668888888888666668888888888888888888888888
6666666666888888888888888888886666666666666666666688888888888888888888888888888866666666668888888888888888888888888666668888888888666668888888888888888888888888
6666688888666668888888888666668888888888888888888866666888888888888888888886666688888888886666688888888888888888888888886666666666888888888888888888888888888888
6666688888666668888888888666668888888888888888888866666888888888888888888886666688888888886666688888888888888888888888886666666666888888888888888888888888888888
6666688888666668888888888666668888888888888888888866666888888888888888888886666688888888886666688888888888888888888888886666666666888888888888888888888888888888
6666688888666668888888888666668888888888888888888866666888888888888888888886666688888888886666688888888888888888888888886666666666888888888888888888888888888888
6666688888666668888888888666668888888888888888888866666888888888888888888886666688888888886666688888888888888888888888886666666666888888888888888888888888888888
6666688888888886666666666888888888888888888888888888888666668888888888666668888888888666668888866666888888888888888888888888888888888888888888888888888888888888
6666688888888886666666666888888888888888888888888888888666668888888888666668888888888666668888866666888888888888888888888888888888888888888888888888888888888888
6666688888888886666666666888888888888888888888888888888666668888888888666668888888888666668888866666888888888888888888888888888888888888888888888888888888888888
6666688888888886666666666888888888888888888888888888888666668888888888666668888888888666668888866666888888888888888888888888888888888888888888888888888888888888
6666688888888886666666666888888888888888888888888888888666668888888888666668888888888666668888866666888888888888888888888888888888888888888888888888888888888888
6666688888888886666666666888888888888888888888888888888666668888888888666668888888888888888888866666888888888888888888888888866666666666666688888888888888888888
6666688888888886666666666888888888888888888888888888888666668888888888666668888888888888888888866666888888888888888888888888866666666666666688888888888888888888
6666688888888886666666666888888888888888888888888888888666668888888888666668888888888888888888866666888888888888888888888888866666666666666688888888888888888888
6666688888888886666666666888888888888888888888888888888666668888888888666668888888888888888888866666888888888888888888888888866666666666666688888888888888888888
6666688888888886666666666888888888888888888888888888888666668888888888666668888888888888888888866666888888888888888888888888866666666666666688888888888888888888
6666688888666668888888888666668888888888888888888866666888888888888888888886666688888888886666688888888888888888888888886666688888888888888866666888888888888888
6666688888666668888888888666668888888888888888888866666888888888888888888886666688888888886666688888888888888888888888886666688888888888888866666888888888888888
6666688888666668888888888666668888888888888888888866666888888888888888888886666688888888886666688888888888888888888888886666688888888888888866666888888888888888
6666688888666668888888888666668888888888888888888866666888888888888888888886666688888888886666688888888888888888888888886666688888888888888866666888888888888888
6666688888666668888888888666668888888888888888888866666888888888888888888886666688888888886666688888888888888888888888886666688888888888888866666888888888888888
6666666666888888888888888888886666666666666666666688888888888888888888888888888866666666668888888888888888888888888666668888888888888888888888888666668888888888
6666666666888888888888888888886666666666666666666688888888888888888888888888888866666666668888888888888888888888888666668888888888888888888888888666668888888888
6666666666888888888888888888886666666666666666666688888888888888888888888888888866666666668888888888888888888888888666668888888888888888888888888666668888888888
6666666666888888888888888888886666666666666666666688888888888888888888888888888866666666668888888888888888888888888666668888888888888888888888888666668888888888
6666666666888888888888888888886666666666666666666688888888888888888888888888888866666666668888888888888888888888888666668888888888888888888888888666668888888888
8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888866666888888888866666888888888888888888886666688888
8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888866666888888888866666888888888888888888886666688888
8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888866666888888888866666888888888888888888886666688888
8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888866666888888888866666888888888888888888886666688888
8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888866666888888888866666888888888888888888886666688888
8888888888888888888888888888888888888888888888888866666666666666666666666666666666666888888888888888888888888866666888886666688888888888888888888888886666688888
8888888888888888888888888888888888888888888888888866666666666666666666666666666666666888888888888888888888888866666888886666688888888888888888888888886666688888
8888888888888888888888888888888888888888888888888866666666666666666666666666666666666888888888888888888888888866666888886666688888888888888888888888886666688888
8888888888888888888888888888888888888888888888888866666666666666666666666666666666666888888888888888888888888866666888886666688888888888888888888888886666688888
8888888888888888888888888888888888888888888888888866666666666666666666666666666666666888888888888888888888888866666888886666688888888888888888888888886666688888
8888888888888888888888888888888888866666666666666688888888888888888888888888888888888666666666688888888888888866666888888888888888888888888888888888886666688888
8888888888888888888888888888888888866666666666666688888888888888888888888888888888888666666666688888888888888866666888888888888888888888888888888888886666688888
8888888888888888888888888888888888866666666666666688888888888888888888888888888888888666666666688888888888888866666888888888888888888888888888888888886666688888
8888888888888888888888888888888888866666666666666688888888888888888888888888888888888666666666688888888888888866666888888888888888888888888888888888886666688888
8888888888888888888888888888888888866666666666666688888888888888888888888888888888888666666666688888888888888866666888888888888888888888888888888888886666688888
8888888888888888888888888888886666666666888886666666666888888888888888888888888888888888886666666666888888888888888666668888888888888888888888888666668888888888
8888888888888888888888888888886666666666888886666666666888888888888888888888888888888888886666666666888888888888888666668888888888888888888888888666668888888888
8888888888888888888888888888886666666666888886666666666888888888888888888888888888888888886666666666888888888888888666668888888888888888888888888666668888888888
8888888888888888888888888888886666666666888886666666666888888888888888888888888888888888886666666666888888888888888666668888888888888888888888888666668888888888
8888888888888888888888888888886666666666888886666666666888888888888888888888888888888888886666666666888888888888888666668888888888888888888888888666668888888888
8888888888888888888888888666666666688888666668888866666888888888888888888888888888888888888888866666666668888888888888886666688888888888888866666888888888888888
8888888888888888888888888666666666688888666668888866666888888888888888888888888888888888888888866666666668888888888888886666688888888888888866666888888888888888
8888888888888888888888888666666666688888666668888866666888888888888888888888888888888888888888866666666668888888888888886666688888888888888866666888888888888888
8888888888888888888888888666666666688888666668888866666888888888888888888888888888888888888888866666666668888888888888886666688888888888888866666888888888888888
8888888888888888888888888666666666688888666668888866666888888888888888888888888888888888888888866666666668888888888888886666688888888888888866666888888888888888
8888888888888888888866666666668888888888666668888866666888888888888888888888888888888888888888888888666666666688888888888888866666666666666688888888888888888888
8888888888888888888866666666668888888888666668888866666888888888888888888888888888888888888888888888666666666688888888888888866666666666666688888888888888888888
8888888888888888888866666666668888888888666668888866666888888888888888888888888888888888888888888888666666666688888888888888866666666666666688888888888888888888
8888888888888888888866666666668888888888666668888866666888888888888888888888888888888888888888888888666666666688888888888888866666666666666688888888888888888888
8888888888888888888866666666668888888888666668888866666888888888888888888888888888888888888888888888666666666688888888888888866666666666666688888888888888888888
8888888888888888888866666888888888866666888888888866666888888888888888888888888888888888888888888888888888888866666888888888888888888888888888888888888888888888
8888888888888888888866666888888888866666888888888866666888888888888888888888888888888888888888888888888888888866666888888888888888888888888888888888888888888888
8888888888888888888866666888888888866666888888888866666888888888888888888888888888888888888888888888888888888866666888888888888888888888888888888888888888888888
8888888888888888888866666888888888866666888888888866666888888888888888888888888888888888888888888888888888888866666888888888888888888888888888888888888888888888
8888888888888888888866666888888888866666888888888866666888888888888888888888888888888888888888888888888888888866666888888888888888888888888888888888888888888888
8888888888888886666666666888886666688888888886666666666888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
8888888888888886666666666888886666688888888886666666666888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
8888888888888886666666666888886666688888888886666666666888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
8888888888888886666666666888886666688888888886666666666888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
8888888888888886666666666888886666688888888886666666666888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
8888888888888886666688888888888888888888666666666688888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888886666688888
8888888888888886666688888888888888888888666666666688888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888886666688888
8888888888888886666688888888888888888888666666666688888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888886666688888
8888888888888886666688888888888888888888666666666688888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888886666688888
8888888888888886666688888888888888888888666666666688888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888886666688888
8888888888888886666666666666666666666666666668888888888888888888888888888886666666666666666666688888888888888888888888888888888888888888888888888666666666666666
8888888888888886666666666666666666666666666668888888888888888888888888888886666666666666666666688888888888888888888888888888888888888888888888888666666666666666
8888888888888886666666666666666666666666666668888888888888888888888888888886666666666666666666688888888888888888888888888888888888888888888888888666666666666666
8888888888888886666666666666666666666666666668888888888888888888888888888886666666666666666666688888888888888888888888888888888888888888888888888666666666666666
8888888888888886666666666666666666666666666668888888888888888888888888888886666666666666666666688888888888888888888888888888888888888888888888888666666666666666
8888866666888888888888888888888888888888888888888888888888888888888888666668888888888888888888866666888888888888888888888888888888888888888888888888886666688888
8888866666888888888888888888888888888888888888888888888888888888888888666668888888888888888888866666888888888888888888888888888888888888888888888888886666688888
8888866666888888888888888888888888888888888888888888888888888888888888666668888888888888888888866666888888888888888888888888888888888888888888888888886666688888
8888866666888888888888888888888888888888888888888888888888888888888888666668888888888888888888866666888888888888888888888888888888888888888888888888886666688888
8888866666888888888888888888888888888888888888888888888888888888888888666668888888888888888888866666888888888888888888888888888888888888888888888888886666688888
6666666666666668888888888888888888888888888888888888888888888888866666888888888888888888888888888888666668888888888888888888888888666666666688888888888888888888
6666666666666668888888888888888888888888888888888888888888888888866666888888888888888888888888888888666668888888888888888888888888666666666688888888888888888888
6666666666666668888888888888888888888888888888888888888888888888866666888888888888888888888888888888666668888888888888888888888888666666666688888888888888888888
6666666666666668888888888888888888888888888888888888888888888888866666888888888888888888888888888888666668888888888888888888888888666666666688888888888888888888
6666666666666668888888888888888888888888888888888888888888888888866666888888888888888888888888888888666668888888888888888888888888666666666688888888888888888888
8888866666888888888888888888888888888888888888888888888888886666666666666666666666666666666666666666666666666688888888888888866666888888888866666888888888888888
8888866666888888888888888888888888888888888888888888888888886666666666666666666666666666666666666666666666666688888888888888866666888888888866666888888888888888
8888866666888888888888888888888888888888888888888888888888886666666666666666666666666666666666666666666666666688888888888888866666888888888866666888888888888888
8888866666888888888888888888888888888888888888888888888888886666666666666666666666666666666666666666666666666688888888888888866666888888888866666888888888888888
8888866666888888888888888888888888888888888888888888888888886666666666666666666666666666666666666666666666666688888888888888866666888888888866666888888888888...
`)
mySprite = sprites.create(img`
. . . . . . 1 1 1 . . . . . .
. . . . . 1 f 1 1 1 . . . . .
. . . . 1 1 1 1 1 1 1 . . . .
. . . . . . . 1 . . . . . . .
. . . . 1 1 1 1 1 1 1 . . . .
. . . 1 . . . 1 . . . 1 . . .
. . . . . 1 1 1 1 1 . . . . .
. . . . 1 . . 1 . . 1 . . . .
. . . . . . 1 1 1 . . . . . .
. . . . . 1 . 1 . 1 . . . . .
. . . . . . . 1 . . . . . . .
. . . . . . 1 1 1 . . . . . .
. . . . . 1 1 . 1 1 . . . . .
. . . . 1 . . 1 . . 1 . . . .
. . . . . 1 1 . 1 1 . . . . .
`, SpriteKind.Player)
controller.moveSprite(mySprite)
mySprite.setFlag(SpriteFlag.StayInScreen, true)
light.setAll(0xff0080)
info.startCountdown(30)
game.onUpdateInterval(1000, function () {
projectile = sprites.createProjectileFromSide(img`
. f . . . 4 . . . . . . . . .
. 4 4 4 4 4 . . . . . . . . f
. 4 f 4 f 4 . . . . . . . 4 4
. 4 4 4 4 4 . . . . . . . 4 .
. 4 4 f 4 4 . . . . . . 4 4 .
. 4 4 4 4 4 . . . . . . 4 . .
. . . . f 4 4 f 4 4 f 4 4 . .
. . . . f 4 4 f 4 4 f 4 4 . .
. . . . f 4 4 f 4 4 f 4 4 . .
. . . . 4 4 4 f 4 4 4 4 4 . .
. . . . 4 4 4 4 4 4 4 4 4 . .
. . . . 4 . 4 . . . 4 . 4 . .
. . . . 4 . 4 . . . 4 . 4 . .
. . . . 4 . f . . . 4 . f . .
. . . . f . . . . . f . . . .
`, randint(-50, 50), randint(-50, 50))
if (projectile.vx > 0) {
projectile.image.flipX()
}
})
forever(function () {
for (let index = 0; index < 2; index++) {
music.playTone(330, music.beat(BeatFraction.Eighth))
music.playTone(659, music.beat(BeatFraction.Quarter))
music.playTone(494, music.beat(BeatFraction.Eighth))
music.playTone(988, music.beat(BeatFraction.Quarter))
music.playTone(392, music.beat(BeatFraction.Eighth))
music.playTone(784, music.beat(BeatFraction.Quarter))
}
for (let index = 0; index < 2; index++) {
music.playTone(440, music.beat(BeatFraction.Eighth))
music.playTone(880, music.beat(BeatFraction.Quarter))
music.playTone(659, music.beat(BeatFraction.Eighth))
music.playTone(1318, music.beat(BeatFraction.Quarter))
music.playTone(523, music.beat(BeatFraction.Eighth))
music.playTone(1046, music.beat(BeatFraction.Quarter))
music.playTone(330, music.beat(BeatFraction.Eighth))
music.playTone(659, music.beat(BeatFraction.Quarter))
}
if (info.score() == 10) {
light.setLength(9)
}
})
ArcadeController
JavaScriptThis website was used to help build the controller code
input.onGesture(Gesture.TiltDown, function () {
makerController.player1.setButton(ArcadeButton.Up, true)
pause(200)
makerController.player1.setButton(ArcadeButton.Up, false)
})
input.onGesture(Gesture.TiltLeft, function () {
makerController.player1.setButton(ArcadeButton.Left, true)
pause(200)
makerController.player1.setButton(ArcadeButton.Left, false)
})
input.onGesture(Gesture.TiltRight, function () {
makerController.player1.setButton(ArcadeButton.Right, true)
pause(200)
makerController.player1.setButton(ArcadeButton.Right, false)
})
input.onGesture(Gesture.TiltUp, function () {
makerController.player1.setButton(ArcadeButton.Down, true)
pause(200)
makerController.player1.setButton(ArcadeButton.Down, false)
})
input.onGesture(Gesture.Shake, function () {
makerController.player1.press(ArcadeButton.A)
})
input.onGesture(Gesture.FaceDown, function () {
makerController.player1.press(ArcadeButton.B)
})
Comments
Please log in or sign up to comment.