it isn’t the best method, i’m currently stuck to do a smooth decresing probability. I think i should use a proper modifer variable for the random value. But at the moment i can’t come up with one…
Any suggestions?

I would suggest if you’re JUST going for a probability curve, brush up on your mid-high level math and start playing with things like exponents, logarithms, etc.

Off the top of my head, I could give Random.Range(1, (county3+1)) and have it instantiate whenever the range is >=(county2) What this specifically would do is make the block have to pass a 2/3 chance ‘y’ times to spawn (i’e 4/9 for y = 2 layer, 6/12 for y = 3, and so on). It’s doesn’t calculate the TRUE probabilty for that explanation, but it’s good enough for something like this (my statistics are… really rusty). In short:

value = Random.Range(1,(county*3)+1)
if(value >= county(county*2)); //And so on.

With most procedural content, unless you get REALLY lucky you’re probably not gonna be satisfied with this the first time. Play with the numbers, use this as a starting point and tweak it until you find a curve you like.