My venture into the game modding world and hosting a hobby game server
I'm gonna roll the tape backwards, far into the past. I was 7 years old when my father got our first computer. It was an IBM machine that ran Windows 3.1, floppy drive times :) It was really fun to play around with it and discover the command line, trying to figure out what can I do there, typing help and trying to make sense out of the stuff that was printed in the terminal, feeling the surrounding mystery of all the commands.. As you can imagine I was moved by this mysterious machine at that time and I decided to buy computer magazines monthly to learn more about them.
BYTE was around at that time, so i begged for a subscription and scored one!
In one of the byte magazine monthly's they gave a floppy disk with Mario in it.
Can't forget that day... I was so excited while reading the instructions to run the game from the dos command line.. And when it did finally run, i knew what i wanted to become in the future :) I wanted to develop computer games! But first i needed to play a lot of them (cheeky)...
Then the Internet came, though I will then move on to learn (in the future) that it came quite late to our little town. We had a 28.8KB US Robotics dial-up modem, with that piece of hardware I dived into the digital world. A year or two later we had the chance and took it to upgrade to 56KB line! Oh boy such an upgrade..
I was about to realize that with the new connection, the magical gates of online multiplayer gaming was opening! I spent so much time on quake online, fun times!
OK let me get back to the topic, drifted a bit ...
I believe it was September 2001 just started high school at the time. Up until this point i had a lot of gaming experience but multiplayer was limited to the FPS genre.. This was a time that when someone said online multiplayer, they were either talking about a shooter or a real-time strategy game. But soon i discovered a gem, that left a mark in many players life as the best game that has ever been designed.. It had no equivalent, and still to this day it does not.
Ultima Online, for people that played it, is the best video game that has ever been developed, without a doubt :) It featured a living world with real people in it, beggers, fishers, warriors, wizards, miners, and many more. You could be whatever you wanted to be. And the unique gameplay made it last so long that no other MMO survived this long. It was designed in a risk-and-reward style that if your character died in the game, it drops all the items that its carrying to the ground so others can take/steal it. So if you were traveling outside the town, you always had a feeling of suspense..
Overtime I got interested in modding Ultima Online and I wrote my first lines of code to create a unique experience within the game. But never actually finished or released it..
About 9 years later and a couple failed game projects later, I realized that I always wanted to mod the game and release it for other players to try. So I got down to business...
For people that knows UO, I had a custom ruleset that I wanted to implement.
Mainly PRE-AOS / No PreCasting / Influence from SPHERE 55i. And no Trammel.
This took some considerable amount of time and around 150 commits.
Mainly the challenges are that I have never done Mono Runtime before and it has been something like 6 years since I touched C#..
But the codebase itself made a lot of sense, having spent years on playing the game, I could understand the code like poetry.
A screenshot in midst of the dev cycle:
But the modded game needed more than a codebase, it needed a name, a logo, a website, a discussion forum, a marketing campaing. At this point i did consider getting some help but eventually decided to solo this boss myself :)
So I came up with the idea of UO International, that I can welcome people from all over the world and place the server in a spot that is quite central.
Designed the following simple logo and launched a website and a discussion forum with it:
Right after the logo, site and the forum finished I started a marketing campaign on Facebook and Instagram, below is a graph of money conversion into click to our website, through this channel I got quite some visitors keeping in mind that the Ultima Online crowd is shrinking every day. On top of this marketing campaign, my project was the number one in https://reddit.com/r/mmorpg and https://reddit.com/r/ultimaonline
Some people couldn't even believe they saw ultima online advertisement in Instagram..
The server launched within this marketing campaing, got 250 accounts registered the first day and on average 30 active players. Following weeks the numbers kept increasing but trouble came with it..
If you have ever ran a game server online, you would know that they are huge magnets of DDOS... Had quite some trouble with it but eventually I was quite happy that I did not went with a infrastructure provider that null routed your server upon DDOS. A null route in terms of computer networking is basically a network route that leads to knowhere, which makes all the incoming traffic to hit a wall and drop. Using a null route to ignore a ddos is generally called blackhole filtering. My choice of infrastructure was https://online.net and their location near Paris. It provided great bandwith and ddos protection, as an example, in one of the attacks people that were online in-game kept playing and didn't feel the attack. Only new players wasn't able to join, which is bad but better than complete downtime..
After mitigating the attacks, things went quite smoothly. Unfortunately it never reached the player statistics that I dreamed and aimed to reach. I was ready to take on 1000 concurrent gamers on a single box, but our average online was drifting around 50 - 55 players.
To take care of the server/marketing costs, I have designed a small free to play shop that sold cosmetic items in-game. The spenditure on these costs were 160EUR per month average, and the income from the server was 12EUR per month average.
Despite these facts i was ready to pay the price from my wallet, as I wanted to reach a goal and i did it. The main problem is that in mmorpg's like Ultima Online, you have to reach a certain number of active players for the game to be enjoyable to everyone else. We couldn't reach that treshold. And eventually i had to close down the server.
Before we closed down, we had 1255 account registrations in total and average 52 players active in-game.
All in all, I am glad for every minute that I spent in this hobby project of mine. My advice for you is that do not start your journey with money in your mind, but do it for your own personal fulfillment.
You can find the source code and how to run it below: