One type of site that can keep a user coming back to it time and time again is an online gaming site.
No, I’m not talking about an arcade site of which there are thousands of (all of which have the same games I might add), I’m talking about either a multi-player text based game or multi-player game with a 2d or 3d world. While making a site or a game like this may seem intriguing, finding hosting for such a site is anything but easy. In this article we will take a look at the needs of both text-based, 2d, and 3d game site hosting and the possible hosting solutions for each. Before I go any further into this article, you should know that most of this article will be focused on text-based multi-player games because they can generally be hosted on any platform. A multi-player game involving a 2d or 3d world generally requires at least a VPS (virtual private server), if not a dedicated server. There will be information on hosting those types of games in the VPS and dedicated hosting solutions breakdown section of this article.
Generally when hosting a text-based multi-player game such as KillMonster or Legend of the Green Dragon, you really only need to worry about two things: technical support and CPU/RAM usage. Do not worry much about space or bandwidth as these will not be your limiting factor for such games. Games like this require a host that has prompt technical support and lenient CPU/RAM usage policies. I will explain why these are important to a text-based multi-player game and why space and bandwidth number are not so significant.
The most important thing to look for when hosting a text-based multi-player game is the CPU/RAM usage policy. CPU and RAM usage policies dictate how many cycles of clock processing power and how many SQL queries you can use before your account either slows down or you get suspended for over-usage. CPU/RAM usage policies are usually listed in a host’s Terms of Service agreement(that not many people bother to read) and there are usually either strict numbers in regards to this or guidelines of about how much you can use. When you are planning to host a text-based RPG, you should comb the TOS of a host carefully to look for these numbers. If they are not present in the TOS agreement, then you need to ask the host’s sales staff or technical support staff how much you are allowed to use. The maximum usage rate among shared hosts can range anywhere from one to ten percent and you’ll want to find a host in the tops of this range for a text-based RPG. The reason you’ll need so much CPU and RAM power for a text-based RPG is because they are possibly the most server intensive scripts out there. Every action, whether attacking someone, buying items, or communicating takes a certain number of code executions and SQL queries and one user will perform many of these actions per visit which results in a massive amount of CPU/RAM usage. If a large number of users log on at the same time and perform these actions on a shared server, it will easily crash the server. Besides CPU/RAM usage rates, another thing to look for in the TOS agreement is the amount of simultaneous MYSQL connections an account is allowed to have open. If your host limits each account to only 10 or so connections, many users will feel lag in your game while some others may not be able to access it. When looking at this number, try and find a host that allows at least 15-20 connections at the same time. This will allow at least a decent amount of users to play the game at the same time.
Aside from technical specifications that are required to run an text-based multi-player game, the next most important thing for such a game is technical support from your host. These types of scripts can and do often have database error or script execution errors and you will need prompt and knowledgeable technical support staff to help you solve these problems when they arise. Lack of good tech support can cause you hours or even days of downtime. The best way to get an idea of the quality of technical support of a host is to ask around in forums such as webhostingtalk.com or freewebspace.net. These forums are filled with thousands of users and there will be someone who has used the host you are thinking of in the past or is currently using that host. Such users are able to give a much better review because of experience with the host than can web hostingreview sites, which tend to give a large bias towards hosts who sponsor them. Most of the people in large forums are veterans of the web hosting world and can tell you key points to look for in a host and which hosts to avoid. Be careful in doing your research on the quality of a host’s technical support as not doing it will cost you a lot in the future.
Now since I have established that CPU/RAM usage, the number of MYSQL connections allowed, and technical support are important to a text-based multi-player game, I will explain why big numbers for space and bandwidth are not that important. For text-based games, large space and bandwidth numbers are entirely a marketing gimmick used by the major oversellers to draw clients in. They cannot actually afford to give such resources to every customer but are safe in betting that the average customer will not use nearly as much as they are given. A text-based multi-player game does not require that much space as the actual size of the game will usually be less than 10mb. You may need 100mb or more space to store all the SQL data of your users, but you will not need hundreds of gigabytes of space for storage. Likewise, in a text-based multi-player game, bandwidth usage is usually low, with each page being less than 50k in size. You will be able to serve up millions of page views with the usual amount of bandwidth that is allowed on most hosting accounts. You will reach CPU/RAM limitations long before you reach space and bandwidth limitations so space and bandwidth should not be your concern when you are searching for hosting.
Now that we have looked at the requirements for hosting a game site, lets look at the possible hosting solutions available.(If you are looking for solutions for multi-player games that have a 2d or 3d world, skip down to the VPS, Dedicated, and Dedicated cluster sections of this breakdown).
1. Free Hosting
My advice is to avoid free hosting for any kind of multi-player text-based game. Free hosts just don’t have the server resources that are required to run a multi-player game of any size. In a free hosting environment, you are jammed on a server with hundreds if not thousands of other users so the amount of CPU/RAM use that each user can actually use is extremely small. SQL connections are also extremely limited for free hosts that offer SQL and will often lock or have crashes. You are very likely to lose your data if you host with a free host as many free hosts either do not have the means to make backups or just don’t make backups. If you don’t have $5 a month to pay for hosting, I suggest you save yourself the headache and start with a less resource-intensive type of site instead.
2. Shared hosting
While not the ideal environment for hosting multi-player text based games, a shared environment is where many people will have to start. Most of the article in regards to CPU/RAM usage applies specifically to shared hosting environments as the quality among shared hosts varies the most. If you are going with a shared environment, do not go with a host that offers hundreds of gigabytes of space and tera-bytes of bandwidth for under $10 per month. Such hosts usually stuff a far-above-average number of users per server and have bad technical support for customers. For hosting a text-based multi-player game, look for an application specific host such as mediatemple.com and look to pay in the .25 to .50 cents range for each gigabyte of bandwidth used if you want quality hosting. This may sound expensive to you, but intensive application hosting of any quality does not come cheap. Getting service from a more expensive but reputable host will save you a lot of headaches down the line.
3. Semi-dedicated hosting
A semi-dedicated hosting account is really just a large shared account with some extra privileges that is on a server with a low client-to-server ratio. This is much improved over a regular shared account as there are not as many people fighting over server resources. CPU/RAM limits in this environment are much higher and the host will usually work hard with you if problems arise. The cost of such an account is also several times higher than a normal shared account so this is something to look at if you’ve outgrown your shared account. You still can get suspended for over-usage of resources because in a semi-dedicated environment, each user is not sectioned off into their own space but everyone still shares the big pool of resources and one user does have the potential to slow or crash a server. However, technical support is usually far better for semi-dedicated clients than it is for shared clients as you are paying much more for the service.
4. VPS(Virtual Private Hosting)
This is my recommended upgrade path from a shared host and the type of hosting you are going to need to start with if you are running a 2d or 3d multi-player game. In a VPS environment, each account is sectioned off into its own space and the actions of one user will not effect another. Each user has an amount of guaranteed RAM that they can use and a “Burst Rate” for emergencies. No one user will use or “borrow” everyone else’s resources. In a VPS there are no account suspensions due to excessive usage for this reason. For a multi-player game, you will want a VPS with at least 384MB guaranteed RAM for performance reasons. In a VPS, you will also have root access to your section of the server and with such access, you can install server platforms and API’s that are needed for 2d or 3d multi-player games. This is the reason why these types of multi-player games need at least a VPS to run. Most of these games require a special communication server written in Flash, Java, or .NET for users to interact with each other and the environment they are in. In a shared environment, you do not have permission to install such software and therefore you cannot run a multi-player 2d or 3d game. If you do get a VPS, it is suggested that you get a managed VPS account with a control panel as server management can be quite sticky if you are not an expert. Also technical support can help you open the necessary communication ports in order to get your game running. Being on a VPS will give you peace of mind knowing that your in your own hosting environment and no one else will cause you to crash.
5. Dedicated server
If your site keeps growing, you will eventually need a dedicated server. If you outgrow the upper-class VPS accounts, you will want at least a dual-core processor and 1GB RAM to see any noticeable difference in performance. A dedicated offers you much the same things as a VPS does but you get the whole server to yourself and not just part of it. As such, you can do things like partition drives that you can’t do in a VPS environment. This is ideal for running a 2d or 3d multi-player game as you will have the least restrictions in what you can and can’t do. A dedicated server is also the most expandable of all the hosting platforms as you can upgrade the CPU, RAM, Hard drive, and bandwidth pipes if you need upgrades. You can even have technical support install additional stuff like video cards and sounds cards if needed(I’ve hardly ever seen the need for this). It is suggested that you get some kind of management with a dedicated package as on-site hands is a great help to troubleshooting server issues. Hosts have different levels of management available for servers and I would recommend at least getting the mid-level management solution.
6. Dedicated cluster
For ultra-popular gaming site that outgrows the power of a single server, a dedicated server cluster is where you will want to move to. In this environment, several servers are working together to power your site. The main issue with this solution is the management of the cluster. You’ll want on-site management of the cluster from the datacenter itself and perhaps additional management from a company such as http://www.platinumservermanagement.com/ for really troublesome situations.
We have looked at the hosting needs and solutions all the way from free hosting to dedicated cluster setups. After reading this article, you should have a good idea of the kind of hosting you will need to power your game. Before choosing a host, talk to others who have been in hosting for a long time to get their opinion and continue to work with your host after you’ve bought a plan. Keeping a good relationship with the host will open many doors for expansion in the future.