1. Tales of Kathay
  2. News

Tales of Kathay News

Alpha 0.7.0 - Of Arts & Crafts

[p]Hey everyone![/p][p]The Open Alpha 0.7.0 is now available for download on Itch.io![/p][p]In this update, the focus was the creation of a basic crafting system and improving the controls and balance of the game.[/p]
New crafting system
[p]I have added a new simple crafting system. Currently, there are three recipes, but the basis is present to expand and add more.[/p][p]Two of those crafting recipes require a workstation, a tile in the world that works as said workstation, like a Cauldron for potion brewing or a campfire for cooking.[/p][p][/p]
Patch notes
[h2]Gameplay[/h2]
  • [p]New crafting screen accessible via Hotbar;[/p]
  • [p]New object that spawns in villages and camps: Campfire (allows cooking);[/p]
  • [p]Cauldron now allows the crafting of Health Potions;[/p]
  • [p]New materials: Red, Green and Blue linen;[/p]
  • [p]WASD and Numpad movement;[/p]
  • [p]New settings screen;[/p]
  • [p]Hotbar skills accessible via numeral keys;[/p]
  • [p]You can now butcher animal corpses to get raw meat;[/p]
  • [p]Objects that obscure the player now get semi-transparent;[/p]
  • [p]New item: "Healing salve";[/p]
  • [p]New item: "Raw meat";[/p]
  • [p]New item: "Cooked meat";[/p]
  • [p]New status effect: Food Poisoning;[/p]
  • [p]New status effect: Well-fed;[/p]
  • [p]New quest: Fetch herbs;[/p]
  • [p]New quest: Healing salve needed;[/p]
[h2]Performance[/h2]
  • [p]Improved performance of a subroutine that is very perceptible during world generation;[/p]
[h2]Balance[/h2]
  • [p]Herbs are now more common;[/p]
  • [p]Reviewed quest difficulty formula;[/p]
[h2]Bugfixes[/h2]
  • [p]Fixed issue where the relationship shown at the chat screen was reversed (instead of "daughter" it would say "mother");[/p]
  • [p]Fixed issue where the encounter map generated wasn't the most recent one;[/p]
[h2]Modding[/h2]
  • [p]Items are now loaded from TOML file;[/p]
  • [p]Crafting recipes are loaded from TOML file;[/p]
[h2]Others[/h2]
  • [p]Added "Wishlist on Steam", "Give Feedback" buttons on the menu;[/p]

Weekly Devlog #13 - Of Arts & Crafts

[p]Hello everyone![/p][p]After the release of version 0.6.0 last week, I quickly jumped into what I had planned for version 0.7: the creation of a basic crafting system. Now, surprisingly, this system is already pretty much done, and I plan to release version 0.7.0 probably during the weekend, so keep an eye out for that![/p][h2]Crafting[/h2][p]The focus of this week's work was the creation of the crafting system. I didn't focus too much on adding tons of crafting recipes and items, but just enough to test the little quirks of the crafting system.[/p][p]You can now craft a few items, some of them you can craft on the go, like the new "Healing Salve" item (a weaker healing potion made with herbs), others might require workstations, such as cooking raw meat at a campfire or brewing a health potion in a cauldron.[/p][p]All crafting is done in a single UI, inspired by Project Zomboid's crafting system. This might change in the future as I add different types of crafting, such as smelting ore, but for now it works nicely.[/p][p][/p][p]I also added a few new items to support these recipes: the healing salve, raw meat that can be harvested from animal corpses, and cooked meat. The healing salve acts as a weaker healing potion, while the meat provides a temporary boost to your melee damage.[/p][h2]New quests[/h2][p]I have added 2 new quests based on the theme of this update. They are simple fetch quests. One is for gathering herbs for the town's herbalist, the other is to bring a healing salve to a villager who got a nasty wound.[/p][h2]Other improvements[/h2][p]You can now use new keyboard controls for moving around using WASD or the NumPad, akin to other roguelikes. I have also added the ability to select skills in your toolbar using the number keys.[/p][p]Another thing I added is a settings option in the menu to adjust volumes and other settings.[/p][p]That's it for this week, and don’t forget to wishlist Tales of Kathay on Steam![/p]

Open Alpha 0.6.0 - Of Quests & Hunters

[p][/p][p]Hey everyone![/p][p]The Open Alpha 0.6.0 is now available for \[download on Itch.io]([/p][p]https://jouwee.itch.io/tales-of-kathay)![/p][p][/p][p]In this update, the focus was reworking quests for a system that is more interesting and hopefully will remain indefintely in the game.[/p][h2]New quests and quests system.[/h2][p]The main update in this version is the quest rework.[/p][p]Now, quests are created through the history simulation, based on events that happened and NPC needs and wants. To support these new quests, a new concept of "encounters" was also added. They are basically small structures that show the event in a concrete form in the world. For instance, if a caravan was attacked by a pack of coyotes, you might find their corpse, a broken cart, and some other details that tells this story. In total, 5 quests/encounters were added.[/p][p][/p][p]There's also the new notice board, an object that will always spawn in front of the townhall of villages, and will contain all available quests from that village.[/p][p][/p][p]You can still talk to people to get quests from them, and the chat screen got a new look![/p][p][/p][h2]Patch Notes[/h2][h3]Gameplay[/h3]
  • [p]Quests are now created through history, instead of on the spot;[/p]
  • [p]Quests can be given by any NPC, not only the ruler;[/p]
  • [p]Added "encounters", small temporary structures that represent some event that happened;[/p]
  • [p]New quest: Missing while foraging;[/p]
  • [p]New quest: Missing while hunting;[/p]
  • [p]New quest: Missing caravan;[/p]
  • [p]New quest: Attacked while foraging;[/p]
  • [p]New quest: Attacked while hunting;[/p]
  • [p]Added quest markers in the world map;[/p]
  • [p]Added quest markers in the game world;[/p]
  • [p]Added quest tracker underneath the HUD;[/p]
  • [p]New weapon: Makeshift Sword;[/p]
  • [p]New weapon: Woodcutter's Axe;[/p]
  • [p]New weapon: Club;[/p]
  • [p]New weapon: Small Knife;[/p]
  • [p]New console command: /travel;[/p]
  • [p]Quests now will always reward money;[/p]
  • [p]Creatures can now migrate between villages;[/p]
  • [p]Added a notice board in villages that contain postings about most quests of that village;[/p]
[h3]UI[/h3][p][/p]
  • [p]Revamped the whole chat screen UI;[/p]
  • [p]Revamped the world simulation screen, adding more information;[/p]
  • [p]Revamped the quest screen in the codex;[/p]
[h3]Performance[/h3]
  • [p]Fixed small FPS hicup when moving the mouse over unpassable objects;[/p]
[h3]Bugfixes[/h3]
  • [p]Fixed some world information not being saved when you switch areas;[/p]
  • [p]Fixed crash when the game couldn't find a playable scenario. Now it'll keep simulating until a scenario is found;[/p]
  • [p]Fixed missing scroll in the codex screen;[/p]
  • [p]Fixed the player not being able to die from poison or fire;[/p]
  • [p]Fixed equipped armor texture when you looted it from another corpse;[/p]
[h3]Modding[/h3][p][/p]
  • [p]Materials are now loaded from TOML file;[/p]
[h3]Others[/h3]
  • [p]Removed lore.log;[/p]
  • [p]Removed simulation of plots, goals and relationships (obsolete);[/p]

Weekly Devlog #12 - Of Boards & Markers

[p]Hello everyone![/p][p]In this devlog, I continue working on the quest rework system, adding notice boards and revamping the UI for quests. If you want to know more about the quest overhaul, you can read about it in the previous devlog.[/p][h2]Notice board[/h2][p]Villagers may now post their active quests on the village's notice board. This gives players a way to see several quests from the current village in a single place, instead of having to talk to every NPC individually.[/p][p][/p][p][/p][h2]New UI for quests[/h2][p]I've added several UI improvements to help with completing quests, all adapted to the new framework. This includes a revamp of the Codex page for quests, tracking of active quests, and quest markers on the map and in the chunk.[/p][p]I don't want Tales of Kathay to become a "follow the map marker" game, but instead I want exploration to matter. So I have to be careful about how many markers I add and where. So far, I've added markers for general locations, and only for specific characters / positions when it's impossible or just boring to find them otherwise.[/p][p][/p][h2][/h2][h2][/h2][p][/p][h2]Some thoughts on abstraction[/h2][p]I wanted to talk briefly about a realization I had while reworking the quest system about abstraction. Now, I don't mean the code type of abstraction, like interfaces or abstract classes. I mean data abstraction.[/p][p]For example, when storing information about a village's population, I can do it in a few ways. I can store the distinct people in a list, with all of their properties (a concrete representation), or I can just store that the village has, for example, "5 adult males, 3 adult females, and 2 male children" (an abstract representation).[/p][p]The abstract representation has a clear advantage of using less memory, and being computationally less expensive. For that reason, I've always prefered abstract representations whenever possible.[/p][p]However, almost every single abstract data I have created, I eventually had to switch to concrete data, and the quest rework was no different. I had to bring several creatures that were'nt actually created, to be created on the spot.[/p][p]The main realization I had is that the concrete representation is still way faster than I thought. I can still simulate 1,500 years of history in a fraction of a second. So I have switched my mental mode to default to concrete representations, and only abstract when necessary.[/p][h2]Other changes[/h2][p]Some other small improvements since last week are:[/p]
  • [p]Reworked (again) how quests are created to actually use bandits / predators that already exist in the world, instead of spawning them on demand;[/p]
  • [p]Added some more decorations to the "missing while foraging" quest;[/p]
  • [p]Added a new "missing while hunting" quest;[/p]
  • [p]While chating with NPCs, there's now a tree of options that you can navigate, instead of only the 3 default options;[/p]
[h2]What's next?[/h2][p]The end of the quests rework is finally coming into view. I can't say for sure it'll be done next week, but I think I'm getting close. Still want to create one more quest, the lower weapon tier, and fix a few remaining bugs.[/p]

Weekly Devlog #11 - Of Baskets & Blood

[p]Hello everyone![/p][p]I took a couple of weeks off to travel with my family. But now I'm back, batteries recharged, and ready to continue working on the game![/p][p]In this devlog, I'll talk about the rework of the entire questing system and how quests are now generated.[/p][h2]The problems with the current quests[/h2][p]The current quest system was always meant to be a placeholder, something to provide basic progression. But I always knew it was insufficient and, frankly, not interesting. Until now, quests were generated like this:[/p]
  • [p]Search for a nearby enemy site;[/p]
  • [p]Create a quest on the spot;[/p]
  • [p]Give the quest to the player.[/p]
[p]Completing or not a quest has no impact on the world. They're repetitive and, most importantly, tell absolutely no story.[/p][h2]The new questing system[/h2][p]New quests are no longer generated when you talk to an NPC. Instead, events might happen during history generation, and those events may become quests.[/p][p]For example, let's look at the toy quest I developed this week. The quest is to search for a person who went missing while foraging in the forest. The whole "lifecycle" of the quest looks like this:[/p]
  • [p]Someone randomly decides to forage in the wilderness near a predator pack or bandit camp;[/p]
  • [p]They fight and end up wounded or dead, creating an encounter;[/p]
  • [p]A relative back in the city notices their disappearance and creates a quest;[/p]
  • [p]The player talks to this person and accepts the quest;[/p]
  • [p]The player investigates the area, kills the predators (maybe), and returns with the information;[/p]
  • [p]The quest is completed.[/p]
[p][/p][p]At any point during these events, the outcome might change. The person might win the battle, bringing back loot or carrying scars for life. Or maybe they don't have any relatives or friends in town, and they simply become a lonely body you can stumble upon while exploring.[/p][p]The great thing about this system is that even if a quest never gets created, a story still exists. A story that can be uncovered by the player, even if just for flavor.[/p][p]I used the word "encounter" several times, so let's talk about that. I borrowed the term from D&D, where it means a small modular scenario with a map, enemies, and so on. In D&D, a DM creates encounters on the fly or picks them from a list, so we don't expect them to repeat. In the game, however, scenarios are chosen from a pool of possibilities. I took a lot of inspiration from the concept of "Zone stories" from Project Zomboid.[/p][p]Encounters are essentially hand-made modules dropped into a procedural world. They bring flavor, style, and the developer's (or modder's) touch while keeping the replayability and unpredictability of procedural generation.[/p][h2]Other changes[/h2][p]I also reworked the chat screen to be more functional and pleasant, although it's still not 100% complete. I've made some performance improvements and added a random event during history generation that allows people to migrate between settlements (previously each town was usually dominated by a single family).[/p][p][/p][h2]What's next?[/h2][p]I still have a few wrinkles to iron out in the new quest and encounter system, so next week I might not have much new to report besides "hey, I finished what I said last week." For the update as a whole, I plan to add a total of four encounters/quests (a 1:1 replacement for the old, boring quests) and a notice board in every city, so players can find all quests in one place.[/p][p]I also want to add a new lower tier for all weapon types: a club, a makeshift sword, and a lumberjack's axe. These will be cheaper and weaker than the current weapon tiers, intended as starter weapons to increase progression. This will require quite a bit of rebalancing.[/p][p]This is it for this week![/p]