Skip to content

Releases: TheCodingDad-TisonK/FS25_RandomWorldEvents

v2.1.6.3 — Keybinding Hotfix

23 May 06:57
3c4f92b

Choose a tag to compare

⚠️ ACTION REQUIRED: You must now assign your own keybindings

All default keybindings have been removed to prevent conflicts with other mods and with FS25 vanilla controls.

To set up your keys:

  1. Launch the game
  2. Go to Settings → Controls → Mods
  3. Find FS25 Random World Events in the list
  4. Assign a key to each action you want to use

This is a one-time setup — your bindings are saved automatically.


What changed

Action Old default New default
Toggle HUD F3 (unbound)
Toggle Settings Shift+O (unbound)

Shift+O conflicted with FS25_SoilFertilizer (same default key). F3 may also conflict with FS25 vanilla controls depending on your setup.

Save compatibility

✅ No changes to save data — existing saves load normally.

v2.1.6.2

22 May 07:09
d105ba6

Choose a tag to compare

  • Fix: Active events and cooldowns now survive save/load — remaining time is saved as an offset and restored correctly on reload
  • i18n: Full German translation (98 strings) by @Phasen-kasper
  • i18n: Danish translation (102 strings) by @DJWestDK

v2.1.6.1

13 May 13:34
71f54ee

Choose a tag to compare

What's New & Fixed

  • HUD overhaul — the event HUD is now drawn directly by the mod, more stable across maps and resolutions. HUD position saves when the game saves.
  • Keybinding persistence — keybindings now correctly carry over between sessions. Version number and key hint in the HUD update dynamically.
  • Cross-mod bridge — subsystem API lets other mods (like FarmTablet) hook into RWE events.
  • Animal event fix — animal events no longer fail silently when farm ID can't be resolved.
  • Startup crash fix — input hooks are now correctly registered on load.
  • Translations — all HUD text is fully translated; no more hardcoded English strings.
  • Settings integration fixes — various stability improvements to the settings panel.

Notes

No save migration needed. Existing saves load normally.

v2.1.6.0 - Hotfix

12 May 23:07
b0368d1

Choose a tag to compare

  • Fixed issue with farmId call that was incorrect and caused error
  • Fixed issue where HUD overlay would not save its position
  • Reworked the settings from GUI into custom rendered panel

Please note that you need to rebind both keybindings....

v2.1.4.0

07 May 17:44
ea55d02

Choose a tag to compare

What's new in 2.1.4.0

Cross-mod integration bridge — Other mods (FarmTablet, Market Dynamics, Seasonal Crop Stress, Soil Fertilizer) can now detect RWE via the standard g_currentMission.randomWorldEvents property.

Subsystem API architecture — All category APIs (Economic, Field, Special, Vehicle, Wildlife) share a common RWEBaseAPI mixin with standardised start/end callbacks and tick handlers. Makes it easier for companion mods to respond to specific event types.

Event module improvements — Ambient messages, midpoint callbacks, and weighted random selection stabilised across all event categories.

No save migration required.

v2.1.3.0 — Localisation Fix & RMB Fix

01 Apr 19:55
450864c

Choose a tag to compare

Release Notes

🌍 Localization Fix — Event HUD Fully Translated

The World Events HUD overlay previously displayed hardcoded English text, regardless of the selected game language. This has now been resolved.

All HUD elements — including titles, status indicators, cooldown/timer labels, and hints — will correctly appear in your chosen language.

Supported languages:
German, French, Polish, Spanish, Italian, Czech, Brazilian Portuguese, Ukrainian, Russian


🖱️ RMB Interaction Fix — HUD Editing

Thanks to @sava4903-coder for providing the necessary fix 💯

Right Mouse Button (RMB) interaction now works correctly, allowing you to properly move and edit the HUD.
This issue mainly affected setups without additional HUD-related mods.


📦 Update — Fixed ZIP Package

The download archive has been updated to resolve an issue where the previous version caused console error spam. (#8)


No gameplay changes. Save files remain fully compatible

v2.1.2.0 — Hotfix

29 Mar 08:40
82512fd

Choose a tag to compare

Bug Fix

  • Fixed an issue where cash-deduction wildlife events (vet visit, stampede
    damage) had no effect on certain modded maps. On maps like Judith Plains
    Montana 4X, the player farm ID could not be read at event trigger time,
    causing the money transaction to be silently discarded by the game with
    no error or feedback. Money will now be correctly deducted as intended.

Affected events

  • Emergency Veterinary Visit
  • Wild Animal Stampede
  • Animal product bonus/malus tick payments

Notes

This does not affect vanilla maps or maps where the issue was not present.
No save game changes required — just replace the mod zip.

v2.1.1.0 — FarmTablet Integration & HUD Persistence Fix

27 Mar 08:59

Choose a tag to compare

What's New in v2.1.1.0

FarmTablet Integration

Added mission.randomWorldEvents cross-mod bridge. The new Random World Events app in FS25_FarmTablet v2.1.4.0 shows enabled state, frequency/intensity settings, the currently active event, and total events triggered.

Bug Fixes

  • HUD layout persistence — position and size are now saved on game save, not only when the session ends. Reloading a save no longer resets the HUD position.
  • Vehicle damageapplyVehicleDamage now uses a spec_wearable fallback and removes a dead getDamageVisualization call that caused log warnings.

Full Changelog since v2.0.0.6

  • feat v2.1.0.0 — custom HUD, grouped settings UX, effect delivery system
  • feat Add mission.randomWorldEvents cross-mod bridge for FarmTablet
  • fix Save HUD layout on game save, not only on session end
  • fix applyVehicleDamage — spec_wearable fallback, remove dead code
  • art FS25 textured icon background; compress to DXT1
  • chore Bump version to 2.1.1.0

v2.1.0.0 — Custom HUD & Settings UX

21 Mar 09:09
4e7187b

Choose a tag to compare

What's New

Custom Event HUD

  • Drag-and-resize overlay panel showing the active event, category badge (ECO / VEH / FLD / WLD / SPL), time remaining, and cooldown countdown
  • Flash notification queue with category-colored accent bar — pops up on every event trigger
  • F3 toggles HUD visibility in-game
  • HUD position and size persist per-savegame

Settings Page — Full Redesign

  • Clean grouped layout with subsection headers: Event Timing, Notifications & HUD, Event Categories, Physics Override, Debug
  • Cooldown options now show human-readable labels (5 min, 10 min… 240 min)
  • New Show HUD Panel and HUD Scale controls (0.6x–1.8x, applied live)

Bug Fixes

  • Fixed settings page crash when hovering controls (FS25 hover code called setImageColor on plain TextElement — now stubbed)
  • Fixed Physics/Debug section header overlap and gray box artifact from previous BitmapElement wrapper approach
  • Fixed F3 doing nothing — parameter shift in Utils.appendedFunction hook caused all key checks to fail
  • Fixed all 5 API subsystem files missing from deployed zip (api/ was absent from build script)
  • Downgraded spurious Vehicle.addDamageAmount warning to info — not a real error in FS25 v1.17

Internal

  • notifyEvent() unified notification router (HUD flash + ingame notification)
  • FSBaseMission.draw and .mouseEvent hooks wired for HUD render and drag-resize
  • showHUD / hudScale settings persisted to savegame XML

v2.0.0.6 — Subsystem APIs + bug fixes

05 Mar 05:35

Choose a tag to compare

What's New

Subsystem APIs (api/)

Five new public Lua globals for third-party mod integration:

Global Category Extra Hook
RWEEconomicAPI Economic setPriceModifier(cropType, mult, durMin)
RWEFieldAPI Field modifyYield(fieldId, delta)
RWEWildlifeAPI Wildlife registerAnimalEffect(name, onStart, onEnd)
RWEVehicleAPI Vehicle applyVehicleModifier(vehicle|nil, modifierTable)
RWESpecialAPI Special registerSpecialTrigger(name, condition, func, opts?)

All five share a common surface: registerEvent, getEventList, triggerEvent, isEventActive, getActiveEvent, registerTickHandler, getVersion, onEventStart, onEventEnd.

Third-party integration pattern:
```lua
-- In your mod's onMissionLoaded() or equivalent:
if RWEEconomicAPI and RWEEconomicAPI.registerEvent then
RWEEconomicAPI:registerEvent({
name = "myMod_corn_subsidy",
minIntensity = 1,
func = function(intensity)
g_currentMission:addMoney(intensity * 1000, ...)
return "Corn subsidy! +" .. intensity * 1000 .. "€"
end,
})
end
```

Bug Fixes

  • EffectHooksgetPricePerLiter hook now captures fillTypeIndex and applies per-crop price modifiers from RWEEconomicAPI:setPriceModifier(); expired entries are lazily pruned
  • EconomicAPIcustomPriceModifiers are automatically cleared on event end so indefinite modifiers don't leak past their event
  • Settings UI — reopening ESC → Settings no longer showed stale values; updateSettingsUI now runs on every open, not just the first
  • PhysicsUtilsshowPhysicsInfo setting now actually logs; previously required debugMode to also be enabled before any output appeared
  • Coresubsystems table is now per-instance (isolated across mission reloads)
  • All APIsregisterTickHandler no longer double-registers handlers; deferred flush queue is cleared after drain; intensity clamped to integer

Core additions

  • g_RandomWorldEvents:registerSubsystem(name, apiTable) — called automatically by each API
  • g_RandomWorldEvents:getSubsystem(name) — query a subsystem by category name