Wow, it has been a long time since I have posted any progress.
Last post I mentioned merging months of changes from different prototypes back into the main branch. This proved to a fairly daunting task. Part of what I looked at was scriptable objects in unity after seeing a video (Overthrowing the MonoBehaviour Tyranny in a Glorious Scriptable Object Revolution). Following a tutorial I was able to piece together some pretty cool stuff, including basic bots for offline play.
It has been over a year since I last checked in here. A lot has changed.
The new developer didn’t work out. However there was a lot of back and fourth with the new game designer Kirk. We went over many different iterations of changes that could be made to the game. Ultimately we settled on a new system that I will be detailing later.
For now I am working on merging months of changes from different prototypes back into the main branch. Because of the rapid changes that were happening at the time, I wasn’t able to blog most of it.
That’s right. Mage Duels is welcoming some new team members this week!
I have been talking to several people after posting on reddit. There has been a lot of talk about current and future state of the game. Each person brings a new facet of ideas and experience.
First, we have brought on a new developer. He has hopes to help with the procedural arenas. The code base has been moved to a new repository to help facilitate the collaboration.
Next, we are looking at a couple of designers to help flesh out the mechanics and overall feel of the game. I have been having some very interesting conversations about where the game is heading and how we should get there.
Last, but not least, an audio engineer to give the game some needed juice! He has been going over the current spell list and have started coming up with some amazing effects.
It is very exiting to see all these parts start moving! I am happy to welcome them all!
The current map system in Mage Duels is a Unity3d Terrain. This is great for making beautiful expansive 3d terrains. Unfortunately it is not a skill set I possess, and it is a bit of overkill for what I am looking for.
As a result, I have been looking at time map systems. I found some tutorials recently on how to build a procedural tile maps, or tile map editors. Right now the plan is to create a procedural arena generator. I had limited success with this when the project was being built in C++. I am hoping that I can port part of this code over to Unity3d.
Just after the 4th, a large storm rolled in. A lightning strike went through my cable line. Took out my router, cable modem, and motherboard. I am piecing back together a new dev box, but it is slow going. Fortunately all the source was backed up and once I have everything back together, I should have the new release shortly.
Thank you for your patience.
It is glitchy, but here is a sneak peek of the master server in action!
The 0.0.3 release will be put on a bit of a back-burner as I work to get the master server up and running. It wasn’t originally on the list of todo’s for 0.0.3, but after some consideration I feel that it would serve to benefit the game.
What is a master server?
The Master Server is a meeting place that puts game instances in touch with the player clients who want to connect to them. It can also hide port numbers and IP addresses and perform other technical tasks that arise when setting up network connections, such as firewall handling and NAT punchthrough.
I am making a few changes to unity’s master server code to make it support matches. Each server will be given a set of states: Open, Ready, In Use. An open server can be joined by a single player. The player will configure the set up of the server. Once configuration is updated the server goes into a ready state. Another player can join a ready server to start a match.
Eventually the servers will be able to support multiple game types, be password protected, as well as being set for 1v1 or team v team.
Right now the goal is to get a few match servers up and running.
Here is the list I am working on for 0.0.3
- Player Chat
- In-game leader board of currently connected players.
- Spellbook and Icons
- Current Target Indicator
- Show player names
- From Spellbook and Icons
- Key Rebinding
- Fix damage fizzing spells after successful cast
- Increase fudge-factor for targeting
- Last Target
- Target Self
Well actually it is here, but that’s ok…
I did a bunch of testing on the Linux and Windows versions and everything seems to be stable enough. I have no clue what is going to happen with more than 2 people on at a time so lets stress test the crap out if this thing!
So please download and hop on. Hopefully we have some people hitting the server.
As mentioned in the end of my Game Patches post, I have been working on a leader board ahead of the 0.0.2 release.
Right now it is just a basic table that ranks players (by IP and name) based on number of kills. I will work on stylizing it more later, but as of right now the basic functionality exists and is implemented into the game.
Check it out here.