News:

Simutrans.com Portal
Our Simutrans site. You can find everything about Simutrans from here.

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.