Jump to content

Indiana

Member
  • Posts

    26
  • Joined

  • Last visited

Other groups

SimRail Early Access

Reputation

15 Good

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Now it works, but anyway is needed to wait for signal till 15:06 even if loco is ready.
  2. -- 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:
  3. Cześć może ktoś podpowiedzieć co zrobić aby na koniec scenariusza dostać się do szopy? Wjeżdżam na tor, zatrzymuję się, włączam oświetlenie manewrowe, ale sygnał do manewrów nie zostaje podany. Kabina tył ma ustawione światło lewe białe a przód prawe białe (tak jak do jazdy manewrowej).
  4. W dniu 09.06.2023 ok. godz. 11:00 prowadziłem skład, który utknął na posterunku Dorota jak wiele innych, ponieważ gracz na Juliuszu nie akceptował WBL od Doroty. Po prawie 30 minutach zdecydowałem się usiąść na nastawni Dorota i rozładować zator. Próbowałem kontaktować się z Juliuszem na czacie oraz przez telefon niestety bezskutecznie. Porozumiałem się z graczami oczekującymi na przejazd, że będę ich wypuszczał na Sz i żeby uważali na poprzedzające składy. Była to jedyna opcja obejścia brak umiejętności gracza na Juliuszu. Niestety system (gra) wyrzuciła mnie z nastawni za wypuszczanie pociągów na zajęty szlak. przy braku komunikacji z sąsiednią nastawnią czyli Juliuszem nie ma możliwości otrzymania informacji czy skład dojechał czy nie i nie ma sensu na taką czekać. Maszyniści wiedzieli jaka jest sytuacja, każdy otrzymał stosowną informację, żeby uważać na skład, który znajduje się przed nim. Co się dzieje w sytuacji gdy zostaje się usuniętym z nastawni? Czy naliczane są jakieś ujemne punkty? Jakie są tego konsekwencje? Człowiek działa z dobrej woli, aby upłynnić ruch i z nie swojej winy zostaje ukarany. Jeżeli ktoś z graczy pamięta nick gracza z Juliusza lub go zaraportował to proszę o uzupełnienie nicku do tego postu. Może ktoś kto czyta, również będzie w stanie potwierdzić to zdarzenie bo akurat tamtędy przejeżdżał.
  5. Nie próbowałem, przy kolejnej takiej awarii spróbuję. Dziękuję za sugestię.
  6. Czy ktoś miał z Was problem z komputerem w nastawni, który wyświetla rozkład? Niestety nie da się wznowić na nim sesji/połączenia. Poza tym komputerem reszta działa poprawnie. Jaka może być tego przyczyna, jak temu zapobiegać?
  7. Do powyższego tematu daję link z pomysłem na rozwiązanie problemu:
  8. Po ostatnich incydentach na nastawniach, spowodowanych albo afk dyżurnego albo nieumiejętnością obsługi nastawni, wpadł mi do głowy następujący pomysł: Asystent Dyżurnego Ruchu Opis funkcji celem asystenta jest pomoc osobom początkującym, przez osoby bardziej doświadczone, które nie radzą sobie z obsługą nastawni. W razie problemów na serwerze z płynnością ruchu, gracz doświadczony mógłby wejść jako asystent do nastawni po uprzednim zaakceptowaniu przez dyżurnego ruchu. Asystent miałby możliwość obsługi pulpitu kostkowego/komputera. Można dodać możliwość wyrzucenia z nastawni asystenta, pomocne w sytuacjach gdyby asystent się z dyżurnym nie dogadywał itp. Dodatkowo próba wejścia asystenta do nastawni wyświetla dyżurnemu komunikat o tym i dyżurny może ZAAKCEPTOWAĆ lub ODRZUCIĆ prośbę. Brak reakcji na powyższy komunikat w przeciągu powiedzmy minuty powoduje wyrzucenie dyżurnego z gry, gdyż jest to oznaką tego, że dyżurny jest AFK. Możliwość przebywania drugiej osoby na nastawni nie dość, że pomoże początkującym, pozwoli wyeliminować sytuacje, które powodują zator jak również urozmaici i uatrakcyjni rozgrywkę. Można dodać również kanał dla wewnętrznej komunikacji głosowej w nastawniach dla obu osób.
  9. o właśnie, bo ja korzystałem z: https://panel.simrail.eu/main/map.html
  10. Szanowna administracjo, Czy istnieje możliwość, aby dodać na mapie numery pociągów dla graczy i botów?
  11. Szanowna administracjo, Dzisiejsza sytuacja na nastawni Grodzisk Mazowiecki to jedno wielki nieporozumienie. Wszystkie składy w obu kierunkach stały zblokowane, bo jakiś baran nick maciox wszedł na nastawnię i poszedł sobie grillować zamiast obsługiwać ruch. Gracze stoją od ponad godziny i wychodzą z serwera ponieważ nie da się grać. Serwer PL2 wymaga aktualnie restartu, bo żaden pociągnie nie pojedzie planowo. Kolejna sprawa to usunięcie limitu 50 znaków w uwagach. Nie ma sensu wypisywania tam wypracować, jeśli niekiedy starczy jedno zdanie opisujące sytuację.
  12. Nie wiem czy nie należałoby przejrzeć ograniczeń prędkości na niektórych odcinkach. Np. koło Juliusza czy między Tunel a Charsznica gdzie jest ograniczenie 40 za chwilę 50 po czym znowu 40 w tak niewielkiej odległości, że to nonsens. Lepiej dać jedno 40 i nie wprowadzać zamieszania. Koło Juliusza gdzieś na przejeździe jest podobnie 20 30 20 czy jakoś tak.
  13. sytuację sprzed znam od Ciebie w sumie z opowieści przez radio, bo osobiście nie prowadziłem tego pociągu przed restartem. Wszedłem na tą maszynę po restarcie i odjęło mi punkty po chwili jazdy. Wiem, że jak wszedłem to rozkład z boku pokazywał, że dojeżdżam na Twoją stację, a po chwili nastąpiło uaktualnienie wszystkiego, naliczenie ujemnych punktów i rozkład wrócił do normy.
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy