Scuffy the Tugboat

Scuffy

A metroidvania based on the old school children's book "Scuffy the Tugboat" (Little Golden Book by Gertrude Crampton) (see: https://www.youtube.com/watch?v=g4sRbow6GKQ and https://en.wikipedia.org/wiki/Scuffy_the_Tugboat).

Help Scuffy navigate down the river, while collecting power-ups, items and new abilities to aid in your adventure.

Requires: pyxel, numpy

Controls: Arrow Keys + Z + X + SPACE, P to pause/map (Instructions are in-game) (see "consts.py" if you want to change buttons!)

Game playing notes:

  • If you get lost, you can see the map at any time in the pause screen by pressing P
  • The game takes approx. 25-30 minutes to complete, depending on how fast you progress! Sorry, I know it's a bit long for Pyweek, but it's a bit hard to make a short metroidvania :) ... thanks if you make it to the end!

Play Online/in the Browser:

"Scuffy" is built in pyxel, which can convert projects into HTML. You can play Scuffy in the browser here:

https://mit-mit-randomprojectlab.github.io/pyweek39/scuffy.html

Awards


Cow boss award
Presented by speedlimit35

The Kermit Award for the Promotion of Frog Related Lifestyles and Interests
Presented by ntoll

Give this entry an award

Scores

Ratings (show detail)

Overall: 4.3
Fun: 4.3
Production: 4.8
Innovation: 3.9

Respondents: 14

Files

File Uploader Date
scuffy_final_v1.1.zip
A post-competition update, bug fixes etc.
mit-mit 2025/04/13 05:06
scuffy_final.zipfinal
Final Game (various bug fixes)
mit-mit 2025/03/30 10:14
scuffy_v1.zipfinal
First Submission of Game
mit-mit 2025/03/29 16:14
scuffy.png
Scuffy the Tugboat
mit-mit 2025/03/29 16:08

Diary Entries

Game Complete!

Hope you enjoy it! Please post any bugs here.

Add a comment

Wrap-up and Post Mortem

Thanks for everyone who played Scuffy and left feedback! I had a lot of fun this pyweek both making a game and playing everyone's creations over the last two weeks.


I didn't get a chance to write down any diary thoughts from the other week, so I thought I'd just wrap up a few thoughts now. I had the idea for a metrodvania based on scuffy the tugboat from the voting week, so I was lucky in that I could hit the ground running as soon as the theme was announced. I have very fond memories of my mum reading the book to me as a kid, so I was really keen on making this game :). I have also always wanted to make a metrodvania-style game, but always thought there wasn't enough time in the 7 days of pyweek: I ended up catching a few lucky breaks during the dev week, so had a little bit more time than I usually get to work on it!


I spent most of day 1-2 working on just getting a water surface rendering demo working, and was really happy with the result! Days 3-5 on implementing most of the in-game code for environment, enemies, bosses etc. I spend all of day 6 sitting down with pencil and paper and planning out the map, game flow and progression: I usually rush this part, but glad I really sat down and thought hard about this before I started coding it all up and building the map: the map itself I drew as one giant 4000x4000 image in Gimp which I then tiled into the game. I spent day 7 creating all the sound, music, cutscenes, titles etc. along with trying to get some play testing in.


Thanks again everyone for a great week, congrats to rdb and zwerver for the team win, and see you next one!

Add a comment

Post-competition Game Update

I've spent a little bit of time over the last week making a few updates to the game to improve the performance on the browser verions, and add a few little touches I didn't get a chance to add during the competition week. The upload "scuffy_final_v1.1.zip" has the updated code. The web version of the updated game is also available to play in the browser here:

https://mit-mit-randomprojectlab.github.io/pyweek39/scuffy.html

Update includes:

  • On game completion, you can now go back and get all the coins before returning to finish the game (to get the "real" ending ;) )
  • Added a speedrun timer (press S to toggle on/off) (can you beat 11 minutes and 26 seconds? (game dev's best time ;) )
  • Added a title screen gfx
  • New background music for swamp area
  • Modified behaviours in some boss battles to fine-tune the experience (make a touch more challenging)
  • Minor bug fixes (image map colours, background objects etc.)
  • Performance optimisations to background and water surface rendering in pyxel (now using pyxel image.set + blitting insteady of setting pixel by pixel to render faster on slower browsers)
  • Preloading of map assets and flow field pre-calculations to remove loading delay between screens

I have been toying also with perhaps extending the game a little bit with a bit of extra post-completion content (there's a few maps tiles I didn't end up filling with anything), perhaps like a "DLC" for the game: I might or might not get around to this, but will post an update again if I do :P!

Add a comment