RPG Programming


On October 12, 2000, Elrac said:

There's a computer language called RPG, mostly used on IBM machines for business reports and stuff. But in this post, I'm talking about Role Playing Games.

An RPG is a serious piece of code - say 20,000 lines of code if you write really long lines and no comments, like someone I know. Therefore, don't even think about writing an RPG until you've written a good number of less complicated programs of, say, 2000 lines or so each.

So your first step is to learn a programming language and to become proficient at it. Learn about graphics programming (unless you want to write a pure text game), Internet connectivity, TCP/IP, data structures and algorithms. It would be a good idea to look at the source code for some of the popular MUDs on the Internet. I found the source code for ROM 2.4 (it's in C) to be very clean and well legible.

By 'proficient', I mean, let's talk about it again in a year or two.

For a server, you can use any PC connected to the Internet; if you have a cable connection, you could even use a PC at your home. I rent a small slice of a server for $50 a month from AdGrafix, but you can get a cheaper deal if you shop around. mudservices.com caters especially to MUDs, while other rent-a-servers can be found by doing Web searches for words like "web hosting", "virtual server", "co-location" and so on. But don't worry about where to get a server until you have a program to put up there.

On December 18, 2000, Elrac said:

I bought a kit like the one you're talking about. Mine contains the Genesis 3D engine, a crippled copy of Microsoft Visual C++ and a book full of profound statements by the gurus of the game programming industry. It's OK that the kit you wanted was sold out, because you wouldn't be able to do anything useful with it (or most similar kits).

"Game Designer" is not a viable beginning career choice. According to the "guru book" (I'm sorry, I don't have it where I am so I can't quote the title), you can only become a designer after gaining a lot of experience at the "lesser" jobs of (take your pick of one or more of these): Graphic artist, programmer, sound man, modeller, animator. It seems that most of the successful games people are avid players who take on one of the above jobs for a game making company and sometimes later strike out on their own.

Where to start depends on what you are good at. Try your hand at computer graphics (painting faces on characters, drawing in-game furniture and walls, that kinda stuff), then maybe you can find an animation program and build some moving characters; or maybe you're into producing and manipulating digital sounds. But learning all these skills is only useful if you're going to start a career in the game business or something similar. If you have an aptitude for programming, you can learn to do it and open yourself up for a wide variety of well-paying jobs.

Most commercial-grade games these days are written in C++ or C. A lesser number of people work with Visual Basic, Java and Python. These last three are often easier to learn and work with than C/C++, but they are usually slower (read: not ready for fast-paced games) and not as versatile.

C and C++ have a slight similarity to Pascal, but Pascal is not a popular language and you are better off learning C, then C++ without learning Pascal first. Some people say you should learn C++ without learning C first.

There are online tutorials for practically all computer languages, and compilers you can download free off the Internet. There are even complete, free, ready-made game engines. But take this stuff one step at a time, because "a fool with a tool is still a fool."
Back to RPG Programming

Back to Table Of Contents