However that's not to say it isn't a rewarding career path. There's something satisfying about seeing something you've designed on a computer come to life. This feeling is made even more satisfying when it becomes an official network game, and everyone wants it on their computers. But before you get here you have some work, and a lot of sleepless nights to endure.
In order to become a network game programmer you need to have an understanding of programming languages. The most common language used today is C++. Having a good grasp of Visual Basic and some other older coding methods can't hurt either. After all you never know when that one problems going to come up that you need something from the early days to solve. You need several years' worth of learning in programming languages before you're ready to design MMO video games.
You may be wondering why, and think that a video game is just a video game. But that's not true in this case. When you make an online game it needs to connect to the internet, and other people. Understanding how your computer connects to other people and services is crucial. Computers use a wide range of software ports, and require various TCP/IP protocols in order to communicate properly.
If you don't have a good grasp of this chances are your game is going to have problems. You also have to program it to be flexible, and be able to cope with the strain of having a multitude of players online at the same time. Then you have to make trading systems for them to barter with each other, and in some cases economies for towns. If your game is big enough it may even cover entire galaxies.
Of course having all of these players online at the same time puts a tremendous strain on any server. One method of reducing this strain on the network is to have many of the games core files installed on peoples computers. This means that their computer will be loading the graphics, and effects, and your server won't have to stream everything to them. Programmers are instrumental in figuring out how to do this, and executing the procedures.
Anyone who thinks that game programmers don't work hard is sadly mistaken. While the artists and models may make the terrain, the models, and make them look pretty, it's the programmers that make everything work. When that character walks, runs, jumps, attacks, blocks, or bumps into something and has a physics effect it calls on a line of programming. Without this line of coding it won't work properly, or at all.
This is why great programmers are in high demand. Companies are constantly on the lookout for great talent. Doing something that makes you stand out from the rest is very important. Otherwise you will be looked at as mundane and passed over. It's best to have examples of your coding ready just in case a job interviewer wants you to prove that you can do it.
The requirements for this job go beyond knowing coding languages, and being fluent with a computer. You have to be really good at math in most cases. Everything in a computer game has coordinates that need to be set up properly. You also need to be able to work long hours with little sleep checking over the network settings. This isn't for those with weak resolve, and many companies fire their coders that can't work under these kinds of conditions.
So if you're good with computers, know your way around computer programming, and think you want to make network games, then you might have what it takes. Now you just need to get a degree since most companies won't hire you without one. Unless of course you find other like minded people and start your own game company. This is truly the hard path, but if you can make it work and make great games you will succeed at it.