Regarding my health

Hello everyone,

For over a month now I have been suffering from a constant headache that has totally consumed my life, I’ve had time off of work, lots of tests done and spent a lot of time at home being very unproductive. The root cause of this is still unknown and my diagnosis continues, but I have learned to manage it a bit and as such will resume working on Mirage in my free time when I feel up to it.

A new rule is coming into effect this weekend

The first order of business is a significant change to the rules, that is, a new rule is being added. Rule 10 makes it against the rules to have more than one account logged in at any time outside of town, let’s take a quick look at it:


10. Using multiple clients
Mirage is designed so you can meet other players and interact socially, it is not intended that players will have lots of accounts (or β€œalts” as they are called) that they use to help give themselves an advantage. As such, any player found to be using their own alt accounts to gain an advantage will have all of their accounts immediately permanently banned without warning. As such, you are under no circumstances allowed to:


– Log in on multiple accounts outside of town at the same time

This rule is very specific, and allows you to use an alt account to work around some features lacking in the game. You are allowed to:

– Have an alt online in town to buy / sell items
– Have an alt online in town to transfer items between characters
– Have an alt online in town to chat with other players

The realm rules

This rule is coming into full affect as of Saturday the 20th of April 2019, and is aimed at forcing people to play together more. This is a zero tolerance policy and players will be perma-banned when they are caught so please read, understand, and adhere to this new policy if you value your heroes!

Roadmap for the future

I have taken some time to look at what the game currently is, and what I want to do to progress it. As such I now have a roadmap for the next few months of what I would like to achieve, and I thought it might be nice if I shared that with you guys. As always it is likely over-ambitious, but I’m an overly ambitious guy.

April

  • Client networking overhaul
  • EXP calculation pass for mobs
  • Currency calculation pass for mobs
  • DB migration to liquibase
  • Bug fix sweep

May

  • Party System
  • In-App Purchases
  • Find and hire an Accountant
  • Link to rules in-game

June

  • Technical debt sweep (code architecture)
  • Bug fix sweep
  • Unlock skills and stats for all classes
  • Block % applies to magic also
  • Internationalisation (multi-language client)

These are my own objectives as they are written on my whiteboard so some of it may not make sense. Let me explain them in order πŸ™‚

The client networking overhaul is the second phase of the re-architecture of the server, and once it is done it will be way easier for me to add new features to the game in general so it is a big win for us to get that out of the way.

The EXP and currency calculation passes are actually going to involve implementing an algorithm that will assist me in auto-generating suggested EXP and money drops for mobs based on their stats. At the moment it is all entirely manual and guesswork, but I want it to always be better exp to hunt stronger things if you can and for some of the harder mobs to be a bit more forgiving with their currency drops.

The DB migration to liquibase automates what is currently an extremely manual process. Whenever I want to make even the slightest change to the items or monsters in Mirage that involves me performing a manual database migration of the specific tables that have changed over to a copy of the current live version of the database which is time consuming and error prone. Liquibase is a technology that allows me to fully automate database upgrades so this is going to be removing a huge barrier for getting content changes out faster.

The first bug fix sweep here will fix some really annoying things:

  • Line of sight checks not being both ways
  • Being disconnected when speaking to a shopkeeper from a distance when lagging
  • A bug that can result in you being desynchronized from game state if you logout with PZ lock as you switch between maps
  • Arrow usage not being accurate
  • Mobs being left standing with 0hp above their own bodies if you enter a map the same frame they are killed
  • The knight’s missing foot pixel!

So this month is really about continuing to tidy things up and continue with my mission to remove development obstacles and put us on the right footing for the future. The next month is a bit more impactful to players…

The party system! It is about a third complete at the moment however I am putting it off until after the client-side networking rewrite as it will greatly simplify the implementation. It is actually this that made me decide to stop in my tracks and get this out of the way as there is a lot of new packets to support this system.

In-App purchases are of course something we’ve all known is coming for a long time. I lost a lot of money due to the paypal issues, I lost all of the game money and most of my own savings so I am pretty keen to see something coming back in again. The scrolls you will be able to buy are already in-game and being given out to players as rewards for reporting bugs and such, this bit of work is to implement a store in-game so you can buy them using your google account. The scrolls that will be available at launch are:

  • Realm EXP event scroll
  • Realm skill training event scroll
  • Realm currency drop event scroll
  • Realm drop rate event scroll
  • Realm potion effectiveness event scroll
  • Gender change scroll
  • Rename character scroll

As this means there will be legitimate, actual money coming in (hopefully.. if anyone buys anything!) I am going to get myself an accountant and register Mirage as a business. This is the first real step towards making this game a legitimate thing and stepping away from the bedroom hobby project it has been for so long now.

Lastly, I will be adding a link from the menu to the in-game rules on the website to increase visibility for new players and possibly introducing a terms of service that you will have to digitally sign when you create an account.

June gives me a little bit of breathing room while I sit back and watch how the store and party system works in practise (remember you guys are alpha testers!) so I want to take the time to rewrite some large parts of game logic on the server that are a real problem – namely the way the combat system currently works. I need to do this in order to fix a few things like players being able to target stuff through a wall then nobody can push them despite the fact they aren’t actually attacking anything, and to pave the way for the skull system punishments (red skulls) and actual death penalties.

The bug fix sweep will be around fixing whatever new and wonderful things that are broken as a result of the party system, and internationalisation means making the client multi-lingual so you will no longer have to read everything in English. I will be looking for help from the community with translating everything as I am thick and only speak English and Java.

Unlocking skill and traits for all classes means everyone will have access to magic, distance and melee (regardless of class) and you will be able to equip whatever you like, the skills themselves will just train at vastly different speeds for each class so building a ranger mage will be possible but it might take you 15 years to get decent enough distance to make it work. As such, traits such as Accuracy, Crit and Block will be unlocked for all classes and will be able to drop on any gear.

That’s all I have to say for the time being, I’d just like to say a huge thank you to everyone who is watching and taking part in this project either just as a player or giving me feedback – I know on discord I can be… direct with you guys but honestly this game means so much to me and none of it would be possible without each and every one of you. Even the morons πŸ™‚

All the best,
Liam