Best language for game development?

Started by
19 comments, last by stonemetal 14 years, 11 months ago
As I can see, I have my information with my languages wrong.

I'll get it straightened out eventually.

I'm not asking for anyone to teach me, I was just trying to find some help as to where I could find some tutorials or people that did have to time to help.

When I said C# is faster, I meant with development.

Quote:Original post by Captain P
At work, we use C++ for the actual games - mostly because of the platforms we're working with - but we're using C# for GUI-based tools and personally I use Python for just about any other utility tool/script.


I like what you said about using a variety of languages to make a game.

I think I'm going to do that.

But is there any language that can be substituted for C++ in making the actual game or does it have to be C++?


Advertisement
Quote:Original post by poker158149
But is there any language that can be substituted for C++ in making the actual game or does it have to be C++?


Pascal, Fortran, Ada, LISP, Haskell, Eiffel ...

There are plenty of languages out there that you can use. The whole point is that you are most likely going to use third-party libraries to make that game, if only to handle the graphics (if any). In which case you need to pay attention to the languages it is designed to be used with or, conversely, find libraries that work with the language you are going to be using.

You can make games in other languages than C++: look at all the flash games on the net. You can't deny their "actual game" status. Eve Online is reportedly written in Python. Systems have also been created for facilitating the creation of specific kinds of games.

So no, it does not have to be C++.
"Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." — Brian W. Kernighan
Quote:Original post by poker158149

I was considering Python as my first language to learn up on, and I had a few people tell me that would be a good way to go.


If you are interested in python for 3d I would look into panda3d. for 2d pyglet or pygame.
Quote:Original post by: Fruny

Pascal, Fortran, Ada, LISP, Haskell, Eiffel ...


Although I've never heard of any of those, I might gave them a look.

Quote:Original post by: stonemetal

If you are interested in python for 3d I would look into panda3d. for 2d pyglet or pygame.


So, pygame is only for 2d?

I'm looking to make both types of games with Python, especially big adventure games.

So, Panda3D would be good for those 3D big adventure games? I've heard of Panda3D, but never used it.

And the PyGame I already have installed would be good for the smaller, 2D games?

Can someone confirm that this would be the right choice?

[Edited by - poker158149 on April 26, 2009 5:27:57 PM]
Quote:poker:Although I've never heard of any of those, I might gave them a look.
I don't think Fruny was expecting you to actually have heard of them, and they aren't recommendations for what language you should pick. Did you understand the point he was getting at?

If you're not getting it, try answering the following question: why do you believe C++ can be used for games?

Quote:So, pygame is only for 2d?
No, that's not what was said. It's just that it's less work to get a simple 3D game running with Panda3D than it is with pygame. Of course, the discussion on these libaries is moot, as was pointed out before, if you can't program in any language yet.
Quote:Original post by poker158149
Quote:FrunyPascal, Fortran, Ada, LISP, Haskell, Eiffel ...


Although I've never heard of any of those, I might gave them a look.

Quote:stonemetalIf you are interested in python for 3d I would look into panda3d. for 2d pyglet or pygame.


So, pygame is only for 2d?

I'm looking to make both types of games with Python, especially big adventure games.

So, Panda3D would be good for those 3D big adventure games? I've heard of Panda3D, but never used it.

And the PyGame I already have installed would be good for the smaller, 2D games?

Can someone confirm that this would be the right choice?


Another recommendation I'm going to make for you, since you said you were looking for your "first language", and assuming you don't know anything about programming yet, is to learn to program first. You most likely aren't going to be able to jump right into making games. You first need to learn the language you are going to be using(whatever that is), and work with it a lot(most likely console apps) and really learn what you are doing before you jump into game development.

Whether you choose Python, C#, C++, Java, whatever, there are libraries available to help make games. The first thing you have to do is learn how to use the language before you learn how to make games. So don't worry about engines or libraries until you are actually in the position to use them successfully.

Good Luck.
So, do I just read tutorials and learn how to use the language and learn how to write small programs and gradually work my way up until I have enough knowledge to start being able to write games?

And when I can start writing games, PyGame and Panda3D are the 2 engines I should use to write them with?

Do I have to learn other languages and use them in combination with Python to write a game, or can good 3D games be entirely written in Python?
Quote:Original post by poker158149
So, do I just read tutorials and learn how to use the language and learn how to write small programs and gradually work my way up until I have enough knowledge to start being able to write games?

And when I can start writing games, PyGame and Panda3D are the 2 engines I should use to write them with?

Do I have to learn other languages and use them in combination with Python to write a game, or can good 3D games be entirely written in Python?


Pretty much. Just start small, work your way up, learn from your mistakes, and always think about ways to make what you are doing better. I'm fairly certain that Python is capable of making games completely on it's own(well with game libraries and engines). As an example, the fairly popular MMORPG Eve Online is written in Stackless Python(A Python variation).

Quote:So, do I just read tutorials and learn how to use the language and learn how to write small programs and gradually work my way up until I have enough knowledge to start being able to write games?


Have you read them already?

It's quite simple. People who want to learn by themselves need to be inquisitive, not afraid to try out different options, prepare to fail often, and put in a lot of work, some or even most of which will turn out to be wasted effort. At this point, anything works, and nothing will matter in the long run - just start doing things.


The only other alternative is to get into a school that is related to software development, either specialized or generic CS course, since there they teach either "the best" option (which depends on who's funding the program), or how one can make informed choices on their own.


Nobody can decide what to start with, or what will work out *for you*, but just about all possibilities have been listed.

Quote:Can someone confirm that this would be the right choice?


There is no right choice. Right choices are those that accomplish the goal, but that completely and entirely depends on you alone - tools used will make little difference.

Quote:I'm fairly certain that Python is capable of making games completely on it's own


Any Turing language is "capable". So are most non-Turing complete languages. Heck, even languages are optional, so are computers. Adventure games don't even require anything beyond a good storyteller and a few friends. It simply does not matter at this point.
Yes, I've looked at a few tutorials, but I haven't memorized them yet.

I hope Python can be used by itself, that would make things alot easier.

But if it's not, then I'll just have to learn some other languages to mix into it.

Thanks alot for everyone's help and advice.

Sorry that my newbie-ness was showing.

This topic is closed to new replies.

Advertisement