2D game editors and engines are all over the place, but after searching around for the last couple years, I haven’t been able to find one that really rocks my world. Game editors are either poorly designed, patronizing for experienced programmers, or too low-level for the casual game hacker who has better things to do than work outĀ tessellationĀ and sprite algorithms (I’m not saying those things aren’t fun, but they are very time-consuming).
I’m thinking about a 2D game toolkit for those CS grads who always wanted to make games but got stuck programming databases instead. These people don’t have a lot of spare time, but they do still have that secret desire in their hearts to make a cool game. They want tools that are efficient yet powerful. They already know how to program, but they don’t have time to spend months working on hand-coded tessellation. They would rather spend that time designing artistic and innovative gameplay. They probably have a buddy or two who will also be working on the game. They want an elegant tool that lives in the modern world of version control, unit testing, the social web, and pervasive internet.
What do you think? If you were to make a 2D game editor and engine, what features would you like to see? What platforms would you like the editor to run on, assuming the engine would be cross-platform? Please take a moment to post your comments, as well as take the quick poll below:
~
The IceCream engine (http://icecream.epsicode.net/) that I think you posted about looked promising, but hasn’t had any updates in months.
Some features that I would like in a game engine/toolkit:
- Advanced physics or not, depending on whether or not you need it.
- Particle effects, but only if you need them.
- Easy animation. The code level animation techniques I’m familiar with work, but feel clunky and need some wrapping to really feel shiny.
- Built in, easy, accurate collision detection. Did sprite 1 collide with sprite 2? Good. Do something.
- Make the easy stuff really easy. If you just want a basic platformer with collision detection, gravity and powerups or something along that scale it should be dead-simple to create. This would be awesome for rapid proto-typing games.
- As mentioned above, make the easy stuff easy, but if I want to do something complicated/custom, get the heck out of my way! I’m a programmer, darn it! Sometimes I just want to write code! Maybe an editor that generates code that can then be modified or built upon? Maybe something akin to the visual designer in VS?
- When it comes to code, use a language that real people use. Don’t provide a custom “C++ like” scripting language. My preference there is C#, but I’m biased.
- Make it easy to play sound. Every sound library I’ve used I’ve had to wrap to make it fit my needs. I just want some simple ways to play sounds for sound effects and music, find out whether a sound is still playing or not, mute only sound effects or only music or both, etc.
- Functionality to do a few common things like save/store settings and options, high score, etc.
- Maybe some kind of support for level changing/game states/something?
- Having some basic client-server/networking support would be nice bonus, but isn’t necessary.
That’s all I can think of at the moment, though I’m sure there’s more.
If you do end up working on this and would like some help, let me know as I’d be interested in helping. I’ve been meaning to start working on my own 2D engine so I can stop duplicating my code between game projects (well, usually duplicating and then improving). I’ve got some common stuff, but not as much as a could or should.
Hear, hear.
salam
Your blog is really interesting to me and your subject matter is very relevant. I was browsing around and came across something you might find interesting. I was guilty of 3 of them with my sites. “99% of site managers are doing these 5 mistakes”. http://tinyurl.com/cvartfk You will be suprised how fast they are to fix.