Hello!

The alpha server is going great with new players finding the game on the store (how are you guys finding us? We aren’t released!) every day we have a cool little player base of people testing. With this, the latest mid week patch has gone live, here are the release notes:

Expanded world, monsters and items

In an effort to give you guys a bit more to do while you are testing, the world has doubled in size and new monsters and items have been added. Beware, you will need to work with other players to survive in the new region…

testers

You guys have been demolishing the new content! (phone screenshot)

Food and health regeneration

An obvious issue from the day we went into alpha has been the inability to heal, this has been rectified with the new “nourishment” mechanic. You can now loot food which can be eaten and has a nourishment value which is measured in minutes. While you are nourished your character will regenerate a set amount of health and mana every 10 seconds depending on it’s class. Knights are 4hp, Rangers 3hp, and Mages 2hp. You can be nourished for up to 60 minutes, and can check how full you are in the Stats section.

food

Food glorious food

New global chat

What use is an MMORPG without communication. The new chat is colour coded so you know what class people are, multi-line messages are now also indented for readability and there’s no more dodgey scrolling bugs (that I know of!)

newChat

Chatting with some of the testers (phone screenshot)

In addition to the more obvious visual changes, a number of important gameplay tweaks and fixes have been made. If you are actively playing and testing the game, I would really appreciate it if you could take the time to try and specifically test some of these for me:

  • Fix for a fatal server crash condition that would make it look like you were alone in the world when you logged in
  • Trolls now drop “meat”
  • Mana, Nourishment and Experience is now updated live in the stat screen
  • Fix for inventory tooltip issue when deleting items
  • Monsters now attack the closest player
  • Monsters now look for new targets when walking home or if blocked
  • Smart “back button” handling added in-game, no more accidental closes
  • Fix for being able to overflow nourishment by 4 minutes
  • World expansion, new items, monsters and places to explore 🙂

The next patch will be going live at the weekend, and will be primarily about upgrading and building on the combat mechanics we already have in-game. Mages are seeing some big changes, as is ranged combat in general. I look forward to seeing what you guys think, see you soon.

Liam

Comment on this news!

Hello everyone!

It’s with great excitement I announce today the Mirage Realms open Alpha has launched in the app store! You can find it here, or by searching Mirage Realms in the Play Store on your phone. I’m also putting an App store link along the top of the website for good measure! So what’s been going on?

Overview of major changes

charselect

The user interface has been totally redesigned!

Well, to tell you the truth, so much has been added since my last news post it’s a bit of a fools errand at this stage going over it all. Looking at when I last posted, I’ll try and scan over some of the larger things that have changed:

  • There are now 3 classes, Knight, Mage and Ranger – each use a different weapon and skill
  • Items are now a thing, items can be stackable
  • Full loot and inventory system. Monsters drop loot bags that can be opened and taken. Kill monsters, loot stuffs.
  • Client look and feel redesign to be much friendlier and brighter on mobile devices
  • Capacity / weight system, Items have a weight and you gain 10 capacity per level
  • Auto attacks are now tied to weapons, equip a bow to shoot arrows, equip a staff to throw fireballs, etc
  • Full equipment system, items can modify all player stats when worn
  • Rewrite of skill system and all combat equations, different stats apply to different types of damage output / defence
  • The equipment screen now actively compares items from the inventory with the equipped item, displaying the differences
  • Chat messages now appear over peoples heads
  • Character creation and selection screens have been redesigned
  • Vocations now have colours, and their primary damage type is associated with that colour. Cyan for knight, Orange for mage, Pink for ranger
  • Online list added, chat system revamped
  • lot of server side improvements, fixes, logging, optimisations, yada yada boring 🙂
  • Significantly increased world size, addition of a full set of items for you to loot and equip
  • You can now destroy Items you no longer want

There are all sorts of other bits and bobs that have changed but thats the gist of it. It’s weird bullet pointing stuff like this, some of those bullet points took me two weeks to implement, doesn’t seem all that impressive in a list. Anyhow, screenshot time.

Inventory

So first things first then, the inventory is here! Rather than restricting players to an arbitrary number of items they can pick up I decided to go with a capacity system. This means each Item has a weight assigned to it, and players have a set capacity they can carry. This capacity increases by 10 every level you gain, so the higher level you are the more stuff you can carry. Simples! Selecting an item displays it’s stats and gives you contextual options, at the moment you can only destroy Items but trading and such will come soon.

inventory

Look at my cap, nearly full :O

Loot

What use is an inventory with no Items? When a Monster is killed it now rolls for everyone that hit it, and everyone gets their own individual experience and loot bags. You can only see your loot bags so there’s no contention there. When you press a loot bag it will present you with the above screen and you can select what you would like to pick up. This screen tells you your current cap usage and adjusts to show you what effect picking up the selected items will have on your inventory!

loot

Sweet, got a new armour piece – thanks mr Troll

Equipment

Which brings us neatly to the equipment screen. Once you’ve looted stuff, you may find yourself wanting to wear it. The equipment screen presents you with your worn items in the section on the left, here you can select a slot to view the stats of what is currently equipped and also any Items from your inventory that you can replace it with. Selecting an Item in the inventory section will show you a comparison tooltip at the bottom showing you the effect equipping it will have on your stats, as well as any contextual actions. Equip is the only contextual action here at this stage so it’s nice and simple.

equipment

My precious

Communication

The chat screen has also seen some upgrades, it now provides you with a list of everyone online. This list is sorted alphabetically and peoples names are coloured according to their class so you can tell at a glance who is a Mage and what have you. When you say something, if anyone is stood around you they will see your message appear above your characters head for 5 seconds so you can get peoples attention in the game world if you want to talk to them!

chat

Me attempting to communicate with one of our very first players ^^

Stats

Finally the stats screen has seen a bunch of work. The stats are now coloured according to the class they are primarily intended for, and behind the scenes over on the server side a lot of work has gone into the equations that decide how these stats rise and what affect they have on your damage and such.

skills

World first level 7 muahaha… is that like less than 1% from magic 15?

Look and feel

All of the game screens have had a revamp in an effort to make everything less… gloomy and bland. The character creation process being the first experience people have with the game, I felt it was important it didn’t get left too far behind while so much was being added to the engine. It’s still super basic, but its looking much nicer than it was in my last news post. In addition, there’s now a “remember me” option when you login so you don’t even have to see the login screen anymore if you don’t want too, the game will take you straight through to character selection.

customisation

Looking good 😀

So…

That’s it for now. The game will be receiving weekly updates deployed to the app store, currently the main focus is on features and engine changes rather than making a big push for content and maps, though I’ll try and add some new items, monsters and areas to test play around with each week so continuous testers don’t get too bored. Coming next is food and hunger so you can regenerate health and Mana, after that… well, you’ll find out when the update hits next friday 🙂 I really hope to see you online and please take the time to let me know what you like / hate about the game so far in the forums, it’s super helpful.

See you in game!

Comment on this news!

As promised it’s time for a post outlining some of the changes that have gone in since I have been back in the UK. This is going to be a long post with lots of screenshots, though I will try and keep it as concise as possible as nobody wants to read 3 paragraphs about network packet sizes. With that in mind, I’m just going to skirt over some of the performance improvements that have gone in as a significant amount of time has been spent on improvements in this area.

All screenshots in this post were taken using a special debug android client running on my PC, I’m aware the in-game text for player names and such has scaled funny, please ignore that 😉

Performance

  • Rewrite of map loading, transitions between areas are now twice as fast
  • Complete rewrite of the engine’s sprite rendering system, significant improvements here
  • Removal of raycasting lighting engine (60% flat performance increase on Android, batteries everywhere rejoice)
  • Player movement smoothed out, merge of sprite movement and animation systems
  • Fix for a long-standing bug in the entity system, large reduction in garbage collection in busy zones
  • Sprite culling implemented, performance and battery life improvement on Android
  • Significant reduction in network packet sizes due to large crack-down on using the smallest types
  • Implementation of packet-batching where possible, large network usage reduction on joining new zones
  • Everything (UI, fonts, sprites, effects) is now in a single texture atlas, less texture binds all round

TLDR; The game is now running better than ever, it’s starting to feel like an engine.

Customisation

customisation

One of the new character creation screens

With an online game in any capacity, I’ve always felt I like to be able to customise how I look. During the overhaul of the sprite render system, I implemented the ability for sprites to be made from several layers. This allows us to split our sprites into different sections we would like to be able to colour differently, as well as build sprites from several pieces. You will be able to choose the colour of your armour and hair, as well as your haircut / helmet and an addon to wear on your back. Addons, armour sprites and hair / helmet sprites will be earned through completing different tasks or quests, though you’ll start with a variety.

Different addons, colours and helmets / hairstyles are now in-game

Vocations

At launch the game will support three different classes for you to play. These will represent the three main archetypes we look for when playing a fantasy game, you have the Knight who can take a beating and deal out melee damage, the Mage who deals with elemental magic and the Brigand (name subject to change) who uses ranged weapons and has a pet. The basic system has been implemented in game and is now part of character creation, with different classes receiving different bonuses when they level up and skill advancement speeds being tailored to their playstyles.

vocation

The (very basic) vocation selector at character creation

Basic Alpha UI

As I sort of teased with the last news post, we’ve started to get on top of the basic in-game layout. Obviously the look and feel of our entire UI is placeholder, but the placement and proportion of the different widgets as well as their functionality is not. The weird analogue square has gone in favour of a d-pad, we now have experience, health and mana bars, as well as buttons for the chat, inventory, and main game menu. The d-pad fades out when it’s not being used (as shown below) but fades in with a thumb indicator when you are pressing it. The experience bar is placed on the left to further increase the distance between your thumb and the touch buttons on your phone, this will be tweakable in the settings further down the line so you can have it and the d-pad on whichever side you like.

ingame

Stats and Experience

Wouldn’t be much of a classic MMORPG without levels, skills and experience now would it! Well, good news, we have now implemented the core systems that allow your characters to gain experience and level up. Depending on your vocation, you gain a different amount of Stamina (health) and Spirit (mana) each level, and your level is used in the games damage calculations so you will grow slightly stronger just through leveling alone. In addition to this, we have implemented the basic skills: MeleeDistanceDefence, and Magic. These skills directly affect the damage you put out and receive, and they level up individually the more you do them. This is all in the database and functioning 100%, it’s already mildly addictive just being able to run around battering everything and getting stronger 😀 There is a stats overview in the inventory menu if you want to check how your vitals are doing.

stats

The basic skills overview screen

In addition, as you would expect, whenever you kill an enemy that yields experience it will raise above your character in white text. At the moment NPCs can now be ‘tagged’ by players and everyone that hits then will receive full experience for the kill – this is obviously a bit short sighted and will be further iterated on later but the basic mechanism is in.

experience

10 whole experience points, woo

Finally, if you receive any kind of skill or level advance, we feel it’s only fair everyone knows you are kicking ass so everyone around you (including yourself) will see it rise above your character in cyan. Stuff like experience gains aren’t broadcast as we don’t think anyone else cares that you just got 10 exp and we want to send as little as possible to everyone’s phones, but this is the exception.

distanceAdvance

Yay, I now hit marginally harder with bows

Loot!

What’s the point in killing everything if you can’t take it’s stuff right? NPCs now have loot tables and will roll on them for everyone who has ‘tagged’ an enemy and is eligible for experience points. Everyone gets their own loot rolls and their own loot so teaming up with other players is great as there’s no disadvantage when it comes to loot drops. If an NPC drops you some sweet items, you will see a bag drop on its corpse, only you will see the bag and nobody else can take it so there’s no contention there. At present you can’t actually pick the loot up, that’s being worked on.

loot

The golden bags mean there’s some loot for me to pick up

Inventory

You are going to need somewhere to store all that loot. This is very much a work in progress and subject to change, but our idea is to work on a cap (capacity) system, letting you pick up as many items as you can carry. Players will start with a given capacity, and this will increase each time you level up. Your inventory will be automatically organised into sections so you don’t have to squint at a wall of item icons to try and find your sword of a thousand truths hidden among some rat hides and cheesy poofs.

inventory

The core inventory layout is in, still needs a lot of work though

Developer tools

As the game gets more complex and more systems go in, we are getting closer to the point where we are going to have to manage a game world, a growing world that will require constant additions, tweaks and fixes. To make this as painless as possible I feel it’s really important we have some easy tools to work with, so I took some time to put together some tools to manage Items, NPCs and their subsequent loot tables. This toolkit will grow as more is added to the game, but already I’ve found it extremely useful and it will allow me to bring others on board to help later down the line without having to subject them to Java / XML editing. I know this stuff is largely just for me, but I figure it shows you guys I’m trying to do this right.

npcEditor

The new NPC editor

Roundup

And that brings me to the end of my June update news! It’s been a productive month but there is still so much left to do before this starts to resemble anything close to a coherent, playable experience. Although there’s been a lot of work done here, I had hoped to achieve more… unfortunately I broke my heel a few weeks ago and the pain / lifestyle impact has had an effect on my morale and work ethic that’s resulted in spending days in bed watching netflix rather than at the PC coding.

leg

At least I have a sweet abstract fox on it

So that’s it for now, you can expect an update of similar proportions at the end of next month – at which point the private Alpha will be going live. If you would like to be in the private alpha, please leave a message on the forum in response to this news post and I will contact you individually with the details. If you know me personally, just drop me an email / skype message and I’ll get you added to the list. Additionally, if you would like to get involved with the project in any capacity, get in touch on the forums – help is very welcome at this stage!

See you next month.

Comment on this news!

As I’m back in the UK and ready to start working on the game pretty much full time, I thought I’d just post a little update so everyone knows we are alive 🙂

Screenshot from my phone

There has been a tonne of work done since the last update, but I’m going to hold back on the details until the end of next month when I’ll post a full review of everything that’s changed, as well as providing information on how you can get access to the Alpha. For now, I leave you with a random screenshot on my phone so you can play spot the difference. I know my phone screenshots scale weird, but it’s sharp on the device itself. Likely something to do with the DPI at a guess.

See you at the end of June!

Comment on this news!

Hello everyone,

Next week is my last week at work before going full time on Mirage, meaning we are close to this thing taking off! I am away for 3 weeks of May, then it’s all systems go. I’d be lying if I said I wasn’t anxious, but I remain convinced this is the right thing for me to be doing. Even if it fails, I have to find out for myself 🙂 There has been little progress on the game since my last update, I’ve been focusing on getting things finished up at work and getting RL things in place ready for throwing myself into this project at the end of May.

youAreDead

🙁

What I can tell you is that the map transitions are now running smoother on the mobile platform, healing has been implemented, and that player death/ respawn and world persistence is now implemented. You now login where you logged out and your vitals are saved, and if you happen to die your client ‘freezes’ so you can take in the situation, presenting you with a respawn button that sends you to your last discovered portal checkpoint. I’ve also added some cool teleportation ‘poof’ affects so when people login / out they poof in and out, and NPCs respawning in also share this effect.

Next on the agenda looks to be implementing items and loot tables for NPCs (as you can see if you head over to our trello), I will be tackling this head on when I get back in the UK at the end of May! Exciting times ahead, I am looking to deploy the first closed alpha test on the Android market at the end of June, details on how to be invited to this will be released closer to the time, I’m releasing it as a closed alpha first so I can get a guage for early and obvious bugs as well as an idea of how the server performs under small load (rather than the wrath of the Android playerbase), there are no requirements to join this test other than you’d like to play 🙂

Expect a blog update of epic proportions and details on how to get involved around mid-June! If you want to keep an eye on progress in the mean time, you can track progress in real time on our trello and will be able to watch the sparks fly starting from the end of May.

As a side note, I am desperately searching for a pixel artist interested in the project, please message me on the forum if you would like to get involved – be aware this is a solo project at this stage and I am funding it from my own savings, I can’t afford to pay the same rates as Blizzard 😉

Comment on this news!

Hey everyone,

January is out of the way, bringing us one month closer to this being my full time job. My own anxiety surrounding the project aside, I’ve made some fun progress on the engine and also have a new way for you to track what I am working on, as I work on it.

Screenshot from the Desktop client in windowed mode

There has been a load of engine improvements since my last post, entities on the map such as bodies and items are now a thing, and they are handled really generically and can expire which is cool. You can see the result of some combat in the above screenshot 🙂 One of the major important things that has happened since my last post is I have put together a development plan for the next few months outlining everything that I need to add and the order I need to add it for the game’s engine to reach Alpha status.

Carnage 😀

You can look at this and track my progress yourself if you like via a new link at the top of the website titled ‘Dev Tracker’. I am using a free online service called Trello to track my basic dev goals and thought it would be cool for you guys if I made it public so you can see the status of where I am and what I am planning on doing next, I think transparency is really important as a multiplayer games company so I want to include everyone from the very beginning… which, if you think about it, we are really right at the beginning of what could be a sweet mobile game.

bodies2

See you later Moo 🙁

Once the tasks on the dev tracker are complete, I will be deploying a community test server that will be live 100% of the time, and releasing both Android and PC clients for you guys to play with. You will be able to gain access to the Android client in the Google Play Store on your mobile device by being invited to a google plus group, more details on that coming later.

I hope everyone has had a great start to the year, my next news post should be a mammoth one!

Comment on this news!

Hey everyone,

I hope you have all had a good Christmas and a merry new years, understandably (I hope) work on Mirage slowed down over the festive period, howver I did find time to rewrite the renderer over Christmas to smooth things out better on the PC with large resolutions which is nice. In addition, we now have… blood splats!

blood

Me getting wrecked 🙁

This was quite a bit of fun to do if I’m honest, and the effect is quite obvious! The above screenshot was early on in the implementation when splats could ‘stack’, as we are a mobile game and I don’t want to hammer everyone’s data plans sending 5000 splats this has subsequently changed to one ‘splat’ per square, and splats decay after 60 seconds. If you’ve been following the game’s progress, you may remember I added the concept of liquid types so that damage ‘sparks’ could be slimey if you are hitting insects etc, well, the blood piggy backs this system.

blood

Steve getting wrecked 🙂

I don’t think Steve made it… as you can see though, where the spider has taken damage, there be green splats, where Steve has taken damage, there be red. Just a cool bit of ‘fun’ added to help… er… immersion. The reason I am posting this news so early in the month is I have a decent amount of Engine work to do that will result in little to no ‘cool’ things to show off until next month ish so I thought it would be nice to show something cool while letting you know what I’m doing.

76 working days until I am self employed and working on this full time… eeeek

Comment on this news!

Ho ho ho!

It’s heading towards new year and 2016 is the year of Mirage Realms! It’s been almost a month since my last update so I thought it was about time to post what I’ve been working on, as the game is starting to come together I thought it was a good time to evaluate the client performance and see if I was making any silly mistakes, turns out I was being fairly inefficient on phones with my entity system and how I handled messages sent from the server so I spent two weeks overhauling and rectifying that… Then I did a bit of fun stuff, then Christmas happened, and now it’s today. It’s been a month of core engine improvements rather than feature additions… that said, let’s take a look 🙂

Level 1 Trolls might be a bit overpowered, eh Liamski…

  • Complete overhaul of client and server entity and component handling, implementation of pooling (performance)
  • All third party libs brought up to date (we were 14 months behind.. woops)
  • Implementation of texture atlases (render performance improved)
  • Events pushed to the client are now pooled and reused (client performance)
  • Account logins now boot and gracefully logout existing connections on that account
  • Damage dealt now affects vitals
  • Implementation of fade in / out screen transitions between maps / stairs / warps / whatever
  • Creature name colours now reflect their % health
  • Projectile damage is now instant rather than when the projectile lands, projectiles sped up to compensate
  • Addition of health bars, these do not correctly scale and position on Android yet

Let there be health bars!

So long story short, I’ve done a metric tonne of work that I can’t really show off, and a little bit of work on pretty things. One of these days I’m going to run out of stuff to overhaul in the base engine and be able to just add stuff… yeah, I’m not sure that ever happens. I have some further Engine work I want to do over the first half of January then it’s time to start building in death, loot, equipment, experience, and all those good things that make a game a game. Look for my next update towards the end of January!

Have a great new year 🙂

Comment on this news!

Hi everyone,

In an effort to do more frequent updates and showcase stuff a bit more as it develops (hopefully building some interest in the project), I’m putting up this quick post before bed with a few screenshots demonstrating some of the changes that have happened since my last post. We are getting well into the nice visual stuff now so there’s some cool stuff to look at, though it turns out it’s quite difficult to show off sexy animations in static images…

combatEffects

Action screenshot of being clawed by a troll at the same time as hitting it with a fireball

The following stuff(s) have occurred since my last post:

  • Hits, misses and blocks are now fully implemented. Misses go poof, blocks spark, and hits cause a blood splat
  • NPCs now have liquid types, so spiders will splat green slime instead of blood when hit etc
  • Big change to how NPCs are defined, they are now totally dynamic and live in XML instead of being hard coded
  • Addition of Stats to players and NPCs, will go deeper into this and how they are going to work in a later blog post
  • Full implementation of ‘auto-attack’ definitions. Auto attacks can be assigned to NPCs, and will be tied to weapons for players to use. They are called auto attacks as they are your default attack when you have an enemy targeted, an auto attack is something like:
    • A sword slash
    • Firing arrows
    • Throwing fireballs
  • Auto attacks have their own projectile animations and damage animations when an attack is a hit. Slashes slash, fireballs burn, it’s all good. These hit animations display over the top of the blood splat animations and follow the target as they play, the blood splat animations do not.
  • Overhauled the asset management in the client, isn’t perfect yet but it’s a big step in the right direction
  • Tidy up of disconnection handling on the client, makes things easier to debug and more informative to the player if they disconnect for whatever reason.
  • Implementation of visual attack indicators on enemies. Each time they attack the player a translucent black box is shown underneath them for a second, this gives your eye a really natural way of tracking where hits have came from.
  • Better target indication box, the visual attack indicator on an enemy shows inside the target box if they hit you while you are targeting them.
  • Trees, plants, etc, now have nice alpha blended “shadows” underneath them instead of the horrible grey stuff they had previously
  • Overhaul of animations, lots of timing & rotation stuff to make it feel as tight as possible
  • New ‘rising text’ system implemented
  • Damage now shows as rising numbers on a given target, as is customary 🙂

fireball

Throwing an animated fireball at a targeted troll

Now I’ve looked at the screenshots, I think the only way to really do any of these cool changes justice is to record some action, but I don’t really know how to do this well – I will put some time into trying to figure out how to record some little snapshots without losing too much quality then hopefully add some gameplay examples showcasing the new pretty stuff on the next blog post.

Till next time.

Comment on this news!

Hello everyone,

It’s been a significant amount of time since my last update, I took a big break while I figured out what I actually want to be doing with myself for the next few years and the truth is I didn’t really want to post until I had some cool ‘visual’ stuff to show off. A lot of the work I have been doing has been largely behind the scenes, and nobody wants to read about me spending two weeks refactoring everything. In between work, life, and other projects, it’s been difficult to find the time to work on Mirage, but I’ve been trying my best 🙂

I have a large announcement regarding the future of the game, namely, I am quitting my job next April to work full time on Mirage for a year. This project has sat looming over me for a great many years, and there’s always other stuff in the way. I think this game can be amazing, but it needs more time than I’ll ever have unless I go all out… so… yeah, we’ll see how things pan out.

npcs

Let there be monsters!

So what’s new? Well, after a long break and the decision to try and make a real go of this next year, I have been back working on the project since October. We’ve got some cool stuff achieved. I’ll list the main stuff I can think of then explain a bit:

  • Areas are now stitched together
  • The camera is much more intelligent and handles different / weird shaped areas tidily
  • Stairs and portals have been added
  • NPCs have been added
  • Maps now support spawning NPCs
  • Monster AI has been added
  • Creatures can now target other creatures
  • NPC pathfinding now functions nicely, monsters will chase you
  • Maps now have support for safe / unsafe areas, monsters cannot follow or attack you in safe areas
  • Players can now target other creatures, added a little target square so you can tell who you are targeting
  • The basic auto-attack combat system has been implemented
  • Support for melee and ranged attacks added
  • Projectile system added, you can now see stuff being fired around the screen!

monsters

NPCs now are a thing

Ok so that’s quite a lot of stuff to go through. First let’s talk about NPCs. Spawn locations can now be placed in maps for the various types, they have behaviors so some are friendly and some aren’t. The first pass of A* pathfinding has gone in, as have the first AI states. This means they will chill out and scan for targets until someone comes into range, once someone is in range they will target them and start chasing until they are standing next to the target. If the target leaves the map or logs out or whatever, the NPC will enter a retreat state where it will run back home to it’s spawn area and start looking for new targets.

It became obvious pretty quickly that we needed areas that monsters simply couldn’t go, so safe zones are in. Monsters also are constrained to their areas (they can’t go between maps, think how world of warcraft works with it’s zones) and cannot follow you through portals or up and down stairs.

targetSpider

Diplomacy with the spiders has failed

So once we had these adorable little pixel spider bros following us around like lapdogs, it seemed the natural progression was to let people stamp on them. In came targeting, the NPCs already used targeting in their AI so an extension of that system allowed players to target them back, a little red box gives you a visual indication of who you are targeting. You simply press a monster with your finger (or mouse if you are on the PC) to target it, and press it again to un-target it. simples 🙂

The combat turn system now functions, however nothing has any stats and there are no damage calculations yet. How this works is once something is targeted the system will cycle and attempt to attack the target at the rate of your attack speed. If you are unable to hit the target because you are not next to them and hitting them with melee, or in future if there is an obstacle in the way (hint hint line of sight is going to be a thing hint hint), your ‘attack’ will stall until you can execute it. This means if you happen to not be stood right next to the enemy for your  next swing, you will hit them immediately at the next opportunity, so as soon as you stand next to them again (or in future as soon as you have a clear shot).

arrow

Trolls fire arrows at you!

With all of this in place, it felt like the perfect time to start working on our first effects – in went the projectile system. Our first visual effect! If a creature distance attacks another creature, you will now see the projectile fire across the screen and hit the target 😀 The above screenshot shows a troll firing an arrow at me, the arrows are fast so catching one in a screenshot was a good 15 minutes of print screen face palming… so worth it though.

Next up I am looking to visualize hits misses and blocks on the target being attacked with some cool little animations, then we go into implementing stats, experience, levels, etc. A good friend of mine has put a decent amount of time into throwing maths at it and we’ve got some great formula and difficulty curves in a spreadsheet ready to plug into the code when I get there. There have been a lot of under-the-hood changes facilitating all of these new features, the map switching for example was a real bugger… but it’s not very interesting to talk about, hence I’ve just sort of glossed over it.

The next post will go up when the combat effects are in and I can show them off to you, I’ll probably hold off until there’s basic stats and attack calculations implemented so I can show you stuff’s health going down and damage numbers floating above their heads.

Till next time!

Comment on this news!