Robot Toast

Robot Toast is a jumping puzzle game, and a rather challenging one at that! You play as a ninja robot, and your goal is to reach the command station at the end of each level.

Ninjabot is fast an agile; he can run, jump, grab ledges, jump off walls, and in later levels he can even grapple and use rocketboots!

Beating the game is no small feat, but definitely possible with the right reflexes. Can you make it to the end?

Known Issues:
sound not found (Wilhelm.ogg) - Linux only (I think) - fix: in lib/sprites.py line 473: Change Wilhelm.ogg to wilhelm.ogg
no joystick found - very rare - fix: comment out lines 150-160 in lib/main.py


Give this entry an award


Ratings (show detail)

Overall: 3.9
Fun: 4.0
Production: 4.5
Innovation: 3.2

7% respondents marked the game as not working.
Respondents: 36


File Uploader Date
final entry
Tresch 2008/04/06 23:01
Tresch 2008/04/04 08:36
I'm just talkin' bout ninjabot!
Tresch 2008/04/02 18:33
Ninjabot be one hungry mutha--SHUTYOMOUTH
Tresch 2008/04/02 18:32
First Screen Shot
erlandr 2008/03/31 03:28

Diary Entries

The team unites!

Junk food and caffeine have been acquired, ideas have been established, BEHOLD THE ROBOT!

1 comment

We have tiles!

Things are moving right along, we have a stick figure robot that moves around in our tile based level. All graphics are placeholders, but are still pretty awesome I think :)

Add a comment

Meet Ninjabot!

Meet Ninjabot!
finally got the run cycle worked out for our character. Took me way too long but I'm pretty satisfied with it. Lot of extra animation to do yet for his various motions, but this is the most involved, definitely. Dude is RUNNIN! Must be hungry. Get this guy some toast!


Robots love jetpacks!

Well, more like jetboots.

Constant progress, but we're definitely behind where we wanted to be. Haven't touched sound effects yet and we lost a team member which means we have no music yet!Character animations are done, though, and right now we're focusing on level design, tuning movement, and finishing the artwork for the various levels.

Lots of random placeholder tiles here, but the multiple levels of parallax backgrounds (one of which being a dropshadow) gives a really neat effect.


Composing for Robots?

I am the aforementioned casualty to the team. On Tuesday, after an hour of X-rays and poking things down my throat that had no business being there, the doctors confirmed I DON'T have tuberculosis. Yay for good news. As to what it was - your guess is as good as mine...

In any event, I'm back! With 24 hours to go I'm working hard on getting the soundtrack completed. We've actually got a finished track for "level 1" - or really, wherever we decide to stick it. Basically: we're dancin'!

The journey started last Saturday night with Tresch and I using his synth to create all our own patches. The idea was to create an entire orchestra, purely with our own tweaks of basic waves. It was interesting, decently paced, and fairly successful. Then, I spent the rest of the week knocked out or tripped out on medication.

So, back on track today, we're going old school and nostalgic with our soundtrack. I look forward to you all being able to check it out upon completion!


1 comment

Our lead voice actor

This photo was taken during a recording session with our lead voice actor, the toaster. As you can see, the toaster is quite a showoff, and as usual, is goofing off for the camera.

From the left: Erlandr, the Toaster, and myself

Add a comment


with just a few hours left to go, we only have about half our level design done. what are the chances we'll pull it off? this is what 'level zero' looks like in the editor:

Add a comment

Question on MD5s

We're not too familiar with the whole MD5 thing, but if we run the command multiple times on the same file, we get a different string each time. Conversely, we ran the command on two DIFFERENT versions of the file (after changing a filename inside the zip) and got the same key. This has me a bit worried. Can anyone enlighten us?


hash problem?

The Pyweek site is currently rejecting my final submission due to the hash not matching, eek! I'm not sure what I did wrong to create the hash, but I can get the same results each time. I'm running the following on WindowsXP with Python2.5:

IDLE 1.2.1 >>> import hashlib >>> m = hashlib.md5() >>> m.update(file('C:\\python\\robottoast\\robot_toast_really_final.zip').read()) >>> print m.hexdigest() bc3a0a2f85b4d10225838ff80d3b9e74

A copy of our game is currently available at http://rapidshare.com/files/105191310/robot_toast_really_final.zip.html

Can anyone give some insight?


Yaaay! Entry up!

Yay for Richard! got the whole hash thing straightened out and we finally get the closure of uploading our entry. It's been a helluva week, and very rewarding. This has been a chance to really try things I've always wanted to try and put stuff together in a nice finished (relatively) package. Thanks a lot to everyone at pyweek!

Add a comment

Enticing Screen Shot!

I don't care too much for our current screen shot, so I thought I would post a better one :). This is a shot from level 3, by far my favorite of the game.

Add a comment

Robot Toast: The Original Concept

This was my team's first PyWeek, and I'm extremely proud with what we created. Our plans were ambitious, and the fact that we even finished at all was amazing to me. We did have to make a few sacrifices though, and the overall theme I had in mind was all but lost.

The plan was to play as a robot jumping through a level, but the level itself would be a much larger robot that you are trying to control. Once you reached the control terminal at the end of the level, the game would zoom out and you would be that much larger robot! You would then control this new robot through an even larger robot level to take it over, and once you have the 3rd gigantic robot under your control, you would find yourself in the final level. All of this leads up to the silly punchline of the final level being a toaster, which you take control of of course!

We got close. We had the transition effect, but there were a couple of problems. One, we only ended up with one robot character, mostly due to animation taking lots of time (it turned out awesome though!). And two, the levels themselves didn't really look that much like the insides of various robots. These two things combined just made the transition look like.. well.. a transition and nothing more :).

We had lots of other ideas that never happened as well. I really wish we had a timer, for one. There were plans for moving lasers and traps, and maybe even turrets that shot stuff at you while you were jumping around. But hey, a week is a really short amount of time!

I think we will continue to work on Robot Toast, as its been a blast developing it for PyWeek, and I really think its a fun game (maybe I'm biased here :D). My team and I have learned a lot, and look forward to the next PyWeek!


Speed runs

As Ryan already said, we wanted to have a timer in the game, and perhaps a High Score table based on time, for things like speed runs.

There are secrets in each level of Robot Toast that allow the player to skip large portions and get through quickly and efficiently.

Below I've linked to two such speed runs - for level 2, and level 3. The program I used to capture it did not record the sound, but the video quality, while choppy, is pretty good.

THESE CONTAIN SPOILERS, as the secrets in levels 2 and 3 will be revealed!

Level 2 Speed Run

Level 3 Speed Run

If I spent some more time capturing play-throughs, I could knock a few more seconds off each level, but these will suffice.

Working on this game was a blast, and I can't wait until the team regroups for the next PyWeek! Is it sad if I'm already counting down the days? ...