Platformer Development


zRichi

Member
Joined
Mar 28, 2009
Messages
122
I'm looking into various open source engines and ways to program a platforming game. I was initially thinking of PyGame. But are there any easier ways to program a 2d game?

Are there any good engines that would be perfect for the Pandora?
 
I'm not personally familiar with any (pygame is plenty easy for me), but if you look over in the general section, there is a thread about something called Rockbot. Will that help, or do you have more specific needs?
 
Last edited by a moderator:
From my own experience I can also recommend Penjin, which has already been run on Pandora hardware (see for example the videos showing PandoraPanic!):
http://www.gp32x.de...lopment-thread/

Though some people consider using an engine for a "simple" 2d-platformer being lazy and depending on how much knowledge you already have you should try to create your own simple engine first to get to know the basics of SDL, OpenGLES or PyGame programming. Though I can understand if you don't want to mess with the framework and get right into the game-creation-action, but it is crucial you get a basic knowledge of the underlying process before starting game-development or you might get lost later...

foxblock out
 
Last edited by a moderator:
Thanks

I may just try to develop my own then :)

I've only really started programming and I guess from the ground up is a better way but I don't want my project to end up spending months making an engine and zero time making a game!
 
Well you should start low, don't start with the most sophisticated stuff and don't try to add many features at once, but one-by-one.
Make yourself a to-do-list and plan ahead before your start to code (that's very important!).
Maybe begin with selecting an engine such as SDL, OpenGLES, etc. ;) (and you might want to tell us as we could give you more specific advice and links).
Then go ahead by trying to render basic images, then implement some sort of collision, then bad guys, etc.

Your first results may not be good or even decent (they might not even resemble much of a game ;) ), but don't give up early. The first and last steps are the hardest and most boring (getting started and final touches).
After you passed the first few obstacles and get a controllable object rendered on the screen, things will get more interesting as you can start to implement gameplay.
Just don't try to bite more than you can chew, start really low (as described above) with the player, some test enemies and a basic level, you can always add power-ups and stuff like that later (just keep your framework open for additions).

Some reading advices:
http://games.greggma...ming_m_c__kids/ - An article on the development of an old NES platformer (M.C. Kids), topics like general gameplay, game-logic and collision checking (in-depth) are mentioned, a really good read!
http://lazyfoo.net/S...rials/index.php - If you choose SDL, read these!
There are also some (recent) topics about getting started in game programming here on the forums (developers corner), I recommend looking for them as they contain some more useful links, hints and advices
for example: http://www.gp32x.de...ware-and-stuff/ and http://www.gp32x.de...mers-out-there/

foxblock out
 
Last edited by a moderator:
I'd have to agree with Foxblock. If you want to become a good programmer, and have the time to learn, bottom up is most definately the way to go.

BUT i honestly disagree with those people that say using an engine is only for lazy people. Yes ofcourse, some people are. But some, like me, have very very busy daytime jobs, hardly any former experience, and like to roll into game development a bit easier. Yes i also read/watched a lot of tutorials, but it's just been lot's of fun for me this way, developing Minigames for PandoraPanic first, and now my first big project. (But the Penjin framework/engine/whatever, is very open and in c++, so you still have full control if you want.)

That said: while developing PanJoust, some time was/is spent (wasted some would say) by changing things that would have been implemented from the start if i had planned ahead, or known some things earlier. But result is the same, i still won't make those mistakes again :)

So in my opinion it comes down to what you want and how much time you have. Fast results, or solid coding.

Cheers!
 
I'll stop ya there and probably say I just fall into the lazy category :p

I'd love to do things from the ground up but I think my project will just become a game engine and never actually developing a game.


Can anyone recommened any killer set-ups? I'm running windows 7 but setting up a dev environment seems rubbish so may put ubuntu or mandriva on if that's a better way.

Ultimately I'm looking for an engine that will be able to play games on the pandora(portability to PSP or nintendo DS would be cool but not too high a priority)...admittedly the easier the engine the better. So if anyone can recommend any set-ups. I'll give it a go!
 
As a noob game programmer myself, I've found that the goal is not so much to create an engine as it is to create a game (maybe seems obvious, but let me explain). Engines are designed to be general things that apply to all sorts of different applications. Penjin is a good example; this one engine is behind all the wildly different minigames in Pandora Panic. But as a noob game programmer, I don't know what exactly an engine should do; as you make it do more, you either have to code more to accomplish it, or you generalize so much that the engine stops actually being useful. So my approach so far has been to code something that accomplishes only what my game needs. The result is inflexible, but it gets done quickly, then I see all its shortcomings and know how to make it better next time around. That way, I get a balance between experience and results.

Having said that, Gluon, an open-source, full-fledged game creation and distribution system had its first alpha released just yesterday. They're aiming to be able to distribute to a tremendous stack of platforms, including the Touch Book, which uses the same SoC as the Pandora, so Pandora support should be easy for it.
 
zRichi said:
I'll stop ya there and probably say I just fall into the lazy category :p

I'd love to do things from the ground up but I think my project will just become a game engine and never actually developing a game.


Can anyone recommened any killer set-ups? I'm running windows 7 but setting up a dev environment seems rubbish so may put ubuntu or mandriva on if that's a better way.

Ultimately I'm looking for an engine that will be able to play games on the pandora(portability to PSP or nintendo DS would be cool but not too high a priority)...admittedly the easier the engine the better. So if anyone can recommend any set-ups. I'll give it a go!

Lol, well then it comes dow to how lazy you are :p If you want a point and click game development environment, skip penjin. Some learning is still involved. Regarding sluggishness: in penjin, you only load those parts you need. And most games need moving images and user input ;)

Biggest plus is platform independancy: this afternoon i copied my entire Panjoust and PenjinBase folders from my vista to my linux box, fired up code::blocks, loaded the project file, and it just compiled and ran. And as said before: proved to work on the Pandora as well, and more platforms coming in the future (i think nintendo DS is planned, but ask PokeParadox for those details)

If you are considering Penjin, you can alsways pm me. Otherwise: still the best of luck!

Cheers!


Edit: Development environment: i now find linux to be favorable to windows for coding. But if you have no linux experience whatsoever: start with windows. You don't need the hassle of figuring out 2 new things at once (operating system and programming). For me, code::blocks works great, and is available on most platforms, but some disagree.
 
Last edited by a moderator:
Yeah I tried setting up a dev environment in windows 7 and just got lost =/

So I've just finished sticking ubuntu on and bam got a dev environment up in seconds. Think I'm going to stick with PyGame for the minute. I'll definately have a look at Penjin. It does sound very cool.
 
I'm editing the source of Commandor and just wondering how the floor works in the code below. I'll be asking a ton of questions on the source of this game. I've messed about with the floor a bit after changing the display to 800 x 480

http://www.pygame.org/project-Commandor-514-.html

floors=pygame.sprite.RenderPlain(floor((700,420),(800,200)),

floor((300,350),(400,350)),

floor((0,350),(100,350)),

floor((110,300),(290,300)),

floor((0,250),(100,250)),

floor((300,250),(400,250)),

floor((110,200),(290,200)),

floor((0,150),(100,150)),

floor((300,150),(400,150)),

floor((110,100),(290,100)))
 
Back
Top