News:

Want to praise Simutrans?
Your feedback is important for us ;D.

Longer Simutrans Trains

Started by Sensible Enough, July 29, 2016, 09:00:06 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Sensible Enough

I was originally going to put this topic in Pak 128 (Which I am Using), but then I realized that this question affects all of the Paks, and all of us.

Why can trains not carry hundreds of railcars at a time in Simutrans? Freight trains in real life can carry hundreds of railcars at once, and in many cases they have to, to make a profit.

For example, many railroads in the United States haul massive amounts of freight per train. The United States, is a big country, so the trains have to carry that much freight, since they go such a long distance. The longer the distance they go, the more freight they need, to make a profit. You have long freight trains if you go far away, so that it is SO much freight that you need to make a profit. Same thing with Simutrans. I am trying to make a huge server (Like America), and hand create it. But to be realistic, factories have to be very far away from each other.

All in all, trains in simutrans, with their current limited cars, can't make a profit going long distance.

In OpenTTD, you can have longer trains. Even if you look up ''biggest train in openttd,'' there is even a section of webpage about mammoth trains.

So here is the question, Why can't trains in Simutrans be longer, hauling multiple cars at a time?

America's Finest Railways

Ters

Quote from: Sensible Enough on July 29, 2016, 09:00:06 PM
Why can't trains in Simutrans be longer, hauling multiple cars at a time?

I think it's mostly because they would then be absurdly long compared to the landscape, eventually not being able to leave one station before entering the next. And if the landscape was scaled up to match, no computer would be able to run the game anymore, because it would be too much data to process.

The reason I prefer pak64 over pak128 is that the simpler graphics make things more symbolic, so I don't get so bothered with things like this. Even then, I like to have cities near a hundred train lengths apart. With six tile long trains, which some would consider short, that means that a 2048x2048 map can only have three or four cities across. And a 2048x2048 map puts quite a toll on my computer. And the old industry simulation really doesn't cope with these distances. JIT2 might be better, but as I like to play my games "through" before starting over, and can get into long periods of not playing, I haven't been able to try it out yet.

Solving the scale problem is in my opinion impossible without pretty much starting over from scratch, which no developer here likely has the time to.

Sensible Enough

Im not really talking about evening scaling out the map. The train cars and trains, in general, are already to scale with the map. Im just talking about making the trains longer, nothing else. Simply use what OpenTTD does (Since you can have huge trains there), and implement it into Simutrans. Simutrans industries work about the same as industries in real life do, it's just that if you serve multiple industries, you are eventually managing alot of freight. And if your train is SO big that it cannot even get out on the track without entering the station, you could simply add the error message ''This combination cannot start!''
America's Finest Railways

Ters

Quote from: Sensible Enough on July 29, 2016, 10:51:08 PM
The train cars and trains, in general, are already to scale with the map. Im just talking about making the trains longer, nothing else.
No, they are not. Vehicles and their infrastructure are probably somewhere around ten times bigger than buildings, which in turn is several times bigger than the terrain. One tile in Simutrans is about one kilometer. A city building roughly represents a city block. To cover a city with buses, you need bus stops about every five to ten bus lengths. And the distance between intersections in a typical Simutrans town/city is half of that. (It gets even more silly with the horse drawn carts early in the time line, which are as long as a bus with trailer in modern times. Ships might be better scaled to its surroundings, though.)

Quote from: Sensible Enough on July 29, 2016, 10:51:08 PM
Simply use what OpenTTD does (Since you can have huge trains there), and implement it into Simutrans. [...] And if your train is SO big that it cannot even get out on the track without entering the station, you could simply add the error message ''This combination cannot start!''
Simutrans is not OpenTTD. There are some important differences. And I don't see how trains with hundreds of cars can work on anything but unplayable maps just made to fit such huge trains for show. That error message may end up turning up all the time. Locomotive power in Simutrans is (supposed to be) balanced for a certain train length, and trains will only be profitable at those lengths. If locomotives are powered to pull hundreds of cars, the trains will have to be longer than the average distance between cities/industries on a typical map to make money.

There might also be performance issues, but others know more about that than me.

Quote from: Sensible Enough on July 29, 2016, 10:51:08 PM
Simutrans industries work about the same as industries in real life do.
Oh, boy, do they not! At least not in the default setting. DrSuperGood can go on for pages about how that system breaks down completely once distances and/or vehicle sized increase. He has been working on a new system, but there might still be some bothersome bugs.

Isaac Eiland-Hall

There are multiple scales in use in Simutrans. And they differ per pak. But most paks conform to the informal standard of a tile being a square kilometer. So yes, a bus is generally around 0.5km long by that measure. Yes, graphics are scaled differently. As I said, multiple scales are in use.

A while ago, IIRC, the maximum number of convois was 14. I believe that's 28 nowadays.

Technically, it might could be raised, but practically speaking, it's probably raised as much as it will be.

Years ago, I'd wanted longer road convois (limit of four) and it was denied because it's really only Australia that goes longer.....

The limit has been discussed from time to time and raised once already. I suspect this extension request will be denied, because a balance has to be struck. 28 cars in a convoi would be around 14km long if they're 1/2 tile each. So that's really long and one of the reasons it was limited to 14 before (~7km). It's already a compromise.

Imagine a station on a simutrans map with hundreds of cars - it would be hundreds of tiles long itself! It's not practical. Is 28 a good limit? Quite possibly so, yes. That's going to be around 1%-5% of the width of a map most people play.

prissi

The only real "hard" limitation is the counter, which is still 8 bit. But there are absolutely no engines that can move a consist of 240 cars. You would need ten engines; but then what is the point? You need huge stations (which are really expensive for monthly maintenance in simutrans). And with 10 engines, why not make it 10 consists? That would mean more frequent service.

Also industries stop production when too much products are en route. Hence you Megaconsist may never ever leave the station, because it is never filled. (Open)TTD industries on the other hand just start to produce more when more is transported. There Megatrains make sense.

Sarlock

Why not make it a config setting that a pakset/player can decide?  It would be pretty simple to code, as it's just a limit.  If it isn't defined in a pakset config, it'll default to the current setting.  Same goes for road convoy length. 

I, for one, would love to be able to build longer trains!  Most of the freight trains around here are running 100-150 cars in length.
Current projects: Pak128 Trees, blender graphics

Ters

Quote from: Sarlock on July 30, 2016, 04:14:09 AM
Why not make it a config setting that a pakset/player can decide?  It would be pretty simple to code, as it's just a limit.

It needs to be done. It needs to be tested. (I've seen changes that appear trivial cause big problems.) It seems those of use capable of those things deems it futile. We don't believe we will get anything back from the game for doing so, just more support issues. (Maybe players need a power scaler, so players can run long trains where the pak author is reluctant or missing by making all locomotives "stronger", or vehicles "lighter". Maybe there are issues in with other logic working, such as GUIs that don't have enough space, overflow in length/weight/capacity/load calculations, etc.)

Sarlock

You're absolutely right, I didn't intend to gloss over the importance of those aspects of implementing a change.  Experimental has a high limit set (128), so there exists a good opportunity to look at its impact.
Current projects: Pak128 Trees, blender graphics

Ters

I thought Experimental had rewritten everything to do with these sorts of things anyway. Then again, I've also heard that Experimental is much more computationally intensive, so I would almost expect a 128 car train to span an a tenth of the map. Makes me wonder why they changed it. Maybe they have much smaller graphics, so that a tile can contain four or more cars.

Junna

Quote from: Ters on July 30, 2016, 03:57:57 PM
I thought Experimental had rewritten everything to do with these sorts of things anyway. Then again, I've also heard that Experimental is much more computationally intensive, so I would almost expect a 128 car train to span an a tenth of the map. Makes me wonder why they changed it. Maybe they have much smaller graphics, so that a tile can contain four or more cars.

Do you play with tiny maps?

The length of the carriages vary, but it's ultimately signalling that determines the maximum length practical. Goods wagons are generally shorter, and it is not rare to have 40-50 of them (Pak Britain). The longest I've run was around 70 coal wagons with a total length of 23 tiles. Experimental is more computationally intensive but this is not due to the train length...

prissi

The real limitation is the default size of the depot window. Apart from that it is only a define to increase.

Ters

#12
Quote from: Junna on July 30, 2016, 06:15:13 PM
Do you play with tiny maps?

No, I play with what I believe is rather big maps for Simutrans. Or at least they were once upon a time. 2048x2048 currently, with about 50 cities. With trains that rarely have more than 10 cars, that makes distances between the cities somewhat to scale with the size of the trains. If trains were to have 100 cars, I would need a 20000x20000 map.

Quote from: prissi on July 30, 2016, 07:23:49 PM
The real limitation is the default size of the depot window. Apart from that it is only a define to increase.

One would probably need faster methods to add (and perhaps remove, but every one but me would probably just delete the entire train) cars, because adding 100 cars individually is going to put some strain on finger and mouse button.

AP

Quote from: prissi on July 29, 2016, 11:36:04 PM
But there are absolutely no engines that can move a consist of 240 cars. You would need ten engines

A slight aside to the main point of discussion, but that may well not be true.

Steam locomotives are constant-force engines, whereas diesel or electric are constant power engines*. It's a fairly obscure bit of physics these days, but if you are considering a traditional loose coupled freight train on a level track, the locomotive only has to get one wagon moving at a time.  It's perfectly possible for a steam locomotive to move a very long train in these circumstances, because the rolling resistances are so low.  That's not to say it would be moving quickly... and of course it would ultimately depend on the weight of the wagons.

*you can't quote a power output for a steam locomotive, because it increases with speed.

For more info, see e.g. http://www.railway-technical.com/st-vs-de.shtml

Sarlock

#14
I guess what it is, is that for us North Americans (and other places) freight trains are what posses the magic and appeal, not passenger trains.  There are relatively few passenger trains and they are nothing special, usually sharing a small amount of rail time on an otherwise freight dominated network.

Seeing the odd 5-10 car passenger train come by is boring... but hearing the chug of 3-4 locomotives hauling 100+ train cars loaded with containers, grain or coal (or usually a mix of all of the above) is awe-inspiring.  You feel the ground rumbling as it approaches, the deep throb of the diesel engines rippling the air, and then bursting past you is several locomotives and a mile long snake of train cars clacking by one at a time.  One of my joys as a kid was waiting at a crossing and counting the number of cars that went by... one, two, three... seventy... one hundred and twenty...

Lacking this ability in Simutrans steals some of the magic for me.  If I was even remotely capable with a compiler, I'd probably figure out a way to lift the limit myself... I've tried and failed before, however, and gave up.

If it doesn't have 100+ cars, it's not a real train in my view ;)




[Addition/Edit]

This:

https://www.youtube.com/watch?v=bbnPeH66vzU
Current projects: Pak128 Trees, blender graphics

Ters

Don't get me wrong. I love long trains as well. Trains curving through the landscape is some of the appeal with trains in general. However, from model railroads to Simutrans, long trains on cramped landscapes just ruin everything. (I actually conceptualized some sort of distributed virtual model railroad in order to have a good scale and multiplayer capabilities.) It's some sort of uncanny valley effect, similar to how robots become more disturbing the more human they look.

Sure, one could make a Simutrans and some pak files, and you could make a map with two cities and a long stretch of railroad to send it out on. But I can only see it working for taking some pretty screenshots. I just can't see it working with the rest of Simutrans as a game. Therefore, I will not do anything about, because it don't believe it will give me what I (think I) want. I can't stop others from doing so if they see it worthwhile. So far, less than half of the recently active Simutrans developers have commented.

Junna

Guess Experimental's limit is only 64 vehicles...



Map size is 2400x3300 and there are 1010 cities and 2,000 vehicles currently in use. Admittedly, it is starting to get laggy now. Not as laggy as OTTD would be at these numbers, however...

Leartin

I think the big appeal is not really the length of the train, but the snake-effect of curves, possibly in combination with tunnels so you can never see the full train. In a mountainous environment, you'd have tight curves, so even if the train is not that long, it would still 'snake'. In flatlands, where most everything is straight and curves are wide, you'd need really long trains for similar effect.

But if the curves make the appeal, no matter how long a Simutrans train is, it will never look as appealing as a train in Locomotion or 3D-Games, simply because there are no proper curves - an unfixable problem.
That being said, having 'longer' convois allows to use a lot of very short wagons, which is a little more pleasing.

About the Depot: Please don't change the size of that window. In pak192.comic, it's already covering most of the screen, and is just as broad as to fit a full length train. Either have the convoi-part of the window scrollable on it's own or just use more overlap for the wagons, but don't change the window size as a whole.

Hitardo

Hello,

I confess I would love to see bigger trains.

I know it messes up the economy.
But we already have different paksets, with different economies.
I use pak128.Britian to this day, because pak128 was to hard for me to start, then I got addicted to the graphics.

I know it messes the scale.
But we already have a non-to-scale game.
The bus/horse/block example above is a good one.

I know it can ruin industry balance.
But we already have a non-balanced industry, with order system that needs improving.
Only I know the problems I have with a car industry ordering steel from the other side of the map: in one moment I have 10 trains stopped, in another I have 10 trains moving, full of steel, entering other lines and turning a line that has a 10% usage into 80% of usage, which is a nightmare.

Here I leave you an image:

Direct link: https://s25.postimg.org/rdqr60ftr/Simutrans_3_Trains.png

My map is 2056x2056, at the present.
But I started with 1024x1024, and this is where my main lines and money is made.
The rest is a WIP (Work In Progress).

As trains have a limit of size, and consequently of number of cars to haul, I am obligated to buy a huge number of trains, and build two way transit, which is not very realistic, is it?
The big number of trains is due to the demand, and the two way transit is due to the demand system of factories, as the trains will take freight to only the first two factories, and then will go empty until they reach the original factory again.
I had to build new factories on the way, all linked, to make the run profitable.

In this image you can see three trains:
a) Vehicle #1883: Takes Oil to be burn in the electricity plant, and returns empty, from bottom to top of the map, approximately 1024 tiles;
b) Vehicle #5686: Takes Petrol across the map, to be distributed by trucks to local Petrol stations, in a Clockwise motion;
c) Vehicle #650:  Takes Petrol across the map, to be distributed by trucks to local Petrol stations, in a Anti-Clockwise motion;

When #1883 returns from the Electricity plant, it shares the line with the #650 train, to save construction costs.
But, this results in a high congestion zone, mainly due to the great amount of trains distributing Petrol across the map.

I also have a Car distributing train line, much like this, with Clockwise and Anti-Clockwise motion.
With longer trains I would not need this much trains, and will save on congestion problems.

Also, the cars limitation on trains is not linear.
Petrol and Cars have a lower limit than Bulk cars.

So, I vote for longer trains!
Always looking for new things, new knowledge.