KeeperRL - Michal Brzozowski
The previous blog post about progression has stirred a lot of discussion, and I want to follow up a little bit, before I go into the main topic of this post. If you haven't read the previous post, I recommend doing it first.

First of all, my comment about my lack of desire to implement complex management a'la Dwarf Fortress made a few people worried, so I want to clarify. I didn't mean that there won't be any new features of this kind, only that it's not the main focus of KeeperRL, which should be obvious by now :) . So you won't see detailed tracking of minions' emotions, fluid simulation, etc., but there is new stuff coming even in the next update.

Second, some of you were worried that the new progression based on mana would interfere with other elements of the economy. I had a nice discussion with Steam player WarMaster GoreHowl, and he postulated that major expenses, like technology, should use different resources than more minor things, like crafting, because otherwise the player is too conflicted about spending on the minor things.

It's a fair point, and it made me play with another idea of using gold for technology and population advancement. Unfortunately this didn't work well, because there are multiple sources of gold in KeeperRL, and it's hard to make sure the rewards for conquest are balanced well. Mana, on the other hand, can be more easily curated to make sure that players are getting the right amount, for example two technologies per each major villain conquered. My current choice, therefore, is to use mana only for technologies and population (everything else that uses mana will be switched to another resource). Exact amounts of tech and population costs are to be resolved later, of course. Note that nothing is set in stone, and further testing or feedback might change my mind again. :)

Together with the progression overhaul, I've planned a set of drastic changes around the combat in KeeperRL, as this part of the game is severely lacking right now. My main motivation was to make spellcasting creatures more significant. This includes the Keeper, most importantly. I decided that all damage dealt in combat will be of one of these three types: Melee, Ranged, and Magical. Every creature will have an attribute for each of the types that dictates how much damage it deals. For example, an orc with Melee Damage 25 and a +8 sword will deal 33 damage, and when an orc shaman with Magical Damage 18 casts an offensive spell, it will deal 18 damage every single time. The current attributes Strength and Dexterity will be removed, and as a consequence, there will be no missed attacks anymore (although an attack against a well protected opponent may deal zero damage).

It was tempting to also add a separate Defense attribute for each type of damage, but it proved to be too convoluted. So instead every creature has one Defense value against all types of attack, although it can receive a "resistant/vulnerable to <damage type>" buff, intrinsically or via a spell or potion. For example, all ogres will be vulnerable to magic attacks, cyclopes will be resistant to ranged attacks, and minions will be able to learn a spell that protects them from melee attacks.



Naturally, the three damage attributes need to have training possibilities. Each will have a separate path: the Training Room will train Melee Damage and Defense, the Library will increase Magical Damage, and a new room, Archery Range will improve Ranged Damage. Every creature will have predefined maximum levels that they can reach at each kind of training, for example an orc shaman will train up to +3 in the training room, and up to +7 at the library. The library and archery range will require upgrades to train minions to the fullest, just like the training room does at the moment.

Since we will have more offensive (and also healing) spells now, they will add more interesting tactics to the game. I decided that this should be accompanied with a long planned tactical feature: full turn-based control of a team. By default you control only your team leader, but you can switch to a mode where you make moves for every minion on the team, which is extremely useful in combat! Sorry for the horrible gif. :P



This makes combat more similar to the Civ games, with the difference that creatures act sequentially, and thus almost always make only one move at a time, and you can't "wait" and go back to a creature later in the turn. The play is a bit clunky because of that, although it still feels extremely fun to me. I've also added common line of sight between all minions, so if one minion can see something, then everyone can (even outside of the team).

You're probably getting dizzy from all these new features, so let's move on to the last one. As you can see above, the game displays health bars over wounded creatures. This feature comes with underlying changes to damage and health calculations. The result is that combat is much slower and less random, there are fewer surprising insta-deaths, and also it's easier to overwhelm a strong enemy with a large number of weaker creatures. Things that many players have asked for.

This was a very speedy summary of all the incoming new stuff! In reality, it also comes with a lot of smaller, accompanying changes, including many in the UI department. All of the things mentioned are already implemented, but the game is now terribly unbalanced and needs a lot of testing. I'm eager to hear your comments and criticism, although I think that to get concrete feedback I need to release a testing build with all the changes, which will hopefully happen soon.
KeeperRL - Michal Brzozowski
The previous blog post about progression has stirred a lot of discussion, and I want to follow up a little bit, before I go into the main topic of this post. If you haven't read the previous post, I recommend doing it first.

First of all, my comment about my lack of desire to implement complex management a'la Dwarf Fortress made a few people worried, so I want to clarify. I didn't mean that there won't be any new features of this kind, only that it's not the main focus of KeeperRL, which should be obvious by now :) . So you won't see detailed tracking of minions' emotions, fluid simulation, etc., but there is new stuff coming even in the next update.

Second, some of you were worried that the new progression based on mana would interfere with other elements of the economy. I had a nice discussion with Steam player WarMaster GoreHowl, and he postulated that major expenses, like technology, should use different resources than more minor things, like crafting, because otherwise the player is too conflicted about spending on the minor things.

It's a fair point, and it made me play with another idea of using gold for technology and population advancement. Unfortunately this didn't work well, because there are multiple sources of gold in KeeperRL, and it's hard to make sure the rewards for conquest are balanced well. Mana, on the other hand, can be more easily curated to make sure that players are getting the right amount, for example two technologies per each major villain conquered. My current choice, therefore, is to use mana only for technologies and population (everything else that uses mana will be switched to another resource). Exact amounts of tech and population costs are to be resolved later, of course. Note that nothing is set in stone, and further testing or feedback might change my mind again. :)

Together with the progression overhaul, I've planned a set of drastic changes around the combat in KeeperRL, as this part of the game is severely lacking right now. My main motivation was to make spellcasting creatures more significant. This includes the Keeper, most importantly. I decided that all damage dealt in combat will be of one of these three types: Melee, Ranged, and Magical. Every creature will have an attribute for each of the types that dictates how much damage it deals. For example, an orc with Melee Damage 25 and a +8 sword will deal 33 damage, and when an orc shaman with Magical Damage 18 casts an offensive spell, it will deal 18 damage every single time. The current attributes Strength and Dexterity will be removed, and as a consequence, there will be no missed attacks anymore (although an attack against a well protected opponent may deal zero damage).

It was tempting to also add a separate Defense attribute for each type of damage, but it proved to be too convoluted. So instead every creature has one Defense value against all types of attack, although it can receive a "resistant/vulnerable to <damage type>" buff, intrinsically or via a spell or potion. For example, all ogres will be vulnerable to magic attacks, cyclopes will be resistant to ranged attacks, and minions will be able to learn a spell that protects them from melee attacks.



Naturally, the three damage attributes need to have training possibilities. Each will have a separate path: the Training Room will train Melee Damage and Defense, the Library will increase Magical Damage, and a new room, Archery Range will improve Ranged Damage. Every creature will have predefined maximum levels that they can reach at each kind of training, for example an orc shaman will train up to +3 in the training room, and up to +7 at the library. The library and archery range will require upgrades to train minions to the fullest, just like the training room does at the moment.

Since we will have more offensive (and also healing) spells now, they will add more interesting tactics to the game. I decided that this should be accompanied with a long planned tactical feature: full turn-based control of a team. By default you control only your team leader, but you can switch to a mode where you make moves for every minion on the team, which is extremely useful in combat! Sorry for the horrible gif. :P



This makes combat more similar to the Civ games, with the difference that creatures act sequentially, and thus almost always make only one move at a time, and you can't "wait" and go back to a creature later in the turn. The play is a bit clunky because of that, although it still feels extremely fun to me. I've also added common line of sight between all minions, so if one minion can see something, then everyone can (even outside of the team).

You're probably getting dizzy from all these new features, so let's move on to the last one. As you can see above, the game displays health bars over wounded creatures. This feature comes with underlying changes to damage and health calculations. The result is that combat is much slower and less random, there are fewer surprising insta-deaths, and also it's easier to overwhelm a strong enemy with a large number of weaker creatures. Things that many players have asked for.

This was a very speedy summary of all the incoming new stuff! In reality, it also comes with a lot of smaller, accompanying changes, including many in the UI department. All of the things mentioned are already implemented, but the game is now terribly unbalanced and needs a lot of testing. I'm eager to hear your comments and criticism, although I think that to get concrete feedback I need to release a testing build with all the changes, which will hopefully happen soon.
KeeperRL - Michal Brzozowski
I recently stumbled upon an old Reddit "AMA" by Tynan Sylvester, the author of Rimworld. I hope he doesn't mind if I quote chunk of one of his answers here. "What designers need to do is figure out the core of their game very early and just make that. Don't get caught up in polish, or art, or start thinking that adding ancillary features will make the game sing. If that core doesn't hit really hard and really grab players, the game is pretty much doomed. But if that core really works, everything added on will add huge value."

I think it's a very important point, and I've always felt that there is some wasted potential in the core gameplay of KeeperRL. I'm always trying to find ways to improve it, and the most recent effect was the immigration overhaul. The Alpha23 update will contain more major changes in KeeperRL's gameplay in two major departments: progression and combat mechanics. I'll split this post into two parts, and start with progression, leaving combat for part II.

Most games don't make all of their content available right from the start, but instead uncover it piece by piece, such that when playing the game, you feel that you're on a path that's leading somewhere. I think we can define progression as a mechanic that prevents the player from reaching all of the game's content at once. It's pretty obvious that it's a hugely important feature, and it can make or break a game.

I came up with the following methods of creating progression in base-building games.
  • Making the building and management part of the game absorbing and challenging. This usually requires complex systems that create challenges for the player. Examples of games with such mechanics are: Dwarf Fortress, Rimworld, Gnomoria, Factorio.
  • Having the player wait for stuff to complete. This includes slow resource extraction, tech research that takes time, etc. Even though this method is often used in successful games, I think it can give bad results if not used carefully.
  • External challenges, like invaders, disasters, etc. They can strictly define progress, like in the tower defense genre, or be a side feature and just hinder the player's efforts from time to time.
  • Exploration and conquest outside of the player's base. Only some base-building games have them. Conquest can be a requirement for winning the game, but it can also be tied more closely with progression by letting the player bring back loot and resources that are then used to improve his or her base.

I've decided long time ago that KeeperRL won't be about complex management and building a'la Dwarf Fortress, because I don't enjoy this kind of games that much, and I feel that I couldn't design one well. This leaves the other three bullet points to think about.

A major issue in KeeperRL's progression is that you can create a perfect army without being bothered much, and only then destroy all the villains. The end can also be boring, because you can be as strong as you want to. I realized that this is because the game rewards you for waiting with regeneration of mana. Waiting is only good when it comes with trade-offs, such as a risk of being invaded. But invasions are hard to balance in KeeperRL, and when the enemies are too aggressive, then the game becomes too hard for lot of players.

That's why I tried a different direction and removed the waiting, such that mana is only awarded for conquering villains, and not generated in the library. It turns out that this simple change made the game much more interesting. Conquest is the only way to research technology, so it's very strictly tied with your dungeon's progression. It could potentially make the game too linear, but I think this can be mitigated by tweaking technologies and their cost, so that multiple research paths are optimal.

The biggest consequence of this change is that it creates a huge incentive for attacking. You are always desperate for more mana, so you'll attack with weaker forces than before, which will create new challenges and interesting scenarios. There are more changes that need to come along, for example some structures and minions used to cost mana, but since it's a more valuable resource now, the costs need to be tweaked. The primary use of the library room was to generate mana, but now it will only be a training room for spellcasting minions.

I know that there are players who are in more for base-building than the roguelike aspects of KeeperRL. This is where the endless mode will help, substituting conquest with defending your dungeon - mana will be rewarded for each deflected enemy wave.

As I've already mentioned, the next blog post will talk about changes in combat mechanics. I hope to be able to publish a testing build once all of the described changes are implemented in a basic form, and gather feedback from you. This will let me tweak and balance things or even revert the changes if they don't work out. At the same time I will be implementing the other features planned in Alpha23: the endless mode and content additions.
KeeperRL - Michal Brzozowski
I recently stumbled upon an old Reddit "AMA" by Tynan Sylvester, the author of Rimworld. I hope he doesn't mind if I quote chunk of one of his answers here. "What designers need to do is figure out the core of their game very early and just make that. Don't get caught up in polish, or art, or start thinking that adding ancillary features will make the game sing. If that core doesn't hit really hard and really grab players, the game is pretty much doomed. But if that core really works, everything added on will add huge value."

I think it's a very important point, and I've always felt that there is some wasted potential in the core gameplay of KeeperRL. I'm always trying to find ways to improve it, and the most recent effect was the immigration overhaul. The Alpha23 update will contain more major changes in KeeperRL's gameplay in two major departments: progression and combat mechanics. I'll split this post into two parts, and start with progression, leaving combat for part II.

Most games don't make all of their content available right from the start, but instead uncover it piece by piece, such that when playing the game, you feel that you're on a path that's leading somewhere. I think we can define progression as a mechanic that prevents the player from reaching all of the game's content at once. It's pretty obvious that it's a hugely important feature, and it can make or break a game.

I came up with the following methods of creating progression in base-building games.
  • Making the building and management part of the game absorbing and challenging. This usually requires complex systems that create challenges for the player. Examples of games with such mechanics are: Dwarf Fortress, Rimworld, Gnomoria, Factorio.
  • Having the player wait for stuff to complete. This includes slow resource extraction, tech research that takes time, etc. Even though this method is often used in successful games, I think it can give bad results if not used carefully.
  • External challenges, like invaders, disasters, etc. They can strictly define progress, like in the tower defense genre, or be a side feature and just hinder the player's efforts from time to time.
  • Exploration and conquest outside of the player's base. Only some base-building games have them. Conquest can be a requirement for winning the game, but it can also be tied more closely with progression by letting the player bring back loot and resources that are then used to improve his or her base.

I've decided long time ago that KeeperRL won't be about complex management and building a'la Dwarf Fortress, because I don't enjoy this kind of games that much, and I feel that I couldn't design one well. This leaves the other three bullet points to think about.

A major issue in KeeperRL's progression is that you can create a perfect army without being bothered much, and only then destroy all the villains. The end can also be boring, because you can be as strong as you want to. I realized that this is because the game rewards you for waiting with regeneration of mana. Waiting is only good when it comes with trade-offs, such as a risk of being invaded. But invasions are hard to balance in KeeperRL, and when the enemies are too aggressive, then the game becomes too hard for lot of players.

That's why I tried a different direction and removed the waiting, such that mana is only awarded for conquering villains, and not generated in the library. It turns out that this simple change made the game much more interesting. Conquest is the only way to research technology, so it's very strictly tied with your dungeon's progression. It could potentially make the game too linear, but I think this can be mitigated by tweaking technologies and their cost, so that multiple research paths are optimal.

The biggest consequence of this change is that it creates a huge incentive for attacking. You are always desperate for more mana, so you'll attack with weaker forces than before, which will create new challenges and interesting scenarios. There are more changes that need to come along, for example some structures and minions used to cost mana, but since it's a more valuable resource now, the costs need to be tweaked. The primary use of the library room was to generate mana, but now it will only be a training room for spellcasting minions.

I know that there are players who are in more for base-building than the roguelike aspects of KeeperRL. This is where the endless mode will help, substituting conquest with defending your dungeon - mana will be rewarded for each deflected enemy wave.

As I've already mentioned, the next blog post will talk about changes in combat mechanics. I hope to be able to publish a testing build once all of the described changes are implemented in a basic form, and gather feedback from you. This will let me tweak and balance things or even revert the changes if they don't work out. At the same time I will be implementing the other features planned in Alpha23: the endless mode and content additions.
KeeperRL - Michal Brzozowski
KeeperRL Alpha22 is out! The update features a dedicated tutorial, as well as many technical and gameplay improvements. Check out the changelog below for details.

If you would like to continue with your saved game from Alpha21, you can opt-in into the "Alpha21 save compatibility" BETA branch under the game's properties in Library. Make sure to opt-out of the branch to go back to Alpha22 when you're done!




Gameplay changes:
  • Dedicated tutorial mode that teaches the game's basic features and controls.
  • Saving and loading times, as well as save files sizes, decreased 2-3 times.
  • Portals are available as a building, instead of a spell. They don't time out.
  • All resource values, except mana, are deflated 5 times. (everything costs less, you extract less).
  • Team members are woken up and untied when given a "go-to" order.
  • Creatures will not give healing items to wounded friends who already have means of healing themselves.
  • Ownership of an item by a minion is assumed when player equips the item in control mode.
UI changes:
  • Added setting to disable vertical sync, which may solve some framerate issues.
  • New, nicer research menu.
  • Added descriptions to keeper-adventurer menu.
  • Changed highlighting of various buttons and tab icons.
  • Clicking on controlled creature skips turn.
  • Added a simple movement animation of creatures when destroying objects, digging, and cutting trees.
  • Window "close" button is highlighted.
  • Swapped storage colors. Equipment is now blue, resources green.
Bug fixes:
  • Fixed UI crash when changing minion's task.
  • Fix drowning of flying creatures that enter deep water that is in forbidden zone.
  • Fixed mouse navigation to enemies that are far away when in control mode.
  • Fixed crash in item pick up menu.
  • Made message boards work even if statistics gathering is not enabled in the settings.
  • Fixed movement animation glitch when using mouse and being interrupted by enemy.
  • Fix UI crashes involving workshops and minion equipment menu.
  • Fixed tooltips in workshop menu.
  • Fix scrolling inventory in control mode.
  • Fixed game speed dialog glitch.
  • Removed useless "execution" task.

KeeperRL - Michal Brzozowski
KeeperRL Alpha22 is out! The update features a dedicated tutorial, as well as many technical and gameplay improvements. Check out the changelog below for details.

If you would like to continue with your saved game from Alpha21, you can opt-in into the "Alpha21 save compatibility" BETA branch under the game's properties in Library. Make sure to opt-out of the branch to go back to Alpha22 when you're done!




Gameplay changes:
  • Dedicated tutorial mode that teaches the game's basic features and controls.
  • Saving and loading times, as well as save files sizes, decreased 2-3 times.
  • Portals are available as a building, instead of a spell. They don't time out.
  • All resource values, except mana, are deflated 5 times. (everything costs less, you extract less).
  • Team members are woken up and untied when given a "go-to" order.
  • Creatures will not give healing items to wounded friends who already have means of healing themselves.
  • Ownership of an item by a minion is assumed when player equips the item in control mode.
UI changes:
  • Added setting to disable vertical sync, which may solve some framerate issues.
  • New, nicer research menu.
  • Added descriptions to keeper-adventurer menu.
  • Changed highlighting of various buttons and tab icons.
  • Clicking on controlled creature skips turn.
  • Added a simple movement animation of creatures when destroying objects, digging, and cutting trees.
  • Window "close" button is highlighted.
  • Swapped storage colors. Equipment is now blue, resources green.
Bug fixes:
  • Fixed UI crash when changing minion's task.
  • Fix drowning of flying creatures that enter deep water that is in forbidden zone.
  • Fixed mouse navigation to enemies that are far away when in control mode.
  • Fixed crash in item pick up menu.
  • Made message boards work even if statistics gathering is not enabled in the settings.
  • Fixed movement animation glitch when using mouse and being interrupted by enemy.
  • Fix UI crashes involving workshops and minion equipment menu.
  • Fixed tooltips in workshop menu.
  • Fix scrolling inventory in control mode.
  • Fixed game speed dialog glitch.
  • Removed useless "execution" task.

KeeperRL - Michal Brzozowski
Alpha22 is ready for you to test on Windows, Mac, and Linux. Besides adding support for all platforms, I've fixed a lot of bugs and issues that were reported by testers. Thank you all for helping out!

Alpha22 will be officially released soon, so this is the last chance to help with bug hunting. :)

You can opt into the testing branch by going into the game's properties in the Steam client, switching to the BETA tab, and choosing the branch 'dev'.

Please post any feedback in the comments below or on the community forums.
KeeperRL - Michal Brzozowski
Alpha22 is ready for you to test on Windows, Mac, and Linux. Besides adding support for all platforms, I've fixed a lot of bugs and issues that were reported by testers. Thank you all for helping out!

Alpha22 will be officially released soon, so this is the last chance to help with bug hunting. :)

You can opt into the testing branch by going into the game's properties in the Steam client, switching to the BETA tab, and choosing the branch 'dev'.

Please post any feedback in the comments below or on the community forums.
KeeperRL - Michal Brzozowski
It's slowly the time to wrap up the release of the twenty-second Alpha. The plans for this version were ambitious, but I had to postpone many of them, otherwise the update would have taken way too long. Nothing is lost though, as the remaining features will make it into Alpha23, and whatever is already done, will be out earlier.

So, what's coming in Alpha22? The main feature is the dedicated tutorial mode. I've already written a little bit on what it will look like here and here. The tutorial is almost finished, and I'm taking feedback from testers right now to make sure that it covers as many basics of the game as possible. As you can imagine, having worked on the game for 4 years, I can be prone to overlooking many things. :P

There are some other nice features coming along, like the 2-3 times faster saving and loading, smaller save files, portals reworked as dungeon furniture, and fixes in equipment management. These are not huge changes, but as I've written in previous posts, they involved a lot of work under the hood, and have easily taken at least half of development time of this release.

The other big features that I promised before, like the endless mode, content additions from the wiki, and key mapping configuration, are going to come in Alpha23, as I've mentioned in the beginning.

My plan right now is to finish up the tutorial. In the meantime, many Steam users are already testing the new build, and I've received quite a few bug reports, for which I'm very thankful. Once all the known bugs are fixed, and the tutorial is finished, Alpha22 will be ready. Sounds easy! I'm hopeful that it will happen in early June.
KeeperRL - Michal Brzozowski
It's slowly the time to wrap up the release of the twenty-second Alpha. The plans for this version were ambitious, but I had to postpone many of them, otherwise the update would have taken way too long. Nothing is lost though, as the remaining features will make it into Alpha23, and whatever is already done, will be out earlier.

So, what's coming in Alpha22? The main feature is the dedicated tutorial mode. I've already written a little bit on what it will look like here and here. The tutorial is almost finished, and I'm taking feedback from testers right now to make sure that it covers as many basics of the game as possible. As you can imagine, having worked on the game for 4 years, I can be prone to overlooking many things. :P

There are some other nice features coming along, like the 2-3 times faster saving and loading, smaller save files, portals reworked as dungeon furniture, and fixes in equipment management. These are not huge changes, but as I've written in previous posts, they involved a lot of work under the hood, and have easily taken at least half of development time of this release.

The other big features that I promised before, like the endless mode, content additions from the wiki, and key mapping configuration, are going to come in Alpha23, as I've mentioned in the beginning.

My plan right now is to finish up the tutorial. In the meantime, many Steam users are already testing the new build, and I've received quite a few bug reports, for which I'm very thankful. Once all the known bugs are fixed, and the tutorial is finished, Alpha22 will be ready. Sounds easy! I'm hopeful that it will happen in early June.
...