• Register
Post news RSS Friday diaries #1

An overview of the biggest problems that go into developing Kalaban.

Posted by on


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! :)

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.