views:

327

answers:

11

I am planning on developing a game (kind of management game where you play manager of company, hire employees etc.). I plan to have simple 2d graphics (possibly vector graphic).

What language and framework would you suggest for this project? As you might see this kind of game would not require a "fast" language. Languages that I know and like include Java and Ruby, but I don't mind if this would be learning project for next language (maybe C++ or Python).

My only requirements are that it is multi-platform framework and works under Linux as well as Windows and is easy/fun to work with.

A: 

C++ is always good for speed. Unreal game engine is written in it. And it looks pretty good from videos at you tube, but its quite expensive.

There is a Microsoft framework present called XNA for c++

This question would give you more clue.

http://stackoverflow.com/questions/622226/whats-the-best-net-game-development-framework

Xinus
Unreal Game Engine is only viable if you are releasing a AAA product. Also XNA is a C# framework not C++.
resolveaswontfix
I believe you can work in C++ with XNA framework since .NET also supports C++ language (but you'll lose out C# features).
Spoike
+2  A: 

I would use C# and mono with a Forms based gui for graphics.

NotDan
+6  A: 

The fastest framework for game development I know is pygame.

yogsototh
A: 

Making a game from scratch is definitely not suggested. You would want to use a game engine. Unfortunately for you, Java and Ruby are rarely used in game development.

You may want to learn Python, though. It is a scripting language which in many ways similar to Ruby, used in some game engines, and also cross-platform.

RichN
+1  A: 

I have two recomendations:

Crystal Space - http://www.crystalspace3d.org/main/Main%5FPage It's an old project but has good demos. Well, it had a few years ago.

Ogre - http://www.ogre3d.org/ This is a newer project and I heard good things about it.

Both are cross-platform (Windows/Mac/Linux/Whatever) and free-software. Both recommended. Don't get locked to a platform :)

Edit: now on second read... this does seem a little overkill for your task... but still, those two frameworks (game engines) are really good :)

elcuco
+1  A: 

You'll get fast progress for simple games with PyGame (despite the lack of good documentation).

For Java, try jogl.

For C++, try Game Editor.

For strategy games, try the Spring RTS engine.

For a community, see http://www.gamedev.net/

Aaron Digulla
+2  A: 

XNA. A lot of the suggestions for 3D engines are overkill for what you are trying to accomplish. XNA has a lot of pre-packaged starter kits to get you going on your game development.

You can release your game on the Xbox 360, Windows, and now the Zune. I am sure there is cross platform possibilities with Mono for Linux / Mac.

bdwakefield
Negative for Mono. There's a Mono.XNA project under development, but it looks like it's pretty far from being usable.
Josh Kelley
I figured as much.True cross platform is difficult at best, no matter what you choose.
bdwakefield
If he is using only 2D graphics, the SilverSprite project has a good part of the XNA framework implemented (more than Mono.XNA, I believe) and runs cross-platform like any other silverlight program.
kersny
+2  A: 

Allegro and SDL are classics.

bugspy.net
+1  A: 

I would highly suggest using Flash/Actionscript 3. It has a great framework that has more then you'll need. Its easy to get stuff done rapidly. It also has vector graphic support built in and will work on pretty much any platform. It does have some limitations that may make it not viable for how you plan to distribute your game. There are also some platforms that do not support it (like the iPhone).

Actionscript 3 is very similar to Java in syntax and make-up as well so it would be an easy thing to pick up if you are already used to Java.

If you do need a speed boost there is a C++ API to flash called Scaleform (http://www.scaleform.com/). They may have an affordable indie license if you plan to make money off this. They also support all major platforms including consoles and Linux.

resolveaswontfix
A: 

If you tried JOGL and it didn't work out, try Slick (http://slick.cokeandcode.com/), it's a Java Library based upon LWGJL, wich is also based upon JOGL, so it's really the best implemented choice, it has ready-to-use gamestates, texture loaders, and it is designed as a single-threaded environment. And I add, Slick supports SVG Vector Graphics and it has an excellent framerate.

ONi
A: 

If you have fun doing the basics, you could implement your own simple 2D Engine/Framework in Java. Actually it's quite easy and can be done in less than 1000 lines of code. Biggest advance in my opinion is that your game is rendered in a Canvas which nicely integrates with Swing.

If you want to do this kind of stuff in Pygame for example, you would have to write all the form element stuff yourself, since Pygame doesn't integrate with the eventhandling code of any of the available Python GUI frameworks.

If you need some starting point for the Java code feel free to checkout the stuff I've written lately.

Ivo Wetzel