Showing posts with label environments. Show all posts
Showing posts with label environments. Show all posts

Friday, August 5, 2016

Friday diaries #9: The World of Kalaban

BlogLine

Howdy! This week we're gonna take a special look inside the world and its creation. Back in the early days of our development I wrote an article touching on the subject of crafting new scenes. Now, more than one year later, I figured it would be worth looking into again.

Every scene begins with a very, very rough sketch. These are either scribbled on paper or made in MS Paint. As they would be too ugly to behold, we won't be posting any early scene sketches here. The next step is to make a rough 3D render of the scene. For example, here are 'Bob's cabin' and 'Junkyard' scenes in their very early stages:



The first renderings of the structures don't often have textures. They're just colored objects to help us block out the placing in the scene. When the shapes start to fit into place, we start to add more details to them. Some of the buildings are completely built in Photoshop, and the 3D renders only serve as the basic form of the structure.



Next comes the texturing and placing of the props in level. These placements are temporary, and don't transfer into the finished scenes. At this stage we also try to figure out where to put the light sources, and how will the light vs. shadow play out in the scene. Last autumn we made the decision to make all the lights prerendered, which has allowed us to strive for a more atmospheric experience.


Usually the fully prerendered 3D look doesn't fit that well into Kalaban. The characters and elements on the screen are more comic book style, than photoreal, so we usually try to make environment fit those assets. After hours and hours of sweat and tears the backgrounds are finally ready to be imported into the game. Below you can see the beach scene in its full size.


When the scene is done graphically, it's time to make it run realtime in the engine. This requires a number of different operations. The backgrounds need to be chopped into smaller tiles, and the interactive items need to be included separately. Here's what the scene looks in the editor, with all the items in place, and on their right layers:


The final steps include scripting the behavior of each object, and Bob's reactions to them. It's much less about the visual side, and more about figuring out things in the code. Some items may pop up on wrong layers, some items may not appear right, and so on. There's also atmospheric sound effects, hitboxes, monster and item placement. The final form of the scene is defined only after hours of testing it, and figuring out if things work according to the whole story of the game.

And that's what goes into creating a new scene in Kalaban. The process takes anything from under a month to a couple of months, and after that we still do little tweaks here and there. Once the scene functions properly, we view things through the bigger picture, and fix the things that need fixing.

Friday, April 8, 2016

Friday diaries #1

BlogLine
Hello!

This time I thought I might take you through the pain of what it's like to develop Kalaban. Not to be too whiny here, but just an insight to the things we struggle with all the time:

1) Y-sorting 

Because Clickteam Fusion 2.5 is a purely 2D engine, it cannot handle the Z (depth) dimension in its code, only the X (horizontal) and Y (vertical) dimensions. This means that overall it's much simpler to handle than a full-blown 3D engine. But also, that when you're creating an isometric game, you'll have to pull all kinds of tricks in order to get the depth effect by using just the Y axis. We mostly use the 'Layer object' in Fusion, but that only works well with moving objects and not the environments. Luckily though, with careful planning and a bit of case specific coding, you can get pretty stable results. The method we're using for Kalaban could never be replicated for a Diablo type of game, with randomized maps and environments.

And then, something like this happens:




After hours and hours of scripting, it still breaks down. Well, occasionally anyways. Just a small detail in the overall game, but a very noticeable at that. Of course, every one of these bugs can be fixed, but it just requires a lot of time and patience.


 2) Creating the environments
A problem, or more of an integral part of the whole development, are the custom-made environments of Kalaban. We chose to keep the size of the game world smaller, but opted for a completely unique look for all the areas. This means that all of the maps are created by hand, with very few assets being re-used. Well, it is quite obvious why this creates a lot of work for development, not only with the art creation, but also scripting all the individual areas. In addition to this, we chose a unique perspective for the whole game, which is not purely isometric.




 To make things a little easier, a lot of the props and map pieces are first modeled in 3D and rendered to sprites, using a virtual camera that has the right distorted perspective. After this, the rest of the environments are mashed together, painted and partially created from scratch in Photoshop.
 

  An example of the gas station scene I'm working on now. Notice the touches that have been made to the original 3D pieces. The final part is of course bringing these environments to the game engine, and giving them the proper lighting.


3) Inventory & UI 
This was special pain in the butt for us during the early days of development. Tagging the inventory items to specific places in code requires a ton of work. There's also the scripting which is required for item interaction, dragging and dropping, using the items, etc. All this has to be done as many times as you have different inventory items. For this reason alone Kalaban will never have 400 different objects named "dirt", "trash" or "scrap", in the style of Fallout 4 or other Bethesda open world games.


Well, I could add a few more items to the list, but I think that's it for now. For now, have a great friday, everybody! :)

Saturday, June 27, 2015

Building the environments

BlogLine

Hello there, fellow readers!

This time we'll take a look at the creative process that goes into making the scenes of Kalaban. It all begins with an idea, of course, with a written description, like "Small town". The scene in this case is the third scene, and the first "real" level of the game. In this map you get the first glimpse of the open-ended exploration and looting that Kalaban offers to its players.

Scene 3 - The whole overlay map


So, my task as a programmer and artist is to make the world work and appear on the screen. But the task of our creative director Tuukka Kuusisto is to draw it and write it first. Building a map, or any game environment, is much like building a house. In that case, you need to have blueprints before you start crafting, you need to know a little bit about how to get electricity and water into the house,  about waste disposal and such.

In the case of building a level you'll need to know how it's meant to be played. What will the players see first? What will they click on, what's their first instinct, and so on. We're aiming for an adventure / rpg style gameplay here, not a strict rollercoaster ride style game, so it becomes a little bit harder. You can't really force the player to click on anything, or to explore the scenes. If the player wants, he/she may just rush through the level. Of course, that would have a drawback later on, but that's another thing.


Original look for the big house. Later, we decided to switch the style to a more photoreal style.


When the initial design has been made and all the writing is done, it's Photoshop time! I first begin by laying a basic ground for the level, which is either built on grass, rubble, sand or on a forest ground. Then I do the structures, the exterior objects and the shadows for the buildings. The last thing I paint or photobash are the interior objects and little fine details. I use a combination of royalty free textures, some of them photographed by myself, and a little bit of prerendered 3D in some special cases.

Of course, it's not always this simple and straightforward. In the case of this scene for example, I had to re-do the whole big house and the smaller houses. I was quite preoccupied with my screenwriting studies during the whole spring, so this level took me about three months to build. That's not an optimal pace, considering that we still have eight more scenes to build for Act 1.

The new version of the house. It looks a lot less like it was painted with left hand in Paint Shop Pro.


The style and theme we've chosen for the game is pretty close to real world locations, but with a touch of painted and drawn style. The hardest thing about building the environments is to keep them fun and entertaining, and also believable at the same time. They're not abstract, weird mazes, but exploring them needs to feel interesting.

Earlier version of one of the houses in the level. Like our creative director said: "It looks like a giant sandworm came through the floor."


Most of the things in these scenes need to make sense; where do the roads go, are there paths in there, what can be found inside buildings, do they feel like real locations, and so on. It's like building a movie set in a sense that it looks kinda real, but there is this layer of video game narrative and simplification on top of it.

Well, that's it for now, thanks for tuning in! We'll be doing another feature about the scenery in the future, going more in depth in to the technical stuff of it.