All Tsw2 Internal Debug Commands & Settings, Latest Version.

Discussion in 'TSW General Discussion' started by dxltagxmma, Feb 21, 2022.

  1. dxltagxmma

    dxltagxmma Well-Known Member

    Joined:
    Jan 18, 2022
    Messages:
    389
    Likes Received:
    923
    Enjoy.

    Be aware some do not work, some crash the game, some can only be used in-game via console.

    Code:
    ts2.dbg.SaveTestCubemap
    ts2.dbg.SaveCustomCapture
    ts2.dbg.UpdateSceneCapture
    ts2.dbg.SwitchTODSystem
    ts2.passenger.kill
    ts2.passenger.kill.AreaSearchRadius
    ts2.passenger.kill.SpeedLimitSq
    ts2.passenger.AnimationInterpolationScreenSize
    ts2.dbg.LogAIStatus
    ts2.dbg.EnableStoppedAIServiceLogging
    ts2.dbg.StoppedAIServiceLoggingTimeout
    ts2.dbg.AICouplerSetupThresholdDistanceCm
    ts2.dbg.AIStopPointTargetOffset
    ts2.dbg.AICreepSpeed
    ts2.dbg.AudioOcclusionDebug
    ts2.passenger.CharacterFactoryCombineMeshesPerSecond
    ts2.passenger.ObjectPoolSize
    ts2.passenger.ObjectPoolUseCount
    ts2.passenger.MaxPoolDelegatesPerFrame
    ts2.passenger.HeightVariationMinHeight
    ts2.dbg.AudioOcclusionTraceLength
    ts2.passenger.HeightVariationXYScale
    ts2.dbg.PassengerSeated.MaxDrawDistanceStart
    ts2.dbg.PassengerSeated.MaxDrawDistanceEnd
    ts2.dbg.PassengerSeated.ViewDistanceScaleInfluence
    ts2.dbg.AIOverrideTargetVelocity
    ts2.dbg.AITargetVelocity
    ts2.dbg.AISetDrivable
    ts2.dbg.ShowEngineAudioControlDebug
    ts2.passengers.Navigation.StateUpdatePeriod
    ts2.passengers.Navigation.MaxCameraDistance
    ts2.passengers.DrawDebugInfo
    ts2.passenger.kill.AreaTimer
    ts2.passenger.MaxDrawDistanceVariation
    ts2.passenger.MaxDrawDistance
    ts2.passenger.SpawnLimitScaleFactor
    ts2.dbg.RecreateViewActors
    ts2.dbg.ForceLoadViewAssets
    ts2.dbg.Camera.BoomCameraSpeed
    ts2.dbg.Camera.BoomCameraAlternateControls
    ts2.dbg.Camera.BoomCameraInvertMouse
    ts2.dbg.Camera.BoomCameraMouseWheelLength
    ts2.HeadTracking.Enabled
    ts2.HeadTracking.Strength
    ts2.HeadTracking.TranslationStrength
    ts2.CameraMotionSway.Enabled
    ts2.CameraMotionSway.EnableUprightCompensation
    ts2.CameraMotionSway.KSitting.X
    ts2.CameraMotionSway.KSitting.Y
    ts2.CameraMotionSway.KSitting.Z
    ts2.CameraMotionSway.LSitting.X
    ts2.CameraMotionSway.LSitting.Y
    ts2.CameraMotionSway.LSitting.Z
    ts2.CameraMotionSway.SittingPivotOffset
    ts2.CameraMotionSway.KStanding.X
    ts2.CameraMotionSway.KStanding.Y
    ts2.CameraMotionSway.KStanding.Z
    ts2.CameraMotionSway.LStanding.X
    ts2.CameraMotionSway.LStanding.Y
    ts2.CameraMotionSway.LStanding.Z
    ts2.CameraMotionSway.StandingPivotOffset
    ts2.CameraMotionSway.SittingAngularCompensation
    ts2.CameraMotionSway.StandingAngularCompensation
    ts2.CameraMotionSway.AngularCompensationMinSpeed
    ts2.CameraMotionSway.AngularCompensationMaxSpeed
    ts2.CameraMotionSway.HeadAdjustmentSpeed
    ts2.CameraMotionSway.MaxTimesteps
    ts2.CameraMotionSway.Timestep
    ts2.CameraMotionSway.MinimumBaseSpeed
    ts2.CameraMotionSway.AlphaFadeSpeed
    ts2.CameraMotionSway.AlphaMultiplier
    ts2.dbg.SetEnvironmentLights
    ts2.dbg.EnableAIDriverSpawning
    ts2.dbg.ForceDispatcherClass
    ts2.dbg.ForceYardManagerClass
    ts2.dbg.ForcePathfinderFlags
    ts2.dbg.ShowRouteMapAncillaries
    ts2.dbg.AllowRouteMapSignalToggling
    ts2.dbg.CorrectTODToClampedSimTime
    ts2.dbg.StatPhysics
    ts2.dbg.StatSleepables
    ts2.ui.LoadSaveGame
    ts2.ui.SaveGame
    ts2.ui.DeleteSaveGame
    ts2.dbg.AllowAllVehiclesInScenarioDesigner
    ts2.dbg.LevelCrossingDeadzoneThreshold
    ts2.dbg.VideoPlayback.DisableVideoPlayback
    ts2.MaxTurntableAccelerationRate
    ts2.ClampedTurntableMaxAngularSpeed
    ts2.dbg.TestSignalTablesMatchGetNextTrackSection
    ts2.dbg.ShowMeshBuilderConstructionLines
    ts2.dbg.ShowSleeperConstructionLine
    ts2.dbg.SimPhysics.MaximumTimeStep
    ts2.dbg.SimPhysics.SimulationTimeStep
    ts2.dbg.SimPhysics.Draw
    ts2.dbg.SimPhysics.DoAsynchronous
    ts2.dbg.DoConcurrentSimPhysicsTick
    ts2.dbg.SimPhysics.ReestimateAsyncTime
    ts2.dbg.AsyncComponentTransformDispatch
    ts2.dbg.EnableSimulationTaskGroups
    ts2.dbg.SortSimPhysicsInterfaces
    ts2.dbg.AsynchronousSimPhysicsOnNamedThread
    ts2.SimulationNodeMaxAcceleration
    ts2.SimulationNodeMinResistance
    ts2.SimulationNodeMaxFlowRootedMagnitude
    ts2.EnableHeatDebug
    ts2.dbg.LzbExtraSearchMode
    ts2.dbg.TVM.ForceValid
    ts2.dbg.TVM.MaxSpeedOverrideKph
    ts2.RewardMonitor.ShowLowImpactNotificationsAsFull
    ts2.RewardMonitor.EnableRepeatingRewards
    ts2.dbg.DebugPrintSimulationRuntimeEvents
    ts2.dbg.playerprofile.SaveActivePlayerProfile
    ts2.dbg.playerprofile.SetDriverLevel
    ts2.dbg.playerprofile.SetRouteLevel
    ts2.dbg.playerprofile.SetRailVehicleLevel
    ts2.dbg.collectables.ResetAllCollectablesForRoute
    ts2.dbg.collectables.ShowDebugMarkers
    ts2.dbg.playerprofile.SetDriverFloatStat
    ts2.dbg.playerprofile.SetDriverBoolStat
    ts2.dbg.playerprofile.SetDriverIntStat
    ts2.dbg.playerprofile.SetRouteFloatStat
    ts2.dbg.playerprofile.SetRouteBoolStat
    ts2.dbg.playerprofile.SetRouteIntStat
    ts2.dbg.playerprofile.SetRailVehicleFloatStat
    ts2.dbg.playerprofile.SetRailVehicleBoolStat
    ts2.dbg.playerprofile.SetRailVehicleIntStat
    ts2.dbg.playerprofile.PrintDriverStat
    ts2.dbg.playerprofile.PrintRouteStat
    ts2.dbg.playerprofile.PrintRailVehicleStat
    ts2.dbg.playerprofile.ResetProgressBasedSteamAchievements
    ts2.dbg.Route.ForceCoreCharacterCollection
    ts2.dbg.SkipSaveGameAssetChecks
    ts2.dbg.Autosave
    ts2.dbg.LoadAutosave
    ts2.dbg.ClearAutosave
    ts2.save.WriteCheckpointsToDisk
    ts2.save.CheckpointsEnabled
    ts2.dbg.LogDispatcherServiceStatus
    ts2.dispatcher.ForceLevelCrossingOccupation
    ts2.dispatcher.ApproachReleaseSectionToleranceCM
    ts2.dispatcher.PathingTimeLimit
    ts2.dbg.AllowDispatcherEnterYardRequests
    ts2.dbg.DispatcherExtendedErrorInfo
    ts2.dbg.ForceDirtyDispatcherDependencies
    ts2.dbg.ShowObjectiveUI
    ts2.dbg.CompleteCurrentObjective
    ts2.dbg.CompleteScenario
    ts2.dbg.StartObjectiveChecking
    ts2.dbg.ToggleDriverPermission
    ts2.gameplay.IgnoreDerailmentGameOver
    ts2.gameplay.IgnoreSPADGameOver
    ts2.dbg.ExportRecordedServiceData
    ts2.gameplay.RuntimeValidateScenarioDesignAssets
    ts2.ScenarioDesigner.NPCCSPassengerobjectives
    ts2.dbg.ForceTimetableStartWithIncompleteData
    ts2.dbg.DoAsynchronousPathRequests
    ts2.dbg.MaxReskinsPerTimetable
    ts2.SubstitutionAndLayerMinBudget
    ts2.ExpectedGameMemoryUsage
    ts2.dbg.TogglePath
    ts2.dbg.TrackDebugViewExtent
    ts2.timetable.ServiceInMotionTimeThreshold
    ts2.rtt.SpawnFormation
    ts2.rtt.FindRoutability
    ts2.rtt.FindRoutabilityActiveTrain
    ts2.rtt.RouteMeTo
    ts2.dbg.TrySetAndLockJunctionsForService
    ts2.dbg.AllowYardManagerEnterDispatchedNetworkRequests
    ts2.passenger.DensityScale
    ts2.passenger.DensityScaleNew
    ts2.passenger.HotSpawningDistancePadding
    ts2.passenger.AdjacentStationsSearchDistance
    ts2.platform.MaxStationPassengerSpawnDistance
    ts2.platform.MaxSpawnInterval
    ts2.platform.MinSpawnInterval
    ts2.platform.MaxSpawnRequirement
    ts2.platform.MaxPlatformPassengerSpawnDistance
    ts2.platform.ExpectedPassengerSpawns
    ts2.passengers.ForceStationSpawningOverride
    ts2.platform.CharacterDioramaPassengerCountScale
    ts2.dbg.SkipFirstTimeExperience
    ts2.dbg.SaveRailDriverDeviceConfiguration
    ts2.dbg.ListObjectReferences
    ts2.dbg.LoadTimetable
    ts2.perf.ShowNetworkRenderProxies
    ts2.perf.ShowStaticMeshes
    ts2.perf.ShowSkeletalMeshes
    ts2.perf.ShowSkeletalActors
    ts2.perf.ShowCharacters
    ts2.perf.ShowLandscape
    ts2.perf.ShowSplineMeshes
    ts2.perf.ShowFoliage
    ts2.perf.ShowISM
    ts2.perf.ShowHISM
    ts2.perf.ShowProcedural
    ts2.perf.ShowCables
    ts2.perf.ShowPointLights
    ts2.perf.ShowSpotLights
    ts2.perf.OverrideMaterialNetworkRenderProxies
    ts2.perf.OverrideMaterialStaticMeshes
    ts2.perf.OverrideMaterialSkeletalMeshes
    ts2.dbg.SetTrainSpeed
    ts2.dbg.BitmapTextRenderer.EnableTextureUpdates
    ts2.dbg.BitmapTextRenderer.DisableRenderThreadCommands
    ts2.dbg.BitmapTextRenderer.RegionsAlwaysDirty
    ts2.dbg.BitmapTextRenderer.ForceFullTextureUpdates
    ts2.dbg.CompleteCurrentServiceInstruction
    ts2.dbg.RemoveTrainFromTrack
    ts2.perf.OverrideMaterialLandscape
    ts2.perf.OverrideMaterialSplineMeshes
    ts2.dbg.GetGameResolution
    ts2.perf.OverrideMaterialFoliage
    ts2.perf.OverrideMaterialISM
    ts2.perf.OverrideMaterialHISM
    ts2.perf.StartStreamingProfile
    ts2.dbg.CopyDebugInfoToClipboard
    ts2.perf.StopStreamingProfile
    ts2.dbg.PrintDebugInfo
    ts2.perf.ListRenderedSceneProxies
    ts2.dbg.JumpToTile
    ts2.dbg.JumpToService
    ts2.dbg.JumpToRailVehicle
    ts2.dbg.JumpToSignal
    ts2.dbg.EnableCursorPositionManipulation
    ts2.dbg.MaxFreeCameraDistance
    ts2.dbg.FixBoomCameraDopplerEffect
    ts2.dbg.SetWorldDateTime
    ts2.dbg.SetLocalDateTime
    ts2.dbg.SetWorldLocation
    ts2.dbg.SetGmtOffset
    ts2.dbg.SetTemperature
    ts2.dbg.SetCloudiness
    ts2.dbg.SetFogDensity
    ts2.dbg.SetPrecipitation
    ts2.dbg.SetWetness
    ts2.dbg.SetGroundSnow
    ts2.dbg.SetPiledSnow
    ts2.dbg.SetWindStrength
    ts2.dbg.SetWindAngle
    ts2.dbg.RestartScenario
    ts2.dbg.NextScenario
    ts2.dbg.ResetWeatherVariables
    ts2.dbg.StrikeBolt
    ts2.dbg.SetUIPalette
    ts2.dbg.ToggleUI
    ts2.passenger.DensityScaleForceNew
    ts2.dbg.Camera.MaxLinearDistance
    ts2.dbg.Camera.MaxHorizontalDistance
    ts2.dbg.Camera.MaxVerticalHeight
    ts2.dbg.Camera.MaxVerticalDepth
    ts2.dbg.Camera.ObstacleAvoidanceDebugDisplay
    ts2.dbg.Camera.CameraReturnSpeed
    ts2.dbg.Camera.CameraReturnWait
    ts2.dbg.Camera.CameraBoomMaxLength
    ts2.dbg.Camera.MaxDeflectionChangesBeforeReset
    ts2.dbg.SelectActivatesTransitions
    ts2.dbg.ExitSeatInAnyCamera
    ts2.dbg.RVVUpdatePrimitiveBounds
    ts2.dbg.Camera.CameraBoomClearance
    ts2.dbg.RelinquishPromptWaitTime
    ts2.dbg.PlatformDetectorDebugDisplay
    ts2.dbg.PlatformStepUpHeightFudgeFactor
    ts2.dbg.MaxWalkSpeed
    ts2.dbg.MaxRunSpeed
    ts2.dbg.MaxFlySpeed
    ts2.dbg.MaxWalkSpeedCrouched
    ts2.dbg.MaxRunSpeedCrouched
    ts2.dbg.MaxAcceleration
    ts2.dbg.JumpToLatLong
    ts2.dbg.AudioDisplayParametersStats
    ts2.signals.TestPerformance
    ts2.signals.SetRoute
    ts2.signals.SetPathedRoute
    ts2.signals.OccupySection
    ts2.signals.ClearSection
    ts2.signals.ClearAllSections
    ts2.signals.SetPassRequestStatus
    ts2.signals.SetOverriddenAspect
    ts2.signals.ClearOverriddenAspect
    ts2.dispatcher.RequestEnterDispatchedNetwork
    ts2.dispatcher.RequestPassSignalAtDanger
    ts2.gameplay.DisableJctDerail
    ts2.dbg.UseNewAirMassFlowEquations
    ts2.dbg.ConnectionDebug
    ts2.dbg.BulkCargo.ShowInformation
    ts2.dbg.UseCapsulesForWheels
    ts2.dbg.FixWheelslipOscillation
    ts2.dbg.GlobalRailAdhesion
    ts2.dbg.BaseFollowerNoiseIntensityX
    ts2.dbg.BaseFollowerNoiseIntensityY
    ts2.dbg.BaseFollowerNoiseScale
    ts2.dbg.DerailDistanceThreshold
    ts2.AxleMaxHeatEnergy
    ts2.AxleHeatEnergyDissipationRate
    ts2.dbg.TestFriction
    ts2.dbg.CurrentCollectorSupplyAvailability
    ts2.SetOutsideTemperature
    ts2.ForceWheelSparksEnabled
    ts2.ForceArcingSparksEnabled
    ts2.dbg.ShowCouplerDistance
    ts2.dbg.CouplerProximityInfo
    ts2.dbg.RailVehiclePhysicsEnabled
    ts2.dbg.RailVehicleSimplePhysicsEnabled
    ts2.dbg.SetSimplePhysicsPowerOrBrake
    ts2.dbg.DisableTickInVault
    ts2.dbg.UseCachedFormationRanges
    ts2.dbg.AllVehiclesIncludeCargoMass
    ts2.dbg.DisableDerailment
    ts2.dbg.ForceLZBValidity
    ts2.dbg.ForceSignalCapabilities
    ts2.dbg.EnableAirResistance
    ts2.dbg.RailVehicleMassMultiplier
    ts2.dbg.AverageAccelerationUpdateTimeout
    ts2.dbg.TrainSpawnerForceStreamTextures
    ts2.dbg.DisableToolTips
    ts2.dbg.MultiVirtualHIDInteractionComponentDebug
    ts2.dbg.InteractionDirectionIdx
    ts2.dbg.FormationSubstitutionSeed
    ts2.dbg.UseFixedBodyAxles
    ts2.dbg.VirtualHIDInteractionComponentDebug
    ts2.dbg.RotatingInteractionComponent.DrawBasis
    ts2.dbg.RotatingInteractionComponent.RenderLifetime
    ts2.dbg.RotatingInteractionComponent.IntersectionAxisLengthMultiplier
    ts2.dbg.Windscreen.SaveTextureValues
    ts2.dbg.Windscreen.ClearGrids
     
    • Like Like x 5
    • Helpful Helpful x 4
  2. 21c164fightercommand

    21c164fightercommand Well-Known Member

    Joined:
    Nov 6, 2021
    Messages:
    911
    Likes Received:
    896
    ts2.dbg.StrikeBolt is Thor's hammer ;-)

    or what about ts2.passenger.kill ??
     
  3. meridian#2659

    meridian#2659 Well-Known Member

    Joined:
    Jul 20, 2021
    Messages:
    2,905
    Likes Received:
    5,118
    Thanks man! Was looking for this since i didnt know how to set fog via console.
     
    • Like Like x 1
  4. dxltagxmma

    dxltagxmma Well-Known Member

    Joined:
    Jan 18, 2022
    Messages:
    389
    Likes Received:
    923
    Sends passengers to the shadow realm, actual developer's words.
     
    • Like Like x 2
  5. londonmidland

    londonmidland Well-Known Member

    Joined:
    Nov 8, 2017
    Messages:
    3,498
    Likes Received:
    18,899
    Gonna try that fog command tonight, thanks.

    How did you find these selected new commands, may I ask?
     
  6. CowBoyWolf

    CowBoyWolf Well-Known Member

    Joined:
    Sep 13, 2020
    Messages:
    2,457
    Likes Received:
    1,684
  7. dxltagxmma

    dxltagxmma Well-Known Member

    Joined:
    Jan 18, 2022
    Messages:
    389
    Likes Received:
    923
    • Like Like x 3
  8. londonmidland

    londonmidland Well-Known Member

    Joined:
    Nov 8, 2017
    Messages:
    3,498
    Likes Received:
    18,899
    Is there anything else which is new weather wise/atmospheric conditions visuals?

    If not, what other interesting commands would you recommend, which are new/weren’t there before?

    Thanks.
     
  9. Callum B.

    Callum B. Well-Known Member

    Joined:
    Aug 9, 2018
    Messages:
    1,644
    Likes Received:
    2,859
    It's all available to view with a hex editor. A little sanitation will give you the output you want.

    upload_2022-2-21_15-34-26.png

    Cheers
     
    • Like Like x 1
  10. dxltagxmma

    dxltagxmma Well-Known Member

    Joined:
    Jan 18, 2022
    Messages:
    389
    Likes Received:
    923
    For a true rush hour experience without waiting 10 years for one route that has their parameter for spawning changed while getting charged 30€, use PassengerDensityScaleNew and ForceStationSpawningOverride. I'll probably get on a internal DTG kill list for this and they will probably patch it, but I don't care.
     
    • Like Like x 1
    • Helpful Helpful x 1
  11. dxltagxmma

    dxltagxmma Well-Known Member

    Joined:
    Jan 18, 2022
    Messages:
    389
    Likes Received:
    923
    Yeah. No biggie, though I used a disassembler so most of the other interesting stuff I found aren't commands or variables or something
     
    • Like Like x 2
  12. Callum B.

    Callum B. Well-Known Member

    Joined:
    Aug 9, 2018
    Messages:
    1,644
    Likes Received:
    2,859
    No need to be dramatic. DTG moves like a sloth because they must ensure that enabling features like the new Rush Hour passengers won't overload player systems, particularly memory-limited ones like the 8th generation consoles. Modders hold no such responsibility. By modding, we shortcut the need to vigorously test changes with QA. DTG isn't going to "patch" this because it's the way it's intended to function; in fact, DTG are very open to modding (and have openly praised the work being done on the unofficial editor).

    Cheers
     
    • Like Like x 1
  13. dxltagxmma

    dxltagxmma Well-Known Member

    Joined:
    Jan 18, 2022
    Messages:
    389
    Likes Received:
    923
    I am just very sarcastic. I can understand on consoles, of course. But tweaking with the spawning did not have a significant higher memory usage for me, it never went over 8 GB, thanks to Unreal Engine's optimization and GC.

    They really don't have to move like a sloth. For example, I am still really p*ssed about TSW 2020 routes having simple yet disappointing and thus fun-killing bugs like on German routes, don't get me started on NEW ones like the Hamburg-Lübeck shenanigans. Good example is Ruhr-Sieg-Nord, like having to open the doors on the wrong side, or stations just switching to the next one instantly. Or the annoying PZB bugs, which kills my fun instantly. Or wrong speed limits/broken speed limit signs. They aren't 1000 lines of code, they are mostly variables and constants with wrong values, otherwise the game must be coded like ****, which I don't believe really. They did an amazing job honestly, it's not easy to pull up such a simulator from nowhere, but mostly the issues are those pesky but simple ones, just in a metric ton spread over the game. Instead of pushing out DLCs, I'd recommend them to polish the game. It would benefit them a TON, because the game already has so damn much potential.
     
    • Like Like x 3
  14. 21c164fightercommand

    21c164fightercommand Well-Known Member

    Joined:
    Nov 6, 2021
    Messages:
    911
    Likes Received:
    896
    I believe in earlier excursion into the bowels of DTG's TS series, one could find evidence of how certain devs thought about the player, the consumer of his efforts, and the language used wasn't very flattering.
     
  15. dxltagxmma

    dxltagxmma Well-Known Member

    Joined:
    Jan 18, 2022
    Messages:
    389
    Likes Received:
    923
    There is a reason why Dovetail Games' Train Simulator became a huge meme in the PC gaming community (10.000€ for all DLCs)
     
  16. 21c164fightercommand

    21c164fightercommand Well-Known Member

    Joined:
    Nov 6, 2021
    Messages:
    911
    Likes Received:
    896
    Yeah, a bucket of LOVE instead of a nice easter egg ...
    but then, perhaps that particular dev was frustrated with his employer.

    anyway, browsing dll files with a hex editor can give you some clues
     
  17. meridian#2659

    meridian#2659 Well-Known Member

    Joined:
    Jul 20, 2021
    Messages:
    2,905
    Likes Received:
    5,118
    Interessting ;)
     
  18. vincentnicholas202

    vincentnicholas202 Member

    Joined:
    Nov 17, 2020
    Messages:
    89
    Likes Received:
    25
    How to adjust AP Points
     
  19. Conductor B

    Conductor B Well-Known Member

    Joined:
    Feb 18, 2022
    Messages:
    261
    Likes Received:
    309
    Does this mean that a modder could fix those GWE Reigate to Redhill services that get stuck waiting for a call-on signal that never arrives?
     
  20. gazz292

    gazz292 Well-Known Member

    Joined:
    Jun 15, 2018
    Messages:
    422
    Likes Received:
    879
    dxltagxmma (or anyone who's good at coding)

    I am useless at coding, but i need to learn or find someone who can do this kind of thing.

    I'm making a mostly 3D printed 'Euro RailDriver' controller for driving the German trains in TSW2, and i'm beginning to get to the point where i'm connecting it all up to the computer, and here's where i'm gonna struggle.

    ATM i'm using the replacement 'PieHid64.dll' that Micheal Huggins made: https://forums.dovetailgames.com/threads/xinput-game-controller-raildriver-dll.45793/
    This allows an arduino to send lever positions via serial and be seen as a raildriver to the sim (TSW2 thinks a raildriver is always connected with this .DLL)

    So that's how i got my levers working with TSW2. But it does not allow button presses to be sent.


    How would i go about creating something similar...
    either a .DLL that can accept analog and digital inputs from an arduino over serial.

    Or ideally, something that uses the standard 'PieHid64.dll' thats in TSW2 that works with a real raildriver, and have an interface program that reads a standard joystick input (8 analog and ~32 - 64 digital inputs) and sends it onto TSW2 in the format a raildriver does, i.e. replicate a raildriver's output in software, if that makes sense.
     
  21. Satiel

    Satiel New Member

    Joined:
    Jul 6, 2017
    Messages:
    7
    Likes Received:
    12
    Is there a command to set the current train weight or at least the number of passengers onboard? That would be useful
     
  22. V0latyle

    V0latyle Member

    Joined:
    Mar 21, 2022
    Messages:
    39
    Likes Received:
    26
    It would be nice if they added these back in:
    Code:
    ts2.gameplay.IgnoreDerailmentGameOver
    ts2.gameplay.IgnoreSPADGameOver
    The first one just for fun, but the second one would be really useful. Sometimes when you don't have enough momentum to make it up a grade and have to back down the grade to get another run at it, you roll past one of the signals you already passed, and the dispatcher isn't smart enough to clear you into that block again.
     
  23. Shuroop

    Shuroop Member

    Joined:
    Dec 17, 2020
    Messages:
    33
    Likes Received:
    21
    Has anyone thoroughly figured out how to manage signals on a route? I have a question, please write to the PM.
     
  24. V0latyle

    V0latyle Member

    Joined:
    Mar 21, 2022
    Messages:
    39
    Likes Received:
    26
    No...but sorta.

    Signals are managed by the dispatcher AI; by default, the dispatcher's authority is absolute and cannot be overridden.

    The only way to get around this is to set the time to nearly midnight, as the dispatcher will temporarily release control of the signals at 00:00; you can then set routes until the dispatcher takes back control.
     
    • Helpful Helpful x 1
  25. Philbo

    Philbo New Member

    Joined:
    Jun 28, 2023
    Messages:
    15
    Likes Received:
    7
    Gazz992 I read your post on your proposed u-beaut controller complete stepper motor notch control. Now I read you are concerned with the raildriver.dll not allowing button presses.
    I'm confused. The Raildriver kit has what, 32 buttons that the user can assign to any loco/train button presses. So the capability is there to assign buttons through an Arduino and then into the custom dll surely. Am I missing something here because I will be traveling down this path very shortly?
    If I am to use the custom raildriver dll I need to be able to assign button presses not just lever movements. Can you clarify for me please?
     
  26. AmeliaRose

    AmeliaRose New Member

    Joined:
    Jul 30, 2023
    Messages:
    1
    Likes Received:
    0
    Is there a way we can get a list showing what each cmd does, and how to use them? Example, I want to use
    ts2.rtt.SpawnFormation, but I don't know what the format is. I don't know exactly what said command does.
     
  27. cubscreeper

    cubscreeper New Member

    Joined:
    Apr 24, 2024
    Messages:
    1
    Likes Received:
    0
    has anyone figured out ap
     
  28. Redbus

    Redbus Well-Known Member

    Joined:
    Dec 8, 2016
    Messages:
    1,453
    Likes Received:
    3,090
    Still waiting for DTG to open up TSW to remap any axis or button to any available Xinput device.
    Been years since they said they would do it.
     
    • Like Like x 2
  29. vincentnicholas202

    vincentnicholas202 Member

    Joined:
    Nov 17, 2020
    Messages:
    89
    Likes Received:
    25
    I using slomo everytime, because i want have extra time
     
    • Like Like x 1
  30. dxltagxmma

    dxltagxmma Well-Known Member

    Joined:
    Jan 18, 2022
    Messages:
    389
    Likes Received:
    923
    I will update this thread later with a complete dump of TSW 4 CVars (including, if available, descriptions), objects and console commands/vars.
     
  31. bugaragara

    bugaragara New Member

    Joined:
    Mar 7, 2025
    Messages:
    1
    Likes Received:
    0
    how to use ts2.dbg.PrintDebugInfo?
     

Share This Page