The Spring Molting update is now live!

Caves of Qud

Caves of Qud is a science fantasy roguelike epic steeped in retrofuturism, deep simulation, and swathes of sentient plants. Come inhabit an exotic world and chisel through layers of thousand-year-old civilizations.

Hello friends! We are shedding some of our text-based skin for the Spring Molting update, live NOW on the main branch. This is the FINAL major update before the 1.0 release later this year. This patch brings the much-anticipated UI overhaul and lots of other upgrades and improvements. If you’ve been intimidated by the console UI and it's stopped you from diving into Qud, give Spring Molting's new RPG-like interface a try. Watch the update trailer to see the changes: [previewyoutube=okr1o8j0su0;full][/previewyoutube] [h2]Spring Molting Update Highlights:[/h2] [list] [*] 🚨ALL NEW INTERFACE🚨 Our transformational UI redesign is complete! Fully mouseable, fully gamepaddable, and much prettier, but all carefully designed to maintain the essence of what makes Qud Qud. More polish is coming, but everything functional is in. [*] Support for Steam Cloud saves. Play between PCs or between Steam Deck and PC, at your leisure [*] a refresh of the starting town of Joppa, with the same lived-in texture as the rest of the world [*] hundreds of new sound and visual effects [*] 40 new achievements [*] several new narrative touches, big bug fixes, & performance improvements [/list] Compare the old text-based Quests screen... [img]{STEAM_CLAN_IMAGE}/7472163/0e8e1ac2c7cd6bf857ed574df2e6d0c4067311c0.jpg[/img] ...to the new, showing the locations of your quest givers on the worldmap. [img]{STEAM_CLAN_IMAGE}/7472163/89b7f736ce0dcf252694e4ce0afa0d42841de71d.jpg[/img] By the way, if you [i]prefer[/i] the text-based UI, don't worry- It's still here. Go to Options > Overlay UI > uncheck "Enable modern UI elements". [h2]What’s Next?[/h2] We are getting even closer to 1.0! We have two main objectives for the rest of the year: finish the main quest and create a more hands-on tutorial. Until then, you can still weekly updates to resume 1.0 launch at the end of the year. ------------------------- [h2]Spring Molting Patch Notes[/h2] [h3]Quick note on saves[/h3] Old games aren't compatible with the Spring Molting patch, but you can finish them out before you update. From Caves of Qud in your Steam library, go to Preferences > Betas > "206.78" for the previous branch. [b]UI[/b] [list] We added an entire new UI. (ie, we completed work on the modern UI, for folks who've been following our progress). More polish will be coming over the next several weeks, but all the functionality is there. [list] [*]There are too many changes to fully document, but here's a partial list of new screens: trade, quests, message log, character sheet, skills, equipment & inventory, tinkering, game summary, every journal tab, status effects, reputation, world generation, interact nearby, books, in-game terminals. [*]The new UI has full keyboard, mouse, and controller support. [*]The new UI plays natively on handhelds like Steam Deck. [*]Added a search bar to relevant screens. [*]Added a system menu button to the top-right of the main play screen. [/list][/list] [b]SAVES[/b] [list] [*]Added full support for Steam Cloud saves. [*]Vastly improved the performance of saves and loads. [*]Greatly reduced the number of files per save. [*]Greatly reduced save size. [*]Saves are now more resilient towards breakage, from mods or otherwise. [*]Saves now kept in the \Synced subdirectory, and unsynced files are kept in \Local. [*]Multiple attempts are now made to delete save games that are in use by another process. [/list] [b]WORLD[/b] [list] [*]We refreshed the starting village of Joppa. [list] [*]Added a new apothecary: Nima Ruda. [*]Replaced Warden Ualraig with a more fleshed-out version: Warden Yrame. [*]Gave all major NPCS new dialog and new descriptions. [*]Widened the range of artifacts that can be turned in to Argyve. Concurrently, we gave some true kin castes fewer starting trinkets. [*]Made some significant changes to O Glorious Shekhinah! These changes carry through to the generated village starts, and in fact are slightly different in each village type. [*]Gave the village a makeover, with several new walls, pieces of furniture, and monuments. [*]Joppa NPCs now point you to questgivers, like the villagers of dynamic villages do. [/list] [*]We refreshed the Naphtaali faction and culture. [list] [*]Replaced or renamed several Naphtaali. Here's the new roster of creatures: Naphtaali forager, Naphtaali tinker, Naphtaali nimrod, Naphtaali jeer, and Naphtaali sap. [*]Replaced chrome idols with unplanished godheds, and their legendary counterparts, planished godheds. [*]Refreshed woodsprogs and added them to jungle populations. [*]Added Erah the ciderer to Kyakukya. [/list][/list] [b]GAMEPLAY[/b] [list] [*]Strong feelings creatures have due to actions you take (such as attacking them) now weaken over time instead of reverting suddenly when a map is unloaded. [*]Creatures belonging to multiple factions now take your reputation with all those factions into account when determining their attitude toward you. [*]Creatures no longer ignore changes to your faction reputation if they have a personal opinion of you. [*]Companions no longer revert to their base attitude when they lose track of their leader. [*]In general, we made the attitude system governing creature AI much more robust and fixed many of its long-standing bugs. [*]Creatures now get mad at you if you tell your companions to attack them. [*]Added a new piece of furniture: electric generator. [*]Tables randomly have items. on them more often. [*]Fixed Yurl having way too much ammo. [*]Removed the extraneous grazer golem. [*]Creatures no longer get saves vs. dreamcrungle gazes. [*]Lampreys no longer wake up from a nearby creature calling for help. [*]Hardpoints and Middle Hardpoints are no longer selected as metachrome slots. [/list] [b]MISC[/b] [list] [*]Added 40 new achievements. [*]Added many, many new visual and sound effects. [*]Looping music tracks now play seamlessly. [*]Added an option to disable interface sounds (Opetions > General > Interface Sounds). [*]Made some alterations to the track that plays during Reclamation. [*]Added an option to disable text particle effects (Options > General > Use Text Particle VFX). [*]Made some tweaks to hindren and mopango dialog. [*]Refreshed and polished the dynamic wall generation system used for villages (e.g., "dragonfly chitin tent") [*]Refreshed and polished the display names, tiles, and descriptions of uindentified artifacts and partially identified artifacts. [*]Added some new trinkets: Added bubble level, spiral iron, and salt mill. [*]Added a wrench and a pestle. [*]Added several new item descriptions. [*]Tillifergaewicz is now a point of interest. [*]Twinning and trining lamprey can be villagers again. [*]Reduced memory fragmentation over long play sessions. [*]Improved turn-by-turn performance. [*]Improved lightray casting performance during the day. [*]Improved performance in liquid-heavy zones. [*]Improved memory overhead in general. [*]Improved memory overhead and performance when saving/loading. [*]Reduced memory pressure from reality-stabilizing effects. [*]Changed Issachari renderstring to 'h'. [*]Clarified Ruin of House Isner rules text. [*]Removed the prerelease inventory and trade options. [*]Clarified the disease cure achievements only trigger when the diseases are cured via traditional methods. [/list] [b]BUGFIXES[/b] [list] [*]We made many, many fixes to long-standing issues around creature attitudes, including creatures losing their [*]Fixed Asphodel's followerss being limited to 8. [*]Fixed nonspecific gender verb conjugation. [*]Fixed several cases of messages referring to a *PooledObject. [*]Fixed the performance impact when many creatures had died or objects had been destroyed. [*]Fixed non-human village tinkers and apothecaries not having tier-appropriate stock. [*]Fixed twinning and trining lampreys generating erroneous copies. [*]Fixed starch and lignin being removed. [*]Fixed backswings being able to trigger additional backswings recursively. [*]Knowing the Cloaca Surprise no longer significantly slows down game loading. [*]Fixed many other small issues. [/list] [b]MODDING AND DEBUGGING[/b] [list] [*][modding] Creatures now have action-specific opinions of others. For example, being attacked by someone's ally now garners the OpinionAttackAlly opinion. [*][modding] Creatures now maintain a history of allegiance. For example: "On the 3rd of Ut yara Ux, was constructed by a turret tinker." and "On the 12th of Tuum Ut, was proselytized by you." [*][modding] Many invalid components are now removed gracefully when loading a saved game, making it possible to remove a mod from a saved game and continue playing. [*][modding] Made the Leader part more general and functional. Use it to generate a creature with companions. [*][modding] MinEvents now support registration with prioritized execution and optional serialization. [*][modding] Any class can now register for a MinEvent by implementing the IEventHandler interface. [*][modding] Event handlers now use event registrars to handle both registration and unregistration with a single method implementation. [*][modding] Some events are now sent and can be listened for on the global game level, such as AfterPlayerBodyChangeEvent. [*][modding] Added ModSingletonEvent, ModPooledEvent and IModEventHandler, which allow creating modded events with native performance. See XML docs for examples. [*][modding] Object instances can now tokenize themselves for the serializer by implementing the ITokenized interface. [*][modding] IParts can now define a priority which determines their order within the parent object's list. This has an effect on the orders of event processing and serialization. [*][modding] Inert parts with no functionality, such as those gained from some skills, can now define a skip priority that excludes them from event processing, for a minor performance benefit. [*][modding] Ported blueprint builders to be IObjectBuilders, which are singletons that can process many game objects without creating garbage or polluting the object's parts. [*][modding] Text variable replacers, such as "=verb:shloop=" or "=player.waterRitualLiquid|capitalize=", are now moddable by decorating a class and method with the related attributes. [*][modding] Complex and/or custom text variable operations can now use the Text.StartReplace() builder to do every replacement in a single pass. [*][modding] Abilities can now set IsWorldMapUsable to allow activation on the world map. [*][modding] The basic fields of effects are now manually serialized. It's no longer necessary to call the base Write method. [*][modding] Game state singletons can now handle any embark events that occur after their creation. [*][modding] An error is now generated when a serialized type falls through to the deprecated binary formatter. [*][debug] Added a 'show attitude' action to creatures when debug information on object internals is enabled. [*][debug] Added several creature modifier wishes: fungusfriend:*, qudzusymbiote:*, slimewalker:*, slimespitter:*, kindlethumbed:*, firethumbed:*, convert:*, mechanical:*. [/list]