Author Archives: Miguel

In-game menus, new traps, shader improvements, debugging

Long time no see! We’ve been on multitask mode the last months, balancing the gameplay with continuous testing and adding new content in form of enemies and bosses.

A lot of time has been spent debugging one of the most challenging chapters of the game, focused entirely on puzzle solving and interaction with the player surroundings. It took us a little more than expected but the result was worth the effort since it gives a twist to the game narrative and adds a great variety of mechanics.

And in the end that is our main focus with this project, trying to develop an experience that is constantly shaping the gameplay and allows players to face situations in their own way. Now let’s take a look at some of the things that we’ve been working on.

Start Menu: skills, collectibles, tutorials and options

All game menus are coded and completely functional by now, though some of the designs like the skill set descriptions, photo locations, or tutorials are unfinished and will remain so probably until the game is completely balanced and tested -Fx need to be added too-. Here you can have a look at the structure of the START / ENTER menu and its navigation in detail.

.

Skill tree

This is the interface where players will be able to see what abilities have been unlocked, their skill set and the number of skill points obtained to enhance them.

.

The skill points are shown in the center of the tree and can be used to power up all the abilities that have an icon with the shape of said points below them.

These abilities can be reset to LV1 on Garden rooms -Save places-, giving the possibility to readapt the gameplay strategy for each player -some may prefer to boost the offensive skills or upgrade other stealth techniques instead-. This makes the gameplay more malleable and could help players to overcome certain situations if they have problems solving them with their current set of abilities.

Collectibles

Pictures

Della’s pictures will be scattered throughout the facility and will reveal the location of hidden skill points. Once players figure out the room revealed by a photo, an interactive prompt will appear upon the object that hides the skill point. Pressing the action button near it will drop this item.

.

Bio Files

Once an important scene has been played the personal info of certain characters will appear below this submenu.

.

The texts will expand the universe of the game and, also, show the Kickstarter profiles send by backers of the Replicant and above tier -don’t worry, we didn’t gather your bios yet. We’ll let you know by private message and e-mail-.

Options

Not much to say about this. You’ll be able to change the resolution, audio, language, and other common stuff that can be found in most games. The game options submenu allows to load a game file or exit to the main menu / desktop.

.

New development tools

Development tools have been created in the meantime to improve different work routines like to speed up the creation of rooms and the testing process. This is a selection of some of the most useful:

Room Version Swapper

This script allows us to change entire rooms, adding or modifying enemies, situations, and graphics inside them such as backgrounds and interactive objects -platforms, panels, etc.- while maintaining the main structure of the rooms unaltered -sorting layers, positions, and others-. This was required for different reasons like changing complete rooms for aesthetic purposes -going from a regular background to a burned one with partial parts of both rooms intact, for example- or the need to show a different color adjustment curve for a certain situation.

 

.

In reality, this script only changes the room a door is pointing at, so when you cross that door the room seems different than before. The consequences of doing this, however, are much more complicated to deal with, considering that we have to update the map and the internal information about the room. Persistence of objects in both rooms becomes a bit tricky too.

Replace instances

A simple tool to replace selected game objects with other ones on the editor, useful for changing decorations on duplicated rooms or updating objects without losing old prefabs. It preserves the position of the object on the scene and the sorting layer.

.

Improved climbable platforms

Since not all the platforms need to show a climbable prompt on both sides – for example, connected shelves, stacked piles of boxes, etc.- we needed to unfold each interactive platform on the project hierarchy and deactivate its properties in order to make it unclimbable.

.

With this new script we can check / uncheck this option inside the script if an object needs to have an active corner to be climbable.

.

Additionally, any side that’s left activated will check every frame if it’s truly climbable or has to deactivate itself in case anything is blocking the way like a pushable platform, or moving the platform itself and losing the ground.

Upgrading the World generator

The rooms are conceived as individual entities which in turn are part of another GameObject: the chapter in question stores multiple room prefabs with different components and properties so it took some time for the engine to create playable builds for testing. The larger the project was growing, the longer it took to generate those builds so we decided to make a new option on our own Level editor tool to generate specific areas of the map instead of loading the whole bunch of stages and connections between them. Now we can create test builds in no time and perform changes faster.

Gameplay updates

Removing the walk restriction for the Camo ability

As you were able to experience after unlocking the Camo skill on the playable demo, anytime you make a movement while having the invisibility on Subject W will abandon this state and left the player exposed to the enemies.

Our main goal with this ability was to give players a tool to resolve certain situations and not overshadow the rest of the skills or avoid the use of the surroundings -basically going invisible and walking by most of the enemies-. Allowing certain npcs to detect us depending on the Level of the skill helped to balance it, but on the other hand we couldn’t help but sense that penalizing players to stay quiet during its use was a little bit harsh and the cost of wasting an energy leaf if they press the skill inadvertently or need to maneuver during its use might be a little abusive.

We tuned up this mechanic and now you can move with the camo active. Enemies will still be able to detect Subject W if you move on Camo mode and they will attack until the plant stays put in another position (think of it as the Predator visual effect: quiet is untraceable but the graphic distortion generated by any movement reveals its position). A light tint effect was added to the camouflage on movement to differentiate both states.

.

As you can see in the video, enemies will stay in front of the last point where they identified the plant so players won’t walk past them every time to avoid complex situations. Upgrading the skill to another level will increase the time of use to avoid enemies on alert state.

Pixel perfect animations for state bubbles

So far these bubbles -which represent if an enemy is distracted, searching, alerted, or knocked out- showed a smooth transition emptying the bubble of its color to reflect the amount of time left.

.

Each bubble box has an icon inside it, and these kinds of transitions sometimes blurred the graphic and the final design wasn’t very clear so we decided to show progress pixel by pixel, blending with the pixel perfect look of the game.

.

New decoy

Well, not exactly new but we made a few tweaks to it. First of all, we noticed that making the decoy appear by Subject W’s side caused different errors like getting stuck inside a box or appearing in the air near a corner before falling:

 

Now the decoy appears in front of Subject W to avoid these problems:

Also, in order to differentiate both W and the decoy we changed its color scheme and tinted its seed green like the one of Subject W to relate them aesthetically.

Graphic improvements

Door mechanisms

It is only a simple detail but now the door gap shows more detail instead of having a black mass on their inside when the door is open.

New corridor maps

These graphics have been reworked to show a more clean design of a sector and stand out the colors representing Save gardens, elevators, and others.

.

Also, the squared modules are imported as individual game objects instead of full maps designed by hand outside the game engine. This helps decrease the size of the graphic atlas and allows to quickly modify them if rooms that are changed or replaced.

.

LED lights for different decorations

.

Animations of flickering LEDs have been added to different elements such as computers, servers, and other electronics, giving more depth and richness to the backgrounds.

Climbable surfaces for the decoy

A lot of interactive panels can -or must- be accessed by the decoy so we created larger surfaces for this elements in order to see that they both work as a panel and as a platform.

Skin shading achieved

As shown on Update #49 we were looking for a way to modify the color palette of a character while applying other effects above it, like the red alarm layer. Eventually, we ended up doing one of the first ideas we had and one which was suggested by some of you -huge thanks to those that tried to help us- so we made an uber-shader capable of processing all the color effects in place at any given point.

.

A shader is created for every type of enemy that we are going to need, these shaders take a variable amount of colors -that varies on the type of character- and when the shader detects a pixel with one of these colors it changes it to another color -for every original color we have another which is going to replace it-. Apart from this, the shader is capable of tinting and blending external color effects with the character’s current palette.

More enemies and traps

Machinegun

These turrets won’t allow Subject W to go through a specific way by shooting viciously in our direction if we dare to go pass their warning range.

.

They can be disarmed if we deactivate their button from behind or drop a decoy without being noticed:

.

Saw

Remember those annoying enemies from Megaman that run in your direction any time that you put a foot on the floor? They are back! Well, more or less…

The saws are designed to interrupt their patrol routine when either Subject W or the decoy are at surface level. The camo ability doesn’t work in this case but the decoys can stuck them temporarily.

.

Development status

It could seem that we slowed down a little bit in content creation since the game required a huge amount of debugging for certain levels that were built with multiple versions, but we are developing most of the milestones much faster that months ago. Still, there’s sooo much stuff that needs to be added, especially in the bosses department. We are putting around 10 hours a day on the project -and happy to do so if we manage to give you a polished and entertaining product- but even with all that time invested in the development, we are still unable to give a closed release window as of now. We usually resolve key milestones while building levels and testing, but there’s a limit to the stuff we can do being a team of 3 with a single programmer. Luckily the core is solid and from now on most things rely on already made gameplay mechanics, but a pair of enemies and some of the bosses still require new structures and ad hoc routines that can’t be reused from other ones.

In any case, we can state for sure that 2018 will be the final year of development for Paradise Lost and we’ll -luckily- complete the final bits of the game for the first quarter of the year. With that in mind, we don’t want to rush it and have an early release with a lack of content so we’ll keep you constantly updated about any issue.

As always, thanks for your support.

Gameplay improvements and a bunch of new content

We’ve been busy the last few months debugging some mechanics from the demo that needed a twist while building new stages and gameplay situations. A ton of new content has been added too so it was high time to make a new update showing the game progress.

As for development status, we could say that right now around 65% of the facilities have been built with most situations and puzzles included. We managed to work at a faster pace thanks to the improves made to the building tools, allowing us to create new sections faster. For each room added we need to follow a series of steps to have them up and running, so we’ll take this opportunity to give you an in-depth look into the room assembly process.

Building game sections

To add a new stage we use our own Level Editor to create “empty rooms” inside the level grid. The room element works as a container with a coordinate value that allow us to change the position of said room on the scene with its content in place. All rooms must be connected to their section inside the project’s hierarchy so we can separate the game chapters in terms of level design and structure. Thanks to this tool we can also drag any object from the project folder directly to the Unity scene once we selected an element of the room that we are working on.

The Level Editor Tool place the object automatically inside the room instance and categorize it under the interactive or decorative list

To know if we are dropping the item inside the desired room and not another one a red outline is shown when a prefab is selected on the scene. This makes the creation process faster and more intuitive since we don’t have to locate the room inside the hierarchy and drop the elements there.

Cloned stages

Months ago we had some problems when we tried to duplicate entire rooms instead of creating them from scratch –prefabs of the objects lost their connection with their instances on the hierarchy, unrecognized areas after making a build, etc.- but we managed to solve them and now we are able to clone rooms and develop levels faster. A quick preview of an entire section can be made in no time after applying the necessary changes to certain elements of the duplicated stages.

The most common objects that need replacement inside cloned rooms -aside background decorations- are the conducts which vary depending on whether they need trapdoors, roadblocks or be completely closed

Connecting the level

.

After the decoration process, we ought to make sure that the exits are perfectly linked and all the doors have a correct ID assigned to the next room. Sometimes a room can have entry/exit points that are not regular doors, like conducts. For this cases, we need to include a non-visible element called “abstract door” that connects with another one in the adjacent room. The facing, ID, and connections of the door are modified under the Door Script.

Room properties

.

From the Unity inspector we can change the position and size of the room inside the map grid, add LUTs that attach specific color adjustments to the camera -unifying the tones of the sprites inside a room- and assign the theme of the stage or/and ambient noises.

Including enemies and designing situations

Up to this point, we follow the playable scheme previously designed with vector art -as seen on the Update #46– as faithfully as possible and make the necessary adjustments to enemy routines, platforms and decoration backgrounds. Then we add other interactive elements -such as panel buttons, elevators, etc.- according to the level design.

.

Assembling each room is relatively fast, the real challenge is to test the stage multiple times checking all the connections with other rooms and making sure that the gameplay situations work as planned.

New signage

A few months ago we published an image with the graphic change made to the hallway backgrounds, specifically the signs that represent the connections between the rooms and different sectors of the facility. Many of you preferred the previous design with bigger lettering so we look back at it and realized that, in both designs, every hallway looked the same and there was no differentiation between sectors.

First hallways

Second hallways

Taking these things into consideration we decided to make a quick redesign that wasn’t drastic and could blend well with the current hallway. The new aesthetic preserves the lettering of the latest design and adds bigger initials and numbers to specify the overall position of the stage. In addition, the signals of each area have a distinctive color, helping to differentiate them from one another.

Final hallways

Iconography and color

We’ve also included icons so players that have problems reading the pixel text are able to identify the kind of rooms that are connected with the current hallway.

.

These are some of the icons that you will find throughout the facilities. All the corporate-wise zones such as restrooms, cargo elevators and cafeterias have the same brand color making them a recurrent graphic element.

Door Locks

The locks prevent the player to access certain areas if they don’t use a skill to break them.

.

Like other objects that act as roadblocks, this element is represented by a red shape on the map.

.

Hideout changes

Enhanced accessibility to hideouts and trapdoors

One of the vital improvements made following your feedback is the possibility to react to interactives like hideouts and trapdoors regardless of the position of Subject W.

Now, if the player press action near those objects –either standing or crouched– the character will be automatically relocated to the necessary position before accessing it.

.

This way the player doesn’t have to be aware of the character’s stance to hide or escape from enemy’s sight, increasing the capacity of reaction in extreme situations -it also makes the control more fluid and handy-.

Middle hideouts redesign

Another change related to hideouts was the resizing of those that are separated from the rest of the elements –drawers and closets are attached to other structures–.

.

These hiding objects are usually located on hallways or storage rooms and comparing them with their surroundings their measurement looked weird and a little bit unrealistic. Besides the graphic complaint, Subject W changed its stance from idle to crouched while interacting with them. This was annoying considering that it needed to stand again since the character hides from the top.

We raised their height up to 18 px following the same measure as other interactive objects like platforms and took this opportunity to add more detail and animation in some cases.

Now the trolleys contain animated boxes and tanks

The more realistic size give us the possibility to develop new objects like cleaning buckets

Moving hideouts

As we had pending the implementation of the pushable platform mechanic, we took advantage of this concept by converting some of the wheeled objects that we talked about into mobile hideouts.

.

Since some enemies have the ability to detect Subject W -even if it uses the camouflage skill- these hideouts allow us to develop new strategies that help players go unnoticed.

Pushable platforms

This objects can be used to reach new places or solve puzzles by pushing them using one of the skills available to Subject W. Although at first glance they may seem simple, we’ve had to take a lot of things into consideration and study their viability to avoid different problems such as cornering Subject W to a wall or other solid, blocking exits or get enemies stucked among others.

.

All solid boxes share the same basic design and can be differentiated according to the color of their line and the type of icon. The red boxes can not be displaced, the blue are mobile and the yellow ones derive energy.

The solid boxes of Paradise Lost won’t allow players to go through them like other platforms such as tables, cardboard boxes or other structures, although they are designed to be climbable, showing the prompt on their corner when Subject W approach them. Their design allow us to create multiple situations as you can see below.

 

 

.

Building pushable elements

.

The building process consisted on modifying a solid static platform by the addition of a Rigidbody2D and a PLFCHealthComponent to it so we can know when it’s getting hit. When hit we apply a force and a direction depending on the amount of pixels we want to move it and the position of Subject W. When idle, these platforms are marked like kinematic objects as a failsafe in case any wrong or weird collision happens.

We designed the movement of these platforms to be as deterministic as possible, but designing a level counting the number of pixels needed for a box to get from point A to point B is a hassle, so we added magnet points to attach the platforms to, simplifying the task for the designer. This will help us develop puzzles as well, as we’ll be able to know if the platform reached a magnet point and solved the puzzle/situation of the room.

Solving gameplay issues

Giving the boxes the possibility to bounce against other solids was troublesome (Subject W needed additional animations with the shell equipped, new physic reactions, etc.), so we decided that they’ll stick to other solids and stay immovable while Subject W stays in the room. If the player exits/enters again the stage the box will be either placed in its original position or “magnetized” to specific points placed by us in order to keep a situation resolved.

.

With this method the boxes can be pushed blocking an exit, but it wasn’t a problem since the character is able to climb solids as long as they have the standard climbable size and the door frame has enough space to let Subject W cross with the pushable platform next to it.

Energy puzzles

.

The magnet areas are useful to create puzzle-like situations with a new element: the dynamos.

Dynamos can be connected to rooms without electricity, giving power to a panel after being hooked to a wall plug. Some chapters were built upon this mechanic with different variations but we’ll have to stop giving more details and let players resolve them  😉

Energy panels show the elements that are capable of receive energy inside a room like doors, computers or conduct fans

Fans

.

Now that we mention them, these components can be found inside ventilation conducts and create a temporary roadblock, damaging Subject W if it gets closer to the blades.

.

In order to advance players must find a way to disconnect them from the correct side or use decoys through the floor grids.

Reduced sensibility to avoid slipping near corners

An improvement we’ve made that we think is very substantial is refining Subject W’s movement when it’s getting near a corner. Until now when Subject W stuck out of a corner by a few pixels it would slip to the floor automatically, now at least half of Subject W’s body needs to be in the air to slip out of the corner.

.

This will give the player a little bit more room to maneuver on platforms and jump without falling to the floor and getting caught accidentally.

New Subtitle tools for Slate

Until now to make a cutscene with dialogues we had to run the subtitles and calculate the amount of time needed to make the speech appear at the right speed and in sync with the animation. This wasn’t exactly the best approach, so now that a lot of things got fixed, and the basics are done, we started making small improvements to this and other systems.

We calculated a default reasonable speed for the text and now the dialogue tool has the option to adapt the length of the clip to that speed, which can be changed if needed. We also simplified IDs for dialogues after improving our localization system among other minor QoL improvements.

The estimated length of each line is shown under the dialogue manager too, making it easier to coordinate different animations for a single paragraph

Ash animations

Ash is a key character of Paradise Lost and also one of Subject W’s greatest foes along the adventure. You had a sneak peek of her in the demo but we wanted to show you a few animations from the boss battles.

 

 

 

.

It was important for us to define her personality through the animation scheme, showing her marksmanship, reflexes and aggressive style focused on close quarter combat.

Fullscreen working on different resolutions

We managed to include a new resolution system under the game options menu, solving the issues that some of you experienced playing the demo outside the 1080p standard.

This was a huge setback for us since we designed the game camera to perfectly fit the 16:9 format (wide screens) and all rooms were drawn at the minimum size proportional to a full-HD res. (480 x 270 pixels). The problem appeared when the game was displayed on non-proportional resolutions, in which case it automatically jumped to the nearest proportional size, minimizing the content and making it unplayable (too small in most cases).

Since Paradise Lost can’t show more scenery like other games such as Hyper Light Drifter or Retro City Rampage (larger backgrounds > the camera simply shows more or less info) we decided to readapt the size of the graphics to fit them into non-scalable resolutions. The counterpart of this method is that the image is no longer pixel-perfect on certain sizes (which are highlighted on the resolution panel of the game options). Here’s a comparative of the old and new systems:

 

Click to enlarge

An example of resized pixels: the red ones are not proportional like the blue square

Development status

Most of the milestones planned are being developed at a faster pace. Our primary goal is to, at least, have the Beta for the end of the year, but the real deal will be the development of some bosses and depending on their complexity we’ll have to simplify their behavior or even left them out (hopefully not). Time will tell.

As always, thanks for your patience and support.