Vehicles all belong to a subset spawn group (like they do in the editor) and there may only be a certain number of that group of vehicles that exist. For instance, if theres a military-grade vehicle spawn node on the map it can only have 10 military vehicles spawned in the entire server before it stops spawning. Until old military vehicles are destroyed, new ones will not spawn.
All vehicles, despite their spawn group, are treated equally and are not discriminated against for being in different spawn groups. For instance, destroying a civilian car frees up space for a military one to spawn at a military node.
It’s 2. The only thing limiting vehicle spawns overall is the number of vehicle spawns allowed by the server. This also depends on map size but can be changed to be a different amount.
If you destroy any vehicle, a new one will try to spawn somewhere. Maps always balance this out by having the really good vehicles have a lot chance to spawn in their own spawn tables so that if after destroying a car a military vehicle spawn decides to spawn, it doesn’t have a very high chance of it being a tank or an apc.
Spawns with a single vehicle in them do the same, but simply have a spawn with literally nothing in them (set to “spawn” usually about 90% of the time) and then a second spawn with the actual vehicle, like a jet.