Re: Understanding the workings of ware_t
Reply #1 –
I guess that you aware of the recent:
# three modes (default = 0)
# 1: the payment is only relative to the distance to next interchange, 2 to the trips destination (default is distance since last stop)
pay_for_total_distance = 0
Of course, that change still doesn't use real speed and any QoS rating. There have been several discussions regarding approaches to a more detailed revenue system.
One idea (mine?) was to use - per packet - a base value and a dynamic value (some kind of QoS metric), the latter deteriorating over time, depending on delays and low comfort rating. Another value could be attached to each convoy, measuring its transport performance in some kind of metric (as opposed to the revenue that it generates, which can even be negative with the settings above).
Oh, and if you are going to change revenue to use QoS, why shouldn't routing be changed to use QoS and the cost, too? 
Try vereinige_waren() - it tries to merge the packet with one that is already waiting at the stop.