Shogun Exodus Devlog #13

Update #101 for Shogun Exodus introduces a centralized system for item conditions and material inheritance, streamlining how objects degrade over time. The new ItemConditions service replaces legacy rot and rust data with a unified framework, allowing items and placeables to dynamically inherit states based on their material properties and creation timestamps. This backend migration moves condition metadata into a shared JSON structure, ensuring that environmental effects like rust and decay are applied consistently across all game objects.

Visual systems and UI components have been updated to support these changes, with the ItemVisuals system now compositing condition overlays dynamically rather than relying on hardcoded fields. These improvements affect various gameplay elements, including food bowls, storage components, and placed items, which now query active conditions through the new service. Technical documentation regarding the condition JSON and material inheritance logic has also been added to assist with further development and modding.


Raw Patch Notes

UPDATE 2026-05-18 #101 - Item Conditions + Material Inheritance
- Added merged `Data/Items/condition_effects.json` support and a new `ItemConditions` autoload for reusable item/object conditions such as `rotten` and `rusty`.
- Migrated food rot and material rust timing into `conditions..change_after_days`, removed legacy `rot`/`rust` data fields and info rows, and made materialized items/placeables inherit material conditions from `material_id` using their own `created_game_hour`.
- Moved condition overlay metadata into `condition_effects.json`; `ItemVisuals` now composites active condition visuals from `ItemConditions` instead of hardcoded rot/rust fields.
- Updated item info, food bowls, placed items, carried item refresh, and placeable storage/rust hooks to query active conditions through the new service.
- Documented condition JSON, material inheritance, duplicate local/inherited conflict behavior, and the custom evaluator registration extension point.
- Files: `Data/Items/condition_effects.json`, `Data/Items/foods.json`, `Data/Items/materials.json`, `Data/Items/items.json`, `Data/Items/placeables.json`, `Autoload/GameDB.gd`, `Autoload/ItemConditions.gd`, `Autoload/ItemVisuals.gd`, `Scripts/ItemInfoPanel.gd`, `Scripts/FoodBowl.gd`, `Scripts/PlacedItem.gd`, `Scripts/Player.gd`, `Scripts/BasicWanderAI.gd`, `Scripts/Placeables/PlaceableBase.gd`, `Scripts/Placeables/Components/PlaceableStorageComponent.gd`, `Scenes/Base.tscn`, `project.godot`, `mod-guide.txt`, `current-game-setup.txt`, `update-log.txt`

*This is an automated post, using Python and LLMs to summarize game updates. Mistakes, while rare, may happen.

Posted in

Reply

Your email address will not be published. Required fields are marked *