Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

I have a few more thoughts/suggestions:

- I'm noticing that the pathfinding sometimes does really weird things. I can figure out how to post screenshots or saves if helpful, but it's stuff like trains taking longer paths, I guess because the best path is blocked by another train, but in a way that's nonsensical because the longer path is basically just going in a big loop before proceeding along the original best path—that is, the new path is strictly worse, there's no apparent reason for the detour. This often makes trains clog up side stations and such, which were admittedly not perfectly designed but never had any reason for many trains to be going through them.

- Maybe this is something you want to leave to players to discover, but a tutorial that gives a little more detail about what different train types are best at and how combining them can be good might be nice. ('players' is me; I'm still figuring this out)

- This feels mean, but I liked the old icons better. Would an option to use them be possible?

Trains will consider longer detours the longer they are stuck. Sometimes the end result is they take a strictly worse loop because the alternative path they come up with ends up also being blocked, so they revert to the original path at some point. They do not remember the past or predict the future, all they want is to reserve path that will lead to the target. 

I can change the parameters to make them less eager to take longer detours, but I don't really want to place any hard limits as this will result in them failing to find actually viable alternative paths in many cases. It could perhaps be user configurable.

You can, however, remedy this in two ways. #1 is to fix your congestion issues so your trains do not get stuck and start thinking about nonsensical detours. #2 is to change your track layouts so that those nonsensical detours are just not available to them in the areas where congestion might occur.

I'm not sure if a locomotive use case tutorial belongs inside the game, but I'll look into it. In general, you want trains that are as cheap as possible to run, while having just enough traction and top speed to avoid causing congestion. To make a good choice you need to consider what the weight of the train will be, the speed of other trains on the line, and how often it has to climb a sloped tile.

When engines are combined, they only contribute to traction below their engine top speed, and the speed of the whole train is limited by the lowest max. safe speed. The typical use of combining engines is including a slower engine to help in climbing long slopes. A couple other uses would be including a weak/fast engine to increase the top speed on long flats, or combining electric and combustion engines for traversing partially electrified railways.

You are seeing high resolution icons because of your UI scale setting. If you want to see upscaled low resolution icons instead, you should delete the icons in the "hires" folder.

Thanks for the thorough response.

The problem I think I'm seeing is that they're reserving detours that just lead them back to the same blockage—it's as though they're going "oh boy, clear track!" without regard to the fact that the clear track in question is just a longer route to the same blocked track they're trying to route around. I hope I'm not missing what you meant—my sticking point is that it doesn't seem like there's any "past" or "future" planning required to see that both routes end up at the same bottleneck, and to then prefer the route that's shorter before the bottleneck.

This screenshot has a good example. If one train is in the station, the next will pause at the signal just before the station, then embark upon the much longer loop, even though the end result is that the train is stuck waiting for the same blockage to clear even farther from the station. Just after building this, I even saw the second train wait before the station, and when the train occupying the station left, going around the entire loop rather than just go into the soon-to-be-empty station. I think it's hard to avoid this behavior when I have multiple stations coming off a main line. I recognize that this is a nontrivial problem which you've thought about a lot more than I have, but isn't there any way the pathfinding can recognize when an alternate route doesn't actually help with a given obstacle?

Mainly, it just isn't generally true that we should always want trains to avoid longer paths to the same blocked track like in your idea. Given a layout like you have in your screenshot, it is entirely reasonable to *want* the second train to use the loop as a buffer if there is a blockage: If the second train is long, then taking the loop will free up track behind it, which might be important to avoiding jams in the rest of your network. I would not be content to add heuristics that take away opportunities like this.

I am, however, working on an option to modify how a train considers detours when it is stuck in traffic. I believe this will help for your playstyle.