Skip to main content
Topic: Boarding-only stops, intercity route settings, etc... (Read 35417 times) previous topic - next topic

Boarding-only stops, intercity route settings, etc...

I was asked to post this FR, since the original author can't/doesn't want/whatever.

In short: when loading things onto vehicle, cargo to farther locations should have higher priority, since it ensures higher profit. If cargo to near stations is loaded first, vehicle can unload it soon and complete the rest of route empty.

My projects... Tools for messing with Simutrans graphics. Graphic archive - templates and some other stuff for painters. Development logs for most recent information on what is going on. And of course pak128!

Re: Load first p****engers (cargo) to farthest destinations

Reply #1
+1 (I agree)

Re: Load first p****engers (cargo) to farthest destinations

Reply #2
If possible, it would be great... but IMHO won't be very realistic.

Re: Load first p****engers (cargo) to farthest destinations

Reply #3
Maby you should be able to set this as a option for a line or schedule.

Re: Load first p****engers (cargo) to farthest destinations

Reply #4
I can imagine the advantages/disadtvantages of both systems.

If you have a system where you have 2 schedules to the end destination, one of them skipping most stations while the other as stoptrain (AH vs ABCDEFGH) then it would be nasty if the stoptrain gets filled with ppl wanting to go to H

If you have a system where schedules share a part of the same route and then go their own way (ABCDEFGH vs ABCDIJKL) it would be most beneficial that the farthest destinations get filled first.

I generally tend to use the 2nd system more than the first one so I would be in favour of this.
However if it's something that could be set as an option of a line: support^2.

Re: Load first p****engers (cargo) to farthest destinations

Reply #5
At least untill a few years ago, Simutrans had behaved so I think. But it was changed, because some people complained that express trains have few p****engers.


For example, if you have two train routes as the following.

Express A - - - - - - - - - F
Local    A - B - C - D - E - F
And A and F are larger cities obviously (this is why express trains serve these stations).

In this case, if the local trains pick up long distance p****engers first, then the local trains will be filled up with p****engers going to F and are less likely to carry p****engers to B. And the express trains will have less p****engers.


But of course, if you don't have express routes, this would be more efficient.

Re: Load first p****engers (cargo) to farthest destinations

Reply #6
As yoshi wrote, it was changed.
I like current behavior, so I don't support this idea.

history.txt
Quote
Release of 86.07

13-Jul-2005 (prissi)
   CHANGE: p****engers and goods are first loaded for the nearest stations the convoi goes. This allows to built local and station skipping highspeed lines.

Re: Load first p****engers (cargo) to farthest destinations

Reply #7
I don't support, either.
But you can change the behaviour for each convoi (or each line), then I would support.

 

Re: Load first p****engers (cargo) to farthest destinations

Reply #8
Oh, now I understand.

Still, as a switch per schedule it sounds reasonable…?

My projects... Tools for messing with Simutrans graphics. Graphic archive - templates and some other stuff for painters. Development logs for most recent information on what is going on. And of course pak128!

Re: Load first p****engers (cargo) to farthest destinations

Reply #9
Not really, the load first is way more efficent. The old system was load first waiting goods first. That way, if your stuff wait really long, it was almost never loaded, since new stuff was inserted at the list top.

Re: Load first p****engers (cargo) to farthest destinations

Reply #10
Hm, but what we are discussing here is a system working exactly opposite to the current. When I can, I will look at code, maybe it can be as simple as iterating backwards from end? Let's hope :)

My projects... Tools for messing with Simutrans graphics. Graphic archive - templates and some other stuff for painters. Development logs for most recent information on what is going on. And of course pak128!

Re: Load first p****engers (cargo) to farthest destinations

Reply #11
You must iterate twice: First make sure you are not p****ing the same station twice and then start from before that entry. Apart from that things woul dbe identical. But since it break the concept of express lines, I would rather say, that this is not the right place to fix problems which are the innermost incentive to gaming. Imho, it is the task of the player to upgrade capacity, that this problem is solved (and a direct line would solve it with the current system, while with the proposed system all intermediate stops will be clogged until there is overcapacity on the express route).

Re: Load first p****engers (cargo) to farthest destinations

Reply #12
Very well, now I see why this is important to always stay that way...

My projects... Tools for messing with Simutrans graphics. Graphic archive - templates and some other stuff for painters. Development logs for most recent information on what is going on. And of course pak128!

Re: Load first p****engers (cargo) to farthest destinations

Reply #13
Both ways (old and new) have problems, because both can lead to starvation (if there is a steady flow of high priority people/goods, low priority ones accumulate).  That's a known problem with static priorities.

A (somewhat) crazy idea just occurs to me:
  - Take p****engers/goods of the group with higher number waiting

If a vehicle is at A and its route is A-B-C-D and the people waiting to go to B is 100, to C is 300, to D is 200, take people going to C.

Re: Load first p****engers (cargo) to farthest destinations

Reply #14
That sounds reasonable isidoro!
support.+

Re: Load first p****engers (cargo) to farthest destinations

Reply #15
A (somewhat) crazy idea just occurs to me:
  - Take p****engers/goods of the group with higher number waiting

If a vehicle is at A and its route is A-B-C-D and the people waiting to go to B is 100, to C is 300, to D is 200, take people going to C.

Then the route is likely to be filled up with p****engers (or goods) going to the largest city (or largest consumer) among these. This cannot be a solution for this issue...

Re: Load first p****engers (cargo) to farthest destinations

Reply #16
This is a different problem, in my opinion.

If the total amount of generated p****/goods generated is over the capacity of the transport system to deliver it, p****/goods will accumulate, no matter what will be given priority.

The problem addressed is different. If priority is only based on distance to the station, it is easy that some vehicles steal p****/goods from other more specialized ones (express trains, quick connections, ...), no matter the way we give priority.  Giving priority to accumulating goods, those vehicles will steal p****/goods only if there is a lot.

Think the other way around: if we serve the smallest quantity, then all goods for the big city/consumer will not get completely through as well.

Re: Load first p****engers (cargo) to farthest destinations

Reply #17
Unfortunately, I'm talking about the very problem addressed in this thread.

Take an example above.

Express A - - - - - - - - - F
Local    A - B - C - D - E - F

And let's ****ume A is the largest city, while F is the second largest.


With the current loading system, convois serving the local services take p****engers going to B, C, D, and E first and they carry p****engers to F if there is any spare capacity, but they don't need to. Therefore, the number convois seving the local line can be minimal. And the convois serving the express line simply need to carry the leftover of the local services. And the number of the "leftover" is relatively stable.

But with your proposed loading system, local services will be likely to be filled up with p****engers going to F first, because the number of p****engers going to F is simply larger than that of p****engers going to other destinations. This means the number of convois serving the local line will be surely larger than the above case to carry all the p****engers to B - E. In addition, express route will become less profitable, since the number of "leftover" will fluctuate, depending on which p****engers the preceding local convois load first.


In short, your proposal will be likely to reduce the utilisation rate of the convois.

Re: Load first p****engers (cargo) to farthest destinations

Reply #18
I'm not convinced about what you say.  For two reasons:
  • In your example, the main objective of the express line is to take care of that surplus.  So, if there is accumulation of those p****engers, simply increase the number of vehicles of the express line.  Local line vehicles will help only when there is surplus for F.  If they keep helping too much and the number of vehicles are enough (that second clause is the difference between our positions, I think), the number of p****engers to B, C, D, and E will grow and take precedence (aging mechanism)
  • The second reason is choosing another example in which C is the large city and the express line goes directly to C:  A --> C.  With the present system and following your same reasoning D, E, and F will not be served.  Am I right?
Though I may be wrong.  My intuition tells me that if I had a transportation office and packets for a certain destination accumulated, I would try to send them asap in whatever vehicle that could handle them.

I think the best way to test it is making a patch.  If I have time, I will try and see.  Just curious about if my intuition is right or wrong.

Re: Load first p****engers (cargo) to farthest destinations

Reply #19
But you can change the behaviour for each convoi (or each line), then I would support.

this would be great!
an option local/far distance line to be set for each line in line management...

Re: Load first p****engers (cargo) to farthest destinations

Reply #20
Quote
The second reason is choosing another example in which C is the large city and the express line goes directly to C:  A --> C.  With the present system and following your same reasoning D, E, and F will not be served.

If C is a large city, then I would have an express service which skips B like A---C-D-E-F and local service between A and C, because most p****engers to D, E, & F originate from A and C and the number of p****engers between A and C is large. I could add non-stop services only between A and C as well, if neccesary. Anyway, there is no point to operate long distance local services, if there is an express route, because it's a waste of money.

Re: Load first p****engers (cargo) to farthest destinations

Reply #21
Quote from: yoshi on November 27, 2008, 11:46:56 AM
But you can change the behaviour for each convoi (or each line), then I would support.

this would be great!
an option local/far distance line to be set for each line in line management...

I would definitely support this - you could make expresses load from farthest to nearest and locals from nearest to farthest.  It would add more flexibility and improve gameplay IMHO, so therefore a good idea.

Re: Load first p****engers (cargo) to farthest destinations

Reply #22
Thank you for discussion. It would be great, if there will be a switch to load first farther/nearer destinations.

Re: Load first p****engers (cargo) to farthest destinations

Reply #23
A (somewhat) crazy idea just occurs to me:
  - Take p****engers/goods of the group with higher number waiting

I have a converse view about this.
IMHO, take lower number waiting fitst is more useful for goods and p****engers.

Re: Load first p****engers (cargo) to farthest destinations

Reply #24
Quote
take lower number waiting fitst is more useful for goods and p****engers.

And that's version number four!

Is this just me, or is the solution to this problem really simple?

Presumptions:
1) Profits are for all p****engers relatively the same (2*distance -> 2*profit)
2) Vehicle load percentages are (close to) 100%

Situations:
A) There is only one connection between two cities
B) There are two connections between cities: one express (no intermediate stops) and one with intermediate stops.

Conclusions
A) It absolutely does not matter whatever system you choose, every p****enger needs to be transported. In which order you do that is irrelevant.
B) For the express-connection to work you need the current system (start loading with p****engers for the nearest stop).

General conclusion:
The current system is the best of all the alternatives.

If the connections are not working well (p****enger overflow at stations or vehicle load percentage way under 100%) tune the capacity of the connections. Fiddling with loading orders won't help you.

Bob Marley: No woman, no cry

Programmer: No user, no bugs




Re: Load first p****engers (cargo) to farthest destinations

Reply #26
to Combuijs:

You don't have right. There is situation C), usual in city local traffic:
there are two lines:
LONG: A-B-C
SHORT: A-B (because there is more p****engers to be transported between A and B)

Then the problem is, that I could not influence the timetable. When comes the LONG line first, it loads p****engers from A to B and is full between A and B, and empty between B and C. The SHORT line is then empty between A and B (because p****engers used the LONG line).

Do you understand?

Re: Load first p****engers (cargo) to farthest destinations

Reply #27
Quote
Do you understand?

Yep, I do. It's a valid example. I personally would have solved this by making two lines:

A-B
B-C (or A-C, or even both)

which is far easier to configure in terms of capacity. But your example may have advantages as well (no extra hop for p****engers).

So two solutions make sense: load nearest first and load farthest first. The other two (taking lowest/highest number of p****engers for a destination first) are only useful when you are lacking capacity, so they can be better solved by increasing capacity.
Bob Marley: No woman, no cry

Programmer: No user, no bugs



Re: Load first p****engers (cargo) to farthest destinations

Reply #28
Combuijs wrote: So two solutions make sense: load nearest first and load farthest first. The other two (taking lowest/highest number of p****engers for a destination first) are only useful when you are lacking capacity, so they can be better solved by increasing capacity.

Agree. The switch to load nearest/farthest destination first should be useful. The switch should be defined for the line.

Re: Load first p****engers (cargo) to farthest destinations

Reply #29
The best would be treating the p****enger with their arrived order. I guess we don't have this because the program will have to remember more information.

The switch to load nearest/farthest destination first should be useful. The switch should be defined for the line.

I have to disagree with being able to switch the load nearest/farthest depending on the line. P****enger are to be served and not to be "ordered" to take or wait until which train.

I see this way.

We can not afford to treat p****enger in their arriving order because of process power of cpu.
                                                           V
Then we've decided to treat from the nearest ****uming that's p****engers behavior as customer.
                                                           V
Forcing p****engers behavior seems little odd from my view of this simutrans. I believe as one company,
they should treat customer evenly. Not prioritizing some of them to the interest of company.
Company should work to follow the customer's behavior.

Re: Load first p****engers (cargo) to farthest destinations

Reply #30
I agree with you colonyan. The game should behave as it would be in real life. So the p****engers/goods who wait longest should be first on the train.

Re: Load first p****engers (cargo) to farthest destinations

Reply #31
The problem is ....

At every time come p****enger.

When there a p****anger want to A, and some for A come, then all p****enger to A will get a group ... so you don't know if they wait long ore not ....

I think, it is not good to change how simutrans load the trains ...
I hope you understand my English

Re: Load first p****engers (cargo) to farthest destinations

Reply #32
And you should consider the increase in memory and processing time any new method would probably generate on big and well developed maps with thousands and thousands of p****engers. Some things just need to simplified quite a bit to be still playable and can't be done all that realistically.
  
***** PAK128 Dev Team - semi-retired*****

Re: Load first p****engers (cargo) to farthest destinations

Reply #33
I do understand that's probably not possible to program. But to build those options (near/far) shouldn't be build in because it's far from realistic...so stay with the way it's right now..

Re: Load first p****engers (cargo) to farthest destinations

Reply #34
...except that now, it is set to "near"...

My projects... Tools for messing with Simutrans graphics. Graphic archive - templates and some other stuff for painters. Development logs for most recent information on what is going on. And of course pak128!