From Scratch: Which Programming Language to Use
Maybe you've already tried out some game creation platforms and you're ready to venture into the world of making a game from scratch. This of course requires some programming know-how (or a lot, really) and with all the languages out there, I bet you're scratching your head and wondering where to start.
If you go google something along the lines of, "what language is the best for making an FPS/RPG/etc game," you will be quick to notice in your research that there really isn't a 'best'. Some will say C++ is the way to go with an RPG, while others will defend VB.NET (visual basic NET, not to be confused with visual basic). Some will insist on JAVA, and some will even scream of Perl. In this post, we're going to go over a few languages to determine some perks and quirks on varying languages, and which is best for you specifically. Even if C# may be best for what you want to make, VB.NET is much more user friendly and could very well prove to be more beneficial.
Since it seems the most favored form of game design these days is the RPG (or MMORPG), we'll start there. If you're more interested in a strategy or FPS game, or perhaps even a simulation game, please hang around a bit as I plan to work on those next.
Choosing the best language for an RPG
Adventure, excitement, diverse characters and rich environments with fantastic and interactive storylines. An RPG is quite possibly the most complex of all games, with such a well-rounded flavor to it that people have been known to become addicts. What you really want to consider when it comes to language choice are the below questions:
- Is it text-based, 2D, or 3D?
- Is it multiplayer, and if so, how will the users access it?
- What sort of fighting (if any) will be involved? Is it a real-time environment?*
- How big will it be, and how complex is the storyline?
- Are there going to be cinematics?**
- What's my budget?
- Are third parties (such as a server) needed?
* Real time refers to events simulated by a computer at the same speed that they would occur in real life. In graphics animation, for example, a real-time program would display objects moving across the screen at the same speed that they would actually move.
** animated, movie scenes during or between moments of game-play.
A text-based game (Usually referred to as a MUDD (multi-user dungeon domain)) does not require the graphic rendering power that a 2D, or even a 3D game might. For a MUDD I strongly suggest using Java. Java programs are mulit-user friendly and can store information easily (such as saving character info). Java is one of the easier languages to learn, and free to program with.
2D games require a language that handles graphics rendering. This means they are able to load and display pictures (usually called 'tiles'-- images such as grass and dirt that are layered in a grid to make the full image of the map) and at a speed that keeps things running smoothly. Again, the diversity of Java makes it an excellent program for this, and is easier to learn than most. VB.NET (an evolved form of VB or 'visual basic') is possibly much easier for a beginner to learn, being (as the name implies) very visual. If you're knowledgeable about programming, C# (not C or C++) is notably good at making games, too. If you're new to programming, I very much encourage starting off with VB.NET. The platform to use it, Visual Basic Express 2010 is free of charge and quite user friendly. Designed by Microsoft, it's entirely trustworthy and I personally have it. VB Express 2010 is also loaded with help, and has a few very nice tutorials to get you started in learning.
3D games When moving from text-based and 2D rpgs to 3D, we're going into something quite a bit more advanced. Should you feel you're ready to make a 3D rpg game, try testing out some free 3D design platforms to get a feel of how 3D works. I'd have to say my favorite above all is Blender 3D. It's powerful and universal, used by professionals as well as beginners. The community is quite large and helpful, and there is a great amount of tutorials and documentation, as well as an excellent e-magazine that they have.
We'll get more indepth with 3D game design soon, but not until I've fully covered the other versions of RPGs.


11:54 AM
Ferrin
, Posted in