News:

Use the "Forum Search"
It may help you to find anything in the forum ;).

pak128.Britain balancing - the big one!

Started by The Hood, May 01, 2013, 09:07:59 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

The Hood

Right. I've decided it's time we attacked the big balancing beast. It's been ages since it was last done and there are mountains of new vehicles and ways that were never properly balanced - there've been a growing number of comments to this effect. It's a large task and I'd like to get it right first time rather than spending ages revising things and getting in a mess. The purpose of this thread is to raise a few points and ask for opinions so we can make it work as best and easily as possible. Please respond to as many of these as you can. Particularly valuable is the experience of players who have played longer games.

1.       Speedbonus
-          Do we need it? Advantages are that it provides an incentive to retire slow, old vehicles as overall speeds increase as they will no longer be profitable. Additionally it allows extra revenue to be generated for faster convoys, although this would be balanced by higher costs for faster units to discourage their overuse. Against this, it is hard to balance different convoys against each other for the same locomotive: e.g. for a mixed traffic locomotive capable of 150km/h it has proved difficult in the past to get a consistent cost balance for both hauling passengers (at 150km/h) and goods (at lower speeds such as 80km/h). This is additionally complicated as currently different goods are more or less speed-critical. I'm considering dropping it: it makes balancing hard and inconsistent and creates anomalies. Sure, without it you can run all sorts of out of date convoys that would still be profitable and you could run massive slow suburban trains on high-capacity long-distance routes, but given the way standard doesn't really allow for balancing this I think we can just let people do what they want in this regard – keep it simple. Pak.german is an example of a pakset where no speedbonus is used and this is regarded as a hard pak to play economically.
2.       Speed
-          Currently the aim is to have the top speed as the top "normal" speed rather than whatever record that vehicle may have broken on special attempts. Some may be reduced to artificially lower values (e.g. suburban units) to distinguish them from longer distance expresses. They would have higher acceleration to compensate.
3.       Overall power
-          Last time I just worked out a distance (in tiles) which I thought the trains should reach top speed by with an "appropriate" convoy and adjusted the gear setting to get the desired effect. Expresses take longer to accelerate than suburbans. One side effect was that in order to reach top speed with the "appropriate" convoy in a reasonable distance (rather than 30 tiles!) was that the train could still pull a longer convoy quite comfortably, just with less acceleration. This then allowed the trains to carry more than intended and therefore generate more revenue and high profits. Not sure how to solve, other than generally reducing accelerations, especially for steam locos.
4.       Power and gear
-          Currently in standard code, the effective power is calculated as power * gear. This is somewhat confusing as you have to do the calculation yourself to work out which vehicle is best. At the minute, powers are intended to be as close to known real life values as possible. Gear is then adjusted as stated in (3) above to get the desired acceleration. I would propose having gear set as constant for all vehicles with the knock-on that power would not reflect real life values but would mean that performance in game was easy to compare.
5.       Factory outputs/requirements
-          I'm not really sure how best to balance these but presumably along a "convoys per month" approach, which would obviously increase in capacity over the timeline. The complication is the lack of upgrade/removal of obsolete industries later in the timeline in standard (except using public player), unlike experimental. This leaves small capacity factories in the later stages of the game. Any thoughts?
6.       Monthly costs of ways, bridges and stations compared to per km costs and profits
-          Revenue is generated per goods tile transported. Running costs of vehicles are per km so can be easily related to the revenue in this way. Way maintenance costs are per tile per month – so can probably best be related to the revenue generated by determining a "convoys per month" over the tile and speed necessary for certain vehicles (again this complicates discussion on speedbonus – with no speedbonus there is less incentive to use expensive, faster tracks other than higher capacity – but is the higher capacity enough of an incentive?). Stations are tricker. I believe in standard all stations have to have a fixed multiple of some standard station cost "set by level=" which means station costs are very high in the early game (slow speeds, low capacities) but trivially small when dealing with huge numbers of pax later in the game when many convoys stop per month. Has this changed in the code of standard now? If not, how best to deal with it?
7.       Mail
-          It's been suggested that too much mail is generated relative to passengers. The best solution I can think of, given this is hard wired into the standard code, is as jamespetts suggests and increase mail capacities by a factor 10 and decrease mail revenues by a factor of 10, effectively making each unit of mail in game 1/10 of what it is currently.
8.       Any other comments?

jamespetts

This will be a large but worthwhile task. Very best wishes for that marathon! Reading the details of this post reminds me of just how much that things have changed in Experimental compared to Standard for the purposes of balancing, especially on physics and revenue.

One or two other things to consider: as for mail, we also need to reduce the weight of bundles of mail compared to bags of mail by a factor of ten if we are to increase capacities and reduce revenue (and change the name from "bags" to "bundles", too). Also, if you are about balancing industry production, you will want to implement the industry boost and related features added to the Standard code now some time ago, as these are worthwhile features and have the potential to have a significant effect on balancing.

Also, Standard has now a variable dwell time ("loading_time=" in the .dat files) which ought to be used (this is another good way of distinguishing short and long distance vehicles; you might want to consider using this instead of artificially reducing the maximum speed of short distance vehicles), and Standard even now has a parameter for fixed cost for vehicles, although I cannot remember whether this is used. Certainly, if this is used, it ought to be implemented.
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.

The Hood

Quote from: jamespetts on May 01, 2013, 11:38:41 AM
Also, if you are about balancing industry production, you will want to implement the industry boost and related features added to the Standard code now some time ago, as these are worthwhile features and have the potential to have a significant effect on balancing.

Yes - I remember this was changed but can't remember what the various options are - can anyone enlighten me here?

Quote
Also, Standard has now a variable dwell time ("loading_time=" in the .dat files) which ought to be used (this is another good way of distinguishing short and long distance vehicles; you might want to consider using this instead of artificially reducing the maximum speed of short distance vehicles), and Standard even now has a parameter for fixed cost for vehicles, although I cannot remember whether this is used. Certainly, if this is used, it ought to be implemented.

Interesting. I'll definitely make use of that. Do you know the details of how it works?

jamespetts

The number after loading_time= is a number in milliseconds, representing the dwell time of the vehicle at the stop. I am not sure how limited that the range of permissible numbers are.

As to the factory features, see here for an explanation, and here for a clarification.
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.

The Hood

Aha - the factory increase sounds a worthwhile way of boosting productivity over time. The game has moved on since I last balanced...

TurfIt

1. Speedbonus.  Instead of thinking of a bonus, think of the penalty. Without this, there's no reason to not overload convois. Might as well fill the tracks the with trains that can barely move.
4. Power and Gear.  Nuking gear would great for playablility; One could actually use the ingame display instead of resorting to spreadsheets to determine the locos performance. At odds with those sandbox players that like seeing the 'real' power value though.
7. I rarely find it worthwhile to setup a parallel mail network as it is. I suspect the overabundance of mail is an experimental thing. For sure at 1/10th you wouldn't want to be building dedicated mail stations like you have to now. i.e. As long as every pax station also enables mail. Also, the scheduling (and lack thereof) doesn't make managing infrequent convois overly nice to deal with.

As for the new axle_load, loading_time, and fixed_cost parameters, they currently do nothing. Only present in the beschs. If a pak actually wants to use them, maybe that would spur somebody to finish the code. Would need discussion on how they should work...

The Hood

Quote from: TurfIt on May 01, 2013, 09:09:22 PM
1. Speedbonus.  Instead of thinking of a bonus, think of the penalty. Without this, there's no reason to not overload convois. Might as well fill the tracks the with trains that can barely move.
Except you wouldn't shift much goods around and therefore wouldn't make much revenue...?

Quote
4. Power and Gear.  Nuking gear would great for playablility; One could actually use the ingame display instead of resorting to spreadsheets to determine the locos performance. At odds with those sandbox players that like seeing the 'real' power value though.
That's what I'm thinking. Realism types have got experimental...

Quote
7. I rarely find it worthwhile to setup a parallel mail network as it is. I suspect the overabundance of mail is an experimental thing. For sure at 1/10th you wouldn't want to be building dedicated mail stations like you have to now. i.e. As long as every pax station also enables mail. Also, the scheduling (and lack thereof) doesn't make managing infrequent convois overly nice to deal with.
That's the idea in pak128.Britain: mail trains used to be fairly similar to pax and are now only run on very high flows. Road goods stops all accept mail.

Quote
As for the new axle_load, loading_time, and fixed_cost parameters, they currently do nothing. Only present in the beschs. If a pak actually wants to use them, maybe that would spur somebody to finish the code. Would need discussion on how they should work...
That's a shame if loading_time doesn't actually work. I would definitely want to implement this in pak128.Britain.

kierongreen

Personally I'm in favour of:
1) Keeping speedbonus - otherwise you have to balance units from all eras against each other.
2) Not artificially nuking units - top speed should be the regular service speed not a record speed though. Acceleration then distinguishes between suburban and long distance (although are there any examples where vehicles of both types would have the same top speed at the same time?)
3) You could alter the acceleration distance for long distance trains, or assume they should be a bit longer. I wouldn't force people to build really long stations though (I generally go for 4 tile long platforms, initially at least but extending this to 6 from the 1920s onwards seems reasonable).
4) Keeping power as is and still using gear. Yes realistic types use experimental, but if we start playing around with power values why not also seating capacities etc? pak128.Britain was designed to be relatively realistic in general to start with.
5) Not sure.
6) Not sure.
7) Keeping as is - I find mail marginal enough as is so often don't bother to service it.

The Hood

Quote from: kierongreen on May 02, 2013, 07:36:12 AM
Personally I'm in favour of:
1) Keeping speedbonus - otherwise you have to balance units from all eras against each other.
Do you have any good ideas for how best to deal with the mixed traffic problem?

Quote
4) Keeping power as is and still using gear. Yes realistic types use experimental, but if we start playing around with power values why not also seating capacities etc? pak128.Britain was designed to be relatively realistic in general to start with.
Yes - but it is unfortunate that vastly contrasting gears are needed to reproduce real life behaviour. I will have to test this further. The other necessary thing would be some kind of manual or online reference to explain which situations which vehicles are intended for.

Quote
7) Keeping as is - I find mail marginal enough as is so often don't bother to service it.
By marginal do you mean not profitable? If so it should be improved...

AP

7) is not the advantage of serving mail that cities grow faster?

kierongreen

Mixed traffic - should be designed for lighter goods duties and medium speed passenger traffic. Therefore if you try to pull a heavy bulk goods train it won't have enough power, and the speed won't be able to match that of express passenger locomotives either.

I find the passenger networks are generally easily profitable enough on their own without adding mail. The hassle caused by having to manage additional convois means I generally don't bother...

The Hood

Quote from: kierongreen on May 03, 2013, 10:07:28 PM
Mixed traffic - should be designed for lighter goods duties and medium speed passenger traffic. Therefore if you try to pull a heavy bulk goods train it won't have enough power, and the speed won't be able to match that of express passenger locomotives either.

I seem to remember having some difficulty with this last time, because anything that accelerated quickly enough for sensible results on a passenger train could then haul heavy goods at their speeds... I guess we could always make each "ton" of coal heavier?

kierongreen

Or maybe we should be looking again at what constitutes sensible acceleration for a passenger train, certainly in the steam era.

greenling

Hello on All
Before we beginn the balancing from the pak128.Britain to adjust,
it´s better to test out how many tons a vehicle can pull and by which speed.
Opening hours 20:00 - 23:00
(In Night from friday on saturday and saturday on sunday it possibly that i be keep longer in Forum.)
I am The Assistant from Pakfilearcheologist!
Working on a big Problem!

The Hood

Certainly we need to agree on what constitutes a "sensible" load for each era and each train - this has ramifications for factory output. Then we can check with particular locos for acceleration, especially where we know their power and usage accurately. Any ideas for suitable candidates?

kierongreen

Along with that we need to decide whether express trains in particular need to be as long as they are in real life. A full length HST would require an 8 tile long station for example - trains longer than that wouldn't have been uncommon in the 1960s and 70s. It seems like LNER used up to 12 coaches, although the streamlined sets used only 8 to allow higher speeds for example, so again 8 tile stations would be prototypical for the 1930s. Going back to 1830 a locomotive of the time would have struggled to pull 8 carriages.

jamespetts

A 13 carriage train of LMS carriages with a suitable LMS locomotive (Princess Royal class) occupies 9 tiles (the carriages are considerably shorter than Mk. IIIs). If one has anything other than realistic lengths, that will not balance properly with realistic capacities, will it?
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.

kierongreen

A minimum length is required to ensure a reasonable capacity, however there is the ability to have more flexibility than in real life. For example HST sets were 7 or 8 carriages long when constructed originally, 5 carriages long when used on the same timetables as Voyagers, and extended to 9 carriages long for GNER services. Any of those combinations and more should be possible in simutrans - with the player balancing running costs, capacity and acceleration to match their needs.

There'll be similar trade offs in most eras - balancing all the different possibilities which should be allowed is the tricky part.

The Hood

#18
I'm not sure how much standard's relatively simple balancing tools will allow this. If we allow 5 car trains to be profitable then surely 8 cars will be extremely profitable? Other ways round it - reducing the acceleration to the point where the 8-car speedbonus is much reduced (it would take much longer to reach max speed) - we'd have to test to see if this could work. Also, at present, most of the running costs go into the loco (i.e. fuel/driver costs) and far less into the carriages - shifting this to be more equally distributed between loco and carriages would mean longer trains weren't so much more favourable from a profit viewpoint.

EDIT: it would also be useful to calculate the minimum number of tiles for acceleration to max speed given the power and weight of a convoy (assuming no speed limits affect this). Is this as simple as combining F=ma and P=Fv (where P = power*gear in simutrans) and assuming constant power? And how are units represented?

kierongreen

The disincentive for longer trains is not a reduced speed bonus necessarily. It's the capacity constraint it puts on the line. If a train has regular stops and little acceleration it will never reach top speed, and will require a long interval between trains.

The Hood

#20
Hmm, yet another thing to add to the mix of things to test. I really need to come up with some kind of Excel-based way of tweaking parameters and checking profitability for different assumptions without having to recompile and reload in game.

Did you have any views on balance of costs between locos and carriages?

EDIT: Some more thoughts - I'm thinking the best way to get started is to try and get something that works for just one small part of the timeline. Given we have a fairly comprehensive set of LMS locos we could start by attempting to balance these - this should involve many of the problems discussed (variable capacity, mixed traffic loads, power vs acceleration). The first stage should be to determine the range of "feasible" convoys we consider realistic for each, and the sorts of accelerations/speeds/uses that would be considered normal. I will need some help working these out as I'm not familiar with the lesser-known loco types. We can then move on to seeing how to split the costs and powers.

The Hood

Trying to make some more sense of this, particularly in terms of what sort of convoys should be profitable and have reasonable operation speeds, I'm generally in favour of having longer loco-hauled trains (so as to balance effectively with DMUs/EMUs for lower flow rates). This seems to be in line with pak128.Britain's general approach of being broadly historical in basis. The next problem though is with goods trains:
(a) does anyone know how many wagons have typically made up goods trains at various different eras?
(b) I suspect that, especially for the small wagons of earlier times, this often exceeds the 24-vehicle limit so:
- just balance for shorter goods trains-  but mixed traffic locos will give odd results as the power required for longer passenger trains will mean they can pull goods loads effortlessly
- make each "graphical wagon" correspond to several RL wagons in terms of weight and capacity to get around the above, but this then would still look odd with goods trains shorter than passenger trains when often the reverse is true
- draw multiple goods wagons as single, combined, in-game vehicles (e.g. 3 graphical wagons are counted in game as one)

The answers we choose for this will have a significant bearing on how we balance the pak as a whole...

jamespetts

I remember seeing in a number of sources that 19th and early 20th century goods trains were very often well, well over 24 wagons (which is why I increased the limit in Experimental; the change would require only one or two lines of code in Standard; I think that the reason given for the limit is that longer trains don't easily fit in the depot's GUI); modern trains have fewer, longer wagons (I am not sure quite how many; I suspect sometimes still in excess of 24, however).
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.

kierongreen

In the UK it's pretty rare for modern trains to have over 24 vehicles in them. Might have been different in the past though.

AP

Historically freight trains were often picking up and setting down wagons as they progressed along a route. It depends where on a route the industrial demand is. Also - loose couplings allow a very small locomotive to move a very long freight train indeed (start it moving one wagon at a time).

The Hood

As I suspected. Personally I think the best way around this in standard (do-able currently and avoids code/GUI changes) is to draw graphics for double/triple wagons, at least for the earlier ones. Any thoughts on this?

jamespetts

Might that not be very confusing to users?
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.

The Hood

Why? The translation would simlpy say something along the lines of "2x 12t bulk wagon" and the graphic would clearly show two together. No reason why we couldn't keep single ones as well if that's what people want.

jamespetts

I suspect that people might find the conceptualisation confusing, as, usually, a Simutrans vehicle represents a single actual vehicle.
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.

kierongreen

I would agree with potential for confusion. I think that while long freight trains might have existed historically not being able to use them won't be a huge loss (shorter goods trains were still profitable).

prissi

While loose coupling allows for starting freight trains (if there are no curves or slopes) it does not neccessarily allow them to brake. Especially in old time with braking cars. I really doubt that long good trains existed much before 1900 in Europe.

Ok Wikipedia says that until after WWII almost all good trains ware partly or completely unbraked (and hence restricted to 25 mph). This would also implied quite a length restriction.

The Hood

Quote from: kierongreen on May 09, 2013, 06:46:26 PM
I would agree with potential for confusion. I think that while long freight trains might have existed historically not being able to use them won't be a huge loss (shorter goods trains were still profitable).

So how do we balance e.g. a BR class 58 against a lighter freight loco e.g. a class 33 if in RL a class 33 could haul 20-odd wagons (the max)? And how about dealing with an LNER A4 with enough power to accelerate to 100mph in a decent distance but not being good at a (short) freight train? Having unrealistically short freight train lengths will pose these sort of knock-on effects I fear...

kierongreen

An A4 wouldn't be used even on a short freight train would it?

The Hood

The concern I have is that it might provide a perverse incentive to either use express pax locos on heavy freight duties or freight locos on pax duties. Isn't there a danger that the longest possible freight trains will be lighter than long passenger expresses, therefore making it pointless to use "passenger" locos which have been balanced for cost assuming they will get the speedbonus but the freights will be cheaper because they haven't?

kierongreen

Freight locos can't easily be used on express passenger duties because the top speed is too low (hence income from carriages would be much lower). As for passenger locos on slow freights - the running cost shouldn't allow that.

ӔO

#35
there are a few MT locomotives that may be hard to balance if they were weighed in favour of freight.

Off the top of my head...
LNER V2
LNER B17
BR 7MT
BR 9F
BR Class 47
BR Class 57

---

For train length, just look at the modern EMU/DMU in service, since they are mostly built to fit within old stations.
Only a few exceptions exist, which are the eurostar in 20 and 16 car length varieties.
Most only operate with up to a 4+4+4 car configuration, which are 9 or 10 tiles.
The next longest train is the APT, which is 11 tiles long in its full configuration.
My Sketchup open project sources
various projects rolled up: http://dl.dropbox.com/u/17111233/Roll_up.rar

Colour safe chart:

AP

So the summary is that

       
  • Passenger Locos - Fast but costly to run (profit relies on speedbonus)
  • Freight Locos - Slower but cheaper to run. (profit relies on larger volume transported?)
(Not sure if tractive force also comes into it...)

for Mixed Traffic locomotives, in RL, they could operate in either manner. For Simutrans, I can see two possible solutions:

       
  • If the game can do it, make the running cost for MT locomotives proportional to operating speed (where the wagons pulled will limit the running speed); or
  • Code the locomotives twice, a Passenger and Freight version, with different values (and possibly liveries too). Name them logically so people use the correct one for the correct type of service. Simutrans doesn't require the 'flexibility' of Mixed Traffic locomotives in the same way the real railways did, to run different services each day etc.

The Hood

AP, that was the problem from last time that I'm trying to avoid. One workaround I'm contemplating is making rolling stock more expensive to operate and locomotives less expensive. This simulates the fact that you need to supply more energy to accelerate a longer, heavier train so part of the increased cost of the rolling stock actually represents the fuel cost of the loco hauling it (!). I haven;t done any tests yet but I'm hoping this could reduce the gap between MT locos in freight and in pax mode.

prissi

Actually, at least for the pak64/japan46 the only way out is to have a high speedbonus for pax. That makes also a good incentive the renew obsolete locos. Otherwise the power of fast pax locos will be also enough to draw long freight trains. I see no way round (apart from a mandantory passenger car than is reuired constrain after any pax loco).

The Hood

Thanks prissi - that experience is useful. I might also be tempted to add in constraints as well for certain express locos. I guess I just need to go on and test a few things. While you're reading this, are you able to give me a way of calculating tiles taken to accelerate to top speed given weight, power and gear of a convoy?

prissi

There is an excel-sheet in the pak64 repo ant SF. cars.xls will do this exactly. ;)

The Hood

Thanks prissi - I've found the file and the bit where it calculates the theoretical heaviest/longest train that a loco can pull. But I can't work out where it does the calculation for number of squares to max velocity. Can you give me a pointer?

prissi

That depends on what you full speed is (e.g. within 10% of max speed?), and whether there are slopes or curves in the track. I think this is rather useless for balancing. You get the income per car, you get the number of cars you can pull at full speed => you get the maximum income.

The Hood

There are two reasons I want to know this (for a long straight track):
1) to compare accelerations of different convoys easily without testing in game and to ensure they accelerate in a graphically "reasonable" distance.
2) to work out roughly what % of the journey will be accelerating for a typical use of this train for balancing purposes (less important).

Is there a way I could calculate this?

prissi

IF you put into a frame rate yes. Unfourtunately acceleration will slightly different on frame rate, as the step size will enter into an exact formula. But I think there was once a rough formula around, but I may be on the SF forum.

The Hood

Ok. For my purposes an approximation will do. How does the code handle acceleration (in terms of power, weight, gear and velocity) and how does it convert km in tiles? If I know these I could have a crack at deriving an appropriate formula.

prissi

You cannot convert km to tiles. Or do you mean "how many tiles per month are 100 kmh?" For this the answer was somewhere in the forum, but it will depend obviously on the users bits_per_month setting.

In the code acceleration is linear, i.e. the higher the kW*gear the higher the acceleration, but friction is quadratic. It is balanced in such a way that 200 kW can move 100t at 100 km/h.

accel = 200kW
deccel = 100km/h^2 * 100t

(Please ignore the units, those cannot be combined physically in such a formula. I know, but it feels right in the game.)

Assuming a flat track (additional friction factors 16 for slopes and 4 for bends) this change of speed per ms step "delta_t" is (typically delta_t 25-250 ms):

deccel = speed^2 * weight
delta = (power*gear - deccel) * delta_t / weight

However, at this point I leave it to the read (as I have to go) to convert this into a useful formula. The explicit delta_t inside however does not look to good for it.

The Hood

Well I had a fun hour or so writing and solving differential equations based on this but when I tried putting in numbers they didn't seem to make sense. I'm guessing part of the problem is the assumption in solving differential equations that dt tends to zero when in fact it is finite. I'm guessing this isn't such a clever idea after all then and I'll just need to do more trial-and-improvement in game to get power/gear balancing right.

However I'm confused there is no conversion between km and tiles. Surely the game must know how far to advance a convoy along a tile given a particular speed? Does this vary with bits per month and delta_t?

prissi

Ah, you mean akt_speed and steps.

Well a straight tile has 255 step. The internal speed is (historically) (kmh*64)/5 That is exactly the distance in steps. This a convoi at 100 kmh (speed=1280) will do 25*1280/4096=32000/4096 steps in 25 ms (or kmh*64/5*ms/(4096*255)=tiles. In this example it will be 7.8 steps, or roughtly 1/32th or a tile.

Still I am not sure for what balancing purpose you need this. It could be only monthly maintenance or purchasing costs, as the cost per tile driven must be balanced to the income with mean load per tile, with the latter only depending on the speedbonus.

TurfIt

Comparing accelerations of two convois can be easily calculated given their effective power (w/gear) and weight. top speed = sqrt( 2500*power/weight - 2500). At a given speed, the convoi with the higher top speed will be higher accelerating. Further, if the top speed calculated like this is close to the speed limit set in the .dats, it'll take a long time/distance to actually get to that limit. i.e. adjust the power/weight to give the calc top speed some margin over the speed limit to adjust how quickly the convoi gets to the limit.

The Hood

@prissi - thanks. Just to check that the program now does speedbonus each step: so you get less income while accelerating than at top speed?

@Turfit - that's what I'd already derived as a simpler proxy - good to know I was right!

Dwachs

Quote from: The Hood on May 14, 2013, 07:56:06 AM
@prissi - thanks. Just to check that the program now does speedbonus each step: so you get less income while accelerating than at top speed?
The velocity relevant for speedbonus calculations is the minimum of the achievable speed of the train (taking loading into account) and the average speed limit of ways the vehicle travels on.
Parsley, sage, rosemary, and maggikraut.

The Hood

Ah - I thought it had changed so that it was calculated on the average speed of the convoy for the whole journey. If not that certainly makes calculations easier.

prissi

No you can happily play with the formula in the pak64 excel and rember that stuff made for innercity travel will not exceed the speed of whatever roads are available as city road when they are introduced.

The Hood

I've been working on a new spreadsheet to help balancing. I've attached what I've done so far (rail only) along with a few fairly major changes to game balance:
(1) Bonus speeds are much lower - just slower than the fastest PIECE/COOLED GOODS wagon at the time as suggested by neroden to allow more convenient balancing with slower goods types
(2) Speed bonuses simplified - many slower types do not have a speed bonus at all
(3) A knock on of the above means that some things are very profitable indeed - so I've scaled back revenues but also changed the revenues between different types to get approximately reasonable and comparable profits on all convoys for a class 37 mixed class diesel
(4) Wagons now contribute a greater proportion of a convoy's maintenance cost per tile.
(5) Gears are generally lower - acceleration is therefore slower to avoid having situations with overpowered locos being able to haul huge and therefore very profitable convoys.

The spreadsheet also attempts to estimate monthly profits taking into account the track required, station length and the distance covered each month. This involves some fairly crude assumptions (e.g. average speed is 50% of max and basic assumptions about numbers of trains per months - guessed from in-game experience).

So far I've entered some numbers for some BR diesels (values changed from current in-game data are in red).

The monthly profits are fairly large but then again these assume direct routes, no bridges, tunnels, signals etc. that would reduce profits on a real game.

I'd be very grateful if anyone was able to cast an eye over it and (a) check it's error free and (b) that it looks sensible.

If so, then I'll start working through the whole list along these lines - I just don't want to plough ahead and then realise it was all flawed...

kierongreen


The Hood


The Hood


The Hood

As I've had no adverse comments I'm assuming people are happy for me to proceed along these lines?

The Hood

OK, I've been making good progress on express locos but I've hit a problem with old mixed traffic/goods locos. I'd appreciate any thoughts on how best to proceed...

For modern mixed traffic (e.g. class 37) the passenger capacities and goods capacities (of a fully loaded train that can reach approximately max speed for the convoy) are approximately the same. For effective balancing therefore I set the unit revenues for pax and goods as approximately the same (taking speedbonus into account).

At the other extreme is the LMR Rocket. With the 4 wheel LMR carriages this can take approx 10 carriages. This results in a capacity of around 200 pax (in a station length of 3!). By contrast, the goods wagons carry just 3t of coal (or other units), but as each unit of goods is heavy, they max out on weight fairly easily and the capacity is less than 20 wagons, i.e. less than 60 units. With the goods unit revenues being approximately the same for pax and goods (as above) this means the goods version has a signficantly lower revenue than the passenger version (in fact the goods version can barely cover the fixed cost of station maintenance).

The main reasons for this discrepancy are (1) early goods wagons have much lower capacities than their passenger counterparts (2) goods units are much heavier than pax units so weak locos can pull far less goods early in the game - later on the weight of the carriages themselves makes pax trains much heavier too (3) early pax carriages fit large numbers into short convoy formations compared with modern pax carriages - i.e. pax per tile is much higher earlier in the game.

The above problems are exarcerbated early in the game as passenger trains are proportionally a lot faster than goods trains so get a much bigger speedbonus early on.

So where do we go from here?
(A) Increase goods unit revenues dramatically - this would make the revenue per convoy approximately equal for the Rocket but would make goods far more profitable by rail late in the game (opposite of reality!) unless I significantly increase maintenance costs for late goods vehicles to counter this effect (would it look odd to have really high goods wagon maintenance costs compared to a pax carriages?)

(B) Significantly reduce the capacity of earlier pax carriages - but this would be unrealistic compared to history which goes against the general ideas of pak128.Britain...

(C) Reduce the weight of goods units (so 1t of coal weights less than 1t!) allowing much heavily loads to be hauled - but again this is unrealistic and will probably throw the balance of modern trains out of kilter too...

(D) Significantly increase the weight of early pax vehicles so that fewer of them can be hauled - but this may result in very short trains...

Let me know if you have any views on the above...

Also if anyone can point me towards some data about the weights and speeds that particular early locos were able to haul that might help decide the best way forward.


kierongreen

Were mixed locos used much historically? Part of the high passenger density in really old vehicles is down to a vast difference in comfort on trains.

jamespetts

In the very early days, locomotives were generally considered either "goods" or "passenger", but, of course, there were some cargoes - which can loosely be described as "fast freight" - that could command a locomotive of either type: fish and milk, for example, was carried at higher speed and lower density than coal or stone. By the middle of the 19th century, there were many locomotives that would be used for either freight or passenger work - the LNWR "coal tank", built for local coal trains, ended up in use on local passenger trains more than anything as its brakes proved inadequate for coal traffic. Whilst a locomotive designed for heavy freight would be unlikely to be found on a passenger service and a locomotive designed for top express passenger trains would be unlikely to be found working freight, there was a large intermediate area of locomotives which could be and regularly were used either for light freight or secondary passenger work.
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.

The Hood

Even if we go down the route of completely separating pax from goods early on and defining constraints to force that separation, there is still the issue that even with no maintenance costs the freight loco would barely be profitable with the current base prices. I'm leaning towards (A) above - do either of you or anyone else have any vastly differing views?

jamespetts

It's hard to see any satisfactory solution, I have to say - this sort of thing is part of the reason that I forked Experimental in the first place.
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.

kierongreen

Well I'd only go for A in terms of B, C and D being unacceptable in my opinion...

The Hood

I can't say I can see many better solutions. I've tried the numbers and, while they look a little odd with such expensive freight wagons in the modern day, they seem to look OK. I guess it's a case of testing it once I've rebalanced the lot and seeing whether it actually works in game and changing it if not.

Vladki

If old passenger cars have much higher "density" than modern ones, then also the comfort levels should be much lower, so that could be a nice solution for experimental. For standard, maybe just set the bonus speed higher than the max speed of the train, so that the bonus would be lowered. (I'm not sure how exactly is the bonus calculated though.

The Hood

Altering the speed bonus has other knock-ons (mainly affecting the balance of fast freight vs slow freight). That's one problem I've already fixed so I don't want to go back to that...

ӔO

if only commodities could change their price over the years...

e, extension request?
My Sketchup open project sources
various projects rolled up: http://dl.dropbox.com/u/17111233/Roll_up.rar

Colour safe chart:

The Hood


prissi

Are their any records of how many people really traveled with early trains. 20 people on a three compartment two wheeler carriage seems rather a theoretical maximum (or only ok for the Liverpool-Manchester connection). I would either expect 24 or 18. Also, since the rocket was 7.5 ton, and had about 7,5 ton haulage to spare for towing. It would never draw much more than five carriages (even 20 persons are already 1.5t!). Most images show rather three or four carriages behind the rocket.

With four carriages, it would be about 80 poeple, which would considerably close the gap between freight and pax. Just make the pax cars a little heavier (use 2 tons instead one) and the occupancy for speedbonus of a fully filled train will be much reduced.

jamespetts

On this website there is a well-known contemporary engraving from the early 1830s of Liverpool & Manchester railway trains, showing haulage of freight, passenger and mail. The train is shown as having either five enclosed passenger carriages and one mail carriage, six open passenger carriages or either 7 or 11 freight wagons.

Early standard gauge passenger carriages could seat five a side in second class or four a side in first class. The third class carriages of the day would have been all standing and would have had an even higher capacity (these are not depicted in Pak128.Britain, but they appear as the rear carriages in the lowest engraving). Both first and second class carriages have three compartments: the second class compartments would have seated 10 people each, and the first class compartments 8 people each. The second class carriages would therefore have seated 30 people and the first class carriages would have seated 24 people. Brake carriages would have carried a breakman (there would probably have been two per train in this era), which would have reduced the passenger capacity by 1 or 2 for each carriage in second class (but not first class, where he would have sat on the roof).

A train of six second class carriages would therefore carry a total of 176 people (30 * 6 - 4) and of six first class carriages 144 passengers (24 * 6). Five first class carriages plus a mail carriage would be 120 passengers, plus however many bundles/bags of mail can fit in a single carriage of that era.
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.

prissi

If you read the text this "contemporary" engraving is from after 1875, at least the text refers to a speech held at that year. Also all these engines are after the rocket, i.e. may be considerably stronger. (The rocket was also modified after the trials, but there is certainly a reason why it was retired early).

When Euston station was opened, the sheds there could not store more than 30 cars: http://www.railalbum.co.uk/early-railways/london-birmingham-railway-1.htm (and not engine went there first too) It seems very unrealistic, that three trains would deplete the storage entirely.

I think it is a little like this: You will find much more images from space shuttles or moon rockets than for a certain innercity bus of the same period. Thus most images show the opening of the line and probably like to exaggerating a little.

In any way, the rocket was built to draw about 15 tons but weighted fully loaded already 7.5 tons. Please do the math: 7.5t is the weight of 100 peoples, without any carriages!

jamespetts

Quote from: prissi on June 20, 2013, 08:53:34 PM
In any way, the rocket was built to draw about 15 tons but weighted fully loaded already 7.5 tons. Please do the math: 7.5t is the weight of 100 peoples, without any carriages!

May I ask, what is the source for that? Might it have been referring to what the locomotive can haul at the drawbar - i.e., excluding the weight of the locomotive itself?
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.

prissi

#74
It was the specs sent to the rainhill trials. I have no idea what that means in practice, but I suppose it means a load of 7.5 tons including the car's weigth. For these early engines, moving twice their weight is not a completely unrealistic number. Just think of 29 PS the rocket was rated for at top pressure: Same as an early Austin Mini. 7.5 ton behind it would be also quite demanding, or? (And then it has better gears, and rubber tires, and weight itself much less than a ton!)

EDIT: Digging deeper, the rocket could pull a 17 ton train at 14 mph (of these 3 ton are the tender). It could move a train with 13 carriages, but aparently a very slow speeds. http://www.resco.co.uk/rainhill/history_iron.html Further on: "The Northumbrian drew a train of 130 passengers from Liverpool to Manchester in an hour and fifty minutes." i.e. at 28 kmh. This engine achieved 1,8 times the Rocket's speed, and hence one may assume it had also twice the power.

Thus the rocket was rather obsolete after two years. Gearing the pakset for it is probably a bad idea.

sdog

from the auctioners page: "colour lithograph circa 1894"

It seems a bit suspicious that the train length matches the width of the paper so nicely. Perhaps the artist increased the number of carriages until they fitted the format the printing company prefered for their publications?

This might be a much better source:
François Marie Guyonneau de Pambour (1836), A practical treatise on locomotive engines upon railways
http://archive.org/stream/apracticaltreat01pambgoog#page/n4/mode/2up

A table in chapter V provides maximum loads on plain track for given engine weight, boiler pressure, and cylinder diameter. (Fixed wheel diameter of 5 ft)
An engine with specs as bad as those of Rocket according to wikipedia isn't even included in the table. The lowest figure in the table is 100t, one has to assume it would have pulled considerably less. It also means that only a few years later, such low figures for weight, and cylinder diameter would have not been considered at all. One can assume that the engines similar to 'Rocket' would have exceeded them.

Pambour also states that the engines where rebuilt all of the time, being stripped down to parts, improved and re-assembled with the old name. I guess this makes data sheets based on specific early engines completely useless.

The appendix lists all costs and profits of L&MR in the first 3 years of operation.



jamespetts

Thank you - that is a very useful source. Pambour is frequently cited as authoritative by later authors.
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.

The Hood

Some good stuff here. I'll need to look into this further. One thing from prissi's link about the Northumbrian does stand out however: "in February, 1831, the Samson accomplished the greater feat of conveying 164 tons from Liverpool to Manchester in two hours and a half" - i.e 13 mph / 21 km/h. The Samson appears to have been an 0-4-0 goods type of 1830 - perhaps this should be added and the Rocket considered a passenger/mail only option - i.e. lighter and faster trains? Again 130 passengers seems about right for these early trains as indicated in that link.

jamespetts

Is the Sampson not just the name of an individual member of the Planet Goods class, which we already have? Don't forget, the Rocket was the locomotive built for the Rainhill trials. Although, rebuilt, it was used in commercial service on the LMR, it was the Planet and Planet Goods locomotives that were built specifically to service the line.
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.

The Hood

I'm not familiar with the Planet Goods type other than your model. If it is the original 0-4-0 type for the LMR then it's probably the same type as the Samson. Either way, I'm suggesting we balance the Rocket for Pax only rather than Mixed traffic - the Locomotion is still available as a freight only loco then...

The Hood

@jamespetts - can you confirm what you based the planet goods type on? was it an 0-4-0 design?

jamespetts

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.

The Hood

OK - in which case I have balanced the Planet Goods in accordance with the "Samson" snippet above and the Rocket is effectively pax only. That seems to resolve some of the mixed traffic issues I was having before.

The Hood

Now moving onto balancing road vehicles. The problem here is that city roads are publicly owned and therefore free to use in terms of maintenance. This makes a huge difference to the profitability of routes. So my crazy idea is as follows - Maintenance for all roads should be set to zero to reflect the fact that basically all roads in the UK are publicly owned (OK this wasn't always the case e.g. turnpikes but...) and we just sort out the running costs on a level playing field... Build costs would be higher for bridges/tunnels/faster roads as expected.

jamespetts

Would it not be better to let players build roads as the public player if they want this effect, to allow for options?
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.

ӔO

how about giving players only a few roads that are maintenance free or locking certain roads to public player only?

Roads for freight don't need to be the fastest, but they need to be cheap enough to pave to factories and since they are unlikely to be very long, they should also be able to pay for themselves with the proceeds of transporting.

maybe adding a few player coloured pikes to the early player built roads to distinguish them from public player made?


on average, how many tiles of road will a player build for one factory connection?
My Sketchup open project sources
various projects rolled up: http://dl.dropbox.com/u/17111233/Roll_up.rar

Colour safe chart:

kierongreen

I'm really not sure about removing maintenance costs from roads... After all, there is practically no vertically integrated transport in the UK now anyway 99% of railways aren't, neither are ports or airports. Fuel duty effectively acts as a maintenance charge for roads, just as track access charges do for railways so I don't see why roads should be treated specially with regards to maintenance.

Imagine it as a parallel world where toll roads outside cities are the norm :p

jamespetts

There is much to be said for letting the player choose how vertically integrated to make things.
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.

The Hood

I understand the issues but standard has no way of paying tolls or taxes, so I was imagining that higher vehicle maintenance costs and no road maintenance costs would simulate the fuel taxes etc.

The other problem I can see is that intercity roads don't get upgraded automatically as time goes by. So a player would have to build new fast roads and pay maintenance on these later in the game. Otherwise the existing network can of course be used for free...

kierongreen

In my view the choice of using slow public roads (either in cities or in the countryside) or upgrading them is part of the gameplay. Yes existing network can be used for free but speed bonus should make this unprofitable in later years anyway.

sdog

Quote from: The Hood on August 01, 2013, 09:26:31 PM
Now moving onto balancing road vehicles. The problem here is that city roads are publicly owned and therefore free to use in terms of maintenance. This makes a huge difference to the profitability of routes. So my crazy idea is as follows - Maintenance for all roads should be set to zero to reflect the fact that basically all roads in the UK are publicly owned (OK this wasn't always the case e.g. turnpikes but...) and we just sort out the running costs on a level playing field... Build costs would be higher for bridges/tunnels/faster roads as expected.

Then you would also need a way to prevent a road the player places to be available within the next 30 years. Planin, endless lawsuites, budget acrobatics.

If you considerably increase vehicle running cost and reduce road upkeep. Players will be very quick to build new roads, just to save a few km of way. Public roads would not accomodate such needs of a transport company.

Vladki

Free usage of city roads should be IMHO balance to compensate the loss of speed bonus, as they are limited to 50 km/h.

Vladki

Just a few thoughts on passenger transport. I'm playing pak128 Britain - standard for quite a while and I have noticed the following things:

Airplanes cannot be profitable even if always full. Running costs per passenger are 0,24-0,32 credits/km, but revenue only 0,14/km. I know that real world airplanes are expensive but so are flight tickets. If simutrans "tickets" have the same price for any means of transport, then running costs must be reduced accordingly. For planes I would suggest dividing the running costs by 2 or 3.

Buses may be profitable if they get the speed bonus. But there are no buses that are profitable at 50 km/h (city transport). Running costs per person range from 0,01 to 0,10 credits/km. Revenue at 50 km/h drops down to 0,02/km (in year 2020). The only two buses that are profitable even on city roads are Leyland Cub and Guy Special - perhaps thanks to a bug - their running costs are 10x lower than other comparable buses. I think that all buses should be made cca 10 times cheaper to run.

Trams are highly profitable even if not full. Generally 10x cheaper to run than buses, and getting full speed bonus. However maintenance reduces the profits a bit. The game would be more challenging if trams would be a bit more expensive, maybe even 10x higher could be playable.

Passenger ships and hovercraft are ridiculously cheap to buy and run. And they are fast enough to get speed bonus thus making huge profits. And there is no congestion on waterways. Easy to use them to earn a lots of money (to sponsor the buses). It seems that prices were set without any thought... :)

Trains and narrow gauge are quite complicated to judge, but I think well balanced. However I lack some modern shunting engines -cheap to run and low power for short trains.

I have a spreadsheet (libreoffice) with costs per passenger per km for many buses, trams, trains and planes, that I use to choose the most efficient vehicles. I can share it if someone is interested.