Falling Duck II Skillmap -- Blocks, JavaScript, AND Python

This started off as a set of tutorials for Ima.notarobot’s journey to learn JavaScript

I’ve finally finished the skillmap for an advanced version of Falling Duck. You can build the project in all three languages – Blocks, JavaScript, and Python – and each language has five levels. Along the way, you learn to use Richard’s Mini Menu extension as well as the Settings extension.

There is a ton of planning that goes into these skillmaps … and all of that happens before any writing! Just planning out the activities for the skillmap took a couple dozen hours, and then each level takes another 18 to 24 hours of work to write, test, and debug (total for all three languages). I started each level in Blocks because that’s the hardest one to write – that usually took 12 to 16 hours. Writing the JavaScript and Python levels after that only took about 8 hours for both. And that’s with no artwork added to the skillmap! Sorry it looks so … plain. :smiley:

They’re super fun to write, which is why I like to create them.

Have fun!

https://arcade.makecode.com/--skillmap#github:robo-technical-group/pxt-tutorials/falling-duck-skillmap

7 Likes

my goat @AlexK has done it

2 Likes

W @AlexK for acknowledging the existence of JavaScript and Python
I’m going to do the skill map sometime, hope it gets on the main page to.

3 Likes

That was my real motivation for writing these, redSprite. There aren’t many tutorials – and no skillmaps that I know of – that use the other two languages. Yes, I plan for all of my future tutorials and skillmaps to use all three languages.


When someone is ready to make the switch to one of the typing languages, I feel like this skillmap would be a good way to get started, as it includes some more advanced techniques along with most of the basics … and it does so without treating you like a beginner. (Nota bene: Use the hints when you get stuck!)

The Blocks path, too, is a good one to push your skills, as you learn about parallel arrays along with the two extensions that I mentioned earlier.

The only “basic” thing that I don’t touch in this skillmap is tilemaps, but that’s just because of the style of the game.

Have other ideas for tutorials and skillmaps? There’s a topic for that. :wink:

2 Likes

OK, the timing of this thread is just wildly coincidental, as I haven’t seen Friday’s stream yet. If you ever wondered how we start planning a tutorial or skillmap, the dev team did a great job of walking through the brainstorming process of what goes into building the concept for a skillmap or tutorial.

I just started the stream. I’ll watch the rest of it tomorrow. Great video as always!

I ramble a bit on this process in my always-in-progress set of articles on building skillmaps.

Crazy timing, dev team! Love the unintended synergy this weekend! :laughing:

2 Likes

Uhm…


This is in JavaScript step 6 level 2, apparently it says the asset doesn’t exist?

2 Likes

A post was merged into an existing topic: Tutorial and Skill Map Ideas

Thanks, redSprite. I’ll fix that. I’ve made that correction. It seems that constant is not consistently available in JavaScript and Python.

Replace the constant with an array of images:

            animation.runImageAnimation(
                heroSprite,
                [
                    sprites.duck.duck3,
                    sprites.duck.duck4,
                    sprites.duck.duck5,
                    sprites.duck.duck6,
                    sprites.duck.duck1,
                    sprites.duck.duck2,
                ],
                100, true
            )

I’ve published a new version with that correction.

1 Like