April 20th-23rd 2012 :: 10 Year Anniversary! :: Theme: Tiny World

Back to Browse Entries

Space Rescue!

by schnerble - 48 Hour Compo Entry

Shoot turrets, and rescue spacemen! Alternatively, shoot spacemen and rescue turrets, but score much fewer points.

Fly into the asteroid space station (use your imagination! :) ), shooting turrets out while dodging bullets, and rescue the waiting spacemen.

As with most time-limited projects, this was much less extensive than I originally intended, but it still turned out to be pretty fun :)

LINUX USERS: it may not work for you first time :( If you get this error:
"Cannot open shared library /usr/lib/x86_64-linux-gnu/alsa-lib/libasound_module_pcm_pulse.so"
Please just delete the "libasound.so.2" in the spacerescue directory, and it should find the one on your system, which should work fine.
If you double-clicked the icon and got no error, please try running in a terminal to check for the above message. Please also let me know if something different goes wrong, and I'll see what I can do.
Sorry about the hassle!
WINDOWS USERS: '#' to reset the ship may not work for you, depending on your keyboard layout. This seems to be a pygame bug :( (it's saying the key is backslash, which I never spotted) Sorry about that. Unfortunately I can't see a workaround without making a new version.

Downloads and Links




schnerble says ...
Apr 23, 2012 @ 12:48am

Only just noticed that I forgot to give the window a proper title. Heh :) Ah well - there are worse things to forget!

Jonny D says ...
Apr 23, 2012 @ 2:24pm

I lost my ship somewhere in space right away. Reset didn't seem to work. I like the moon surface fade - it is very nice. I think I would have preferred some hitpoints and tougher enemies over a one-hit game.

vrld says ...
Apr 23, 2012 @ 2:34pm

I cannot get the game to run under Gentoo Linux (64 bit). Error message:
ALSA lib dlmisc.c:254:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib/x86_64-linux-gnu/alsa-lib/libasound_module_pcm_pulse.so
Traceback (most recent call last):
File "<string>", line 27, in <module>
File "/home/chris/bin/pyinstaller-1.5.1/iu.py", line 436, in importHook
File "/home/chris/bin/pyinstaller-1.5.1/iu.py", line 521, in doimport
File "/home/chris/src/spacerescue/build/pyi.linux2/spacerescue/outPYZ1.pyz/entity", line 374, in <module>
File "/home/chris/src/spacerescue/build/pyi.linux2/spacerescue/outPYZ1.pyz/entity", line 381, in TurretEntity
File "/home/chris/src/spacerescue/build/pyi.linux2/spacerescue/outPYZ1.pyz/entity", line 269, in getSound
pygame.error: mixer system not initialized

Is there some way to run the game from source? What are the dependencies?

Truce says ...
Apr 23, 2012 @ 2:38pm

Best game I've played so far (played 4 others). It's very simple but effective as a game. Reminded me for some reason of Robotron.

Pretty solid effort, well done.

schnerble says ...
Apr 23, 2012 @ 10:34pm

vrld (and other Linux users): sorry about the hassle. I should've tested on a different Linux flavour as well as my own.
Could you try downloading libasound.so.2 from the link below and putting it in the spacerescue folder on top of the existing one? I hacked the path, and it seems to fix the problem on my other machine. (Ubuntu 10.04) I just hex-modified the path to where the library should really be.


Running from source might work too, but would take a bit of fiddling, and you'd probably need to install pygame on your machine. Hopefully that download will work and be much easier.

Thanks for trying it!

schnerble says ...
Apr 23, 2012 @ 10:39pm

Jonny D: agreed about the hit points. I'd intended to do that but didn't get to it. I recognised the off screen problem too - the "camera" was eventually supposed to follow the player, where it would've made more sense. I left the coordinates in as a bit of a helping hand. Odd that reset didn't work - may be down to the location of '#' on different keyboards.

Thanks for playing!

schnerble says ...
Apr 23, 2012 @ 10:40pm

Truce: thanks for that - much appreciated :) I was a massive fan of Llamatron back in the day, so maybe that influenced me a bit!

schnerble says ...
Apr 24, 2012 @ 12:30pm

Update on the Linux issue: just removing the "libasound.so.2" in the spacerescue folder should fix it. pyinstaller shipped that automatically for me, but I don't think there's actually any need for it on most systems.

Apr 24, 2012 @ 1:07pm

Fun game. Definitely worth playing a few times.

rfgpfeiffer says ...
Apr 24, 2012 @ 3:25pm

Hello, fellow pygame coder! Your game is nice. How did you create the Linux binaries?

schnerble says ...
Apr 25, 2012 @ 7:19am

Thanks, people :)
rfgpfeiffer: I used pyinstaller to create the binaries on both Windows and Linux - it's great, other than that one library problem above. You'll need a Linux install to build the binaries, but it's pretty easy - Ubuntu and Kubuntu are easy to install (only need 30-40 GB too), and once you've got your game running in Python, then pyinstaller can do the rest.

rfgpfeiffer says ...
Apr 25, 2012 @ 11:15am

Actually, I developed on Ubuntu. I just assumed every linux user has python and pygame installed via the package manager. I made the Windows binaries first because there ist no apt for Windows:)

schnerble says ...
Apr 25, 2012 @ 12:34pm

Ah, yeah, sorry - I realised afterwards I may have misread your comment. Anyway, cool; I've run a couple of binary-less pygame entries here too.
Pyinstaller is the way forward, I reckon - though removing libasound.so.2 seems necessary, as above.

vrld says ...
Apr 25, 2012 @ 12:36pm

Packaging for Linux is a bitch, isn't it? But now it works so I am happy :)
As for the game: It's fun, but the controls make it just a bit too hard in my opinion. Making the spaceship accelerate less when I push a button would be one option to fix this. The other way would be use the Asteroids control scheme, i.e. just acceleration and turn. This would get rid of having to coordinate 9 buttons and allow to maneuver at more than 9 angles.
Having camera that follows the spaceship when not in the planet or being bounced back when leaving the screen also would have been nice. In my first three attempts I accelerated too much and went of the screen unable to ever come back.

TL;DR: Simple and effective gameplay, but lacks in execution.

Apr 25, 2012 @ 1:16pm

It's a nice game, but I didn't like how the turrets could fire in 360 and I could only fire in 8 angles, that made it a bit hard.

schnerble says ...
Apr 25, 2012 @ 5:17pm

vrld and 4urentertainment: fair calls there. Some things I didn't get time for, and some things I didn't think of. Thanks for the feedback :)
For anyone else subsequently playing: I'm on holidays for a few days but will check out what's been happening when I get back.

sudorossy says ...
Apr 25, 2012 @ 9:53pm

Wasn't that keen on it. The controls need a lot of work, but the important thing is you completed a game in 48 hours! Good work!

kddekadenz says ...
Apr 28, 2012 @ 4:42pm

Didn't work for me (Linux).

RHY3756547 says ...
Apr 29, 2012 @ 3:26pm

Cool, but I got lost in space a few times. Making the camera follow the ship or providing an arrow at the edge of the screen would help me find my way back. I used the co-ords once but it was hard to judge my position relative to the planet using them (so i didn't crash into it)

schnerble says ...
Apr 29, 2012 @ 3:44pm

kddekadenz: did you get an error message? Could it have been the libasound.so.2 error in the description above? That's a pain, but common, and easily fixed.
RHY3756547: thanks; and yes, those are good ideas. I wanted to do something very similar with the camera zooming or arrows, but ran out of time - and just left the player coords in there as it helped a little.

JaJ says ...
Apr 29, 2012 @ 6:57pm

Fun game. Some problems are that you can lose your ship in space when you go outside of the screen, and the controls could be a bit more precise.

Vilborg says ...
May 4, 2012 @ 5:17am

Had a few spots where the ship sped up for no reason and couldn't reset the ship. Otherwise a great game.

schnerble says ...
May 5, 2012 @ 5:03pm

Thanks, JaJ and Vilborg. Yeah, the controls probably could've used a bit more tweaking; not sure what happened with '#' not always working to reset the ship (works fine on the machines I've tried it on) and I saw that weird speed up a couple of times. I'll keep an eye out for that sort of stuff next time.

vilya says ...
May 5, 2012 @ 8:25pm

Good game! Really liked the way the exterior of the moon fades away to reveal the interior - that was a nice touch.

schnerble says ...
May 5, 2012 @ 9:05pm

Thanks, vilya :)

All: I found the bug with '#' not working - it seems to be dependent on Windows keyboard layout. Sorry about the hassle there; can't fix without a rebuild unfortunately :(

derosa says ...
May 5, 2012 @ 10:53pm

Does not work on my Linux machine. I'm getting the error: "pygame.error: No available video device". Pretty weird...

schnerble says ...
May 5, 2012 @ 11:15pm

derosa: that's a weird one :| Thanks for trying anyway.

If you get a chance to try tthem, one of the following things might work:
- Installing the python-pygame package
- Set SDL_VIDEODRIVER to something different and run the game - e.g.:
SDL_VIDEODRIVER=dga ./spacerescue
Possible values are here:

madflame991 says ...
May 6, 2012 @ 12:17pm

+ simple arcade-ish gameplay
+ over-responsive controls that work really well once you figure them out (controlling the ship is a game its own, not an obstacle)
+ you added a working menu and credits
+ made in python

- needs more than 1 level
- you shouldn't get out of the play area

oh, and yeah, as Truce said, this is A BIT like Robotron...

schnerble says ...
May 8, 2012 @ 10:20pm

Madflame: for the positives, thanks, and for the negatives, I agree. Cheers!

rvmook says ...
May 9, 2012 @ 11:39am

Nice concept but it would be nice to be able to control the ship a bit more.

jmaasing says ...
May 10, 2012 @ 5:58pm

Worked well on my Debian machine. Nice little game. A bit hard to control.

tcstyle says ...
May 10, 2012 @ 8:01pm

Very good idea. The controls seem to be a little unintuitive first but work fine after some time. But they are still a tad too sensitive for my taste.
The '#' key bug is really a game killer. Out of curiosity, Why did you choose such an exotic key?

schnerble says ...
May 10, 2012 @ 10:02pm

Thanks all. I think the controls might've made more sense if I included a thrusters graphic, or improved the sound, or added more of an explanation than just "acceleration".

Using '#' was a silly choice as it turned out; I know it's in a different place on different keyboards. I'd just put the reset in as a debug feature, intending to have the "camera" zoom out so it eventually wouldn't be necessary, but ran out of time, so left the reset key there. In hindsight I should've moved it to any simpler key like Enter, or whatever. Next time...

JesterBLUE says ...
May 11, 2012 @ 3:58pm

the game seemed too easy at first - turrets range limit allowed you to snipe them and the spaceship was extremely maneuverable. So I tried to see how fast I could do it. It is diabolical that the turrets can take out the colonists when they miss you.

gormio says ...
May 12, 2012 @ 7:11pm

I like the graphics and audio a lot in this one.

For some reason I could never pick up the last spaceman on board. I shot all the turrets away and then tried to rescue the spacemen. But the last one just wouldn't hop in and I always had to shoot him to finish the level. Or maybe that was intentional...

schnerble says ...
May 13, 2012 @ 4:36pm

That certainly wasn't intentional :) One other player told me that happened to him as well, but I haven't managed to reproduce it myself. Guess the collision detection is off in some cases. Thanks for the feedback anyway!

You must sign in to comment.

[cache: storing page]