How exactly is ‘max playbacks’ used and how do I handle/detect it in the API?

I would have hoped it controlled the max number of real channels a given event could use, such that I could play lots of instances of the event but only hear the few most important (especially as it seems that a 1% volume high priority sound is always chosen over a 100% low priority sound instead of scaling priorities with volume). But it seems it controls the max amount of virtual channels allocated.

When ‘max playbacks’ is set to a small number it looks like the older instances are just thrown away when new ones are started after which I get FMOD_ERR_INVALID_HANDLE on any operation on the old event pointer (which I haven’t freed in any way). On the other hand – after an additional amount of time – these old pointers starts “working” again, now just returning not playing etc.

In the actual case I have lots of vehicles driving around, most of them far away. All are just playing instances of the same event with a looping sound while they are updated regarding position and speed. There’s no need to use lots of real channels on these vehicles so I would like to only have the few most important ones playing. Another problem here is the lack of max playbacks for categories if I have several kinds of vehicles (in different events) and still only want a well defined limited amout of engine sound.