Wednesday, April 27, 2016

APB Reloaded: Character Pipeline overview

The character and clothing pipeline for APB Reloaded is very convoluted and can get very restrictive at times due to the nature of the game’s customization systems. In this blog post, we attempt to break this system down in order to provide an overview of the workflow we use when creating clothing assets for APB Reloaded.

For the purpose of this blog post we will be using the “War” clothing pack as our case study.

Concept and Mock-Ups

Before we start production on any final assets, we need to concept and prototype initial mock-ups of what we intend to create. It’s beneficial to use ZBrush for this stage as it allows us to quickly put together ideas that we know will work within APB’s customization suite. We may then add further details in Photoshop, depending on whether we feel the need to:

Once satisfied with our initial concepts, we will create another mock-up that fully fits within APB’s pipeline restrictions. This is a very important stage, as the sheer number of clothing options available to the player can also prove very restrictive from a development standpoint, therefore we must ensure that any new item of clothing can work with potentially hundreds of different combinations, with as little issues as possible.

With this mock-up we can test for any glaring issues as the last thing we want is potentially weeks of production time being wasted by major bugs that were found during the final stages of development.

During this stage we may also take the opportunity to refine the initial design.

High Poly

As soon as we are satisfied that the initial mock-ups fit within our customizations system, we then move on to the next stage, which is the creation of the high poly.

The high poly is a high-density mesh that is used for rendering textures for our low poly game model. Normal maps give the illusion of extra geometry detail by altering how light reacts to the surface of mesh, whilst Ambient Occlusion is used to provide diffuse shadow detail.

We create the high poly first so we can then alter the topology of the low-poly mesh to match the high-poly as closely as possible before baking (rendering textures).

Our high poly meshes are created mainly in Zbrush, using the initial mock-up as a base. In some cases we may later refine areas in 3DS Max (such as with some of the hard-surface elements of the “War” outfit).

Low Poly

Once the high poly is finished, we then move on to the low poly. Which is the mesh used in game (as a ZBrush mesh consisting of millions of triangles would be unsuitable for real-time rendering).
Due to the fact that players can modify the height and weight of their characters, the majority of the base clothing in APB uses the same set of initial topology, which is then morphed depending on the clothing asset and shape of the player character in question.

Secondary clothing assets (such as hoods, headgear, body Armour and masks), are unique meshes that are snapped or placed on to the base topology as separate assets. These assets will not be directly affected by morphs, other than their placement in relation to the body.

In order to create an initial morph set, we first adjust our default topology to match the new high poly meshes. We will then re-create this process across various extreme weights and body sizes to create a set of morphs that should cover all player characters in game. This process is gender specific, so these steps will need to be further reproduced due to the differences in topology between the genders.

Unwrapping and texture creation

Once satisfied with our low poly morphs, we then need to ensure the UV’s are correctly unwrapped to allow for texture and mask creation. The UV points are the same across all of these morphs, therefore we only need to unwrap one (usually the default to provide the most balance and least amount of texture stretching).

When unwrapping these assets, we must stick to our template character layout, as the majority of texture space will need to be retained for other aspects of the character (such as skin and other clothing categories). This is because our studio editor generates new textures on the fly as the player puts various pieces of clothing together, therefore all unique clothing categories need to be unwrapped as if they were to fit on a full character texture sheet.

Once we are satisfied with our low poly morphs, we will then move on to rendering our textures. From the high poly we will render our Ambient Occlusion and Normal Maps, which we will then use as a basis for creating our final textures in Photoshop. In Photoshop we will also create our specular maps and in the case of “War”, emissive maps for artificial light features.


With our initial textures created we then need to create a series of color masks. These masks will determine what parts of the clothing players will be able to customize. The number of customization options increases with the number of masks. The War outfit for example, uses 20 different masks in order to provide as much flexibility as possible to the player. With this now set we are ready to begin testing in game.


Once these stages have been completed (and tested), we can then move on to the finalization stage, which involves rendering out icons and naming the assets in game. The icons themselves are rendered from 3DS Max using global cameras and shaders, in order to keep the UI consistent. With this complete, the only remaining steps involve marketing and release.

We hope you enjoyed our brief overview of one of the art pipelines powering APB Reloaded. The artists would wish to thank our player-base for the amazing customizations you continue to create with our work.

Thanks, and until next time...
APB Reloaded Team

Monday, April 25, 2016

Another Dev To Find and Shake, Rattle, Implode!

Hello Citizens,

With last Friday's blog post, we provided a little info on Androvald, our Senior Engineer. Now is your chance to find him in San Paro and earn yourself a prize. From the 27th till the 4th of May, Androvald will appear randomly in action districts - find him before he disappears and earn a reward.  Whoever finds him first will win 10 deployable 'Joker Box Weapon Caches' that allow you to spawn a random Joker Box weapon temporarily for you and nearby friends. You only win this reward once, after which you'll receive 5 deployable selectors. Subsequent players will win 3 deployable selectors.

Starting with Androvald those lucky players who manage to find every single Dev will win a brand new Title upon finding the final Dev!

We had some technical difficulties over the weekend which prevented the Shake, Rattle & Roll event from going ahead as planned, and we’d like to apologize for that by giving every player who logged in between 04/24/2016 12:00:01 AM UTC and 04/26/2016 12:00:00 AM UTC (4/23/2016 7 PM CDT to 7 PM CDT 4/25/2016) 5 Joker Mystery Box 13s. Delivery of the JMB 13s will be within 48 hours.

Enjoy this week’s events and be safe Citizens,

Friday, April 22, 2016

Who We Are Part 2 & Shake, Rattle and Roll Event

Hello Citizens,

We hope you all enjoyed the return of Beacon this week, as well as the first Find The Dev event.  The month of April is still not over and we have a few more things heading your way.

Today we have another interview for you, from a second member of our development team.  Let me please introduce you to Androvald, our Senior Engineer.  Androvald took some time to answer a few questions.

1.       What does a work day look like for you? Talk us through some of the different tasks you have to perform.

I spend most of my time implementing new features and events, and fixing bugs within the game. 

While my specialty is game play, I tend to have to touch a lot of parts of the game as we are a small team. While the process of adding new features can be vastly different depending on what is required, for me it usually starts with a design document. Whilst the designers work on that, they will discuss the technical feasibility with the programmer who knows most about that area of the game. After we figure out what the new feature is going to be, we may create a prototype to figure out whether or not this new design will work. Once the feature is designed from a game design perspective, for bigger features we create a technical design. In this technical design, we lay out what goes where, and what pieces need to interact with each other. After all this is done, we can finally begin writing code. During the process of implementing the feature, we work with other disciplines to ensure things end up in a way that everyone can work with. When possible, we check with the designers that we are moving in the right direction, and the feature is working as expected. We check with the artists and designers that have to create content for these features that what we expect in code is indeed the case in the content that is going to be created for it. After it has been implemented, the feature will get tested by our QA department, and we try to fix as many problems with it as possible before getting it out to our test environment, and then live.

2.       What has changed over the course of your time here at Reloaded? Do you have any memories that stand out as special for you?

A lot has changed, yet a lot has also stayed the same. I’ll have to agree with Magallan that the general mentality always stayed the same, which makes this a great place to work.
One of the memories that stand out to me is when we moved into our new offices a couple of years ago - checking out the office space with a few of my colleagues and seeing Edinburgh Castle. It feels almost unreal that this has been a few years already.

3.       What excites you about the future of APB?

We have so many ideas of things that we want to do after the engine upgrade. The plans for a new revised mission system are particularly interesting. The main things we hope to address with that is the problem with the one-sidedness of the attack/defend stages, as well as the missions without opposition. The engine upgrade itself should be quite interesting as well, but there’s always more things to do for that.

4.       What game(s) are you enjoying at the moment?

I really enjoyed Epistory, which definitely has a unique art-style, as well as some interesting game play mechanics. I’ve also been playing Final Fantasy XIV, though I’m mostly waiting for them to add new content to that. Other than that, I’ve been playing CoD: Black Ops 3 multiplayer on and off.

5.       Is there a new game or piece of gaming tech that you are really excited about?

I’m looking forward to Star Citizen / Squadron 42. Seeing how their open development philosophy will continue to work, as well as how much of what they promised they can actually make a reality is a big part of that. It all looks pretty good so far.

6.       What is your all-time favorite video game?

I think I have more than one that is roughly on the spot of all-time favorite. A series of video games that has stayed with me for a long time though, would be the Descent: FreeSpace series. I received the first installment of that series with a joystick purchase, and I’ve picked up the expansion and sequel game after.  

I want to thank Androvald for answering our questions.  Meet the Dev team Q&A will be a recurring installment with find the Dev events to follow shortly after. 

We are also happy to announce that a new event will be had for this upcoming weekend.
Time to Rock Around the Clock this weekend by taking part in the SHAKE, RATTLE & ROLL event.

Get ready to SHAKE your enemies with grenade kills, RATTLE your foes with shotgun blasts and ROLL them over with a quick vehicular death.  

Each Daily objective rewards you with Joker Tickets and a Joker Mystery Box 13.




This around the clock event, runs from today April 22nd till Monday April 25th.

That’s it for this week folks, enjoy this weekend’s event and stay tuned for the next find the dev update.

Till later Citizens,

Friday, April 8, 2016

Who we are at APB Reloaded

Hello Citizens,

Starting this month we will bring to you a new feature with our APB blog posts by introducing members of our staff to the community. This will provide you all with a glimpse of who we are and what each of us is responsible for within APB’s reloaded development.

Each introduction will include a few questions about what they do, their thoughts and other little titbits of information you might find interesting. With our first entry I am happy to present to you Magallen, our resident Operations Engineer who was kind enough to provide some answers to our questions.

1. What does a work day look like for you? Talk us through some of the different tasks you have to perform.

My main work day to day is writing code for the back end servers and databases used by APB, providing the platform upon which an MMO runs.

I wear some other hats too:
I'm responsible for making sure our QA team always have a safe space to test in;
I work with CS to help diagnose issues players are experiencing;
I work with our operations team to make sure that all of our hardware, new and old, is properly set up to be used for our live service;
I handle deploying new builds to our servers and configuring them to run the right servers in the right places.

The short version is: my job involves solving problems. Ideally before they happen. If something isn't working, I'm usually a good person to ask about it.

2. What has changed over the course of your time here at Reloaded? Do you have any memories that stand out as special for you?

We've seen a lot of people come and go in my time at reloaded but I don't think that's ever changed the mentality of the team. We still have a strong sense of family and everyone pulling together to make APB a place where you guys want to spend your time. We've improved a lot on our processes and how we communicate to get things done faster and make sure everyone is on the same page.

I've also really enjoyed seeing my colleague’s careers progress alongside mine and them rising to new challenges.

I think my favorite single memory was the first time we had an in office play test of the Easter egg mini-game (and not just because it's the only time I wasn't the worst player in the office).

It's my personal favorite event and it was good to see the whole team enjoying the game that we built.

3. What excites you about the future of APB?

In my own time I game on console much more than PC so I'm looking forward to being able to play APB at home on console.

I'm also looking forward to seeing a lot of new faces it brings into the APB community.

4. What game(s) are you enjoying at the moment?

I've been hooked on Star Wars Battlefront for a while now. I'm always playing football manager (Inter Milan are my team this year) and I play some Pokémon when I get the chance.

5. Is there a new game or piece of gaming tech that you are really excited about?

I think affordable VR kits open up some awesome ideas that just weren't feasible before. Games gaining access to almost infinite cloud processing power could allow developers to create a lot of things that until now have been impossible.

6. What is your all-time favorite video game?

Always a tough one. I'll say Skyrim, and the whole elder scrolls series, are the games that I've enjoyed most.

I want to thank Magallen for taking time from his busy schedule as well his Pokémon game time with us and we look forward to introducing you to the other developers here at APB Reloaded.

We also are announcing the SIN TO WIN event where it pays to be bad. This event runs from Saturday to Monday, so here is your chance to be rewarded for being your bad selves.

Till next time, be safe and good gaming citizens,