Many changes have happened in KeeperRL land in the last few weeks. Most of them were in the game’s internals, so they may not be very interesting to you, but they are important for development. I treat KeeperRL as a very long term project, so I spend a lot of time trying to improve its internal architecture. Badly written code, much like a messy bedroom, decreases your morale, and causes you to trip over things as you’re trying to reach your goal. Not to mention bugs!
In this spirit I spent a whole week switching to a new serialization library, which is the backbone of the saving and loading system. The new one, Cereal is more modern than Boost serialization, and easier to use on multiple platforms. As it turned out, it also decreased saving and loading times about two to three times, and reduced save file size almost twice!
This encouraged me to do some cleaning and remove a few obsolete classes from the code. Traps, torches, and portals are now regular Furniture, much like all other static things on the map. This was an opportunity to rework portals a little bit, to make them more useful. From now on they will be constructed by imps, and will not time out. You will use them actively, just like stairs. I think that in such form they will be a great addition to the dungeon. Unfortunately, teaching the AI to use them for pathfinfing is a much bigger deal, so for now they are there only to the advantage of players. But I will revisit this problem later, because having the AI use portals, and be smart about it, would be really, really fun.
As another gameplay change, I deflated the quantities of all resources in the game, except mana. Everything now costs five times less wood, gold, iron, and so on, and you also receive less of everything. The only real effect is on the size of stockpiles that are generated, because every unit of resource in KeeperRL, except mana, exists in the game as an individual item. This used to inflate save file size quite a bit.
Going back to technical stuff, I noticed that switching off Vertical Sync in the window configuration, which ties the game’s framerate to the refresh rate the monitor, fixes some severe frame dropping that I experience on the development build of the game. I’m not sure if this has much effect in the real world, but I added the option to switch off V-Sync in the game’s settings. I’m also contemplating just switching it off by default. I need to research how other games approach this issue.
Last, but not least, I had some time to work on the tutorial. It’s going to take the form of very small, detailed tasks for the player to perform as they build their dungeon. As KeeperRL is fairly complex, there will be a large number of these steps, so it’s going to take longer to finish than I expected initially. This is what the tutorial will look like. In addition to giving you instructions, the game also highlights the relevant UI elements for the current task.
Hi everyone,I wanted to leave you all with a little Christmas gift before the holidays. This year KeeperRL finally went 1.0 and you’ve all shown such incredible support for... more
1.1.1 Golden prayer bench training limit is increased to 99.Added missing church tech descriptions.Fixed courtesan and gigolo minions not appearing in the minions... more
The KeeperRL team wishes to entertain you this Halloween by releasing a new playable faction called the "Corrupted Church". Playing either as a Bishop or a Mother Superior,... more
A few months ago, I was contacted by a company called Elda Entertainment about a possible collaboration on KeeperRL. Elda is a small publisher based in Sweden, comprised of... more
I'm very proud to announce that KeeperRL v1.0 is out! In addition to being the most important milestone for the game, this is also a huge update with major gameplay additions.... more
Home › Forums › Improvements under the hood