News:

Do you need help?
Simutrans Wiki Manual can help you to play and extend Simutrans. In 9 languages.

[10.18] 0 or negative revenue on very long sea liner

Started by asaphxiix, January 01, 2013, 06:40:48 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

asaphxiix

a bug! Pax going from Coatsand to Nutish make the trip but don't pay a single penny!

this behavior returned to normal after a month's turn.


Quote from: jamespetts on January 01, 2013, 04:07:45 PM
Hmm, noted. I confirm that this can be reproduced with this save. It looks as though those ships have earned revenue in the recent past, so the problem might well be associated with the speed bonus. I shall have to look into this when I get back home.


jamespetts

Thank you for reporting this here. Interesting that it returned to normal - good job that I managed to get the save when the bug occurred. I shall look into that when I get home.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

asaphxiix

it's on and off. mostly they don't get any revenue at all, sometimes they get just a little bit, and sometimes the whole lot of it.

jamespetts

By "on and off", do you mean that it happens entirely sporadically by convoy, or is it on one month and off the next?
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

asaphxiix

It may change state (off/on) at the start of the month.

Iluvalar

Is it possible that you play with pay_total_distance=1 or 2 ?

asaphxiix

I don't think so, I didn't know there exists such an option!

jamespetts

There is no such option in Simutrans-Experimental - the calculation of the revenue works differently here than to Standard.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Iluvalar

Oh sorry, wrong forum :)


But is it possible anyway that some month he gets passengers that come from other sources ? The tend to group together. It happens to me with total_distance=2. Some Pax might take the boat only to travel backward along the coast to reach their final destination.

jamespetts

In Experimental, this will not affect the revenue, as passengers/goods pay revenue based on the length of each journey leg, not their total distance. After all, passengers do not get a discount on London to Birmingham railway tickets just because they decide that they want to travel from London to Oxford via Birmingham.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

asaphxiix

I should state that after a few months of instability, the bug went away, so it probably has to do with new (or actually, old & modified) lines.

jamespetts

#11
I have now looked into this. You might be amused to know that the culprit is the speed bonus system, and this looks more like a design issue than a simple bug. What happens is that, on occasion (perhaps when you modify lines so that point to point averages cannot be used because they have not yet been stored, so the overall average has to be used), the average speed of your ships reaches 7km/h, which falls below the target average speed for ships of the era of 11km/h. This produces a base reference of -37, which, when multiplied by passengers' speed bonus rating (37) for their 840 (210km) tile trip, produces a number less than -1,000, which in turn means that the 1,000 added at the computation stage is not enough to prevent the revenue being negative, and therefore falling back to the minimum revenue, which is 1/10th of the base revenue, which rounds down to zero in many cases (you will see that many of your other ships produce a few cents where this does not round down to zero).

Some reconsideration of how the speed bonus functions might be in order, as this result seems to me excessive for a difference of 4km/h.

Edit: I have now implemented the 25% floor and 400% cap. During this work, I discovered an error in the previous code: there was supposed to be a floor of 1/10th of the base fare for the penalty for having too slow vehicles, but this did not work correctly, which was probably what resulted in your low fares. I have tested the new code, and you now get 140.00c for the journey with 70 passengers, which is much better. There might still need to be some reconsideration of the speed bonus more generally at some stage, but the urgent issue is at least now resolved.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.