Income Mod

  • Income Mod
  • Income Mod
  • Income Mod
  • Income Mod
tisonK
371 subscribers
V2.1.5.0
18 451

Converted from FS22_IncomeMod

Income Mod provides players with a simple, balanced way to receive passive income. Automatically earn money either hourly or daily, based on your chosen difficulty or a custom amount. Perfect for players who want steady cash flow without relying solely on missions or selling goods.

Features:
- Easy / Normal / Hard difficulty presets
- Custom income amount option
- In-game notifications
- Fully configurable via console commands or in the pause menu
- Settings saved automatically
- Works in singleplayer and multiplayer
- Lightweight and stable

Please be aware:
You need to have developer mode enabled in order for you to open the console.
This can be done in your FS game folder, then look for the "game.xml".
Change <development><controls> to "true"

Enjoy you farming experience with my Income Mod <3

=========================================================
Github: https://github.com/TheCodingDad-TisonK/FS25_IncomeMod
=========================================================
COPYRIGHT NOTICE:
All rights reserved. Unauthorized redistribution, copying,
or claiming this mod as your own is strictly prohibited.
Original author: TisonK
=========================================================

Server
Consoles
Changelog
14
  • Skip income payout during sleeping.

  • The Income HUD position, scale, and visibility were lost every time you reloaded your save. The HUD would snap back to its default position and reappear even if you had hidden it with the I key.

    What's Fixed:
    - HUD position and scale now save on every game save and when exiting the game
    - Hiding the HUD with the I key now persists across reloads

    No save migration needed.

  • Full changelog -> https://github.com/TheCodingDad-TisonK/FS25_IncomeMod/releases/tag/v2.1.3.0

  • - The income panel can now be moved and resized to fit wherever you want it on screen. Right-click the panel to enter edit mode, drag it to a new position, drag a corner handle to scale it up or down, then right-click again to lock it in place. Your layout is saved between sessions.
    - Colors updated to match FS25's native panel style (dark, clean,
    no green border)

    Toggle visibility still works the same way via the I key.

    No save migration needed.

  • [Hotfix v2.0.0.5 — fix multiplier option skipping states in UI]
    In UIHelper.createMultiOption, the cloned FS25 MultiTextOption widget
    could retain the template's numTexts rather than adopting the count from
    setTexts. Explicitly assign opt.numTexts = #options after setTexts to
    guarantee the correct cycle count for all callers (payMode=2, difficulty=3,
    multiplier=4).

    Also move opt:setState() to after layout:addElement() so any FS25-internal
    layout-pass re-init that might wipe element state has already completed
    before we set the initial selection.

    [Fix v2.0.0.5 — correct raiseCallback argument: element, not state index]
    GuiElement:raiseCallback calls onClickCallback(self.target, element) where
    element is the MultiTextOptionElement table. We were treating it as the
    integer state, causing incomeMultiplier to be set to a table and crashing
    setXMLInt with "Expected: Int, Actual: Table" on every click.

    [v2.1.0.0]
    Added four helpLines categories to modDesc.xml:
    - Income Mod — Overview (2 pages: intro, how payments work)
    - Income Mod — Settings (3 pages: basic, advanced, display/reset)
    - Income Mod — Tips & Tricks (2 pages: HUD/report, income tips)
    - About Income Mod (1 page: about + console commands)

    All 50 l10n keys translated into 10 languages (en/de/fr/pl/es/it/cz/br/uk/ru).

  • - Fixed `MoneyType` crash (income never paid)

  • - Fixed mod not loading due to wrong ZIP building inside the build.sh

  • - HUD toggle desync fix
    - Added missing showHUD field to the console settings
    - Added explicit override that calls updateDisplay() on every open
    - Removed stray double blank lines

  • - Replaced both notification calls (payment + startup) with the correct FS25 AP

  • * Added **seasonal income modifiers** (Spring 0.8x, Summer 1.0x, Autumn 1.2x, Winter 0.7x) with optional toggle in the settings UI
    * Added **selectable income multipliers** (1x / 2x / 5x / 10x) in settings UI and via `IncomeSetMultiplier` console command
    * Added **per-farm multiplayer support** — each active farm now earns independently
    * Added **income state persistence** — `lastHour` and `lastDay` saved to `_state.xml` to prevent missed or duplicate payments after reload
    * Added **payment history tracking** — `IncomeHistory` console command shows last 10 payments (day, hour, amount, seasonal modifier)
    * Added **next payment timer** — `IncomeNext` console command displays time remaining until the next payout
    * Added missing **`IncomeSetDebug` console command** for toggling debug mode
    * Fixed critical **multiplayer duplicate payment bug** by adding a server-only guard in `giveMoney()`
    * Fixed duplicate startup notification (was triggering from both IncomeManager and IncomeSystem)
    * Fixed global namespace pollution from `getTextSafe` (moved to `UIHelper.getText()` module method)
    * Fixed debug print leak in `UIHelper.lua`
    * Fixed incorrect startup tip text (now shows: `Type 'income'`)

  • - Rewrote entire code
    - Changed entire command list
    - Added new settings tab in the pause menu
    - Changed notification style
    - Optimized current code
    - Added support for: de, fr, pl, es, it, cz, br, uk, ru

  • - Fixed console error

  • [Critical Hotfix]
    - Updated settings save & load function*

    *In FS22 we store modSettings in user game path, in FS25 they want it to be stored in savegame folder.
    I was not aware of that, this is now fixed :)

Credits
Comments
21