
[Flash version]
[Code]
Before was: as3sfxr
Before before was: sfxr

We recently featured another air race kind of game, but this on has much more eye-candy:




Get nightly binary (.zip: warning, it is a .rar), unpack.Thanks to gustavo for the instructions!
mono GameModeFortress.exe


Once sales start dying and a minimum time has passed, I will release the game source code as some kind of open source. I'm not very happy with the draconian nature of (L)GPL, nor do I believe the other licenses have much merit other than to boost the egos of the original authors, so I might just possibly release it all as public domain.So it's future open source, right? :D

Besiege is a space based real time strategy game where you conquer planets to let them produce new ships (and eventually research new technologies for you). Somewhat inspired by Eufloria and Galcon.
java -Djava.library.path=native -cp lib/*:Besiege.jar net.playbesiege.Besiege
So you got this shiny 25 megapixel camera from your grandma last Xmas, and are getting bored making photos of your cat with it? Put it too a good use and make some environmental pictures and upload them to the burning well!
Wait, you don't have a rich grandma?... well take some photos from the website above (all public domain) and convert them to some nice textures to use in games ;)
And of course FOSS is to the rescue and provides you with all the tools you need:
Based on this you take a small part and try to make it seamless, e.g. make the edges fit to each other so that it can be tiled endlessly on a 3D surface in a game.
So there you have it... start making some texture packs and upload them to OpenGameArt!

The code is under a "Do whatever you want with it" license as far as I'm concerned, as it says in the code, it was based on someone else's code already.
It should be noted that that code will no longer compile due to changes in the Processing environment over the years.
Last weekend, I had the distinct pleasure of "leading" a large (20+) team of dedicated artists, coders, and writers in the creation of a wonderful (if a bit rough around the edges) 2D platform game called Last Escape. I put "leading" in quotes, because my position was more of organizer and first-among-equals (save for a couple of executive vetoes, mostly to save time and keep things moving). It was an amazing experience, and I'm very proud to have been a part of it. It was also highly educational, so I'm going to try and take stock of what we did right and what we did wrong, and write about it here, in hopes that it helps other teams develop games later on.
First off, a little more about the project. Last Escape was ambitious from the outset. Before the project began, we decided that we were going to work with C++ instead of Flash or JavaScript. This decision was of a practical nature; the two coders who had committed the largest amount of time to the project ahead of time (myself and FLARE creator Clint Bellanger) were the most comfortable with game development on C++.
The art in Last Escape is a combination of digital painting and pixel art. This effect is a bit jarring, but given the 48-hour time constraint, we had to make full use of all the artistic talent that was available to us. By and large, the vast majority of the art in the game is brand new, although we used existing assets where we could.
The basic premise behind Last Escape is that you're a person who has made a forced landing on an alien world due to your space ship being out of energy. The object of the game is to collect enough energy to power your ship, and, in the process, you run into some interesting alien ruins as well as some giant insects.
We started out by planning certain things beforehand. Since we didn't know what the prompt would be, we were somewhat limited in the planning we were able to do, but we did create a rough road map and timeline in advance to give us some indication of where we should aim. You can see these on the OGA forums. While we eventually fell a bit behind schedule on certain milestones, these documents were absolutely essential to keeping everyone motivated and on track, and I would not recommend undertaking a team based game design project without them, no matter how small.
When the contest theme was announced (it turned out to be "Energy"), we got the group together and immediately started brainstorming. I set the time limit on brainstorming for game ideas to 45 minutes, and we created a google document and began typing up a list of ideas as they came up. I attempted to steer the ideas in various directions to get a wide variety of suggestions, because I noticed that the discussion tended to get hung up on whatever game genre we were talking about at the time. We had to deliberately move things from puzzles to action to strategy, etc, and this is one place where I put on my "leader" hat in order to make that happen.
Following the brainstorming session, we put things to a vote. We went through a two-step voting process -- the first step was to ask for an approval vote, and just have everyone list all the ideas they liked. We used this to narrow the choices down to five. After that, we had a second vote and everyone picked their favorite. As an aside, it's interesting to note that in the craziness of brainstorming, I accidentally copied an idea from the main #opengameart IRC channel into the list, and that was the idea that was chosen. We discovered later on that the person who's idea we used was submitting their own entry into the game jam, so we ended up with two games that had a very similar premise. Fortunately, Xiphias3 (the originator of the idea) was cool with this, and said that we didn't have to mention it. We did anyway. :)
After the voting was finished, we put together a brief todo list and started frantically coding and doing art. This is where the real learning kicked in, and, knowing what I know now, there are some things I would probably handle differently.
First off, probably the biggest issue I ran into personally were merge conflicts. We hosted our project on GitHub and gave a number of people commit access. This was all well and good, but we were poorly organized (IRC can be a double-edged sword, since at any given time you have no way of knowing who is paying attention). Consequently, there were several situations where more than one person ended up working independently on the same feature or bugfix. I personally spent at least five hours cleaning up merge problems brought about by pieces of perfectly reasonable code interacting in unexpected ways.
As such, I would strongly advise anyone working on a large, rapid team project such as this one to have a web-based task tracking program ready to go at the outset. Google Docs proved inadequate for this.
Another related thing that I learned is that when you're managing a team of 20 people, the director doesn't really have time to code. This made things difficult for me, because I had already budgeted most of my time for coding, but as the project lead, people looked to me to know what was going on. On a large team, people generally need to be broken into smaller groups and given tasks; as such, you need someone whose job it is to know exactly who is doing what at any given time, and that's one area where I would make an effort to improve on if I were to ever undertake something like this again. Real task tracking software -- something simple with a quick and easy learning curve -- would have been very helpful for this.
One place where I would consider myself fairly successful is keeping a large group of people with differing interests and talents moving and motivated through a stressful project. Here's the advice I would give to anyone needing to do this: