Jump to content

  • Log In with Google      Sign In   
  • Create Account





Member Since 03 Mar 2010
Offline Last Active Oct 28 2014 09:10 AM

Topics I've Started


20 October 2014 - 06:40 AM

Pacewar is my entry to Pyweek 19. It's also the first serious game made with the SGE Game Engine. I'm quite happy with how it turned out.


It's a relatively simple fighting game between two teams of space ships. A team wins the round when all ships of the other team are destroyed, and a certain number of victories more than the other player is needed to win the game. But there's a catch: as a team gets closer to winning, it loses ships, so you need to be better than the other team to succeed.


Human players take over one ship at a time from their respective teams. If a human player's ship is destroyed, that human player takes over an AI ship from their team randomly. This ensures that the human players are always in the game.


Downloads and screenshots can be found on its website: http://pacewar.nongnu.org

Free 2-D game engine for Python: SGE

06 February 2014 - 08:32 AM

The Stellar Game Engine ("SGE") is a free 2-D game engine for Python. It is designed to make game development easier and faster, and it accomplishes this by doing a number of things for you, including window resizing, split-screen, collision detection, delta timing, and more.


The SGE is free/libre software, released under the GNU Lesser General Public License. The documentation has been released to the public domain via CC0.


The SGE is currently in beta, meaning it's basically done, but hasn't been thoroughly tested. Please help me push it out of the beta phase by using it and reporting any bugs you find. smile.png


SGE homepage: http://stellarengine.nongnu.org


All comments are welcome. smile.png

[solved elsewhere] Downsizing Project: Starfighter - Brick wall hit

04 March 2012 - 02:24 PM

EDIT: This problem has been solved by one of the main Project: Starfighter developers.

Hello there,

I've been working on the beginning stages of porting Project: Starfighter to the Pandora, which involves changing the controls to suit the Pandora (easy task) and reducing the resolution of the game from 800x600 to 800x480 (the Pandora's native resolution), which is proving to be a difficult task due to this game being a huge fan of exact pixel positioning based on the assumption that the screen is 800x600. Along the way, I'm running into a lot of segfaults and have successfully dealt with 3, one related to the controls and two related to the screen resizing.

The latest segfault, however, is one that I just can't figure out. It occurs when the "intermission" screen (the screen where you can visit the shop, change planets, view info, etc) is entered.

Here is my modified source so far:

To compile and run, simply do:


Note: There is a permissions problem as I have been doing my code editing on a FAT file system. You'll need to set the permissions to allow pack.py and unpack.py to be executed as programs.

To get to the intermission screen, you simply have to start a new game and beat the fight you're thrown into, which isn't that hard.

Note that the controls are different from the original. Arrows are still to move, but everything else has been changed:
Shoot: End
Special (missiles): Page Down
Pause/skip: left Alt
Select menu items: End
Quit to menu: Esc (while paused)

(There's other controls, but they're unimportant here.)

The code related to the intermission screen is mostly in intermission.cpp.

Note that although this is working towards a port for the Pandora, I am currently testing on a normal desktop computer (running Ubuntu).

So, can anyone else see anything they think might be causing the segfault?

One interesting little tidbit: it doesn't always segfault. Sometime it shows some sort of error message (which I haven't saved, sorry), and one time it actually didn't segfault until much later (i.e. I was able to see the intermission screen for a minute or so).

If anyone finds anything, please let me know! I would very much like to get this great game onto the Pandora.

Don't be a businessman if you aren't willing to invest

16 November 2011 - 02:37 AM

This is something that annoys me to no end when dealing with beginners, and I was once in this same beginners camp, so in hopes that some of these beginners come across this post and adjust their strategy, I'm going to write about it here.

The problem is, many beginners have no money and can't do everything for their games (e.g. graphics, programming, music, sounds). As a result, they take a very funny approach: they try to offer a deal of "help me now and you'll get a percentage of the profits later".

Since I was in this camp before, I'll explain my mindset back then: my thought was, hey, if you get paid normally, you only get paid once, but if you join me with this, you'll keep getting money forever! It's a great deal! So I don't have to invest tons of money and there's a profit in the end! Unfortunately, it's just not that simple.

Just about ALL of these projects fail. Most of them are big projects (e.g. RPGs, MMORPGs), often with the creator thinking it's somehow unique, when it's really just as much of a rehash as every other game that gets released to the market. Eventually, the creator, unable to find help with what he has difficulty doing, just cancels or simply abandons the project. So it makes perfect sense that people rarely take up these offers, and when they do, it's either because they too are beginners, or because they have some other reason for maybe wanting to participate.

I think the core problem is that these beginners have too much of a tendency to try to act as businessmen. News flash: if you want to work like a business, you'd better be willing to put your money where your mouth is. Invest. Otherwise, you shouldn't act like a businessman, but like a learner and a hobbyist. Try to find other learners and hobbyists, maybe form a team, and make some freeware games just for fun. Even better, make your game open source. Use this as a learning and experience building opportunity. Don't try to make serious money with your first games. Also, keep in mind that game development isn't even close to the best way to make money. If money is all you care about, this isn't for you.

And most importantly, stop worrying about people "stealing" your "idea". I think this is why most of these people try to use the "business"-like approach that fails so miserably. I don't care how amazing your idea is in your mind, chances are, it's either already been done or it's just not good in practice. Let me put it into perspective: my totally awesome idea was a green fire-breathing dragon (as the protagonist) fighting against rock-throwing peasants, archers, and knights (as the enemies) in a quest to defeat an evil wizard. If that doesn't sound like a revolutionary, unheard-of, awesome idea to you, you should seriously question why yours should be any more special than mine.

Space Invaders for TI

09 June 2011 - 06:37 AM

This was a little project I did during my last few weeks of school: a Space Invaders game for the TI-8x (TI-83+/TI-84+) series of calculators, though mostly for the TI-84 Plus series. It can be found here:


I am quite sure that there are already Space Invaders games available for TI calculators, but all of them (at least, that I saw) are written in assembly. This one is written in TI-BASIC (as it's colloquially called). As you might be able to understand, getting such a complicated game as Space Invaders to work in such a slow environment and end up with a game that's fun to play is difficult.

The end result is fast enough (though a bit slow), fairly fun, and extremely difficult. The high difficulty was on purpose and the most recent change. It was because I found that the high score list seemed completely meaningless; clearing the aliens once was just too easy. In the most recent update, the aliens move faster downward, so clearing them once is difficult; you can't win a round if you miss more than a few shots.

There are some simplifications I had to make:
  • There are only two rows of aliens (12 in total).
  • No shields
  • The aliens are treated as a single object, which means the aliens don't move all the way to the edge of the screen unless they were edge aliens to begin with (it's hard to explain; play it and you'll see what I mean)
  • The player is represented by an "A", and the aliens are represented as "M"s. Less noticeably, bullets are colons (":").

Do let me know what you think! :)