Looking for open source shooter game to learn from and tinker with.

Started by
7 comments, last by jbadams 11 years, 6 months ago
I'm looking for an open source game of the shooter variety to download the source, to learn and tinker with. I am trying to build a outer space flying shooter and I want to see how other shooters are designed.

Language c++
OS Windows
Type shooter / slight bias to outer space shooters

If this post or signature was helpful and/or constructive please give rep.

// C++ Video tutorials

http://www.youtube.com/watch?v=Wo60USYV9Ik

// Easy to learn 2D Game Library c++

SFML2.2 Download http://www.sfml-dev.org/download.php

SFML2.2 Tutorials http://www.sfml-dev.org/tutorials/2.2/

// Excellent 2d physics library Box2D

http://box2d.org/about/

// SFML 2 book

http://www.amazon.com/gp/product/1849696845/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=1849696845&linkCode=as2&tag=gamer2creator-20

Advertisement
Well, there's always the Id Software games. Many of them are open sourced, so you can actually get the code. Really cool! Though I don't know of any outer space shooters, sorry.
https://github.com/TTimo/doom3.gpl
https://github.com/id-Software/Quake

Level handling (rendering, etc.) will differ quite a lot between a space shooter and in-door games like Quake and Doom. I like Id's engines because of their pragmatism; they get things done.

Edit: http://fabiensanglard.net/quakeSource/index.php <-- a walkthrough of the Quake source code
checkout this repo, svn://svn.icculus.org/fs2open/trunk/fs2open , it's the source code for FreeSpace2 with some community fixes.
OpenGL fanboy.
Best open source FPS engine is without a doubt the idTech lineup. idTech3 as used in quake 3 may be old but its a perfect example of a functioning engine, plus give it higher poly assets, higher res textures and some fancy shader files it will render them fine although for that you would want idtech4 which was used in doom. Note that these at the time were both cutting edge engines intended for professional use, they may look old now but at the time it was unthinkable that such things were possible. Their source code may not be easily readable though.
I wrote a space shooter about 12 years ago, but it was all in C. I can provide you the source code if you would like, but it's not my best work.

If you want to look at some other source code, my old blog (in my Sig below), I detail the steps to make a top-down action game and provide the source. It could be made into a space shooter game easily.

My Gamedev Journal: 2D Game Making, the Easy Way

---(Old Blog, still has good info): 2dGameMaking
-----
"No one ever posts on that message board; it's too crowded." - Yoga Berra (sorta)

Have in mind that idTech 3 is coded mostly in C with some parts in assembly. So it will be quite hard to understand it unless you're familiar with such things.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

I could have sworn it was only 1 and 2 that where in plain C with 3 moving towards C++. Maybe not. 4 is certainly C++ though. Either way it is a professional engine and surprising that it was ever open sourced (although part of the GPL release for tech 4 had to be changed due to not having permission to release a particular algorithm I believe). Its not really newbie stuff but its the first thing I could think of.

I could have sworn it was only 1 and 2 that where in plain C with 3 moving towards C++. Maybe not. 4 is certainly C++ though
Fabien Sanglard - What motivated to move the team to C++ for idTech4 ?
John Carmack - There was a sense of inevitability to it at that point, but only about half the programmers really had C++ background in the beginning. I had C and Objective-C background, and I sort of "slid into C++" by just looking at the code that the C++ guys were writing. In hindsight, I wish I had budgeted the time to thoroughly research and explore the language before just starting to use it.[/quote] http://fabiensanglard.net/doom3/interviews.php#qc++

Until ID Tech 4 it was all pure C and some assembly hacks. This guy http://fabiensanglard.net/ did reviews of both IDTech3 and IDTech4.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

I get the feeling you might be looking for a scrolling shooter ("shmup") rather than first or third person?

If that's correct, you could perhaps try Chromium B.S.U. or The Ur-Quan Masters -- I don't know of any others, but the guys at shmup-dev might be more likely to know.


...and just to repeat the warning I gave about learning from source-code in another recent topic:

Remember to take anything you see with a grain of salt though -- you're looking at the final resulting code, but you almost certainly won't have access to the logic behind the choice of that particular implementation -- you won't know whether a particular technique was chosen because it is the best idea, because it suits some special and unusual need of the particular project, because it used to be a good choice for reasons that no longer apply, or even simply because the developer was ignorant of better options.
[/quote]

I wouldn't go so far as to say you shouldn't have a look -- for some people it can be an excellent way of learning -- but a lot of beginning programmers think they'll get a lot more value from examining source code than they end up with, or don't think about the fact that even though the code is from a working game it still might not be ideal.


Hope that's helpful! smile.png

- Jason Astle-Adams

This topic is closed to new replies.

Advertisement