diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index f6575b9e94..8263822c73 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -4119,7 +4119,9 @@ static void TruncateCargo(const CargoSpec *cs, GoodsEntry *ge, uint amount = UIN if (source_station == nullptr) continue; GoodsEntry &source_ge = source_station->goods[cs->Index()]; - source_ge.max_waiting_cargo = std::max(source_ge.max_waiting_cargo, i->second); + if (i->second > source_ge.max_waiting_cargo) { + source_ge.max_waiting_cargo += (i->second - source_ge.max_waiting_cargo) / 4; + } } }