After getting the website up and running, getting the layout and styles to somewhere near where I wanted it to look, my first step was to get the chat system up and running. Since The Game Realm is all about multiplayer browser games, implementing a networking system was the number one priority.
During my never ending search for the different architectures available for browser based or even non-browser based networking, I looked into everything that was available. My first adventure led me to socket.io. After spending quite some time learning what it was, how to use it and implementing it into the website, I decided it wasn’t the direction I wanted to go. Socket.io was great for sending messages back and forth but I would need to go alot deeper to incorporate a game server using it. I decided to look into the Unity Unet system (again).
One of the main reasons I wanted to use Unity to create my networking system is that I love Unity. I love the editor, the fact that I can port to just about any device and I wanted the server and client to share some code, which will make writing games for the web site a lot easier.
The first thing I needed to do was to learn what Unity UNet was all about. I will say that it was quite a learning curve. Trying to figure out what HLAPI and LLAPI was and how to do the a simple implementation of a network put my brain into overdrive.
My goal was to create a simple chat system. Since a multiplayer game is in reality nothing more than a server and a client sending messages to each other when broken down to its most basic level, I figured a chat system is the place to start.
While delving into the Unity UNet system and learning LLAPI and the HLAPI, I was finally able to narrow down the most basic usage of networking code as possible to get a server and client up and running. Of course it used a system I didn’t see in the forums or anywhere online, just something I came up with. So far I’m very excited about it and can see how I will be using it to create the games here at The Game Realm!
One of the things I found out is that the Unity WebGL doesn’t allow the mobile Keyboard to open when using the chat on a mobile browser. After seeing this I had to incorporate a home made virtual keyboard for the mobile browser chat which you can see in the screenshot above. I’m not very happy with it since the buttons are small, don’t respond as well as I would like and it isn’t very pretty. But until Unity fixes this, I don’t have any other options, yet!
Update as of June 2nd, 2018…
I decided to move away from hosting my own chat and decided to use the Wise Chat plugin. It was a lot easier, had all the features I needed and easy to implement plus no Maintenance! Check out the Chat link in the main menu! 🙂