How to release a .io game

5/15/19

Releasing Cavegame.io

Cavegame.io was first released about one week from the day of writing this article. I'm sure lots of people are curious how I prepare a game for its release! I have gotten better at the process of releasing with each new game release, knowing exactly what my player sources will be and if my game is really ready to handle many players.

Initial Testing

Before releasing the game, I had to make sure that there wasn't anything that would make the server crash or make it lag hugely. These tests can be done with a few friends, and with bots. Bots are useful for checking for laggy spots, and testing with friends allows for verifying that there are no broken, overpowered mechanics.

Discord Beta Testing

After doing some initial tests, I released the game to my Discord server. This was an excellent testing platform, because it let me see that there were some unbalanced problems with items and the map, which I was able to catch before actually releasing the game to the world.

Branding

To make my launch effective, I needed banners and other images ready that could advertise my game. This is the banner image I designed for Cavegame.io:

I needed a good banner image because this is what gets put on the front of .io game websites.

Submitting and Waiting

The key to submitting to .io game portals and websites is that you never know when exactly the website will get back to you, or even if they will accept your submission. For that reason, I always submit to the most important and selective website first. Once they accept my submission, I submit to other .io game websites. The other important aspect of submission is that I must make sure my website is running, and that I will not need to push any new updates to my server before they accept the submission. The reason for this is that you need to make sure the website managers can see your game and try it, because if it is not functional, it will not be accepted.

Post-launch Updates and Server Restarts

After Cavegame.io was put on .io game websites, I was ready to start updating it again. One thing I always worry about is that if I push an update, it will be irritating to the players who are online at the moment. But I learned that I just have to get over that annoyance. I also implemented a notifier telling everyone online that the server is restarting.

Another feature I added to handle updates is that 5 minutes before the restart, there is a deathmatch where players can use up their items. With these elements in mind, I feel fine with updating the game once or twice a day. Even if a few players online are annoyed by a restart, the restart will not affect the majority of potential players that still have never tried the game before, so I know that I can rest easy when it comes to restarting the server and forcing a restart.

Lots of players are asking for the ability to regain items after restarts. I like this idea, but there are some difficulties. The first is balancing. If there is a very powerful item, a restart every 24h or so will wipe the server of that item, so new players can start fresh. But if players can go through a restart or a log-off and regain that item, it makes it difficult for new players to start fresh. The other difficulty is that I need an account system to do that. Also, I need to decide if respawning with items is limited to one server, or if it can be transferred to other servers (eg. US 1, US 2). For these reasons, I am hesitant to add this feature.

More Servers, EU Servers

After launching, I always know that I may need to add more servers to satisfy players, or to balance out the game better. Therefore, I have learned that it is essential to have a system in place for this BEFORE the launch, since it can be a difficult hassle to set it up afterwards. For example, you need a system set up where your central server knows about all of the game servers that are online, along with their locations, and the users location. This can help you send the player to the right server. Dealing with this later is what devs often decide on, but it can be a hassle later when there are actually people trying to play your game.

Want to learn more? Join the Cavegame.io Discord to chat!