MIT license Buymeacoffee

RMROC451's Tweaks and Things

Please Read this ENTIRE README before continuing.

This is a mod for Railroader which is available on Steam.

This mod requires Railloader by Zamu.

Usage

  1. Download and install Railloader by Zamu from here: https://railroader.stelltis.ch/
    • Verify you have a Mods folder in the root of your railroader directory. If You do NOT have a Mods folder, you didn't complete this step successfully.
  2. Download the RMROC451.TweaksAndThings.x.x.zip from the Releases Page of this repo.
  3. There are 2 ways to install this mod.
    • ONLY DO ONE OF THE BELOW STEPS, NOT BOTH
    1. Open the zip folder, select the entire contents of the folder and drag the contents to the ROOT Railroader directory.
      • this should put a RMROC451.TweaksAndThings folder into the Mods folder created in step 1
    2. Drag the zip file onto Railloader.exe and have Railloader install the mod.
      • as with option 1, this will put a RMROC451.TweaksAndThings folder into the Mods folder created in step 1
    • If you DO NOT have the RMROC451.TweaksAndThings folder in the Mods folder after completing ONE of the above steps, you didn't complete the step successfully.
  4. Run the game and enjoy all of the tweaks and things!

Notes

  1. This mod currently supports Railroader version 2024.4.4. This mod may break in future updates. I will do my best to continue to update this mod.
  2. It is possible that the developers of Railroader will implement their own fix for this issue. At such time this mod will be deprecated and no longer maintained.
  3. As the saying goes, use mods at your own risk.

FAQ

What does this mod do?

PLEASE READ AS THE WAY THIS MOD FUNCTIONS HAS CHANGED FROM PRIOR VERSIONS

Basically, this mod has a couple zones of focus. Caboose tweaks and other QOL things. Some of those QOL things, I added the option for the cabeese to be required & charge you a "crew salary" to utilize, or pay a monetary penalty.

I was disappointed the vanilla cabeese were largely for show, didn't provide any real reason to have them except for role playing.

Enter Tweaks and Things.

QOL & Cabeese Modifications:

  • A: Car Level Updates:
    • A1: If a car is a participant in a disconnected air hose (currently uses the copy waybill icon)
    • A2: If a car's hand brake is set (currently uses the handbrake icon)
    • A3 (🟢 NEW v2.0.0): Oiling Level/Hotbox Indication : pie chart or 🔥 icon
      • A3a: On Rolling Stock: Indicates the car's oiling level, if oiling feature is enabled
      • A3b: On Locomotive: Indicates the worst oiling level of a car from the connected consist (see S1)
    • A4: Adds a "+" on cabeese tags when on a track span that reloads their crew hours load (see C)
    • A5 (🟢 NEW v2.0.0): Car Click Hotkey Modifiers
      • A5a: `alt left click` : toggle car hand brake and connect glad hands on both ends
      • A5b: `alt shift click` : toggle consists brakes and connect all glad hands
      • A5c: `ctrl alt click` : drop all brakes and connect all glad hands in the consist
      • A5d: `ctrl alt shift click` : same as above but will auto oil the entire consist!
  • B: Car Context Menu Updates
    • B1 (🔵 MODIFIED v2.0.0): Context Menu (right click car) Updates
      When right clicking on a car you get some new individual car options:
      • B1a: Bleed
        Dumps all of the air in the car's air system
      • B1b: Apply/Release Handbrake
        Toggles the individual car's handbrake
    • B2 (🟢 NEW v2.0.0): SHIFT Context Menu (right click car) Updates
      When right clicking on a car and holding SHIFT you get some new consist level options:
      • B2a: Bleed Consist
        Dumps all of the air in all the consist car air systems
      • B2b: Set/Release Consist Handbrakes
        If handbrakes are detected on, it knocks them all off.
        If no handbrakes are detected in the consist, it utilizes the RailRoader base game handbrake detection for when cuts of cars are spawned.
      • B2c: Air Up Consist
        Connects all gladhands and opens angle cocks for the consist.
  • C: Cabeese Modifications
    • C1: Adding `crew-hours` load to caboose type cars
      • C1a: Gives the cabeese a depletable resource that is used to simulate the crew that resided in the caboose.
      • C1b: When certain actions are utilized at a consist level, the depletion of this resource is used to simulate a crew's stamina for the day.
      • C1c: When a request to adjust the crew-hours below the remaining quantity, things start costing over time, if S1b is enabled (1.5x modifier).
      • C1d: This load/resource is utilized when S1b is enabled and for S1e integration.
      • C1e: See S1b1/S1b2/S1b3 for what this is used for.
    • C2 (🔵 MODIFIED v2.0.0): Proximity Detection
      Order of detection when requesting to adjust crew-hours for an action:
      • C2a: Car initiating the action is a caboose, if so use this caboose
      • C2b: Cabeese near the car that initiated the request:
        • C2a: Gather from consist of the requesting car.
        • C2b: Gather from OpsController.Shared.ClosestArea for cars that are in the same Area.
      • C2c: Sort the found cars by:
        • C2c1: Preference for cars with same crew-id as selected locomotive (engine controls, bottom left), still order by C2c2
        • C2c2: Distance from the requesting car, ascending (pick closest one)
  • D: Discord Webhooks
    • D1: Allows the console messages to post to a discord webhook. useful for those wanting to keep an eye on 24/7 hosted saves.
    • D2: Locomotive messages grab the locomotive `Ident.RoadNumber` and check the `CTC Panel Markers` if they exist. If found, they will use the red/green color and embed the locomotive as an image in the message. If no marker is found, it defaults to blue.
    • D3: Currently, One person per server should have this per discord webhook, otherwise you will get duplicate messages to the webhook.
    • D4: Multiple hooks: Allows for many different webhooks per client to be setup, and filtered to the `Ident.ReportingMark` so you can get messages to different hooks based on what save/server you are playing on.
    • D5: Customizable from the in-game Railloader settings, find RMROC451.TweaksAndThings (see S3)
  • M: Miscellaneous
    • M1 (🟢 NEW v2.0.0): Repair tracks now require cars to be waybilled, or they will not be serviced/overhauled.
      They will report on the company window's location section as 'No Work Order Assigned'.
    • M2: Engine Roster Tweaks
      • M2a (🟢 NEW v2.0.0): MU'd locomotives will automatically be hidden unless they are SELECTED or FAVORITED.
      • M2b: Fuel Display in Engine Roster
        Will add reamaing fuel indication to Engine Roster (with details in roster row tool tip (see S2c))
        • M2b1: MU'd locomotives fuel information will combine with MU primary (see S2c).
    • M3 (🟢 NEW v2.0.1): MU Adjacency Restriction Removal

      (USE AT OWN RISK)


      Engines no longer are required to be adjacent to eachother to contribute to MU. They can be dispersed throughout the train.
      The primary MU engine still acts as the main air reservoir, meaning train braking emits from that engine at this time.
    • M4 (🟢 NEW v2.0.0): `ctrl alt click` on a track in the map, sets the selected locomotives waypoint there when in waypoint mode.
      If you have mapenhancer with cars displayed, if you keycombo click on a car icon, it will set the auto couple attempt.
  • S: Settings
    • S1: Caboose Mods
      • S1a: Consist Oil Indication
        A caboose is required in the consist to report the lowest oil level in the consist in the locomotive's tag(see A3b) & roster entry(see M2).
      • S1b: Caboose Use / Enable End Gear Helper Cost
        • S1b1: Will cost 1 minute of AI Brake Crew & Caboose Crew time per car in the consist when the new inspector or shift context wheel buttons are utilized.
        • S1b2: 1.5x multiplier penalty to AI Brake Crew cost if no sufficiently crewed caboose nearby (see C2).
        • S1b3: Caboose starts reloading `Crew Hours` at any Team or Repair track (no waybill), after being stationary for 30 seconds.
        • S1b4: AutoOiler Update: Increases limit that crew will oiling a car from 75% -> 99%, also halves the time it takes (simulating crew from lead end and caboose handling half the train).
        • S1b5: AutoOiler Update: if S1b & S1d checked, when a caboose is present (see C2), the AutoOiler will repair hotboxes afer oiling them to 100%.
        • S1b6: AutoHotboxSpotter Update: decrease the random wait from 30 - 300 seconds to 15 - 30 seconds (Safety Is Everyone's Job)
        • S1b6: Costs from S1B1/S1B2: added to financials at end of day with an entry of AI Brake Crew.
      • S1c (🟢 NEW v2.0.0): Refill / Crew Hours Load Option
        Select whether you want to manually reload cabeese via:
        • S1c1: track method - (team/repair/passenger stop)
        • S1c2: daily caboose top off - refill to 8h at new day
      • S1d: AutoAI Requirement (AI Hotbox\Oiler Requires Caboose)
        A caboose is required in the consist to check for Hotboxes and perform Auto Oiler, if checked.
      • S1e (🟢 NEW v2.0.0): Safety First!
        On non-express timetabled freight consists, a caboose with some crew-hours (see C1) is required in the consist to increase AE max speed > 20 in ROAD/WAYPOINT modes.
    • S2: UI
      • S2a: Enable Tag Updates
        Allows all tag updates from A to display.
      • S2b (🟢 NEW v2.0.0): Debt Allowance
        Will allow interchange service and repair shops to still function when you are insolvent, at a 20% overdraft fee.
      • S2c: Engine Roster Fuel/Info
        • S2c1: Enable Fuel Display in Engine Roster
          Will add reamaing fuel indication to Engine Roster (with details in roster row tool tip).
          Select where to display:
          • S2c1a None/Off
          • S2c1b Engine Column
          • S2c1c Crew Column
          • S2c1d Status Column
        • S2c2: Always Visible?
          Always displayed, if you want it hidden and only shown when you care to see, uncheck this, and then you can press ALT for it to populate on the next UI refresh cycle.
    • S3: Webhooks
      • S3a: Webhook Enabled
        Will parse the console messages and transmit to a Discord webhook.
      • S3b: Reporting Mark
        Reporting mark of the company this Discord webhook applies to.
      • S3c: Webhook Url
        Url of Discord webhook to publish messages to.

Does this work in Multiplayer?

Yes, these are client side mods. Host doesn't need to have them.

What version of Railroader does this mod work with?

2024.6 -> Full Requirements

Special thanks and credit to Zamu for creating Railloader and for help with making the mod a bit more robust.

Description
Miscellaneous Railroader Updates
Readme MIT 644 KiB
Languages
C# 100%