27/11/2017

State Of The Game #1 – A Gallop To Alpha


Hi, fellow gamer and MMO enthusiast! With this article, we’re releasing the first issue of a new type of Fractured blog post: a State Of The Game update!

The aim of this new series is to give you a detailed account on the progress being made on the development of Fractured – including what features we’ve added and what challenges we had to face.

Before starting, I shall lay a necessary preamble: while Fractured as a project was started in January 2017, the first months of work at Dynamight were largely spent setting up the company, hiring, defining game design pillars and core features of the game, choosing tools and technology, getting familiar with SpatialOS, prototyping and preparing the public face of Fractured (this website!). Work on Alpha 1 has actually started in August 2017, so everything below is the result of a little more than 3 months of work by a single (full-time) front-end developer and a (part-time) back-end developer!

The Basics

Our home page and that of Improbable already explain why in 2017 SpatialOS is the best platform to create a next-gen MMO with the ambition of Fractured, so let’s not dwell on that again. What some of you might wrongly infer from that, however, is that SpatialOS provides developers with some sort of “basic MMORPG layout” to build on. That is definitely not the case: we had to build everything from the ground up, and we went straight to the networked way.

In the following paragraphs, I’m going to briefly recap the first steps we took to implement a basic MMO gameplay.

  • First of all, we developed the first iteration of the movement system for the player’s own character and other entities in the world.
  • The second step was, quite obviously, a combat prototype, featuring both melee and ranged attacks, plus all that goes along with it – such as hotbar buttons. Once done for players, we made the system more generic, so that it could be used by AI-controlled creatures as well.
  • At last, we wanted to get a feeling for the player’s progression, thus we developed a preliminary version of the Knowledge System. You can catch a glimpse of that in the UI screenshots of the last Feature Spotlight!

Of course, the development of gameplay is only half of the job while laying the foundation of an MMO – there’s a lot that happens before you enter the world, and also a lot that goes on behind the scenes while you play. Simultaneously to the above, we also created:

  • Our own backend infrastructure – in a nutshell, a distributed database coupled with a set of web APIs that allow player clients and SpatialOS servers to safely communicate with it.
  • A secure authentication system.
  • A basic login interface – including character creation, selection and deletion.

This was just the beginning. Now, let’s get deeper into some of the works described above, and the main challenges we had to face when developing them.

World Building

SpatialOS gave us the server architecture to create an open world of virtually unlimited scale. That alone is simply amazing, but it solved only half of the problem – we had to figure out ourselves the puzzle of client-side world building. It wasn’t much of a technical issue there, but rather one of game design: how can a small company without an army of level designers pull off such a gargantuan task?

The answer, we knew, was procedural world generation followed by human polishing.

Over the last couple months, we have defined, furiously thrown away and re-defined the world building tools and pipeline in a seemingly endless loop of never-satisfying iterations… until we made it!

Today, I can gladly announce we’re able to quickly generate large portions of maps which perfectly fit the mechanics of an MMO with isometric camera and ARPG combat. Exciting maps, with the detail and variety you’d expect from a AAA production (but made by an indie team). That’s cool, isn’t it?

Latency Management

If you have been following the development of Fractured, you should know already that we think static, boring combat is one of the biggest issues of several sandbox titles, and that we are committed to revitalizing the genre by making it collide with the exciting world of ARPGs.

Developing a good action combat system in an MMO poses several challenges. First of all, reaction times must be quick: provided you have an acceptable latency, your character should respond immediately to your commands. At the same time, the position and actions of other players on your client should be cleverly simulated while keeping their movement smooth and without consuming too much bandwidth. Damn!

Reading the above, you should understand how our basic movement system wasn’t obviously up to the task, and had to be largely improved. While we did it, we added pathfinding and smart obstacle avoidance, until we came at what we have today – a good compromise between smoothness and performance.

Combat

We started with a punch-throwing mannequin – now we have an ass-kicking human warrior able to wear armor and hold weapons and shields!

To get a more meaningful feel for the combat, we developed the first set of weapon parameters, such as 1/2-handed, base damage and speed, range, area of effect (shape and size), accuracy, mobility, and a few others. Out of those, we created 6 different weapons (unarmed, short sword, great sword, spear, crossbow, bow), each with its own unique advantages and weaknesses in different scenarios.

Once weapons had been completed, we moved to spellcasting, creating a few spell archetypes. Among those, we can mention different types skillshots (projectiles travelling in a given direction or effects spawned in a given terrain location), beams and sprays (continuous aimed spells with different shapes), and generic targeted abilities (either with immediate effect or projectiles following the target).

Once more, everything that has been added so far combat-wise is just a portion of what will be present in Alpha 1, which in turn is a glimpse of what Fractured will be in full release.

Fauna

Our implementation of creatures in Fractured is still basic, but fully functional. As of today, the two main parameters that regulate a monster’s behavior are its attitude and migration.

A creature’s attitude represents its behavior towards you. It might attack you on sight, ignore you unless provoked, or even help you in situations of need. For the time being, what attitude a monster assumes is only regulated by the family it belongs to, but in the future it will be determined also by your race, location, time of the year, and action record.

Migration determines whether a creature always inhabits the same area or moves around the world. This implementation is also simpler now than it will be in the future, when we’ll implement proper migratory patterns and other complex behaviors (such as relocating to new food sources or more favorable environments).

As for the types of creatures implemented, we have a decent variety of forest animals (bears, wolves, boars) and classic fantasy foes (such goblins, trolls, kobolds).

Races, Planets, Biomes

Even with demons being the favorite player race by a slight margin (see below), we’ve chosen Syndesia and humans as the first race and planet to work on for Alpha 1.

This decision was quite obvious – Syndesia is the most varied of all planets (in terms of possible biomes), and also the one with the ruleset that can accommodate the largest amount of Fractured players. From an artistic standpoint, humans are also the quickest race to work on, since they don’t feature different families with unique body shapes and looks as demons and beastmen do.

We’ve selected a mountain area as the first biome to produce art assets for. This is definitely one of the most “classic” types of environment for a fantasy game, but again, it has allowed us to produce a decent amount of variety (forests, plain valleys, streams, rivers, lakes) in a relatively short time.

Some Additional Info

In this final section, let’s have a look at something beyond the development of Alpha 1. It’s been a long time since we’ve updated you on the growth of the Fractured community! Moreover, there are a few other things we’d like to let you know about.

Registered Accounts

As of today, Fractured has over 5,000 registered accounts. Registrations have slowed down considerably compared to the first month after the project was made public, but we strongly expect they will resume faster than ever as soon as the first screenshots and video footages are released.

Back in June, our community members came from over 70 countries, with the TOP 10 being claimed by Brazil, Vietnam, United States, Russia, Italy, Canada, UK, France and Ukraine.

Today, we have accounts registered from 100 different countries (that’s more than half the number of countries in the world!), while the TOP 10 looks a little different too: the United States have taken the lead, followed by Brazil, Vietnam, Russia, Italy, Germany, UK, Canada, France and Ukraine.

As for the choice of race, we see a perfect tie between humans and beastmen – each chosen by 31% of the userbase, while demons are the most popular selection (37%). Overall, this is a very balanced outcome and we couldn’t be happier by that!

The Foundation

As previously announced in a popular forum discussion, we’ve decided to tackle the issue of fake accounts not knowing they’ve been kicked out of The Foundation and never-active ones gaining levels passively and accruing rewards to the referring player.

When opening The Foundation page with a fake account, the scoundrel now correctly sees its account being level 0, with a new warning message explaining why that is happening.

Moreover, from today on, new accounts no longer generate Daily Points (down from the 15/day they accrued before). Instead, they only start generating Daily Points once they reach level 10, where the first “+5 Daily Points” reward is given out.

And Now What?

We’re glad of how far we’ve gone in barely over 3 months with such a small team of coders, and we’re excited to think of how fast we’ll become once the project receives proper funding and our devs at least double in number. Such is the power of the Unity + SpatialOS combination, coupled with some serious effort and passion for what we’re creating!

Reading this post, you’ve likely noticed that work on some of most unique features of Fractured – such as the many chances of interaction with the environment or different races – hasn’t started yet. Similarly,  the bulk of the “sandbox” side of the game (resource gathering, crafting, building) is still missing.

Looking at our development speed so far, the fact there’s still one year left to the planned start of Alpha 1, and the fact a Kickstarter and subsequent team expansion are going to happen in between, we’re confident we’ll deliver all that’s been promised. And oh, did we mention screenshots and game footage are almost ready to be released? Keep an eye on the next updates!

See you soon and, as always, don’t forget to let us know hear your voice on our community boards and socials!

DISCUSS