Project: Velyria is a browser-based, sci-fi MMORPG that revolves around classic dungeon crawling and turn-based combat.
We list the work we have completed over the past month and dissect the new enemy A.I.!
Posted by MADSOFT on Jul 23rd, 2014
It has been quite some time since our last update, but rest assured, we've been very busy. This month has been all about nailing out the finer details of messaging, trading, and combat.
Before we discuss our recent completed tasks, we would like to draw your attention to the status of our pre-release blogging schedule:
Every Tuesday, we post a new Weekly Feature highlighting a weapon, armour set, or skill, and its lore.
We are continuing with our Facebook Previews. Every 100 Likes earns a new preview, which we share on our various social media platforms a few days after reaching the milestone.
Unfortunately, the Task Corkboard Update, previously updating every Friday, has been put on hiatus. If you would like to see a return of the weekly task update, let us know in the comments below.
Our new addition, Screenshot Saturday, already has three entries. In these blog posts, we will post gifs and screenshots of Project: Velyria's UI and discuss some of the reasons behind our design decisions.
On with the progress report! Here's what we got done this month:
Chat: We have added the ability to mute and unmute players. This particular feature is not meant to block players completely and it will not prevent private messaging from muted players, but we hope it will help players organize their chat. Players will also receive in-chat notifications when friends log on. Additionally, the chat system has been stabilized and we have fixed several bugs.
Exploration: Players can now use and drop items while on the map! In order to facilitate this, we built a new map-exclusive inventory UI. We also identified a major security flaw in relation to the inventory and map; fortunately, we were able to seal up the problem with relative ease.
Messaging/Trading: Items can now be successfully attached to outgoing messages. Trades have an interface for rejecting and accepting items. You can learn all about the new UI in our recent Screenshot Saturday post. In-game and browser notifications were added for different trade statuses.
Combat: Boy howdy has combat ever evolved from our initial plans. We've added a brand-new UI and hotbars which you can read about here. Players can finally use items in combat. Monsters have been programmed with enhanced AI; they can actually hit back now! (More on that in the next segment of this post)
Alliances: We cleaned up the UI on the page. We think it looks a lot nicer without the floating buttons.
Here's what still remains to be done:
For this update, we really want to shine a light on the development of the monster AI. Instead of simply resorting to randomized attack patterns, we wanted to expand the enemy AI to provide a more interesting and varied combat experience. For this blog post, we will be using a randomly-generated Orange Slyhorn as our example monster. We will call her Pip.
Monsters in Project: Velyria are randomly assigned an intelligence classification when generated before a battle. Intelligence determines whether the monster will calculate its skills using its AI or randomly select a skill. There are three levels of intelligence:
Pip was generated with an intelligence classification of average.
All monsters in Project: Velyria will be given a set attack pattern determined by its species.
There are four attack patterns:
We know that all Orange Slyhorn are given the attack pattern Damage-Dealer, so Pip is an average Damage-Dealer.
Each monster is given a randomly selected personality at the start of combat. This determines how the monsters react to the actions of its allies and the player.
There are five personalities:
Pip is now a short-tempered, average Damage-Dealer, meaning she has two characteristics that preferentially call for attacks on the player.
Certain monster skills are given predetermined targeting patterns. For example, a damage-dealing skill would always target the player. Some skills, particularly those that target a monster's allies, do not have a set targeting pattern. Instead, the skill uses the monster's inherent targeting pattern to determine its target. This allows one skill to perform differently depending on the monster using it. Some examples of ally-targeting patterns a monster might have include:
Pip has an inherent targeting pattern of defenceless. It is unlikely that Pip would buff or heal her allies considering her short-tempered personality and Damage-Dealer attack pattern, but in the event that she randomly selected a buffing skill due to her average intelligence, the skill would target her ally with the lowest defence.
In Project: Velyria, monster species are separated into four distinct type categories. These categories determine their strengths and their weaknesses when combating players. Each type is associated to a colour for the player to quickly distinguish the monster type during combat.
All Orange Slyhorn are Sprites due to their swiftness. This leaves Pip as a short-tempered damage-dealer of average intelligence with an inherent defenceless targeting pattern that enjoys beating up soldiers in her spare time. Whew! That is a bit of a mouthful!
We hope you enjoyed this glimpse into the new enemy AI! We love hearing from you, so let us know what you think in the comments below.