Away from Home Fix bug that could prevent Parties from recognizing they're back homeRestart the game and steam to pick it up!
Kingdom Crier #43: Performance, System Demands, Roadmap
Kingdom Crier #43 is here alongside Version v0.30.3 which brings improvements to Performance and decreased strain on System Resources.
Also, let's update the Roadmap!
Changes
Shadows
Shadows have been the most expensive thing to render in Noble Fates for a while now - our far view distances and the use of multiple cascades meant that most of the world was rendered multiple times each frame. Given Unity's architecture this meant that up to 1/2 of the CPU cost and GPU cost of Rendering was spent on Shadows!
We've reworked High to cut CPU and GPU cost in half by dropping to a single cascade and better utilizing the Shadow resolution. We've also retuned Shadows to minimize rendering artifacts (banding) and maximize quality.
In addition, we've added 2 new Shadow Settings. Very High will yield increased quality at the cost of System Resources. Medium strikes the middle ground between High and Low.
Portraits
Live Portraits are one of the cornerstones of the Noble Fates experience, but they have always been very expensive - coming in at ~5ms per-frame for 10. With this patch, we've been able to cut the cost by 75% - down to ~1.25ms!
To do this, we switched from rendering custom picture in picture cameras attached to rigs that follow your mortals around to batched rendering using a command buffer to capture only what we need without all of the extra overhead of Unity's camera rendering system.
In addition, this armed us to do a consistency pass across Portraits, meaning the lighting in Live Portraits and Headshots (the static Mortal images used everywhere else) now have a consistent appearance, regardless of the current lighting conditions in the world!
Footstep Decals
Footstep Decals clocked in at ~5ms on the CPU - with nearly half of this time spent re-rendering any objects that could receive Footstep Decals into a special buffer to identify the areas of the screen that could receive them.
We discovered some tricks we can play on Unity's rendering architecture to plumb through the identifying information we needed without an extra rendering step and in a more accurate way.
This allowed us to cut the cost of Footsteps in half and resolve the sorting artifacts that would occur before. In addition, this made it free to add Footsteps to Carpets!
Frame Rate Limit
Frame Rate Limits stop the Rendering side of Unity from abusing System Resources when CPU demand is low.
In our game, this can happen often - the demands on your CPU drop dramatically when the simulation is paused or when your on any one of a number of Fullscreen UI pages that continue to render the world below them. This can cause the framerate to spike unexpectedly and can cause a much greater than expected demands on the GPU.
Recently, we included the ability to set a Frame Rate Limit even when VSync was enabled. Now, we've set a default of 60fps. If you find the game asking too much of your GPU, you can drop it down to 30fps which will greatly limit the strain on your GPU.
Reachability CPU Resources
Finally, the arrival of the Reachability CPU thread increased the CPU demand of the game. That thread was allowed to run as fast as possible, exchanging CPU time for nearly no delay in updates to the Pathing System and Reachability.
This improvement took us from the 30s or so of latency prior to the Conquest Update to .25s or so (a 100x improvement!), but doubled the CPU's workload.
The reality, however, is that the sweet spot is something like a 25% increase in CPU workload in exchange for ~1s of Pathing latency (still a 30x improvement!), so we've set the default there.
This should result in imperceptible lag in Pathing updates, but if you find yourself with the occasional Unreachable error just after punching through a Wall, adding a new Bridge, or Terraforming - try cranking this setting up.
Summary
All in all, you should see a reasonable reduction in System Demands, improved FPS, and increased Quality!
As always, there's more to do here, and there's still another pass or two planned during EA.
Patch Notes
Noble Fates 0.30.3.6 Released Minor Update Shadows Cut cost of Shadows by 50% on High Tune existing Settings for Quality Add Very High Setting Add Medium Setting
Portraits Cut cost of rendering Live Portraits down by 75% (~3-4ms with 10) Make lighting consistent across Portraits
Footstep Decals Cut cost of Rendering Footstep Decals in half Fix bugs with Z-sorting with Footstep Decals Now appear on Carpet
Frame Rate Limit Default to 60fps Set to 30fps if you want to limit System Resource usage further
Add Reachability CPU Resources Graphics Option Additional CPU Resources to dedicate to minimizing Reachability update latency Generally, 0% results in 10s of latency 25% in 1s 100% in .25s Default is 25%
Post Process Effects Cut cost of rendering Post Process Effects by 15%
NPC Conquest Raids NPC Conquest Raids are no longer all or nothing NPC Kingdoms can Retreat (using a higher threshold) and live on to fight another day NPC Kingdoms will still dissolve if everyone is Captured or Killed Decrease Wealth Budget for Conquest Raids Iterate on Dialogue
Send Item Concessions Halve the effects of Item Type Opinion on Cost/Benefit Add Inconvenience Premium Game Option Requesting high numbers of low value Items is now considered Inconvenient NPC Kingdoms will raise Influence Costs for Inconvenient Requests Tunable using "Game -> AI Kingdom Inconvenience Premium" Default to 0.5x in Easy Default to 1.5x in Hard
Preaching Fix bug that blocked Preaching if Target Jumped Fix bug that blocked Preaching if Preacher Jumped
Transporting Prisoners Renamed from Imprison to Transport Prisoner Status updated from Capturing to Transporting
Cells Allow Generic Rooms to be marked as Cells Allow Bunk Rooms to be marked as Cells
Vassals under Attack Add Petition that notifies you when a Vassal is under Attack Allows you to intervene and Negotiate for Peace on their behalf
Add Invert Layer Navigation Control Option Add "Controls -> Invert Layer Navigation" to Invert Layer Navigation
Heavy Is The Crown Fix bug that allowed turning a Mortal into a Baby
Mercenaries Fix bugs with Ownership and Permission when a Merc arrives while you're with an Envoy
Localization Add Auto translated versions of most new strings Restart the game and steam to pick it up!
Experimental
Updates like these arrive on the Experimental Branch first.
If you have the stomach for brief bouts of instability and want to help us out - switch to (or stay in) the Experimental Beta on Steam and participate in discussions here or on discord.
Expect occasional issues - but know that we appreciate you helping us make the game better!
Roadmap Update!
Let's take a moment to update the Roadmap and cross off a few boxes!
These days, there are 3 types of updates for Noble Fates - Hotfix Updates that address bugs and issues (including those that are listed on the Backlog and those that you Report in-game); Minor Updates that focus on reworking or expanding existing systems and filling them with additional content; and Feature Updates that add new features to the game expanding the overall breadth of what the game has to offer.
NOTE: We've replaced Content Updates with Minor Updates to better encompass the work that is being done to rework and expand on existing Systems during the march to 1.0.
Priority Progress
Progress against the Priority Fixes that we outlined in Fall 2024 We launched the Conquest Update that included expansions to Diplomacy, a number of Strategic Options, Ballistas, Save Compatibility, and also improved Reachability detection. Then we tackled Hauling and Performance with targeted updates.
Notable Changes
60 Crash Fixes - bringing total to 310+!
Save Migration Added Save Compatibility for future Updates
NPC Rulers Added Familiarity How familiar they are with your Ruler Added Influence How much influence your Ruler can leverage Added Diplomacy Options for Player Send Envoy Declare War Offer Peace Offer/Request/Sever/Break Allegiance Request Support Added Negotiations Earn and Spend Influence via Concessions Added Surrendering Surrender when Defeated during Raid Added Judgment Moment Decide the Surrendered Ruler's Fate
Diplomatic Relationships Introduced Vassals and Overlords
Overworld Added Might Tracking Derived from Kingdom Strength + Allies Added History Added Territory System to Overworld
Cloaks Introduced 4 Tiers of Craftable Cloaks
Mortals Improved Mortal Visuals
Crafting Rebalanced Crafting
Pathing Threaded Reachability Dropped Reachability latency from ~30s to ~1s
Fortresses Used to seed NPC bases from Player bases
Fog of War Improved the appearance and performance of Fog of War
NPC Kingdoms Simulate Wealth
Mercenaries Added Mercenaries
Petitions Iterated on Frequency Added Coin Rewards for Allies
Fire Decreased rate of Spread Improved Fire Fighting
Mercenaries Added Mercenaries
Kingdom Size Excluded Prisoners and Mercenaries
Babies No longer targeted by Non-Conquest Enemies
Escapee Moment Improved Flow
Relaxation Improved self preservation Improved behavior on Enemy Maps
Current Priorities
Some new entries here - including Fortress Mod support, Savable Mortal Presets, and allowing Buffs to exceed Skill Caps. We think these changes will better round out the whole experience as we head towards 1.0.
Feature Updates
Finally, we have the Feature Updates. As a reminder, 8 of these will arrive during Early Access. 7 have landed so far. The most recent was Feature Update 7.
Our biggest update to date, Noble Fates: Conquest greatly expanded on the mid to late game introducing the ability to Conquer your Island via Diplomacy or Warfare.
Feature Update #8 Status Update: In Progress
The 8th Feature Update is in progress, and we're excited to share more details soon.
Early Access Status
We're around 85% of the way through what we aim to accomplish with Early Access. Current estimates have us at 12 months or so from 1.0 with Major Update #8 landing somewhere in the middle.
We're in good shape for landing 1.0, due to your continued support. As always, you have our sincere gratitude!
Post 1.0 Plans
We plan to support the game with a series of Hotfixes and Minor Updates that ensure the game is well balanced, performs well, and has consistent usability.
From there, the game could see subsequent Major Updates in one form or another depending on where things sit when the dust settles.
Community Corner
A few shots from the DIscord over the past few weeks...
I Catapulted Myself - by killabi
jimg's latest Mountain Base - this time he's building upwards!
Kideya's Tavern in progress!
Discord
Join the Official Discord to participate in Development!
Reviews
If you like the game, please consider leaving a Review. These can help players decide that Noble Fates is worthy of their attention.
Thanks for reading and thanks for playing! The Noble Fates Team
Noble Fates 0.30.2.8 Released
Hotfix Crash Fix Fix for crash with Hauling
Storage v2 Restore the ability to issue Store Orders by Right Clicking an ItemRestart the game and steam to pick it up!
Kingdom Crier #42 is here alongside Version v0.30.2 which brings Storage v2, Optimizations, and other quality of life improvements.
Changes
Storage v2
Storage has been reworked to be Item centric instead of Storage Slot centric.
Previously, Store Commands were issued only when the Storage system had reserved a Storage Slot for it. This meant that if you had insufficient storage, the Item would not get a Store Command. In addition, in the late game, the latency of processing storage meant that it could take 30s or so for the system to try to reserve Storage Slots, meaning that it wasn't clear if you were out of Space or if the Item was awaiting a Storage Slot reservation!
To solve this, we've flipped the role of Store Commands - every Item that belongs to your Kingdom and is not yet Stored automatically gets a Store Command. The Command is marked as Pending when the Item has not yet reserved a Storage Slot, and it is marked as Blocked when you have Insufficient Storage for it. This means you can check the status of any loose Item in the world by clicking on it (and prioritize it), even if it has not yet been evaluated.
In addition, we added a high level Storage Status icon when you're at home next to the Food Remaining Status Icon. It shows the percentage of Storage Slots in your Kingdom that are not used or reserved and changes color when there's a Warning or a Problem. Hovering over the Icon shows the breakdown of Storage Slots as well as counts for any non-Junk Item types that have Insufficient Storage. We've added the same stats to Storage Props and Stockpiles to allow you to check the status for individual Storage areas by clicking on them (or double clicking in the case of Shelves).
Finally, we took this opportunity to revisit Hauling prioritization trying to better find the balance between distance traveled and storage priority.
It's worth noting is that you will see more Store commands than you did previously. Any loose, unstored Item or Stack will have one - and Stacks that are destined to be merged will have multiple (one for each separate Stack to be merged in). Generally, I kick on the Prioritize Toggle on the Jobs screen when Store Commands are above 150 or so and let it run until they're back under that threshold.
NPC Raid Tweaks
Conquest launched with AI Kingdoms tuned heavily towards self preservation when interacting with the player. This meant that they wouldn't dispatch Raiding parties to attack you when at War if they didn't think they were stronger than you. Overall, this meant there was a large decrease in the number of incoming Raids, even if you were involved in multiple Wars.
Now, NPC Kingdoms will be more aggressive towards the player when at War - keeping you on your toes and spreading themselves thin at times to open up valuable opportunities for counter attack!
Optimizations
We've dedicated a few days to Optimizations over the last few weeks, increasing the baseline Framerate for mid and late stage Kingdoms.
As always, there's more to do here, but this should help!
Patch Notes
Noble Fates 0.30.2.7 Released Minor Version Crash Fixes Fix for crash with Envoys Fix for crash with Storage Settings Fix for crash with the Bulk Cut Tool Fix for crash when a Ruler Dies Fix for Crash with Moving items Fix for crash with Mods
Storage v2 All Items that need to be Stored now have a Store Command Can be soft-blocked with Pending while waiting for Storage Assignment Will be hard-blocked when there is Insufficient Storage This means, generally, you will see more Store Commands, as each loose stack gets their own even if they will eventually merge into a larger stack when stored Add Storage Remaining UI Lists Free Space, Slots, Used, Reserved, Remaining, and Insufficient Add Storage Remaining to Storage UI Lists Slots, Used, Reserved, Remaining, Free Space for selected storage Add Storage Icons Visibility Category Shows Error Icons over Items when there is Insufficient Storage for them at home Improve Hauling Efficiency Fix for Items getting stuck in walls when dropped
Enemy Kingdoms Are now more likely to Raid you when at War if they do not like you Are now less likely to Offer Peace to the Player if there is a better option Fix bug that decreased raid frequency when introducing new tech
Optimizations Greatly Reduce Cost to calculate Success (up to 10ms) Drop bad Corner Post Calculations (up to 3ms) Character Optimizations (up to 1ms) Pathing Optimizations (up to .25ms)
Terrain Gatherables (Rocks, Logs, etc.) Are now shown if any part of them is visible on the current layer (Ex. Stalagmites) Can now be gathered when within another Gatherable or Tree Can now be gathered from nearby spaces in any Room they breach. Drop Stacks near Gatherer when Gathered
Returning Home Fix bug that could cause you to deduct from your own stacks back home when bringing stacks back
Assassinate Petitions Fix bug that marked the Petition as a Success even if a target Escaped Greatly increase the Damage threshold before they try to Escape
Incoming Catapult Raids Improve Raider behavior when their Catapult has been destroyed
Outgoing Raids Improve initial Defender placement
Party Animals Parties that leave while you're away now take their Animals with them Abandoned Wolves will now leave the map
Gathered Fruit Drop Stacks near Gatherer when Gathered
Projectiles Now properly attach to the Prop not the Prop Accent when hitting an Accent This fixes a bug that prevented collection
Wants Clean up Wants for Mortals who die while Away
Ballista Bolts No longer light on Fire because they cannot Burn
Stalagmites Decrease Quantity of Stone yielded by Stalagmites
Fog of War Tweak Appearance
Petitions Decrease frequency of Petitions
Ignored Item Icons Are now Optional (Ignored Icons under Visibility) Are now disabled by default
Foliage Can now be gathered when inside of a Terrain Gatherable (Rock or Log) Drop Stacks near Logger when Cut
Footsteps Hide footsteps within hidden spaces
Corpses Clear Storage Command when set to be Buried
Debris Fix rendering bug with large Debris blobs on Load
Terrain Gatherables Fix bug that prevented rendering
Fortresses Fix bug with Beauty Bogs that caused the storage room not to be used
NPC Kingdoms Tweak the amount of Coins and Items they keep on hand
Fog of War Fix Fog of War when you return to a Kingdom that you previously RaidedRestart the game and steam to pick it up!
Prior Minor Update (v0.30.1)
We didn't post a Kingdom Crier with the launch of v0.30.1, the last Minor Update, so we wanted to include those notes here in-case you missed them.
That update focused on improving NPC defenses, adding additional Fortresses, and revamping the Fog of War for clarity and performance.
Patch Notes
Noble Fates 0.30.1.2 Released! Minor Update Crash Fixes Fix for crash when Embarking Fix for crash from World Sim with Mod Races Fix for crash from FX Fix for crash with Mercenaries Fix for crash with Status Effects
NPC Raid Defense Iteration on Defensive Strategies Improve handling of Caves Improve handling of Procedural Storage
Away from Home Do not relax in Home Areas of Enemies Do not Collect Projectiles on other Maps Do not Clean Debris on other Maps
Declaring War Do not relax in Home Areas of the Target Do not Study using Books belonging to the Target Do not Train using Dummies belonging to the Target
Fortresses Add support for Stockpiles Only include usable Farms Track Map Source Improve handling of unowned Caves Improve placement of Procedural Storage buildings Add New Player Fortresses (9 total!) Add Carbhunt Pass Add Chillland - thanks Papszi! Add Cupmaw Hollows - thanks JimG! Add Inaccessible Hill Add Mountain Island - thanks Mathew W! Add Nevernose View (3 variants) - thanks JimG! Add Stairquest Forest - thanks flimss!
Fog of War Replace FX Improve performance dramatically Show Roof Vents Unreachable Try to use a nearby position when told to Go To an Unreachable position inside of Fog of War
Raids Withdraw if the War ends mid-raid
World Map Improve Map Borders
Item Details Window Hide redundant Owner information
Pathing Lines Now draw behind of Prop Blueprints
Room Detection Fix for bug that could cause bogus Rooms on stairways
Prop Selection Only add Props belonging to the same Faction when Multiselecting
Fight Moment Attacker must Hate Victim Decrease chance
Outgoing Raids Fix bug that prevents Outgoing Raids from entering home when Incoming Raids are disabled
Experimental
Updates like these arrive on the Experimental Branch first.
If you have the stomach for brief bouts of instability and want to help us out - switch to (or stay in) the Experimental Beta on Steam and participate in discussions here or on discord.
Expect occasional issues - but know that we appreciate you helping us make the game better!
Community Corner
This update's Community Corner features Fortresses submitted by players like you!
Nevernose View from JimG!
Stairquest Forest from flimss!
Mountain Island from Mathew W!
Chillland from Papszi!
Discord
Join the Official Discord to participate in Development!
Reviews
If you like the game, please consider leaving a Review. These can help players decide that Noble Fates is worthy of their attention.
Thanks for reading and thanks for playing! The Noble Fates Team
Noble Fates 0.30.1.5 Released!
Hotfix Player Parties Fix bug that could prevent Player Parties from returning home *thanks for the report*
Hauling Improve hauling task prioritization
Ballista Fix colorixation slots *thanks for the report*Restart the game and steam to pick it up!
Noble Fates 0.30.1.4 Released!
Hotfix Crash Fixes Fix for crash with Raids Fix for crash with Fire FightingRestart the game and steam to pick it up!
Noble Fates 0.30.1.3 Released!
Hotfix Crash Fix Fix for crash when RaidingRestart the game and steam to pick it up!
Noble Fates 0.30.1.2 Released!
Minor Update Crash Fixes Fix for crash when Embarking Fix for crash from World Sim with Mod Races Fix for crash from FX Fix for crash with Mercenaries Fix for crash with Status Effects
NPC Raid Defense Iteration on Defensive Strategies Improve handling of Caves Improve handling of Procedural Storage
Away from Home Do not relax in Home Areas of Enemies Do not Collect Projectiles on other Maps Do not Clean Debris on other Maps
Declaring War Do not relax in Home Areas of the Target Do not Study using Books belonging to the Target Do not Train using Dummies belonging to the Target
Fortresses Add support for Stockpiles Only include usable Farms Track Map Source Improve handling of unowned Caves Improve placement of Procedural Storage buildings Add New Player Fortresses (9 total!) Add Carbhunt Pass Add Chillland - thanks Papszi! Add Cupmaw Hollows - thanks JimG! Add Inaccessible Hill Add Mountain Island - thanks Mathew W! Add Nevernose View (3 variants) - thanks JimG! Add Stairquest Forest - thanks flimss!
Fog of War Replace FX Improve performance dramatically Show Roof Vents Unreachable Try to use a nearby position when told to Go To an Unreachable position inside of Fog of War
Raids Withdraw if the War ends mid-raid
World Map Improve Map Borders
Item Details Window Hide redundant Owner information
Pathing Lines Now draw behind of Prop Blueprints
Room Detection Fix for bug that could cause bogus Rooms on stairways
Prop Selection Only add Props belonging to the same Faction when Multiselecting
Fight Moment Attacker must Hate Victim Decrease chance
Outgoing Raids Fix bug that prevents Outgoing Raids from entering home when Incoming Raids are disabledRestart the game and steam to pick it up!
Noble Fates 0.30.0.33 Released!
Hotfix GPU Usage Allow VSync and Max Framerate to be used together to limit GPU Usage When used together, VSync will happen every X frames (up to 4) to Cap Framerate Capped Framerates limit high GPU Usage from inconsistent CPU frame times
Mining Improve Mining back to back blocks underground
Graphics Settings Add option for Main Menu Simulation Replaces Main Menu Simulation with a Static Screen when Disabled
Main Menu Improve Text readability Improve Loading Screen VisualsRestart the game and steam to pick it up!
Noble Fates 0.30.0.32 Released!
Hotfix Crash Fixes Fix for Crashes when attacking NPC bases with Catapults Fix for Crashes with Escapee MomentRestart the game and steam to pick it up!