Platform: PC (Steam)
Studio: Edge Case Games (now DPS/Wargaming)
Engine: Unreal Engine 4
Released: 2014 (early access)
Fractured Space is a team-based space combat game featuring gigantic capital ships.
Fractured Space was first released via Steam Early Access in November 2014. I joined the team around 8 months later, and helped to bring it to a full launch in September 2016. The game's development was ongoing, with regular updates containing new content, bug fixes and balance changes in cycles lasting around 6 weeks each. The development ended when the studio got taken over by Wargaming in 2018.
Using Unreal Engine 4, I was involved with many areas of the game, including system design, prototyping new mechanics using Blueprints, designing/scripting (tutorial) levels, ship design, weapon and ability systems, balance, and designing/scripting AI behaviour. Most recently, I concepted, designed and built the seasonal game-changing Halloween and Christmas events.
I was also involved with improving usability, and putting forward design changes based on the results of focus tests.
Fractured Space Launch Trailer
The USR Guardian
Long range attack ship
It didn't take long after starting at ECG before I got the chance to design my first capital ship. My brief was to come up with something that offered long-range support, but that had a slightly different take on the role in a sense that it was more mobile and was more viable to contribute to 'pushing lanes' in the mid and late game.
The Guardian: a long-range support craft that is a more mobile alternative to the Watchman. With a charge-based main weapon, and a devastating Nuke Rocket secondary weapon capable of bumping enemies out of cover.
Nuke Rocket: Bumping enemies out of cover
At the time of conception, the Displacer had just dropped (my favourite ship at the time), and I was interested in experimenting with new ways of using the displacement force component. When playing around with prototyping a new weapon system using this, I soon found that it was a great tool for bumping enemies out of cover, those hiding behind a mine for example. It seemed like a good fit for a nuke warhead, which used this force in radial form. I soon found the ability a lot of fun to use, and it felt like a natural fit for the Guardian- in a way this really became its party trick.
It might be interesting to note that I originally wanted the nuke to be delivered by a 3rd person full-screen player-controllable interface. Unfortunately I was unable to negotiate enough time from the coders to support this, so, using Blueprints, I wired up an alternate system with the components that I had access to. I then found that I could use the current target’s distance to detonate the rocket at the perfect distance to bump it across the player’s viewing plane, and had tweaked it until we had something that was simple and effective, yet (hopefully) not considered OP. By increasing the radius of the push component, I found that the second step described in the diagram here (changing trajectory at waypoint) wasn't necessary.
Since the rocket nuke seemed such a natural anti-camping device, the Watchman’s Spotting Drones felt like a natural fit for its launch bay ability as they keep an eye on the enemy behind cover.
LR Cannon: Charge for power
Next up was developing the Guardian’s main weapon. Since we wanted it to sit after the Watchman in the tech tree, I was free to add a skill element to the standard cannon, along with its associated risk-reward elements. Because the weapon’s damage ramps up exponentially over time, the mechanism forces the player to choose between discharging many low damage shots (easier to find the ‘lead sweetspot’), or hold the charge for max damage (harder to land on a moving target, but higher DPS). So far not too dissimilar to the Ranger’s main cannon, but where it differs is the overcharge; hold the charge for too long, and the shot is lost. In the future there may be potential to modify the weapon’s damage curve in such a way that it offers bonus damage for releasing the shot just before the overcharge kicks in; a skill-shot as it were. This might be a contender for future updates/loadout options.
Blink Buoy System
With the flight model and core features all but nailed, I was struggling to come up with elegant solutions to fill the remaining two ability slots that actually complemented its role in a meaningful and unique way. I tried out variants of other existing abilities such as Block Sector (to aid sneaking in and out of the sectors), and emergency escape boosts that promoted the Guardian’s mobility and differentiated it further from the Watchman’s camp-inspiring shield. However for one reason or another, these abilities never felt quite right. As such I opened the floor to the rest of the dev team to see if anyone had any ideas for a cool ability that would promote strategic play, mobility and a defence mechanism in one or two ability slots. It was our lead programmer that first suggested the blink buoy system, which fitted the bill perfectly. Perhaps unsurprisingly, code support for this one was remarkably swift.
After a few tweaks and playtests, various ways of using the blinks soon cropped up; some players placed them conservatively and defensively (in the forward stations), whilst others would end up taking a tactical detour to the mining sector via Gamma to drop it off there to use later. A few small tweaks later, and the buoy was also a viable ‘deploy and insta-blink’ device that could help the player get out of trouble if their previous one had been destroyed. I particularly like all the different play styles and tactics this affords.
The completed ship in action.
The Guardian has evolved into a unique ship that does its own thing. It definitely won’t fit everyone’s playstyle, but for a specialist vessel at the end of a branch that definitely isn’t a bad thing (actually very much in line with what we were aiming for). Overall, I’m very happy with it, and I’m really looking forward to seeing new ways the community come up with (mis)using the various abilities to their team’s advantage.
For more details, please see the original concept document.
Logic Scripting using Blueprints
I am responsible for the tutorial level design/scripting in Fractured Space.
We have kept a close eye on metrics, particularly player completion rate, and points at which the player quits. Having previously tried multi-staged approaches and two different game modes/maps, this is currently the 6th iteration of the Tutorial. The goal is to strike a reasonable balance between giving the player enough core information to get them into the game, while being action-packed enough to grab their attention and short enough to be a bite-sized chunk of gameplay without feeling overwhelming.
The tutorial's current completion rate is upward of 85%.
The scripted Tutorial sequence in action.
In Fractured Space, AI Captains (/bots) take over in case of player disconnect, as well as providing the opposition in Co-op game modes.
Working together our AI programmer, I'm involved with designing strategic AI behaviour at a high level, and setting up the AI skill progression to match that of the player.
I designed the system of rules for the bots to follow when picking ships to make up a viable composition, as well as the general ship behaviour in terms of how aggressive, supportive or objective-focused it should try to play.
Scripting AI behaviour
I'm also responsible for scripting specific AI controllers, and modelling their behaviour at a low level; essentially so the bots use each ship's specific ability in an appropriate and seemingly intelligent way.
BP Function to determine whether the Superlifter Bot should fire a repair buoy at an ally.
My favourite example of bot scripting is probably the Superlifter, a support ship with the capability to repair allies via special buoys that it deploys. Since the repair boys cannot be absorbed by enemies, players soon exploited this feature, and figured out that it was possible to deflect repair buoys off enemies in order to self absorb them.
When in a sticky situation, the bot mimics this behaviour, allowing it to self-heal and have a better chance of coming out on top if it ends up in an unavoidable close-range one on one engagement.
BP Function to determine whether the Superlifter Bot should attempt to bounce a heal buoy off a nearby enemy to heal self.
In a team-based multiplayer game
In Fractured Space, all ships are designed to be balanced against one another, and to be viable (at least in the right composition). Ships aren't tiered or better as such, they are just different. Some ships/classes compliment other ships/classes, and some can be played as hard counters to other ships/classes. In that sense we have more in common with games such as LoL than WoT.
Together with the lead gameplay programmer, I'm currently responsible for the game's balance, with particular emphasis on the ships.
When considering whether a ship is either over- or under-performing, I will take several or all of the following sources of input into consideration:
- Metrics: amount played, win-rate, kills/deaths per match, damage done etc
- Player feedback; how it feels to play (against)
- Studio feedback; how it feels to play (against)
- Personal experience; how it feels to play with and against.
Ship Win-rate (%) - one of the many sets of stats exposed via deltaDNA
Once a balance change has been made, the ship is put through its paces in internal playtests. Further iterative (counter) tweaks are made until we are happy that the ship is now adjusted appropriately without being considered over-powered, under-powered, un-counterable, annoying to play or annoying to play against.
Once the change has gone live, I keep an eye on its performance and expect to see a change in its statistics. Further tweaks can then be made if necessary.
A twist to the main Game Mode
In early October 2017, I pondered what we had lined up for the players in our upcoming Halloween update; a new set of crew, a new ultimate ship skin and a particle storms that obscure the player's viewing and targeting range (space fog).
Halloween Event promo shot, by Darren Tucker
Rather than just putting the items sale and unleashing the particle storms, I put forward a proposal that would allow players to discover the new features in a more mysterious way and added a twist to the gameplay.
The idea was to generate intrigue and hype for the new environmental mechanic, as well as the new crew and ship skin before they went on sale. More importantly, this event ties all these elements together in a cohesive package.
I designed, coordinated and largely built/scripted the Halloween event.
Overview of Event Components
1) The lure
At a (pseudo) random time and location, a mysterious hologram appears in the game, along with an audible SOS distress signal and map ping.
As players approach it, they hear a confusing and glitchy message on a loop asking for help; the closer they are, the louder the distress signal.
If the player gets into close proximity to the hologram, a previously hidden sector is revealed on their mini-map.
2) Hidden sector
Once 'unlocked' the players can jump to the dark and freaky sector.
A particle storm is raging to reduce viewing and targeting distance (this is the first time the players encounter this environmental feature!)
There are some mysterious glowing lights that draw the player deeper into the level's centre. As the player progresses, the asteroids get more dense to create a more claustrophobic feel and almost cave-like structure.
I selected a soundscape by Microphyst to contribute to the creepy vibe.
An early teaser-trailer revealing the 'Unknown' sector and the new mysterious ship skin. This is the only clue the playerbase received about the event - they were left to discover it by themselves.
3) The Charon (boss)
All of a sudden the player is ambushed by the mighty Charon, an NPC that is much stronger than normal...
At this point, the player realises that the distress beacon was a trap. If alone, they are very likely destroyed. This boss can only be killed by 3 or 4 players collaborating.
The Charon is an ultimate skin for the Colossus - this is the first time the player encounters it! For a closer look check out Millenia's video. The cosmetic variant later went on sale for the playerbase to purchase.
All players on the team that destroys the Charon are awarded an amount of in-game resources. The amount scales up with game time, and is roughly equivalent to one level.
All team members are also awarded a special crew pod that contains one of the Charon's new dark crew members. Players that manage to destroy the Charon 10 times are also awarded an additional crew member.
The player is awarded one of the Charon's original freaky crew members after destroying it.
Character designs by Tim Zanconato.
5) Particle Storm Aftermath
After the Charon is destroyed, the particle storms also (randomly) manifest in the Alpha, Beta and Gamma sectors for the duration of the remainder of the match.
The response from the community has been largely positive, and we have seen many different strategies emerge and shared between the playerbase.
Youtuber The Mighty Jingles checks out the Halloween Event
A twist to the main Game Mode
For Christmas (/holiday) 2017, I created a new game mode that was another slight twist on the main Conquest game mode.
Launcher shot promoting the seasonal event
I replaced the central Gamma sector with a bleak,wintry world that I called Omega. At certain intervals, a rogue AI ship named Ru-T0lf Express after one of its AI crew, would enter the sector that would engage any players in range.
When destroyed, Ru-T0lf sides with the team that destroyed it for one life. This creates an imbalance that helps that team push into the enemy base and win the game.
Each successive iteration of Ru-T0lf is stronger than the last.
Youtuber The Mighty Jingles takes a look at the Christmas event
My favourite strategy to have come out of this event is expertly demonstrated in the video below:
Players figure out a cunning way to ensure enemies don't get a chance to take down the AI ship.
A heavy Centurion ship positions itself in between Ru-Tolf and the enemies, and then pops its shield to prevent it from being hit. As soon as it does this, reinforcements arrive from the other side of the sector to take the AI ship down before the enemy gets a chance to get involved.
I feel very fortunate to be a part of a game that I still enjoy playing in my spare time!