2014-05-04 - Tinytouchtales
Welcome to another Weekly Update this time it’s No. 17. This week was a pretty big week for the design of KRAXLN where we changed a lot of the core gameplay and made some very important improvements.
KRAXLN (Austrian for „Climbing“)
If you are asking your self „KRAXLN?“ – yes KRAXLN! Thomas Wellmann and Arnold were planning on a collaboration since the beginning of the year. In March the 7 Day Roguelike challenge took place and we finally sat down to work on our roguelike idea, we were kicking around. Thomas came up with the great theme of rock-climbing and we created KRAXLN. Leon, an austrian guy himself, jumped in to help out with the audio of the project. KRAXLN got very good feedback so far and even a mention on Indiegames.com which we were very proud of.
As the game was made in 7 days the time were fairly limited and the design was interesting but had it’s flaws. After we decided that we want to keep on working on KRAXLN we decided that we need to improve the core gameplay and make it as accessible and fun as possible before we add more stuff on top.
From Math to Risk
I wrote a pretty big post about the design of the 7DRL version already, if you are interested in the original idea you should read this post first.
The core idea of KRAXLN is to create an abstract version of rock climbing that simulates the dangers and rewarding moments of this activity. The game itself should be very accessible in it’s controls and mechanics. All elements that can be found in actual climbing should be represented in a „gamy“ way.
The original idea was to create a mechanic where the strength of the player and the difficulty of the environment should create interesting problems. Each tile had a difficulty value from 0-3 and the player a base strength of 10. Each time he climbed on a tile the tile value would be deducted from the strength, making the player weaker each turn. Once his Strength reached 0 he would have to wait one turn to get back 1 energy making him vulnerable to enemy attacks. If his strength would go below 0 he would exhaust and needed to wait until his full strength was recovered. Enemies could kick off the player from the wall and a hook, if he had one attached before, could save him from dying.
This system is very harsh and there is not much room to make any interesting decisions, as the player would just calculate his way up the mountain. Another problem with this design is that the player has to constantly check his strength and the surrounding tiles, so his eyes are constantly bouncing from the UI to the location where the character is on the screen. In general we have no problem with a lot of numbers on the screen, but the game at this point looked a lot like a math game were it’s all about the numbers on the screen, which can be pretty misleading by just looking at screenshots.
We decided that those things need to be addressed in order to make the game more enjoyable. In a series of smaller iterations we came up with some interesting changes.
The first thing we added is a field of view, where the player can only see a few tiles ahead introducing an element of exploration and reducing the „number noise“ a lot. Secondly the player sometimes can’t see the value of a tile before he climbed on it, so theres a 30% chance that a tiles stays invisible. We changed the grip system in a way that when the player exhausts, for example: having 2 power and climbing on a 3 tile, he loses his save stance and there is a 25% chance that he looses grip completely and falls. This should make efficient climbing and also the risk of climbing more interesting. These changes improved at least some things.
In the second iteration the player can rest one time before moving again on every tile. Which was changed from resting only on 0-Tiles. The amount of power the player gets back is relative to the tile he’s standing on: „3 minus difficulty of tile“. This means on a 1-Tile you get +2, on a tile equal or larger than 3 you can’t rest. This makes resting more interesting as you still can use skipping turns as a way of position your self, but you can’t completely rest everywhere. Completely resting still only works on 0-Tiles. Additionally we removed the crash from only exhausting (3% chance), but being hit when exhausted is an instant kill.
Goats now hit for 3 but only take 1 hit.
At this point we felt the game was way to easy. We wanted to raise the importance of hooks/rope length and mainly use hooks as the currency for upgrades. We did some tests with less numbers, but at this point we didn’t believe that any other way than displaying plain numbers would make the game clearer. We changed the free resting on all tiles to only being able to rest if you are connected with a hook. Additionally we introduced a rope radius. This means that the player is save only in a 4×4 tile square from the origin of the hook. After that the rope is to short and using another hook would be necessary to be save again. We introduced a 50% chance to fall from being exhausted, making the importance of hooks even more clear.
After play testing this version a lot we found out that the new resting mechanic had a major flaw. Being able to rest everywhere and recovering only a part of the strength due to the tile’s diminishing return made resting on every tile a forced meaningless action for the player. We tried to fix this flaw by making the player automatically rest on every tile when he is attached to a hook. Which felt kind of strange.
A version in which the tiles would change based on where the player would climb.
A version with only 1-Tiles
So far we had made some interesting improvements but the problem was still the same. The game was a lot of calculation and more about crunching numbers than having a fun time just climbing up the wall. We sat down to rethink the whole idea at this point.
In our mind rock climbing is mainly about taking risks and having a feeling for what motions your body can handle while hanging in 100m height only attached to a small rope.
This is why we came up with another approach of simulating the basic climbing.
Instead of having discrete numbers to represent the climbing difficulty and displaying the full information for every step for the player, we introduced slightly obscure probabilities. This means each tile still has a difficulty but it is indicated by an icon that can range in four steps from easy to very hard.
We introduced a new climbing mechanic where the player has a chance to loose 1 strength while climbing. This chance gets higher with the difficulty of the tile. If his strength falls to 1 this chance changes to slipping (exhausting) and having to rest until the full strength is recovered. In addition there is a chance to fall based on the difficulty of the tile the player slips on. This means that the whole climbing activity is now about getting a feeling for how risky you can climb and when you should stop and secure yourself with a hook.
We kept the rope radius for the hooks, but introduced a new way for resting, to kick out the old flawed system. Each level still has a few free resting tiles (old 0-Tiles) but in addition the player has a resource (maybe apples or something alike) that can restore his strength with consuming it.
We also changed the way combat works. Attacking an enemy doesn’t cost strength if the attack is successful. There is a chance that the enemy can block the attack which will result in the loss of 1 strength. If the player is hit, he looses 1 strength. If his strength falls below 1 from combat or if he’s hit while in the exhausted state he will fall every time. This makes combat more interesting as the player can be way more flexible in how to approach fights and be lucky with blocking incoming attacks.
You can play the latest version here (Unity Web-Player).
The game has changed very much in this week but we are very happy with how the game feels now. It’s definitely way more fun and it’s also much easier for us to change the balancing because we have way more mechanics that work with another. From here we are going to build in more content and make the whole experience more rich.
We hope you enjoy this rather long design post and wish you a nice Sunday!