Game updates/Combat Rework Release Details

From Talibri
Jump to: navigation, search

Combat

In the next couple sections we'll be discussing the current state of combat and how it is changing. To give a glimpse into how much work has been done the last few months the original game was created using ~500 commits (think of them as units of work). The combat rework & guilds changes encompass a whopping 700 commits and more code than had been written for the entire game prior to this update. I know it may have appeared as if the game were dead/dying but the reality of what we are trying to accomplish pushed us to our limits. We appreciate all those who have stuck with us. We are still dedicated to making a fantastic game and are eager to move past this giant rework! Without further ado I give you the combat rework.

Where we come from

  • 10 Combat Zones
  • 4 Affinities
  • 48 Skills (not all can be unlocked by a person at once)
  • 1 on 1 Combat
  • A focus on a 1-hit KO meta
  • A system that required dozens of hours to implement a handful of skills or a new combat zone

Where we are going

  • 9 Combat Zones. 1 Introduction zone and 8 elemental zones
  • 5 Affinities (Wizard being the new affinity)
  • ~150 Skills (all can be unlocked)
  • Many vs Many combat
  • A diverse meta that encourages challenging yourself and your build.
  • A complex editor that lets us create new content without having to write a line of code.

How we are getting there

Maybe this title should be "How we got there" but the reality is we aren't QUITE done yet. I'll start with the core of the system and what we do have done.

The Editor

The editor was where we started our journey. Originally we did not plan on building an editor but as we realized how complicated the new system would be we knew that manipulating the data through migrations would become unmanageable. We would need to spend dozens of hours in order to create a skill properly and balancing that skill would require manipulating variables in multiple database locations. The number of people that would have been able to accomplish that was 1 (the one who built it). This would mean hundreds of development hours spent on what would effectively be "grunt work". After much debate we decided to front load those hundreds of hours by building ourselves an editor. Without a doubt it was the best decision we ever made. The editor let us build out the framework for the new system. We identified potential flaws in our design, expanded on areas we knew we would be interested in, and removed features we found may be unenjoyable or would compromise the integrity of this new system. To date the editor is now able to do the following:

  • Create/Edit Combat Zones
  • Create/Edit Items
  • Create/Edit Combat Skills

The editor was not only fundamental in our ability to populate the test server (Huge thanks to [TTF]Dragon) but will also be a guiding tenant in future features. We plan on integrating the World Event system (which needs to be redone) into the editor so that we are able to create fun and intriguing events on a whim. We hope to continue building out new features that allow our content creators to have easy access to true "GM/Admin" systems within the game. We foresee a future where the developers are able to focus solely on new feature development while the content team (currently Dragon and RoarBee) drive the game forward with new content and stories. I could write books on the complexities of the editor however since it is not a "player" facing feature we can leave it at that!

The New Combat Workflow

The previous combat system utilized a very simple combat workflow. Player casts ability/uses item -> Enemy casts ability -> determine who is dead -> give rewards -> get next enemy. On a fundamental level that is a perfectly fine system however when you start to look at balancing skills and creating harder enemies that rigid structure limits you to a point where balance is impossible. We knew from the get-go that the new combat system needed to have a dynamic workflow that allowed us to create new abilities/systems that had opportunities for unique interactions. This led me to design a Priority Queue combat workflow. The system works