Fresh / Perishable products

  • Fresh / Perishable products
  • Fresh / Perishable products
  • Fresh / Perishable products
  • Fresh / Perishable products
  • Fresh / Perishable products
  • Fresh / Perishable products
rittermod
180 subscribers
V1.0.0.0
11 415

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. Leave produce sitting too long and it will expire and be lost! Customize shelf lives via the Fresh Menu.

Usage
=====
Install the mod and play normally. Open Fresh Menu with Right Shift+F to view inventory, stats, and settings. Check expiry by looking at any vehicle, bale, or storage. Customize shelf lives in Settings if defaults don't suit your playstyle.


User guide: https://rittermod.github.io/FS25_Fresh/
Found a bug? Open an issue at https://github.com/RitterMod/FS25_Fresh/issues

Fresh Menu (Right Shift+F)
==========================
- Inventory Overview: see all perishables at a glance 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
- Each class applies an aging speed multiplier - better storage means slower spoilage
- Override storage class per-storage via Settings
- Set per-product max benefit class to cap how much a storage class can help

Visual Feedback
===============
- Age distribution bars when near placeables, vehicles, and bales (color-coded freshness)
- Storage class icons in HUD, expiring soon table, and loss log
- Expiry countdown on vehicles and bales
- Expiring amount and time remaining per fill type on placeables and husbandries
- Warning highlight when products near expiration (configurable threshold)
- Notification when products expire and are removed

Perishable Products
===================
- 100+ products with realistic shelf lives (perishable produce spoils in days, grains last months, canned products up to 3 years)
- 130+ non-expiring products pre-configured
- 4 bale types: Fresh Grass (days), Hay (18 months), Straw (24 months), Silage (12 months)
- Wrapped grass bales begin aging after fermentation completes

Settings & Customization
========================
- Difficulty presets (Very Easy/Easy/Normal/Hard) or Custom for individual control
- Configure shelf life for any product (basegame, DLCs, maps/mods)
- Enable/disable expiration globally or per-product
- Configurable warning threshold (6h/12h/24h/48h/72h)
- Reset all settings to defaults with one click
- Per-savegame settings
- Multiplayer: host/admin controls settings for all players

Loss Tracking
=============
- All expirations recorded in loss log
- Daily notifications summarizing your farm's losses
- View loss history in menu

Tracking Locations
==================
- Vehicles: trailers, tankers, combine tanks, etc.
- Bales and pallets: on the ground and in storage buildings
- Placeables: silos, productions, husbandries, object storage

How It Works
============
- Each harvest or production run is tracked as a separate batch with its own age
- Oldest items retrieved first from storage (FIFO)
- Expired products automatically removed
- Batch ages preserved during transfers between containers
- Multiplayer support (server-authoritative)
- Ages saved with your game

Limitations & Known Issues
==========================
- No loose item tracking (loose grass, grains, etc. on the ground)
- Silo extensions are tracked separately rather than as a shared pool

Fresh: Because hoarding should have consequences.

Source code and issue tracker: https://github.com/rittermod/FS25_Fresh

Server
Consoles
Changelog
4
  • - 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, removed "(preview)" labels
    - 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 incorrect maxBenefitClass for Lettuce, Potatoes, Sugarcane, Salmon/Trout Fry, and Butter
    - Fixed storage list showing empty product entries for containers with zero fill level
    - Fixed dedicated server not recognizing third-party mod products on startup
    - Fixed client HUD not showing freshness for products configured only via user settings

  • 0.10.0.0 (Beta - 2026-03-14):
    - Added storage classes: storages are auto-classified (Exposed/Sheltered/Indoor/Cooled/Frozen/Disabled) affecting aging speed — browse in new Storage tab, override per-storage, and cap per-product max benefit in Settings
    - Improved Shelf Life tab: shows effective shelf life across all storage classes in a table layout
    - Improved settings: consolidated into tabbed pages with per-product configuration
    - Added user guide documentation site
    - Fixed empty food troughs not being registered on load
    - Fixed storages list showing other farms' storages in multiplayer

  • 0.9.0.0 (Beta - 2026-02-10):
    - Added Shelf Life tab to Fresh Menu - list all perishable products with their active shelf life
    - Added difficulty presets (Very Easy/Easy/Normal/Hard/Custom) - adjust all shelf lives with a single setting
    - Reorganized Settings into tabbed pages: general settings, basegame products, and DLC & Mods products
    - Added "Reset to Defaults" button to restore all settings to mod defaults
    - Added fill type source detection - tooltips now show whether a product is from basegame, DLC, mod, or map
    - Expanded default configuration with 130+ non-expiring fill types (animals, wood, fuel, manufactured goods, etc.)
    - Added more expiration period options (4 months, 5 months, 1.5 years, 5 years)
    - Improved settings list by hiding irrelevant fill types (animals, cut crops, fuels, intermediates, etc.) - reduced visible list from 200+ to ~100 relevant products
    - Added French localization
    - Added Swedish localization

Credits
Comments
6