1. Tales of Kathay
  2. News

Tales of Kathay News

Weekly Devlog #6 - Endless skills

[p]Hello everyone![/p][p]I have deeply underestimated the time it would take to create the new abilities I had planned, so this week the work continues on the skill and leveling system.[/p][p]Sadly, this means the 0.3 release won’t come out this week, but I’m 90% of the way there.[/p][p]So far, I have implemented 7 of the 10 new abilities I want to have for version 0.3, and have mostly finished all the other features I had planned.[/p][p]Since this is a shorter devlog, I’ll leave you with a short clip of a boss fight using some of the new abilities![/p][previewyoutube][/previewyoutube][p]This is it for this week, and don’t forget to wishlist Tales of Kathay on Steam![/p]

Weekly Devlog #5 - Meaningful skills

[p]Hello everyone![/p][p]This week the work continues on the skill and leveling system. I have also implemented some new features to make combat and general play more fluid, as well as working in some heavy optimizations.[/p][h2]Skills and leveling up[/h2][p]In the skill system, the main change since last week is that now skills might unlock new abilities on level milestones. The existing melee abilities (“Concussive Strike” and “Bleeding Cut”) have been moved to the level 2 requirement of their respective weapon skills.[/p][p][/p][p]The plan is to have at least 2 abilities unlocked per skill, one at level 2 and one at level 4. Further leveling a skill will only grante stat bonuses.[/p][p]You might have noticed in the video above, but another change I made this week was improving the tooltips of the abilities. They now show pretty much every information that I have in code in a more organized and pleasing way.[/p][p][/p][p] [/p][h2]Diagonal movement[/h2][p]Another change I’m testing with is enabling diagonal movement. The “manhattan” movement I had before felt very clunky sometimes. With diagonal movement, it feels way more fluid, but I’m also often surprised of how fast the enemies can reach me now. I’ll keep it enabled for now, and tweak balancing with time.[/p][h2]Blood splatter & Stencil[/h2][p]One last tiny change I made in the game was adding blood splatters when an attack hits. The most interesting part of this is the stencil framework I created to make the blood splatters, which will allow me to add more little effects like these faster![/p][h2]Performance improvements[/h2][p]Recently I discovered that the way I’m rendering some images (mainly the tilemaps) is very non-ideal. Basically I made a separate tileset image for every type of tile (grass, dirt, wooden floor, etc), and I draw them in order acordingly. I’ve done it like this instead of a large image atlas to allow easy modding and expansion in the future. However, this results in a lot of byte exchange between the CPU and GPU. When rendering, everytime a tile changes, the new tileset has to be sent to the GPU.[/p][p]I’m experimenting with a dynamic image atlas built in-memory. Basically, when the game register the different tilemaps, it adds all of them to a large image that only has to be sent to the GPU once. On my desktop PC (RTX 5060), this resulted in a 3x (from 2.7ms to 900μs) improvement at the cost of a few megabytes of RAM. I’m yet to test in my older and less powerfull notebook, but from preliminary tests I did some weeks ago, I expect something close to 10x increase (30ms to 2-3ms).[/p][h2]Conclusion[/h2][p]In general, I’m quite happy with the progress I’m doing with the leveling system. I believe next week I’m going to release the changes as version 0.3.[/p][p]During this “pre-alpha” phase of the game, I believe it makes more sense to release small and frequent updates, so I’ll try to do that.[/p]

Weekly Devlog #4 - Leveling up

[p]Hello everyone![/p][p]This week was very exciting, with the release of version 0.2.0 on Itch. Also, I would like to say a special thanks to everyone from Rogue Basin that came to checkout out the game![/p][p]Now, about the next update for Tales of Kathay.[/p][h2]Skills and leveling up[/h2][p]The main feature I want to work next is the leveling system, which I already got started yesterday.[/p][p]I want to follow the template of games such as Project Zomboid, Soulash 2, or Skyrim. In those games, you level up your skills by using them, and the overall character level is not as important. In contrast to this format would be a system similar to Avernum or Stoneshard, where you level up in a more general way and spent skill points to improve specific skills. This is a more arcade-y way of managing levels, and I feel it doesn’t fit with my vision of a more dark and realistic game.[/p][p]Leveling up skills will improve your player pertinent stats, but most importantly, will also unlock new abilities to use tactically. For instance, leveling up your “Sword Fighting” skill will reduce the chances of you fumbling your attacks with swords, but might also unlock a new ability that allows you to hit your target with the pommel, dealing a stunned effect.[/p][p]Currently, the skills I want to implement are:[/p]
  • [p]Sword fighting[/p]
  • [p]Mace fighting[/p]
  • [p]Axe fighting[/p]
  • [p]One-handed weapon fighting[/p]
  • [p]Hand-to-hand fighting[/p]
  • [p]Combat maneuvering[/p]
[p]Here’s a little preview of the skills UI in game:[/p][p][/p][p][/p][h2]Other improvements[/h2][p]Some other improvements I wanna implement are diagonal movement and a “look” keybind, allowing the player of looking a little further than the screen allows. I have already played around with this, and I think it will improve exploration and combat-planning.[/p][p]Another thing I want to work on is polishing the quests and dungeons, as they feel really thrown together, specially the Varningr quest. I’m not sure if I will do this in this update or on a specific one.[/p][p]This is it for this week, and don’t forget to wishlist Tales of Kathay on Steam![/p]

Weekly Devlog #3 - A living world

[p]Hello everyone![/p][p]As mentioned in the last update, this week I tackled the most scary part of the next version, which was simulating the world as you go. More details below, but I'm quite happy with the results so far![/p][p]As per other features, I have also started adding consumables and new equipment. As a reminder, the new features of the next update are:[/p]
  • [p]Saving and loading;[/p]
  • [p]Simulate the world as you play;[/p]
  • [p]Consumables;[/p]
  • [p]More gear variety;[/p]
[p]Most of them are close to being done. Next week, I expect to fix some bugs and improve the game-feel of some new actions. I'm hopeful that I can release version 0.2 until next Friday![/p][p]Simulating the world in real time
[/p][p]This was the main focus of my week, as it was a scary feature to implement.[/p][p]The main change is that now, every time you sleep in a bed to recover health, 1 day will be simulated for the entire world. This will allow people to age, die, and be born. People will move into new homes, or abandon old ones. Abandoned buildings will age and crumble.[/p][p]This will happen very slowly, almost imperceptibly, as you play. However, when you return to a town you haven't visited in a while, you'll notice changes.[/p][p]I made this short time-lapse of 100 years in a small village to show this evolution happening:[/p][p][/p][previewyoutube][/previewyoutube][p][/p][p]Consumables
[/p][p]I also added this week a new type of item, being consumables. This is for items such as potions, food, etc.[/p][p]So far, I added three consumables: Health potion (quest reward), Comfrey and Echinacea (Much weaker versions of health regeneration, can be foraged). The health potion will give you a "second wind" during combat, while the flowers are meant more as a recovery between fights.[/p][p][/p][p]I also added harvestable plants! This is how you get Comfrey and Echinacea, and it gives the player something to do while exploring.[/p][p][/p][p]More equipment[/p][p]Finally, I started adding more equipment to the game. I'm not ready to show anything here yet, because the sprites are terrible.[/p][p]What I can say, is that I plan to add:[/p]
  • [p]2 types of helmets[/p]
  • [p]1 type of armor (3 total)[/p]
  • [p]1 piece of clothing (2 total)[/p]
  • [p]1 leg piece (2 total)[/p]
  • [p]3 weapon types (6 total)[/p]
[p]Conclusion [/p][p]As mentioned, I feel confident that I can release the update 0.2 until next Friday, the 5th of September.[/p][p]I have also started planning update 0.3, but I'll leave that for the next devlogs ;)[/p]

Weekly Devlog #2 - Saving and loading

[p]Hello everyone![/p][p]Last Friday, the first public version of Tales of Kathay (0.1) was released. While still in early development, several people have played the game and gave me valuable feedback for the game![/p][p]This week, I started work on the next version of the game. This version will be focused on a few game mechanics that are missing, and the sooner I implement them into the game, the better. The planned features for 0.2 are:[/p]
  • [p]Saving and loading;[/p]
  • [p]Simulate the world as you play;[/p]
  • [p]Consumables;[/p]
  • [p]More gear variety;[/p]
[p]Saving and loading
[/p][p]Enabling the saving and loading of the game was the focus of this week's work. While I had considered since the beginning what data I would eventually have to save and load from disk, actually implementing the serialization exposed some flaws in the data flow of the game.[/p][p]After a decent bit of head scratching, I managed to refactor everything that was in the way, and got the serialization and deserialization working.[/p][p]I also implemented a load screen in the main menu (which is still quite buggy), the offloading and reloading of chunks as you navigate the world, and the saving of the game while you play.[/p][p]In general, I would say I'm 90% done with the save system. Just need to do some UI tweaks, and it should be done early next week.[/p][p]Simulate the world as you play[/p][p]This feature is probably the big promise of Tales of Kathay that I'm currently not delivering. The world is intended to feel alive, with a deep simulation of settlements, economies and personal lives. All of that simulation should react to the player's actions, on a small or large scale.[/p][p]However, while the bare-bones of the simulation code exists, it is simulated only before you play, to create the world, or when you die and want to respawn.[/p][p]It doesn't simulate while you are playing, and most of your actions will only take effect after you die and respawn as a new person.[/p][p]In this version, I want to have at least a basic implementation of this living world around you. My idea is, when you go to sleep, step the whole world a day in the simulation. This could be eventually tied to a day/night cycle (which doesn't exist yet), and feel even more dynamic and alive.[/p][p]This, in tandem with the current simulation I have in place, will hopefully start to create the effect of a living world. Did you ignore the quest to kill a monster in the woods? Well, maybe next time you return to this village, more people will be dead. Maybe even the whole village.[/p][p]This mechanic has a few scary side effects on the generation that I'm still not 100% sure how to solve.[/p][p]Consumables [/p][p]This is a small content upgrade I plan for the next version to give the player more things to do while playing. Currently, the only game loop you have is:[/p][p]Get quest > Kill something > Complete quest > Get reward > Repeat
[/p][p]This gets stale very fast.[/p][p]Another problem is that the only way for you to heal is to return to a village and sleep in a bed. There's no way to heal mid-battle.[/p][p]To solve both of these problems, I plan to add a few consumables. A plant that you can find in the wild that can heal you slowly, giving the player a reason to explore a bit, and a potion that heals you quickly. The potion will be a new reward from the quest system, and is intended to be using during a hard battle to give you a second wind.[/p][p]More gear variety[/p][p]Finally, I want to add a bit more gear variety to the game. Nothing big, just one or two extra weapons, and armor pieces. Just so you have some more variety in NPC gear and rewards.[/p][p]This is not a large content update, just enough to make the game less repetitive. [/p][p]Conclusion
[/p][p]I am pretty much done with one of the scary parts of the update, that being the saving and loading mechanics. Next week, I want to tackle the last scary part, which is the dynamic simulation of the world around you.[/p][p]Consumables and gear variety aren't scary, but there's plenty of work there for another week. There's also some new bug fixes coming in 0.2.[/p][p]Overall, being optimistic, version 0.2 should be done on the 5th of September, but being more conservative, on the 12th.[/p]