Hosting a quest game on your own server.

To host a quest game on your server, you need to configure an ASP.net server. Don't worry if you don't know what it is; think of it as a way windows complicating things compared to Linux. If you are familiar with it, it's well and good and ignore my criticism. So let's begin!

In my quest to host a quest game online, I found two critical ways to host the Game online.

  1. Directly using ASP.net hosting providers like smart ASP
  2. Hosting the Game using Windows server 2019 in AWS Console

In this tutorial, I will not elaborate on both methods, but I will provide you with some pros and cons to understand why I choose AWS over SmartASP.

Smart ASP

Smart ASP is a professional ASP hosting platform that provides you with a reasonably good plan compared to its competitors. They offer you are free trial of 60 days, without any credit card information.

AWS

Amazon Web service always amazes developers with its reliable hosting plans and is undoubtedly a costly one to maintain for long-term and data-intense works. But...

It also provides a 1-year free trial if you are a new customer, and it is pretty good with a lot of tools in our hand. This server is also called the Amazon EC2.

Conclusion

Comparing both of these, I realised the plan in terms of time and efficiency; I realised Amazon EC2 would be a great choice. If you want to know a bit more about this, you can always reach me through the comments.

Making our Game ready for Hosting

I hope you already have a game with you waiting to host online. At least if that is the case, I'm here with you.

Organise all of your game files

In most cases, you already did some organisation. If not, create a folder named after Game, and save all of your game files. Especially don't forget to add your Game.aslx file in it; From now I will term this folder as Game Folder

Download these resources, which will come in handy

Quest's GitHub files; From now, I will term this folder as Quest Folder. Also, keep this link in a new tab; it will be saving you a lot of time.

Please, don't follow this guide, especially don't download Visual Studio and waste your time and energy. I will tell you when to use it as we proceed in this post.

Copy and paste the Game Folder files into Quest Folder

This Quest folder now contains GitHub files and Game files. To make our things easy, let's Zip this folder as Quest_Game.zip.

Now, you have a Quest_Game.zip that contains both GitHub files and your Game files on your PC.

Creating a free Domain Name

This part is one of the easiest ones.

Open the website Freenom to Signup and create an account for yourself. Under the "Services" section, you can see an option, "Register a New domain." Now, do the honers of finding your name of choice. If your choice of name is available, continue the rest of the procedure to get a free domain.

I hope now you have a domain name for you. We will use this domain name while configuring our Windows Server.

This way, you can use your domain name to access and share your Game.

Configuring a Windows server 2019 in Amazon (AWS)

To make this article short and clean, I'm making this as quick as possible. You can always comment below for more information, and also, there are a ton of video online for configuring this server.

Step by Step procedure

Create an AWS account; it's not that difficult, but the process is quite cumbersome because you need to provide Debit/Credit card details. Remember, on the day this article published; you will not get charged for anything; The credit/Debit card details are to keep spammers away from creating multiple free accounts.

Once you have an active AWS account, to host our Game online, we need a Windows Server 2019, and I know many of you are not familiar with the procedure. So among many other YouTube videos, I would recommend you follow this video step by step.

I believe this particular video covers most of our job in hosting our Game. Briefly speaking, in this video, the commentator shows you how to host an ASP.net website with HTTPS. After following this video for over 9 minutes, he will upload his website files; this is where the zip file you created will come in handy.

Many of you might face difficulties in this section, so I will try my best to support you through the comments section.

Tip: If you are a member or subscriber of my blog, I will get a personalised notification when you have any quires.

This is the order of the video.

  • Create a Windows server 2019.
  • Connect to AWS EC2 using Remote Desktop.
  • Download the requirements(IIS Server) for ASP.net hosting.
  • Creating a demo website without SSL. (HTTP)
  • Replacing IP Address with Domain Name.
  • Upload our ZIP file (Quest_Game.zip) and extract it.
  • Now, at this stage, you should update the webplayersettings.xml using this link.
  • Also, the folder Webplayer should be your start project.
  • Configuring SSL(HTTPS) using an application, certify the web

This is how it should look in your windows server.

Windows Server 2019, IIS Manager.

Some helpful tips while following the video.

  • If you are using a windows machine, copy-pasting between two devices will work seamlessly. So, take advantage of this feature.
  • If you feel like your internet speed is slow, rather than downloading the Quest Github files on your PC and upload them to your Windows Server, copy-pasting the download link in windows server will be a good alternative.
  • By default, the server will not come with a stable browser and make things difficult for you. So I would recommend you download this lightweight browser (Midori Browser) to your Windows Server. (This is not compulsory)
  • If you have a stable internet connection and rely on uploading files from your PC to Windows Server, I would suggest you download CertifyTheWeb and upload it, rather than download it in your browser.
  • Don't forget to configure, manually, your WebPlayerSettings, for this take help of this link. (This is the link we kept in the new tab a while ago)
  • Compared to AWS, configuring things in SmartASP is quite smooth; but it has less only 60 days free trial and some of the very high complex functionalities of the Game are not working. Ex: In my Game previously, I created a function to set his Gender attributes. But this attribute is replacing the name of my character. To check it, enter into my Game (SmartASP) (Aws)
If you have any doubts or want me to write another article for publishing the Game using SmartASP, comment below.

Also, I'm looking for some who can help me create a complete course on Quest, A Guide to developing a Text-Based Adventure; if anyone is interested, let me know, I will provide them with Author access to this blog, and you can become a permanent author and will allow your personal monetisation.