jeroezie Posted December 20, 2024 Author Posted December 20, 2024 It could be a bug in the new version of SimRail. I have not done a test since the 13-12-2024 update.
jeroezie Posted December 21, 2024 Author Posted December 21, 2024 (edited) On 12/20/2024 at 11:45 AM, Indiana said: I'm ready to go but signal won't change... The stuff down here won't be of any help completing the scenario, because the bug with departing from DGZ is still prevalent in my test run. I will do more testing soon. I had already typed the whole thing in, so I am sending it anyways. It seems like, a bunch of shunting routes at Dandowka have disappeared/been removed in the current game version. You could circumvent this issue by changing the signal the players train spawns at, to the SDn_T signal, where the train departs after shunting. You will have to wait for the planned departure time still, and in my trail run the bot 42948 showed up a couple minutes late (15:09) and the signal trigger needed in order to depart, is only created when bot 64948 has reached about halfway the platform. Only then you can call the signaller successfully. Manipulate the mission.lua file the following way: Look fore line 20, replace "SDn1_H" with ("TYPO -> SDN_T") CORRECT -> "SDn_T" The result should look like this: PlayerTrainset = SpawnTrainsetOnSignal("Treintje", FindSignal("SDn_T"), 36, false, true, false, true, Please let me know, if this is successful. The trick should work with all three version of the scenario. Edited December 22, 2024 by jeroezie Corrected a typo
Indiana Posted December 22, 2024 Posted December 22, 2024 W dniu 21.12.2024 o 03:49, jeroezie napisał(a): The stuff down here won't be of any help completing the scenario, because the bug with departing from DGZ is still prevalent in my test run. I will do more testing soon. I had already typed the whole thing in, so I am sending it anyways. It seems like, a bunch of shunting routes at Dandowka have disappeared/been removed in the current game version. You could circumvent this issue by changing the signal the players train spawns at, to the SDn_T signal, where the train departs after shunting. You will have to wait for the planned departure time still, and in my trail run the bot 42948 showed up a couple minutes late (15:09) and the signal trigger needed in order to depart, is only created when bot 64948 has reached about halfway the platform. Only then you can call the signaller successfully. Manipulate the mission.lua file the following way: Look fore line 20, replace "SDn1_H" with "SDN_T". The result should look like this: PlayerTrainset = SpawnTrainsetOnSignal("Treintje", FindSignal("SDn_T"), 36, false, true, false, true, Please let me know, if this is successful. The trick should work with all three version of the scenario. It won't work for me... 😞
jeroezie Posted December 22, 2024 Author Posted December 22, 2024 (edited) 10 hours ago, Indiana said: It won't work for me... 😞 Could you discribe what happend? And show your missio.lua after the edit please? I also noticed, that I made a typo. The correct signal discription is SDn_T, not SDN_T. (The whole line of code that I posted was correct, the part where I discribe the instructions was not.) Edited December 22, 2024 by jeroezie
Indiana Posted December 26, 2024 Posted December 26, 2024 W dniu 22.12.2024 o 23:27, jeroezie napisał(a): Could you discribe what happend? And show your missio.lua after the edit please? I also noticed, that I made a typo. The correct signal discription is SDn_T, not SDN_T. (The whole line of code that I posted was correct, the part where I discribe the instructions was not.) -- SimRail - The Railway Simulator -- LUA Scripting scenario -- Version: 1.0 require("SimRailCore") DeveloperMode = function() return false end StartPosition = { 1142.30, 259.70, 2555.55 } Sounds = {} AiTrains = {} StaticTrains = {} ScenarioStep = 0 bot_441051_spawned = false function EarlyScenarioStart() StartRecorder() PlayerTrainset = SpawnTrainsetOnSignal("Treintje", FindSignal("SDn_T"), 36, false, true, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.EU07_096, false), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "", 0, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "", 0, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, true, "", 0, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, true, FreightLoads_412W_v4.Coal, 58, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_177_6, true, FreightLoads_412W_v4.Coal, 58, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, FreightLoads_412W.Concrete_slab, 36, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, FreightLoads_412W.Concrete_slab, 36, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3351_5356_394_5, true, FreightLoads_412W_v4.Coal, 51, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3351_5356_394_5, true, FreightLoads_412W_v4.Coal, 51, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, true, "", 0, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, true, "", 0, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, true, "", 0, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "", 0, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "", 0, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "", 0, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, true, "", 0, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "", 0, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "", 0, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 58, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, true, FreightLoads_412W_v4.Coal, 56, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, true, FreightLoads_412W_v4.Coal, 56, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, FreightLoads_412W.T_beam, 32, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, FreightLoads_412W.T_beam, 32, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_177_6, false, FreightLoads_412W_v4.Coal, 58, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, true, FreightLoads_412W_v4.Coal, 58, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_177_6, true, FreightLoads_412W_v4.Coal, 58, BrakeRegime.P), }) PlayerTrainset.SetState(DynamicState.dsStop, TrainsetState.tsDeactivation, true) PlayerTrainset.SetPaperTimetable("paper") PlayerTrainset.SetTimetable(LoadTimetableFromFile("timetable1.xml"), true) PlayerTrainset.SetRadioChannel(5, true) SDn_static_scenery_trains() end function StartScenario() DisplayMessage("StartMission", 32) DisplayChatText("StartMission") end function OnVirtualDispatcherReady() Log("Dispatcher ready!") -- Call needed functions trdl_SDn_shunting() trdl_SDn_departure() trdl_SPł() trdl_SG() trdl_Bn() trdl_DG() trdl_DGZ_entry() trdl_DGZ_shunting() trdl_DGHK() trdl_Kzl() end function trdl_SDn_shunting() ScenarioStep = 1 CreateSignalTrigger(FindSignal("SDn1_Tm2"), 84, { check = function(trainset) return true end, result = function(trainset) CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForVehicleStop, RailstockGetPlayerVehicle()) Log("Vehicle has stoppped") CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForSeconds, 4) Log("Waited 10 seconds") AllowPassingStopSignal("SDn1_Tm2", AllowPassSignal) DisplayChatText( "PermissionPassSignalSDnTm2") end) end) end }) CreateSignalTrigger(FindSignal("SDn1_Tm1"), 80, { check = function(trainset) return true end, result = function(trainset) VDSetSwitchPosition("z_sdn_32", false) VDSetSwitchPosition("z_sdn_37", false) VDSetRoute("SDn1_Tm1", "t1889k", VDOrderType.ManeuverRoute) VDSetManualSignalLightsState("SDn_Tm3", SignalLightType.White1, LuaSignalLightState.AlwaysOn) VDSetManualSignalLightsState("SDn_Tm3", SignalLightType.Blue, LuaSignalLightState.AlwaysOff) AllowPassingStopSignal("SDn_Tm3", AllowPassSignal) end }) CreateSignalTrigger(FindSignal("SDn_Tm6"), 48, { check = function(trainset) return true end, result = function(trainset) VDSetManualSignalLightsState("SDn_Tm3", SignalLightType.White1, LuaSignalLightState.AlwaysOff) VDSetManualSignalLightsState("SDn_Tm3", SignalLightType.Blue, LuaSignalLightState.AlwaysOn) VDSetRouteWithVariant("SDn_Tm6", "SDn1_H", VDOrderType.ManeuverRoute, { GetMidPointVariant("z_sdn_42", true), GetMidPointVariant("z_SDn_41cd", false), GetMidPointVariant("z_SDn_41ab", true), GetMidPointVariant("z_SDn_38cd", true), GetMidPointVariant("z_SDn_38ab", false) }) end }) -- Spawn bot_24175 and set up its signals CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForIngameDateTime, DateTimeCreate(2024, 7, 29, 14, 42, 0)) Log("Spawning bot 24175") SpawnTrainsetOnSignalAsync("bot_24175", FindSignal("SDn_A"), 1000, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.EU07_241, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11bmnouz_6151_2170_098_8, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11bmnouz_6151_2170_064_0, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11gmnouz_6151_2170_107_7, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10bmnouz_6151_2071_105_1, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.A9mnouz_6151_1970_214_5, false) }, function(trainset) AiTrains[1] = trainset trainset.SetState(DynamicState.dsAccFast, TrainsetState.tsTrain, true) trainset.SetTimetable(LoadTimetableFromFile("bot_24175.xml"), false) end) VDSetRoute("SDn_A", "SDn_N", VDOrderType.TrainRoute) VDSetRoute("SDn_N", "SDn_Wkps", VDOrderType.TrainRoute) end) CreateTrackTrigger(FindTrack("t1868"), 8, -1, { check = function(trainset) return true end, result = function(trainset) Log("The player has passed D1 STOP line closed sign and the scenaio will be terminated") FinishMission(MissionResultEnum.Failed_NoStopAtStopSignalTransgression) end }) end function trdl_SDn_departure() bool_bot_42948_arrived_SDn = false CreateSignalTrigger(FindSignal("SDn_T"), 300, { check = function(trainset) return true end, result = function(trainset) ScenarioStep = 3 Log("Train is ready for departure") SetWeather(WeatherConditionCode.FewClouds, 23, 1000, 35, 10000, 180, 30, 10, false) end }) CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForIngameDateTime, DateTimeCreate(2024, 7, 29, 14, 59, 0)) Log("The time is almost 14:59, spawning bot_42948") SpawnTrainsetOnSignalAsync("bot_42948", FindSignal("SPł1_T"), 10, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.EN57_009, false) }, function(trainset) AiTrains[2] = trainset trainset.SetState(DynamicState.dsStop, TrainsetState.tsTrain, true) trainset.SetTimetable(LoadTimetableFromFile("bot_42948.xml"), false) end) VDSetRoute("SPł1_T", "SPł1_C", VDOrderType.TrainRoute) -- Create signal trigger so the players train can depart only afther arrival of bot_42948 CreateSignalTrigger(FindSignal("SDn1_D"), 670, { check = function(trainset) return true end, result = function(trainset) bool_bot_42948_arrived_SDn = true -- Set this signal clear at the start so it can not case issues later VDSetRoute("SPł1_K", "SPł1_Wkps", VDOrderType.TrainRoute) DisplayChatText("SDnReadyForDepartureConformationRequest") end }) end) end function trdl_SPł() CreateSignalTrigger(FindSignal("SPł1_K"), 200, { check = function(trainset) return true end, result = function(trainset) DespawnTrainset(AiTrains[1]) -- Get rid of bot 24175 when at reaches the entry signal of Sosnowiec Południowy RemoveSignalTrigger(FindSignal("SPł1_K"), 200) -- This signal trigger is no longer needed VDSetRoute("SPł1_C", "SPł1_Akps", VDOrderType.TrainRoute) -- set signals for bot 42948 CreateSignalTrigger(FindSignal("SDn_W"), 1800, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("SDn_W", "SDn1_D", VDOrderType.TrainRoute) -- Set entry signal at SDn to clear for train bot 42948 afther it has departed from SPł end }) end }) CreateSignalTrigger(FindSignal("SPł1_A"), 1500, { check = function(trainset) return true end, result = function(trainset) Log("Signal trigger SPł1_A: Clearing signal SPł1_A") VDSetRoute("SPł1_A", "SPł1_K", VDOrderType.TrainRoute) RemoveSignalTrigger(FindSignal("SPł1_A"), 1500) -- This signal trigger is no longer needed end }) end function trdl_SG() -- Spawn bot_41126 and set up its signals CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForIngameDateTime, DateTimeCreate(2024, 7, 29, 15, 12, 0)) SpawnTrainsetOnSignalAsync("bot_41126", FindSignal("SG_Y"), 600, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.E186_134, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11bmnouz_6151_2170_064_0, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.WRmnouz_6151_8870_191_1, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.A9mnouz_6151_1970_214_5, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.A9mnouz_6151_1970_234_3, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11bmnouz_6151_2170_064_0, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11bmnouz_6151_2170_098_8, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10bmnouz_6151_2071_105_1, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10bmnouz_6151_2071_105_1, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11gmnouz_6151_2170_107_7, false) }, function(trainset) AiTrains[3] = trainset trainset.SetState(DynamicState.dsAccFast, TrainsetState.tsTrain, true) trainset.SetTimetable(LoadTimetableFromFile("bot_41126.xml"), false) end) VDSetRoute("SG_R2", "SG_H2", VDOrderType.TrainRoute) VDSetRouteWithVariant("SG_Y", "SG_R2", VDOrderType.TrainRoute, { GetMidPointVariant("z_SG_52cd", false), GetMidPointVariant("z_SG_52ab", false) }) VDSetRoute("SG_H2", "SG_Akps", VDOrderType.TrainRoute) Log("Bot 41126 is on its way") end) -- Create signal trigger that lets the players train enter the station afther the arrival of bot 41126 CreateSignalTrigger(FindSignal("SG_H2"), 708, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("SG_P", "SG_H5", VDOrderType.TrainRoute) end }) -- Delete bot 41126 when before it reaches Będzin CreateSignalTrigger(FindSignal("L1_3076"), 500, { check = function(trainset) return true end, result = function(trainset) DespawnTrainset(AiTrains[3]) RemoveSignalTrigger(FindSignal("L1_3076"), 500) end }) -- Spawn bot_40129 when the time is 15:18 CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForIngameDateTime, DateTimeCreate(2024, 7, 29, 15, 18, 40)) Log("Spawning bot_40129") SpawnTrainsetOnSignalAsync("bot_40129", FindSignal("L1_3071"), 300, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.EN76_006, false) }, function(trainset) AiTrains[4] = trainset trainset.SetState(DynamicState.dsAccFast, TrainsetState.tsTrain, true) trainset.SetTimetable(LoadTimetableFromFile("bot_40129.xml"), false) end) CreateSignalTrigger(FindSignal("SG_H5"), 75, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("SG_U1", "SG_Xkps", VDOrderType.TrainRoute) VDSetRouteWithVariant("SG_N1", "SG_U1", VDOrderType.TrainRoute, { -- Departure for bot_40129 GetMidPointVariant("z_SG_40ab", false), GetMidPointVariant("z_SG_40cd", false), GetMidPointVariant("z_SG_45", false) }) end }) end) CreateSignalTrigger(FindSignal("L1_3071"), 300, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("SG_B", "SG_N1", VDOrderType.TrainRoute) -- Entry to SG station for any train end }) -- Let the player depart from SG afther arrival of bot 40129 CreateSignalTrigger(FindSignal("SG_N1"), 180, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("SG_H5", "SG_Akps", VDOrderType.TrainRoute) end }) end function trdl_Bn() CreateSignalTrigger(FindSignal("L1_3076"), 480, { check = function(trainset) return true end, result = function(trainset) DespawnTrainset(AiTrains[4]) -- remove bot 40129 -- set route for player VDSetRoute("B_D", "B_Akps", VDOrderType.TrainRoute) VDSetRouteWithVariant("B_E2", "B_D", VDOrderType.TrainRoute, { GetMidPointVariant("z_B_12cd", false), GetMidPointVariant("z_B_12ab", false), GetMidPointVariant("z_B_9", false) }) VDSetRoute("B_S", "B_E2", VDOrderType.TrainRoute) SetWeather(WeatherConditionCode.OvercastClouds, 20, 1024, 49, 5709, 180, 30.32821, 10, false) --Spawn bot_146035 and then clear signals for it SpawnTrainsetOnSignalAsync("bot_146035", FindSignal("B_B"), 300, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.EN76_022, false) }, function(trainset) AiTrains[5] = trainset trainset.SetState(DynamicState.dsAccFast, TrainsetState.tsTrain, true) end) VDSetRoute("B_B", "B_K1", VDOrderType.TrainRoute) VDSetRoute("B_K1", "B_Rkps", VDOrderType.TrainRoute) end }) end function trdl_DG() CreateSignalTrigger(FindSignal("L1_3036"), 550, { check = function(trainset) return true end, result = function(trainset) ScenarioStep = 15 VDSetRouteWithVariant("DG_D", "DG_C2", VDOrderType.TrainRoute, { }) VDSetRouteWithVariant("DG_P", "DG_D", VDOrderType.TrainRoute, { GetMidPointVariant("z438", false), GetMidPointVariant("z439", false) }) DespawnTrainset(AiTrains[5]) -- Remove bot 146035 -- Spawn bot 40629 and make signal triggers for it SpawnTrainsetOnSignalAsync("bot_40629", FindSignal("L1_2981"), 840, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.EN57_1316, false), CreateNewSpawnVehicleDescriptor(LocomotiveNames.EN57_1219, false) }, function(trainset) AiTrains[6] = trainset trainset.SetState(DynamicState.dsAccFast, TrainsetState.tsTrain, true) trainset.SetTimetable(LoadTimetableFromFile("bot_40629.xml"), false) end) CreateSignalTrigger(FindSignal("L1_2983"), 300, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("DG_A", "DG_N1", VDOrderType.TrainRoute) VDSetRoute("DG_N1", "DG_O_12kps", VDOrderType.TrainRoute) end }) end }) CreateSignalTrigger(FindSignal("DG_P"), 600, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("DG_C2", "DG_Bkps", VDOrderType.TrainRoute) SetWeather(WeatherConditionCode.ModerateRain, 20, 1000, 50, 7846, 180, 30, 10, false) end }) end function trdl_DGZ_entry() CreateSignalTrigger(FindSignal("L1_2952"), 1088, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("DZ_J", "DZ_C13", VDOrderType.TrainRoute) VDSetRoute("DZ_X", "DZ_J", VDOrderType.TrainRoute) DespawnTrainsets(false) -- Remove old bots but keep the players train VDSetRoute("DZ_S102", "DZ_L1", VDOrderType.TrainRoute) -- Clear first 2 signal for bot_42128 already VDSetRoute("DZ_L1", "DZ_D", VDOrderType.TrainRoute) Log("Spawning_shunting_locomotive_DGZ") SpawnTrainsetOnSignalAsync("bot_shunting_locomotive_DGZ", FindSignal("DZ_Tm4"), 200, true, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.Ty2_540, false), --E6ACTadb_027 --Ty2_540 CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Ballast, 58, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Ballast, 58, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Ballast, 58, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635283_3, false, FreightLoads_412W_v4.Ballast, 58, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635283_3, false, FreightLoads_412W_v4.Ballast, 58, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Ballast, 58, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635283_3, false, FreightLoads_412W_v4.Ballast, 58, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Ballast, 58, BrakeRegime.P), }, function(trainset) AiTrains[9] = trainset trainset.SetState(DynamicState.dsStop, TrainsetState.tsShunting, true) end) RemoveSignalTrigger(FindSignal("L1_2952"), 1088) end }) -- Spawn bot_14127 when approching DGZ CreateSignalTrigger(FindSignal("DZ_X"), 320, { check = function(trainset) return true end, result = function(trainset) CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForIngameDateTime, DateTimeCreate(2024, 7, 29, 15, 36, 0)) SpawnTrainsetOnSignalAsync("bot_14127", FindSignal("DZ_B"), 1040, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.EP08_013, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11bmnouz_6151_2170_098_8, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11bmnouz_6151_2170_064_0, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11gmnouz_6151_2170_107_7, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.WRmnouz_6151_8870_191_1, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.A9mnouz_6151_1970_234_3, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.A9mnouz_6151_1970_214_5, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10bmnouz_6151_2071_105_1, false) }, function(trainset) AiTrains[8] = trainset trainset.SetState(DynamicState.dsAccCoast, TrainsetState.tsTrain, true) trainset.SetTimetable(LoadTimetableFromFile("bot_14127.xml"), false) end) VDSetRoute("DZ_G11", "DZ_O", VDOrderType.TrainRoute) VDSetRoute("DZ_B", "DZ_G11", VDOrderType.TrainRoute) Log("Spawned bot 14127") RemoveSignalTrigger(FindSignal("DZ_X"), 1088) CreateSignalTrigger(FindSignal("L1_2941"), 12, { check = function(trainset) return true end, result = function(trainset) DespawnTrainset(AiTrains[8]) RemoveSignalTrigger(FindSignal("L1_2941"), 12) Log("Despawned bot 14127") end }) end) end }) CreateSignalTrigger(FindSignal("DZ_J"), 150, { check = function(trainset) return true end, result = function(trainset) CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForIngameDateTime, DateTimeCreate(2024, 7, 29, 15, 40, 0)) Log("Spawn bot_42128") SpawnTrainsetOnSignalAsync("bot_42128", FindSignal("DZ_S102"), 600, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.EP07_174, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10nou_5051_2008_607_7, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.Adnu_5051_1900_189_7, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.Adnu_5051_1908_095_8_, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10nou_5051_2008_607_7, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10nou_5051_2008_607_7, false) }, function(trainset) AiTrains[7] = trainset trainset.SetState(DynamicState.dsAccFast, TrainsetState.tsTrain, true) end) VDSetRoute("DZ_D", "DZ_E2kps", VDOrderType.TrainRoute) end) ScenarioStep = 20 RemoveSignalTrigger(FindSignal("DZ_J"), 150) Log("ScenarioStep: " .. ScenarioStep .. ".") end }) -- Release train bot_14127 when the players train is out of the way CreateSignalTrigger(FindSignal("DZ_C13"), 600, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("DZ_O", "DZ_Wkps", VDOrderType.TrainRoute) Log("Exit signal for 14127 cleared") RemoveSignalTrigger(FindSignal("DZ_C13"), 600) end }) end function trdl_DGZ_shunting() bot_42128_departed_DGZ_DGZ = false CreateSignalTrigger(FindSignal("DZ_C13"), 100, -- Detect the arrival of the players train inside DGZ DZA { check = function(trainset) return true end, result = function(trainset) DisplayMessage("DGZrun_locomotive_around", 32) DisplayChatText("DGZrun_locomotive_around") ScenarioStep = 21 Log("ScenarioStep changed to:" .. ScenarioStep) spawn_bot_40178() PlayerTrainset.SetTimetable(LoadTimetableFromFile("timetable2.xml"), false) end }) CreateSignalTrigger(FindSignal("L1_2900D"), 1150, -- Waith for bot_42128 to clear the shuting track DZ_E2kps { check = function(trainset) return true end, result = function(trainset) bot_42128_departed_DGZ_DGZ = true if (ScenarioStep == 22) then VDSetRoute("DZ_C13", "DZ_E2kps", VDOrderType.ManeuverRoute) -- Only set shunting signal for the players locomotive when he/she has called the dispatcher end DespawnTrainset(AiTrains[7]) --bot_42128 RemoveSignalTrigger(FindSignal("L1_2900D"), 1150) --Get rid of 40178 when it has departed DGZ DZA and then call spawn function for 4130 CreateSignalTrigger(FindSignal("L1_2900D"), 1150, { check = function(trainset) return true end, result = function(trainset) DespawnTrainset(AiTrains[10]) Log("Despawned bot 40178, calling function spawn_bot_4130().") RemoveSignalTrigger(FindSignal("L1_2900D"), 1150) spawn_bot_4130() end }) end }) CreateTrackTrigger(FindTrack("t10827"), 64, 1, { check = function(trainset) return true end, result = function(trainset) ScenarioStep = 23 -- Prevent the signal C13 from being clearad again by the player calling the dispatcher via the radio end }) CreateSignalTrigger(FindSignal("DZ_G13"), 300, { check = function(trainset) return true end, result = function(trainset) spawn_bot_441051() end }) end function DGZ_departure() CreateSignalTrigger(FindSignal("DZ_K"), 20, -- Waith for arrival of bot_4130 { check = function(trainset) return true end, result = function(trainset) ScenarioStep = 24 DisplayChatText( "DGZReadyForDepartureConformationRequest") end }) CreateSignalTrigger(FindSignal("L1_2900D"), 400, { check = function(trainset) return true end, result = function(trainset) DespawnTrainset(AiTrains[12]) -- Get rid of bot_4130 end }) end function trdl_DGHK() CreateSignalTrigger(FindSignal("DGHK_G"), 1700, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("DGHK_G", "DGHK_Nkps", VDOrderType.TrainRoute) DespawnTrainset(AiTrains[11]) --Despawn 244049 spawn_bot_223412() end }) CreateSignalTrigger(FindSignal("DS_Z"), 1700, { check = function(trainset) return true end, result = function(trainset) DespawnTrainsets(false) SetWeather(WeatherConditionCode.OvercastClouds, 19, 1000, 31, 9556, 180, 31.09402, 10, false) end }) CreateSignalTrigger(FindSignal("DS_Z"), 1300, { check = function(trainset) return true end, result = function(trainset) trdl_DS_and_DW() end }) end function trdl_DS_and_DW() SetWeather(WeatherConditionCode.BrokenClouds, 25, 1000, 30, 10000, 180, 30, 10, false) --Provide entry to DS station for the players train VDSetRouteWithVariant("DS_Z", "DS_E", VDOrderType.TrainRoute, { GetMidPointVariant("z_DS_77", true), GetMidPointVariant("z_DS_71", false), GetMidPointVariant("z_DS_67", false) }) --Spawn bot_42950 VDSetCrossingState("L62_70.398_C", false) SpawnTrainsetOnSignalAsync("bot_42950", FindSignal("DS_W"), 500, true, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.ET22_836, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10ou_5051_2000_608_3, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.Adnu_5051_1908_095_8_, false) }, function(trainset) AiTrains[16] = trainset trainset.SetState(DynamicState.dsAccFast, TrainsetState.tsTrain, true) trainset.SetTimetable(LoadTimetableFromFile("bot_42950.xml"), false) end) VDSetRoute("DS_W", "DS_F", VDOrderType.TrainRoute) --Spawn bot_24947 SpawnTrainsetOnSignalAsync("bot_24947", FindSignal("DS_A"), 200, true, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.EN57_1051, false), CreateNewSpawnVehicleDescriptor(LocomotiveNames.EN57_009, false) }, function(trainset) AiTrains[17] = trainset trainset.SetState(DynamicState.dsAccFast, TrainsetState.tsTrain, true) trainset.SetTimetable(LoadTimetableFromFile("bot_24947.xml"), false) end) VDSetRoute("DS_A", "DS_Q", VDOrderType.TrainRoute) --Afther arrival of 42950, let 24947 depart CreateSignalTrigger(FindSignal("DS_F"), 450, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("DS_Q", "DS_Wkps", VDOrderType.TrainRoute) end }) --Whan 24947 has arrived at DS, let 42950 depart from DS and 443945 depart from DGW CreateSignalTrigger(FindSignal("DS_Q"), 520, { check = function(trainset) return true end, result = function(trainset) CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForIngameDateTime, DateTimeCreate(2024, 7, 29, 16, 17, 30)) VDSetSwitchPosition("z_DS_42", true) VDSetSwitchPosition("z_DS_41", true) VDSetSwitchPosition("z_DS_44a", false) VDSetSwitchPosition("z_DS_44d", true) VDSetSwitchPosition("z_DS_45b", true) VDSetSwitchPosition("z_DS_45d", false) VDSetSwitchPosition("z_DS_47c", true) VDSetSubstituteSignal("DS_F", true) DisplayChatText("DS42950Sz") DisplayChatText("Driver42950Sz") RemoveSignalTrigger(FindSignal("DS_Q"), 520) CreateTrackTrigger(FindTrack("t1662"), 5, -1, { check = function(trainset) return true end, result = function(trainset) VDCancelSubstituteSignal("DS_F") end }) CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForIngameDateTime, DateTimeCreate(2024, 7, 29, 16, 18, 0)) spawn_bot_443945() end) end) end }) --When 42950 has arrived at DW, clear the players train CreateSignalTrigger(FindSignal("DW_P"), 970, { check = function(trainset) return true end, result = function(trainset) -- Departure from DS VDSetSwitchPosition("z_DS_42", true) VDSetSwitchPosition("z_DS_41", true) VDSetSwitchPosition("z_DS_44a", true) VDSetSwitchPosition("z_DS_44c", true) VDSetSwitchPosition("z_DS_46", true) VDSetSubstituteSignal("DS_E", true) DisplayChatText("DSplayerSz") -- Arrival at DGW VDSetRoute("DW_N", "DW_Xkps", VDOrderType.TrainRoute) VDSetRoute("DW_A", "DW_N", VDOrderType.TrainRoute) -- Delete 42950 DespawnTrainset(AiTrains[16]) end }) --Afther departure of 42950, let 443945 enter DS CreateSignalTrigger(FindSignal("DW_A"), 712, { check = function(trainset) return true end, result = function(trainset) VDSetRouteWithVariant("DS_B", "DS_U", VDOrderType.TrainRoute, { GetMidPointVariant("z_DS_41", false), GetMidPointVariant("z_DS_45ab", false), GetMidPointVariant("z_DS_45cd", false) }) RemoveSignalTrigger(FindSignal("DW_A"), 712) end }) --Provide trainroute for 42950 when 443945 has cleared the switches CreateSignalTrigger(FindSignal("DS_B"), 580, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("DW_A", "DW_P", VDOrderType.TrainRoute) end }) --When 24947 has deaprted from DS, clear 443945 CreateSignalTrigger(FindSignal("SKz_A"), 2730, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("DS_U", "DS_Zkps", VDOrderType.TrainRoute) end }) CreateSignalTrigger(FindSignal("DW_N"), 700, { check = function(trainset) return true end, result = function(trainset) DespawnTrainset(AiTrains[17]) Log("Spawning_shunting_locomotive_DW") SpawnTrainsetOnSignalAsync("bot_shunting_locomotive_DW", FindSignal("DW_Tm26"), 500, true, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.Ty2_540, false), --E6ACTadb_027 --Ty2_540 CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 1, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 1, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635283_3, false, FreightLoads_412W_v4.Coal, 1, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635283_3, false, FreightLoads_412W_v4.Coal, 1, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 1, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 1, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 1, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635283_3, false, FreightLoads_412W_v4.Coal, 1, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 1, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 1, BrakeRegime.P), }, function(trainset) AiTrains[20] = trainset trainset.SetState(DynamicState.dsStop, TrainsetState.tsShunting, true) end) VDSetRoute("DW_Tm26", "DW_Tm9", VDOrderType.ManeuverRoute) VDSetRoute("DW_Tm9", "t1936k", VDOrderType.ManeuverRoute) --Spawn bot_24179 SpawnTrainsetOnSignalAsync("bot_24179", FindSignal("Sl_H1"), 50, true, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.EU07_005, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.A9ou_5051_1908_136_0, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.A9ou_5151_1970_003_4, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10ou_5151_2070_829_9, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10nouz_5151_2071_102_0, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10ou_5151_2070_829_9, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10nouz_5151_2071_102_0, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10ou_5151_2070_829_9, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10nouz_5151_2071_102_0, false) }, function(trainset) AiTrains[18] = trainset trainset.SetState(DynamicState.dsAccSlow, TrainsetState.tsTrain, true) end) VDSetRoute("Sl_H1", "Sl_Jkps", VDOrderType.TrainRoute) VDSetRoute("DW_T", "DW_F", VDOrderType.TrainRoute) VDSetRoute("Sl_K", "Sl_E2", VDOrderType.TrainRoute) --bot_42950 VDSetRoute("Sl_E2", "Sl_Bkps", VDOrderType.TrainRoute) end }) end function trdl_Kzl() CreateSignalTrigger(FindSignal("Kzl_C"), 550, { check = function(trainset) return true end, result = function(trainset) DespawnTrainsets(false) -- Use some cheats to let the player pass signal Kzl_C because setting up train route here is not (yet) possible VDSetSwitchPosition("z_Kzl_8", true) VDSetSwitchPosition("z_Kzl_10", true) VDSetSwitchPosition("z_Kzl_11", true) VDSetSwitchPosition("z_Kzl_12", false) VDSetSwitchPosition("z_Kzl_13", true) AllowPassingStopSignal("Kzl_C", AllowPassSignal) VDSetManualSignalLightsState("Kzl_C", SignalLightType.Orange1, LuaSignalLightState.AlwaysOn) VDSetManualSignalLightsState("Kzl_C", SignalLightType.Red1, LuaSignalLightState.AlwaysOff) VDSetManualSignalLightsState("Kzl_C", SignalLightType.Green1, LuaSignalLightState.AlwaysOn) VDSetManualSignalLightsState("Kzl_C", SignalLightType.OrangeStripe, LuaSignalLightState.AlwaysOn) VDSetManualSignalLightsState("Kzl_ToC", SignalLightType.Orange1, LuaSignalLightState.Flashing) --Spawn scenery train Log("Calling function spawn_scenery_train_Kzl()") spawn_scenery_train_Kzl() --Clear signal for scenery train when players train is out of the way CreateTrackTrigger(FindTrack("t23916"), 88, 1, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("Kzl_J", "Kzl_Bkps", VDOrderType.TrainRoute) end }) end }) CreateTrackTrigger(FindTrack("t23917"), 205, 1, { check = function(trainset) return true end, result = function(trainset) Log("Setting signal for scenery train Kzl") VDSetRoute("Kzl_J", "Kzl_Bkps", VDOrderType.TrainRoute) end }) CreateSignalTrigger(FindSignal("DTA_E2"), 1800, { check = function(trainset) return true end, result = function(trainset) Log("spawn_bot_414062") spawn_bot_414062() end }) CreateSignalTrigger(FindSignal("DTA_E2"), 950, { check = function(trainset) return true end, result = function(trainset) Log("Finish line") FinishMission(MissionResultEnum.Success) end }) end function OnPlayerRadioCall(trainsetInfo, radio_SelectionCall) Log("Call pressed in " .. trainsetInfo.name .. "; Call type: " .. tostring(radio_SelectionCall) .. "; Channel: " .. RailstockGetPlayerTrainset().GetCurrentlyUsedChannel() .. "; Scenario step: " .. ScenarioStep .. ".") if (ScenarioStep == 1) then Log("Setting up shunting route") VDSetManualSignalLightsState("SDn1_Tm2", SignalLightType.Blue, LuaSignalLightState.AlwaysOff) VDSetRoute("SDn1_H", "SDn1_Tm2", VDOrderType.ManeuverRoute) DisplayChatText("SDnShuntRequestRecieved") ScenarioStep = 2 end if (ScenarioStep == 3 and bool_bot_42948_arrived_SDn == true) then VDSetRoute("SDn_T", "SDn_Wkps", VDOrderType.TrainRoute) -- Player train departure VDSetRoute("SDn1_D", "SDn_Akps", VDOrderType.TrainRoute) -- bot_42948 departure Log("Prepered signal triggers for players train from SDn towards SPł") CreateSignalTrigger(FindSignal("SPł1_A"), 1500, { check = function(trainset) return true end, result = function(trainset) Log("Signal trigger SPł1_A: Clearing signal SPł1_A") VDSetRoute("SPł1_A", "SPł1_K", VDOrderType.TrainRoute) SetWeather(WeatherConditionCode.BrokenClouds, 21, 1000, 35, 8923, 180, 30, 10, false) DespawnTrainset(AiTrains[2]) DespawnTrainset(StaticTrains[1]) DespawnTrainset(StaticTrains[2]) VDSetRoute("SDn_Z", "SDn1_H", VDOrderType.TrainRoute) RemoveSignalTrigger(FindSignal("SPł1_A"), 1500) -- This signal trigger is no longer needed Log("Signal trigger SPł1_A: Despawed bots at SDn and changed weather") end }) ScenarioStep = 4 DisplayChatText("SDnReadyForDepartureConformationRecieved") end if (ScenarioStep == 21 or ScenarioStep == 22) then if (bot_42128_departed_DGZ_DGZ == true) then VDSetRoute("DZ_C13", "DZ_E2kps", VDOrderType.ManeuverRoute) DisplayChatText("DGZShuntRequestRecievedNow") else ScenarioStep = 22 -- Setting scenario step to 22 will tell the signal trigger for signal L1_2900D to set up shunting route for the players locomotive DisplayChatText("DGZShuntRequestRecievedWaith") end CreateSignalTrigger(FindSignal("DZ_Tm1"), 100, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("DZ_Tm12", "DZ_P", VDOrderType.ManeuverRoute) VDSetRoute("DZ_Tm1", "DZ_Tm12", VDOrderType.ManeuverRoute) end }) CreateSignalTrigger(FindSignal("DZ_Tm12"), 600, { check = function(trainset) return true end, result = function(trainset) Log("Waiting until 15:52 to spawn bot 244049") CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForIngameDateTime, DateTimeCreate(2024, 7, 29, 15, 52, 0)) spawn_bot_244049_40131() end) end }) CreateSignalTrigger(FindSignal("DZ_J"), 200, { -- Send the players locomotive back to the platform check = function(trainset) return true end, result = function(trainset) VDSetRoute("DZ_J", "DZ_C13", VDOrderType.ManeuverRoute) SetWeather(WeatherConditionCode.LightRain, 21, 1000, 45, 8171, 180, 30, 10, false) CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForIngameDateTime, DateTimeCreate(2024, 7, 29, 15, 58, 0)) VDSetRoute("DZ_O", "DZ_Wkps", VDOrderType.TrainRoute) -- Exit signal for bot 40131, clear 1 minute before planned arrival time end) -- Actions for bot_shunting_locomotive_DGZ VDSetRouteWithVariant("DZ_Tm5", "DZ_Tm13", VDOrderType.ManeuverRoute, { GetMidPointVariant("z_DZ_13ab", true), GetMidPointVariant("z_DZ_13cd", false), GetMidPointVariant("z_DZ_14", true), GetMidPointVariant("z_DZ_15", true), GetMidPointVariant("z_DZ_16", true), GetMidPointVariant("z_DZ_21", true), GetMidPointVariant("z_DZ_24", false) }) VDSetRoute("DZ_Tm4", "DZ_Tm5", VDOrderType.ManeuverRoute) end }) end if (ScenarioStep == 24) then VDSetRoute("DZ_P", "DZ_U105", VDOrderType.TrainRoute) VDSetRoute("DZ_G13", "DZ_P", VDOrderType.TrainRoute) VDSetRouteWithVariant("DZ_U105", "DZ_Ykps", VDOrderType.TrainRoute, { GetMidPointVariant("z_DZ_117ab", true), GetMidPointVariant("z_DZ_117cd", true), GetMidPointVariant("z_DZ_118", true), GetMidPointVariant("z_DZ_119", false), GetMidPointVariant("z_DZ_252", false) }) DisplayChatText("DGZgoodJourney") end end --End of function OnPlayerRadioCall() function spawn_bot_40178() Log("Spawning bot 40178") CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForIngameDateTime, DateTimeCreate(2024, 7, 29, 15, 50, 20)) Log("Waited until 15:51 to spawn bot_40178") SpawnTrainsetOnSignalAsync("bot_40178", FindSignal("L1_2966"), 600, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.EN76_006, false) }, function(trainset) AiTrains[10] = trainset trainset.SetState(DynamicState.dsAccFast, TrainsetState.tsTrain, true) trainset.SetTimetable(LoadTimetableFromFile("bot_40178.xml"), false) end) VDSetRoute("DZ_X", "DZ_K", VDOrderType.TrainRoute) VDSetRoute("DZ_K", "DZ_C12", VDOrderType.TrainRoute) VDSetCrossingState("L1_296,589_A", false) end) end function spawn_bot_244049_40131() Log("Spawning bot_244049") SpawnTrainsetOnSignalAsync("bot_244049", FindSignal("DZ_A"), 650, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.E6ACTadb_027, false), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.UACS_3351_9307_587_6, false, "", 50, BrakeRegime.P), }, function(trainset) AiTrains[11] = trainset trainset.SetState(DynamicState.dsDecSlow, TrainsetState.tsTrain, true) end) VDSetRoute("DZ_A", "DZ_G9", VDOrderType.TrainRoute) CreateSignalTrigger(FindSignal("DZ_G9"), 40, -- Spawn and set entry signal for bot_40131 when bot 244049 has arrived at DGZ DZA { check = function(trainset) return true end, result = function(trainset) VDSetRoute("DZ_B", "DZ_G11", VDOrderType.TrainRoute) -- Entry for bot_40131 VDSetRoute("DZ_G11", "DZ_O", VDOrderType.TrainRoute) -- Clear bot 40131 to the platform VDSetRoute("DZ_C12", "DZ_E2kps", VDOrderType.TrainRoute) -- Exit for bot_40178 SpawnTrainsetOnSignalAsync("bot_40131", FindSignal("DZ_B"), 800, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.EN76_006, false), CreateNewSpawnVehicleDescriptor(LocomotiveNames.EN76_006, false) }, function(trainset) AiTrains[14] = trainset trainset.SetState(DynamicState.dsAccFast, TrainsetState.tsTrain, true) trainset.SetTimetable(LoadTimetableFromFile("bot_40131.xml"), false) end) --Trigger for deletion of bot 40131 CreateSignalTrigger(FindSignal("L1_2955"), 362, { check = function(trainset) return true end, result = function(trainset) DespawnTrainset(AiTrains[14]) end }) end }) end function spawn_bot_441051() if (bot_441051_spawned == false) then bot_441051_spawned = true -- Prevent this function from executing more then once Log("Called: function spawn_bot_441051()") CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForIngameDateTime, DateTimeCreate(2024, 7, 29, 16, 2, 55)) Log("Spawing bot 441051") SpawnTrainsetOnSignalAsync("bot_441051", FindSignal("DZ_A"), 1340, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.ET22_243, false), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 40, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainer1x20", 40, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 40, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 40, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 40, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainer1x20", 40, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainer1x40", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 50, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "RandomContainerAll", 60, BrakeRegime.P) }, function(trainset) AiTrains[13] = trainset trainset.SetState(DynamicState.dsDecSlow, TrainsetState.tsTrain, true) end) VDSetRouteWithVariant("DZ_N6", "DZ_U202", VDOrderType.TrainRoute, { GetMidPointVariant("z_DZ_55", true), GetMidPointVariant("z_DZ_56", true), GetMidPointVariant("z_DZ_102", false), GetMidPointVariant("z_DZ_104", false), GetMidPointVariant("z_DZ_105", true), GetMidPointVariant("z_DZ_106", true), GetMidPointVariant("z_DZ_201ab", true), GetMidPointVariant("z_DZ_201cd", true), GetMidPointVariant("z_DZ_202", false), GetMidPointVariant("z_DZ_204", false), GetMidPointVariant("z_DZ_205", false) }) VDSetRoute("DZ_F", "DZ_N6", VDOrderType.TrainRoute) VDSetRoute("DZ_A", "DZ_F", VDOrderType.TrainRoute) DisplayChatText("DGZtrain441051Siding") DisplayChatText("Driver441051Siding") CreateSignalTrigger(FindSignal("DZ_U202"), 100, { check = function(trainset) return true end, result = function(trainset) CreateSignalTrigger(FindSignal("DZ_Z"), 800, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("DZ_S102", "DZ_K", VDOrderType.TrainRoute) -- routing for bot_223412 when bot_441051 is out of the way VDSetRoute("DZ_K", "DZ_C10", VDOrderType.TrainRoute) end }) end }) end) else Log("441051 has already spawned, not doing it again.") end end function spawn_bot_4130() Log("Waiting until 16:04 to spawn bot 4130") CreateCoroutine(function() coroutine.yield(CoroutineYields.WaitForIngameDateTime, DateTimeCreate(2024, 7, 29, 16, 3, 32)) SpawnTrainsetOnSignalAsync("bot_4130", FindSignal("DZ_X"), 500, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.ED250_018, false) }, function(trainset) AiTrains[12] = trainset trainset.SetState(DynamicState.dsAccFast, TrainsetState.tsTrain, true) end) VDSetRoute("DZ_C12", "DZ_E2kps", VDOrderType.TrainRoute) VDSetRoute("DZ_K", "DZ_C12", VDOrderType.TrainRoute) VDSetRoute("DZ_X", "DZ_K", VDOrderType.TrainRoute) Log("Spawned bot 4130") DGZ_departure() --Call departure function, the signal trigger activated when bot 4130 reaches signal DZ_K end) end function spawn_bot_223412() VDSetRoute("DGHK_L", "DGHK_Hkps", VDOrderType.TrainRoute) Log("Spawning bot 223412") SpawnTrainsetOnSignalAsync("bot_223412", FindSignal("DGHK_L"), 250, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.EU07_068, false), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5351_989_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3151_5349_475_9, false, FreightLoads_412W_v4.Coal, 23, BrakeRegime.G) }, function(trainset) AiTrains[15] = trainset trainset.SetState(DynamicState.dsAccFast, TrainsetState.tsTrain, true) end) CreateTrackTrigger(FindTrack("t25653"), 120, 1, { check = function(trainset) return true end, result = function(trainset) VDSetRoute("DZ_Z", "DZ_S102", VDOrderType.TrainRoute) end }) end function spawn_bot_443945() SpawnTrainsetOnSignalAsync("bot_443945", FindSignal("DW_H"), 12, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.ET22_911, false), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3947_512_5, false, "T_beam", 60, BrakeRegime.P) }, function(trainset) StaticTrains[17] = trainset trainset.SetState(DynamicState.dsAccSlow, TrainsetState.tsTrain, true) end) Log("Clearing 443945") VDSetRoute("DW_H", "DW_Bkps", VDOrderType.TrainRoute) DisplayChatText("DGW443945lefttrack") end function spawn_scenery_train_Kzl() SpawnTrainsetOnSignalAsync("scenery_train_Kzl", FindSignal("Kzl_J"), 2400, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.Ty2_540, false), --EU07_085 --Ty2_540 CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10ou_5051_2000_608_3, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10nou_5051_2008_607_7, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.Adnu_5051_1900_189_7, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.Adnu_5051_1908_095_8_, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10ou_5051_2000_608_3, false), CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B10nou_5051_2008_607_7, false) }, function(trainset) AiTrains[21] = trainset trainset.SetState(DynamicState.dsDecSlow, TrainsetState.tsTrain, true) end) Log("scenery_train_Kzl spawned") end function spawn_bot_414062() SpawnTrainsetOnSignalAsync("bot_441051", FindSignal("DTA_C2"), 1200, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.ET25_002, false), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Pipeline", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Pipeline", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Steel_circle", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Steel_circle", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Steel_circle", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Steel_circle", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Steel_circle", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Sheet_metal", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Sheet_metal", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Sheet_metal", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Sheet_metal", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Sheet_metal", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Steel_circle", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Pipeline", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Pipeline", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Pipeline", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Pipeline", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Sheet_metal", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "T_beam", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Steel_circle", 60, BrakeRegime.P), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.SGS_3151_3944_773_6, false, "Steel_circle", 60, BrakeRegime.P) }, function(trainset) StaticTrains[22] = trainset trainset.SetState(DynamicState.dsAccSlow, TrainsetState.tsTrain, true) end) VDSetRouteWithVariant("DTA_C2", "DTA_Akps", VDOrderType.TrainRoute, { GetMidPointVariant("z_DTA_5", false), GetMidPointVariant("z_DTA_4", false), GetMidPointVariant("z_DTA_1", false) }) Log("Bot 414062 spawned") end function SDn_static_scenery_trains() -- Spawn static scenery train at Dandowka SpawnTrainsetOnSignalAsync("static_train_424046", FindSignal("SDn1_J"), 20, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.ET22_644, false), CreateNewSpawnVehicleDescriptor(LocomotiveNames.ET22_256, false), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, true, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, true, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, true, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, true, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, true, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, true, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, true, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, true, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, true, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, true, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, true, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, true, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames._441V_31516635512_5, false, FreightLoads_412W_v4.Coal, 63, BrakeRegime.G), }, function(trainset) StaticTrains[1] = trainset trainset.SetState(DynamicState.dsStop, TrainsetState.tsTrain, true) end) SpawnTrainsetOnSignalAsync("static_train_464026", FindSignal("SDN1_F"), 32, false, false, true, { CreateNewSpawnVehicleDescriptor(LocomotiveNames.E6ACTa_016, false), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_177_6, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_177_6, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_177_6, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_177_6, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_177_6, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_177_6, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_177_6, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_177_6, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), CreateNewSpawnFullVehicleDescriptor(FreightWagonNames.EAOS_3356_5300_118_0, false, FreightLoads_412W_v4.Coal, 60, BrakeRegime.G), }, function(trainset) StaticTrains[2] = trainset trainset.SetState(DynamicState.dsStop, TrainsetState.tsTrain, true) end) end function AllowPassSignal() return true end First I uncouple wagons and then I do all things following instruction:
jeroezie Posted December 26, 2024 Author Posted December 26, 2024 Temporary mission.lua file for the EU07 variant: Dandowka_Towarowa_EU07.zip 1
Indiana Posted December 27, 2024 Posted December 27, 2024 (edited) Now it works, but anyway is needed to wait for signal till 15:06 even if loco is ready. Edited December 27, 2024 by Indiana
jeroezie Posted December 27, 2024 Author Posted December 27, 2024 9 hours ago, Indiana said: Now it works, but anyway is needed to wait for signal till 15:06 even if loco is ready. I know, but tbe ai trains run on a schedule, als all schedules are timed using seconds since start time of the scenario. I can not simply change the start time of the scenario, that would be way to much work. I hope the bug with the shunting route gets fixed.
Recommended Posts