Sorry, there was one file missing in the pack. Here the correct one for x.3973 or x.3974.
2/11/17: pack removed because new release available
Activity randomizing
#22
Posted 01 November 2017 - 01:19 AM
Thank you, Carlo.
Now the weather activity works. This gives OR a further complement in the direction of realistic representation.
avo
Now the weather activity works. This gives OR a further complement in the direction of realistic representation.
avo
#23
Posted 01 November 2017 - 03:44 PM
Thanks Carlo.
So, I set both randomization options to the value of 3 and with great interest I expected what would happen.
Testing activities is a rather time-consuming process, thus no conclusions for today.
But I want to send you an error (which I'm not able to repeat - of course! Events now fire randomly). Below is the end of OpenRails.log:
...
SSSSSSSSSSSS$WSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS$W$
Information: Ignored missing animations data in shape c:\program files (x86)\microsoft games\train simulator\routes\whitefish9_rr\shapes\coaltower.s
C
Error: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
at System.ThrowHelper.ThrowArgumentOutOfRangeException()
at System.Collections.Generic.List`1.get_Item(Int32 index)
at Orts.Simulation.Physics.Train.SearchBackOfTrain(Int32& iLocoUnpoweredCar)
at Orts.Simulation.Physics.Train.CheckLocoPower(Single elapsedClockSeconds)
at Orts.Simulation.Physics.Train.CheckFailures(Single elapsedClockSeconds)
at Orts.Simulation.Physics.Train.Update(Single elapsedClockSeconds)
at Orts.Simulation.Simulator.Update(Single elapsedClockSeconds)
at Orts.Viewer3D.Viewer.Update(RenderFrame frame, Single elapsedRealTime)
at Orts.Viewer3D.Processes.GameStateViewer3D.Update(RenderFrame frame, Double totalRealSeconds)
at Orts.Viewer3D.Processes.UpdaterProcess.Update()
at Orts.Viewer3D.Processes.UpdaterProcess.DoUpdate()
at Orts.Viewer3D.Processes.UpdaterProcess.UpdaterThread()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
Fail:
Information: Game.PopState()
It may say something for you.
I'll do more tests in next days, and I'm looking forward to appreciate this new feature!
Thanks for your work,
Mirek
So, I set both randomization options to the value of 3 and with great interest I expected what would happen.
Testing activities is a rather time-consuming process, thus no conclusions for today.
But I want to send you an error (which I'm not able to repeat - of course! Events now fire randomly). Below is the end of OpenRails.log:
...
SSSSSSSSSSSS$WSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS$W$
Information: Ignored missing animations data in shape c:\program files (x86)\microsoft games\train simulator\routes\whitefish9_rr\shapes\coaltower.s
C
Error: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
at System.ThrowHelper.ThrowArgumentOutOfRangeException()
at System.Collections.Generic.List`1.get_Item(Int32 index)
at Orts.Simulation.Physics.Train.SearchBackOfTrain(Int32& iLocoUnpoweredCar)
at Orts.Simulation.Physics.Train.CheckLocoPower(Single elapsedClockSeconds)
at Orts.Simulation.Physics.Train.CheckFailures(Single elapsedClockSeconds)
at Orts.Simulation.Physics.Train.Update(Single elapsedClockSeconds)
at Orts.Simulation.Simulator.Update(Single elapsedClockSeconds)
at Orts.Viewer3D.Viewer.Update(RenderFrame frame, Single elapsedRealTime)
at Orts.Viewer3D.Processes.GameStateViewer3D.Update(RenderFrame frame, Double totalRealSeconds)
at Orts.Viewer3D.Processes.UpdaterProcess.Update()
at Orts.Viewer3D.Processes.UpdaterProcess.DoUpdate()
at Orts.Viewer3D.Processes.UpdaterProcess.UpdaterThread()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
Fail:
Information: Game.PopState()
It may say something for you.
I'll do more tests in next days, and I'm looking forward to appreciate this new feature!
Thanks for your work,
Mirek
#24
Posted 02 November 2017 - 12:12 AM
Thanks for testing this. In fact there was a bug. Here the new pack for x.3972 or x.3973.
4/11/17: File removed because new version available
4/11/17: File removed because new version available
#25
Posted 02 November 2017 - 03:33 PM
Hi,
I did some more quick tests with passenger trains (using rev_5 pack).
Both Act and Weather randomizing seem to work fine for me.
A small proposal to this: "station depart time: the depart time is delayed on 70% of the cases"
Could depart times also be randomly shortnened - at, say, 30% cases? Driving a passenger train with delays *only* seems to me to be somewhat unrealistic...
I'm going to do more tests, this time with huge AI traffic - let's see what happens.
But, in general, the idea of randomization is a great one, and congratulations you had it!
Thanks,
Mirek
I did some more quick tests with passenger trains (using rev_5 pack).
Both Act and Weather randomizing seem to work fine for me.
A small proposal to this: "station depart time: the depart time is delayed on 70% of the cases"
Could depart times also be randomly shortnened - at, say, 30% cases? Driving a passenger train with delays *only* seems to me to be somewhat unrealistic...
I'm going to do more tests, this time with huge AI traffic - let's see what happens.
But, in general, the idea of randomization is a great one, and congratulations you had it!
Thanks,
Mirek
#26
Posted 03 November 2017 - 01:42 AM
Hi Mirek,
at least in my country trains aren't allowed to depart before official departure time. Anyhow the departure delay calculation algorithm has become more sophisticated in the version you're trying. What is modified now is the number of passengers boarding the train. Increasing that number may or may not lead to departure delay, because timetable departure time and time to board a certain amount of passengers are independent.
The number of passengers boarding the train is increased with probability of 70% at randomization level 3, 60% at level 2 and 50% at level 1.
The added amount of passengers is computed using a pseudogaussian distribution (so less increase is more likely than more increase) up to a maximum which again depends from randomization level.
at least in my country trains aren't allowed to depart before official departure time. Anyhow the departure delay calculation algorithm has become more sophisticated in the version you're trying. What is modified now is the number of passengers boarding the train. Increasing that number may or may not lead to departure delay, because timetable departure time and time to board a certain amount of passengers are independent.
The number of passengers boarding the train is increased with probability of 70% at randomization level 3, 60% at level 2 and 50% at level 1.
The added amount of passengers is computed using a pseudogaussian distribution (so less increase is more likely than more increase) up to a maximum which again depends from randomization level.
#27
Posted 03 November 2017 - 07:33 AM
Carlo,
I agree to all you wrote.
My proposal has to do with number of passengers at stations *only*. As far as I know, this number increases the loading time in the sim, which (in my tests) caused a delay at almost every station, which caused a general delay at the terminal station.
Ex.:
Stn A: Scheduled Arrival 09:50, Expected #Psg: 20 -> scheduled waiting time (say) 1 min -> scheduled depart 09:51
If you (by randomization) increase #Psg to 30, the loading will take 1:30, thus actual depart time would be 09:51:30.
Stn B: ...
If I design train schedule, I plan for a station that there will be 20 psg waiting, so I will schedule a 1 min stop there. But (in the real world) this will never be exactly 20 - the number will be random (following probability functions): sometimes hihger and sometimes lower. That was on my mind. No way I meant leaving stations sooner than scheduled.
Regards,
Mirek
I agree to all you wrote.
My proposal has to do with number of passengers at stations *only*. As far as I know, this number increases the loading time in the sim, which (in my tests) caused a delay at almost every station, which caused a general delay at the terminal station.
Ex.:
Stn A: Scheduled Arrival 09:50, Expected #Psg: 20 -> scheduled waiting time (say) 1 min -> scheduled depart 09:51
If you (by randomization) increase #Psg to 30, the loading will take 1:30, thus actual depart time would be 09:51:30.
Stn B: ...
If I design train schedule, I plan for a station that there will be 20 psg waiting, so I will schedule a 1 min stop there. But (in the real world) this will never be exactly 20 - the number will be random (following probability functions): sometimes hihger and sometimes lower. That was on my mind. No way I meant leaving stations sooner than scheduled.
Regards,
Mirek
#28
Posted 03 November 2017 - 07:40 AM
What I could do is inserting also the possibility that there are less passengers boarding than the standard.
#29
Posted 03 November 2017 - 08:51 AM
ok, that's what I meant.
And - as usual - THANKS for your work and especially for the idea of randomizing events! (I personally love looking at the whole world from the probability point of view.)
Mirek
And - as usual - THANKS for your work and especially for the idea of randomizing events! (I personally love looking at the whole world from the probability point of view.)
Mirek
#30
Posted 03 November 2017 - 02:45 PM
I did this test tonight:
- Randomizing both set to 3; Location Linked Passing On
- Freight activity on single track route, 10 AI trains runnig both ways; 75 mi long run
- Immediately after start I switched to Autopilot (to eliminate my bad driving skills) and let it run
I ran the activity twice. Here are some results:
Situation at the 2nd passing siding (about 25 mi travelled):
Pass 1: the Player is "running yellows" following the AI ahead, time is 08:51:45
Pass 2: the Player gets red and waits for the opposite AI train to pass; it gets green at 08:57:06
Similar differencies were seen on the whole journey!
Arrival time:
Pass 1: 10:22:00
Pass 2: 10:07:21
Weather:
Pass 1: Winter clear almost all the way
Pass 2: After 2 hours it started to snow
Let me be somewhat pathetic: We have entered a new dimension in OR activities!
(Anyone else here enjoyed this new feature?)
Thanks Carlo, thanks!
Mirek
- Randomizing both set to 3; Location Linked Passing On
- Freight activity on single track route, 10 AI trains runnig both ways; 75 mi long run
- Immediately after start I switched to Autopilot (to eliminate my bad driving skills) and let it run
I ran the activity twice. Here are some results:
Situation at the 2nd passing siding (about 25 mi travelled):
Pass 1: the Player is "running yellows" following the AI ahead, time is 08:51:45
Pass 2: the Player gets red and waits for the opposite AI train to pass; it gets green at 08:57:06
Similar differencies were seen on the whole journey!
Arrival time:
Pass 1: 10:22:00
Pass 2: 10:07:21
Weather:
Pass 1: Winter clear almost all the way
Pass 2: After 2 hours it started to snow
Let me be somewhat pathetic: We have entered a new dimension in OR activities!
(Anyone else here enjoyed this new feature?)
Thanks Carlo, thanks!
Mirek