| Description |
Fresh adds shelf life to your products - crops age over time and will spoil if not sold or used!
Your harvested crops, processed goods, and baled forage now have realistic shelf lives - leafy vegetables spoil quickly, while grains and canned products last much longer. Customize shelf lives via the Fresh Menu!
Fresh Menu (Right Shift+F):
- Overview: see all perishables with their oldest ages
- Product Details: per-storage age breakdown with freshness buckets
- Storage Details: per-product breakdown with age distribution and category filter
- Loss Statistics: track what you've lost and when
- Shelf Life: effective shelf life per storage class
- Settings: customize shelf lives and storage class benefits
Storage Classes:
- Storages auto-classified: Exposed, Sheltered, Indoor, Cooled, Frozen, Disabled
- Better storage = slower spoilage. Override per-storage in Settings
- Storage class icons in HUD, tables, and loss log
Features:
- Difficulty presets (Very Easy/Easy/Normal/Hard) or Custom per-product control
- Configure any product (basegame, DLCs, maps/mods)
- External config to override shelf life for any crop (update-safe, no mod edits)
- Configurable warning threshold (6h/12h/24h/48h/72h)
- Age distribution bars (color-coded freshness)
- 100+ products with realistic shelf lives, 130+ non-expiring pre-configured
- Vehicles, bales, silos, productions, husbandries tracked
- Oldest items retrieved first (FIFO), daily loss notifications
- Multiplayer support (server-authoritative)
Documentation: https://github.com/rittermod/FS25_Fresh
Changelog:
1.0.1.0:
- Added optional external config (modSettings/FS25_Fresh/customDefaults.xml) to add or override shelf life, storage class and aging multipliers for any crop - including custom map/mod crops - without editing the mod (update-safe, re-read each launch, server-side in multiplayer)
- Added user guide documentation for the custom defaults config file (setup, precedence, schema, multiplayer)
- Added Ukrainian localization - contributed by sava4903-coder
- Improved stability: a rare error while aging or expiring one item no longer interrupts the rest of the hourly/daily update
- Fixed near-empty containers (under 1 L, e.g. a combine grain-tank leftover) showing as "0 L" rows in the inventory menus and skewing the displayed expiry
- Fixed inventory and loss-statistics amounts ignoring locale number formatting - thousands separators now display correctly for non-English languages (e.g. 1.234 L)
1.0.0.2:
- Fixed game crash/lock when mounting horses on Hof Bergmann map with horse addon pack
1.0.0.1:
- Fixed spurious error log "Failed to register RM_FRESH_MENU action" caused by benign duplicate input registration
1.0.0.0:
- Added Storage Details tab - per-product breakdown with age distribution, storage class, expiry times, and 4-category filter with shop icons
- Added Product Details tab - per-storage breakdown with age distribution across Fresh/Good/Warning/Critical buckets
- Added storage class icons to HUD, expiring soon table, and loss log with thick stroke variants for small-size legibility
- Added custom menu icons for all 6 tabs (Lucide icons)
- Added German localization - contributed by Roleplayboy
- Updated all translations (French, Italian, Swedish, German) to cover new detail tabs and storage features
- Improved settings UX: master Enable switch greys out all other settings, dependency toggles hide/show related controls and sub-tabs
- Improved menu polish: keyboard/controller navigation, table spacing, naming consistency
- Localized all remaining hardcoded English strings
- Rebalanced frozen multiplier from 0.05 to 0.10 (20x to 10x life extension)
- Adjusted shelf lives and storage class limits for 15+ products to better reflect real-world storage behavior
- Fixed dedicated server not recognizing third-party mod products on startup
- Fixed client HUD not showing freshness for products configured only via user settings
- Fixed incorrect maxBenefitClass for Lettuce, Potatoes, Sugarcane, Salmon/Trout Fry, and Butter
- Fixed storage list showing empty product entries for containers with zero fill level
Full changelog at https://github.com/rittermod/FS25_Fresh
|