wallyweb wrote:
Hafting wrote:Something needs to be done. Currently, we have depot-only refits, and cargodist fails to understand that.
How is this a problem? Why must cargodist know about the availability of depot-only refits?
When playing with cargodist on, the game will try to send cargo to any reachable destination, even if the cargo has to be transferred between various trains at various stations. Cargodist knows where it is possible to send cargo, by looking at what cargo the trains are capable of transporting - and where they go. When using cargodist, the player decides what cargo to pick up, but not so much where to bring it. There is much realism in this: Real railroads pick up stuff at stations too, but don't decide where it should go. Passengers buy tickets for any available destination they want to see, the railroad company cannot just bring them all to the same city and hope they're satisfied with that. Similar for cargo. In a game without cargodist, the player decides where to bring everything. Not so with cargodist. You get coal, but coal destined for a specific coal-consuming station. You cannot decide to deliver it at some other coal consuming station instead.
Now, if a train has orders to "re-fit to available cargo" at some station, then cargodist will try to schedule any cargo that train is capable of bringing, considering every re-fit the train might do. Sounds nice, but this is where the bug is. When cargodist creates cargo for some faraway destination, it considers the re-fit options. And it wrongly assumes that all re-fits are possible to do at the station the re-fit order is for. But not all re-fits are possible to do at a station, so a cargodist game sometimes creates cargo that cannot reach the final destination. The cargo may remain where it was produced, or it may be brought somewhere, and transferred to a station where another train is supposed to pick it up. But that other train cannot pick up, because it would need an illegal re-fit to do so. For example, it might need to change an oil tank wagon into a milk tank - which cannot be done at a station.
wallyweb wrote:
The situation is clearly a bug the way I see it.
Where exactly is the bug? Is it in a feature (Depot, Station, etc.) or is it in an implementation (cargodist) or is it in something else?
The bug is in cargodist. An order to "re-fit to available" will allow an oil train to re-fit its oil tank wagons to chemicals, if chemicals are available at the station. (Common case when bringing oil to a refinery, the refinery then create chemicals from oil.) This works because the train set newgrf specifies that one can re-fit from oil to chemicals at a station.
But if oil is dropped off and milk is available for the return trip, then a re-fit cannot be done. The train newgrf specifies that we can only re-fit from oil to milk in a depot (realistically, you need an incredible cleaning job for such a re-fit.) But cargodist will think it is possible - milk might then pile up at that station because the available trains cannot re-fit to bring it.
This bug is relatively new. Before, cargodist did not consider re-fit orders. That created some other irritating problems. Having cargodist understand re-fit orders generally helps. The only problem is that cargodist should only consider the
possible re-fits, not also the impossible ones. Then we won't get cargo produced that no train can bring. Piles of cargo should only happen when the player is transporting something, but with too low capacity.
wallyweb wrote:
Manual Depot Refits is an original part of the game. Depots are where we buy wagons and build our trains. Manual Depot Refit is an essential part of this process.
Yes. I do not propose removal of manual re-fitting.
wallyweb wrote:
Station Refit-If-Available is an attractive and realistic addition to the game. The question here is how to schedule the delivery of the new cargo.
Should cargodist be able to automatically alter a train's schedule?
Upon successful delivery, will the wagons be refitted back to their original refit and the train returned to its original schedule?
Cargodist creates cargo for specific destinations, and loads it onto trains that can get the cargo closer to the destination. Cargodist do not route the trains, the player still do that. Also, cargodist does not re-fit wagons. The player can set a "re-fit to available" order, (for a specific train, at a specific station) and then the train will pick up anything it can bring. A coal train will only pick up coal. A ore train will only pick up ore. But an station may be connected to several different mines, or other trains might transfer cargo there. So, a station may have ore and coal in amounts that vary greatly over time. It is then useful to use a "re-fit to available order". A train with bulk wagons can then load coal in some wagons and ore in others, depending on how much there is of each kind. So the player can use fewer trains and fill them optimally, instead of having a half-empty coal train pass by a station full of ore.
wallyweb wrote:
If I read the discussion properly, the problem seems to be inappopriate cargo being available at a station.
How can this be if cargo acceptance is determined by an industry located within a station's coverage area?
Is the cargo left over from an industry that expired due to poor service?
Is the cargo an oversupply to an industry with an acceptance quota?
It is correct that the problem is inappropriate cargo being available at a station. (Or at many stations, making a huge mess.)
How can this be? It happens because some industry withing the stations coverage area produce cargo, in the mistaken belief that the trains going by can bring the stuff. But the trains cannot, because they would need an illegal re-fit to do so. It also happens because some other train transfers cargo at the station, cargo it is hoped that other trains will pick up and pass on. But again, the other trains cannot, because they would need an impossible re-fit.
This is not a problem with cargo left over from expired industry. And it is not an oversupply issue either - I play with an industry set that doesn't have acceptance quotas.
I think the best solution would be to have cargodist know the difference between station re-fits and depot re-fits, and only consider the former. That would solve the problem for players that use cargodist and orders of the type "re-fit to available cargo". Players that either don't use cargodist or don't use re-fit orders won't see this bug - and they will not see any side effects of this particular way of fixing it either.
But when I proposed this solution, there was a suggestion that depot-only refits was somehow a bad thing that should go away. Changing the game so there are no depot-only re-fits available either means that all re-fits can be done at stations - or that some re-fit options disappear. Either way, the bug I see disappears. But these solutions are more intrusive. They will change the game for everyone - including people who don't use cargodist. Fine with me - but maybe not with everybody else. I just hope the bug will be fixed, as it sometimes ruins the game.