Soviet vs Asteroids

Soviet vs Asteroids

привет товарищу

Last week, I participated in the fourth Game Dev Party, a game jam based in Lyon, France, in which you have to create a game in one weekend. I went to the 3 GDP jams before that, and each time, I come with a game concept, because I love creating new gameplays and try innovative ideas. This time I wanted a dual-stick controller based gameplay. By that, I mean a gameplay that is the most efficient with this kind of controller. And this idea lead to “Soviet vs Asteroids”.


In Soviet vs Asteroids, you control a lonely sovietic cosmonaut standing on a rock in outer space, who tries to survive against a bunch of asteroids. To stand against these, the cosmonaut has only two weapons: a missile launcher to hit big asteroids and a laser controller to fire lasers at smaller and nearer asteroids. This is where you’ll see if your Kawashima brain training was successful. You control the missile launcher with the left stick and left bumper (LB), and the lasers with the right stick and right bumber (RB). And from there, you should try to optimize your shots by aiming at the biggest asteroids with your missiles while destroying the small ones using the lasers.


Our cosmonaut firing both missiles and lasers

When you destroy asteroids you gain money, with which you can buy upgrades to improve your missile launcher, add more lasers, or add new defence drones (which are automatic defences that attack anything passing by). If you’re swarmed by asteroids, you can shout “Fus-ro-dov” (in the game I mean), which clears the screen of all asteroids.

It looks easy? It is not. Try it, the download links are at the end of this article. If you achieve a high score, don’t hesitate to send an email to contact@[website url], with a screenshot of your performance. I’ll try to break your record if I can. If you want to see me playing the game first, you can watch this video.

One more game in the bank!

So, today is the release of the game. I’m happy I can say I managed to create a game people like (well, at least the few that played it as of today). I was thinking about sitting aside and let others take my place in the next GDP jam, but I love these jams so much that I think I’m gonna participate in the next! It’s so thrilling to see what we can achieve is such a short time.

Base Concept

The concept gameplay I presented to the team.
Graphics aside, it’s really close to what we have in the end.

I always have a tremendous team following my ideas almost blindly, and for a game designer like myself, it’s awesome! Sure, we changed some stuff, the game is not exactly as I imagined it because others may have developed something different than what I imagined, and it sometimes improves the gameplay and the user experience.

For instance, for this game I imagined the asteroids to always move towards the player, never missing it, but Louis-Rémi did not implement it this way, and it added a new dimension to the game. Instead of having to destroy every single asteroid on sight, the user has to choose which asteroids he must destroy in order to survive, and he can destroy more if he wants to earn extra money and points. I don’t know if he knows he improved the gameplay, I don’t know if it was intentional or if he just misunderstood my point of view, but the result is that the game was improved by this small change.

Download the game

You can download the game here:

If you’re interested in the source code, the project is hosted on github.

Thank you

A big thank to all the crew who made this game, Frédéric Ostéréro for the awesome graphics, Mathieu Perez for all the sounds and musics, and Louis-Rémi Babé, Adrian Gaudebert and Maxime Viry who developed the game with me.

An additional thank to Fred, which made some final touches in the graphics after the week end, and Adrian, who helped me to fix the last bugs, balance the game and prepare this release.

This entry was posted in Blog. : . Bookmark the permalink. Both comments and trackbacks are currently closed.


  1. Fatal error: Uncaught Error: Call to undefined function ereg() in /homepages/41/d446517243/htdocs/app448281539/wp-content/themes/stripefolio/library/extensions/comments-extensions.php:255 Stack trace: #0 /homepages/41/d446517243/htdocs/app448281539/wp-content/themes/stripefolio/library/extensions/discussion.php(30): thematic_commenter_link() #1 /homepages/41/d446517243/htdocs/app448281539/wp-includes/class-walker-comment.php(184): thematic_comments(Object(WP_Comment), Array, 1) #2 /homepages/41/d446517243/htdocs/app448281539/wp-includes/class-wp-walker.php(146): Walker_Comment->start_el('', Object(WP_Comment), 1, Array) #3 /homepages/41/d446517243/htdocs/app448281539/wp-includes/class-walker-comment.php(139): Walker->display_element(Object(WP_Comment), Array, '5', 0, Array, '') #4 /homepages/41/d446517243/htdocs/app448281539/wp-includes/class-wp-walker.php(389): Walker_Comment->display_element(Object(WP_Comment), Array, '5', 0, Array, '') #5 /homepages/41/d446517243/htdocs/app448281539/wp-includes/comment-template.php(225 in /homepages/41/d446517243/htdocs/app448281539/wp-content/themes/stripefolio/library/extensions/comments-extensions.php on line 255