И это вприницпи работает. Как мне сделать так, что бы у каждого предмета можно было выставлять определённый коофицент выпадения? Или хотя бы подскажите куда копать, в каком направлении.
Смотри:
В урну поместили 2 шара: черный и белый, какова вероятность того, что первый наугад вынутый шар окажется белым?
Дальше
В урну поместили три шара: белый, черный и красный, какова вероятность того, что первый наугад вынутый шар окажется белым?
Дальше
В урну поместили четыре шара: 2 белых, черный и красный, какова вероятность того, что первый наугад вынутый шар окажется белым?
Учитывай что полная вероятность равна 1.0
Вот так это работает, а все остальное
вздор... .
Другими словами тебе нужно N штук каждого элемента пропорционально твоему коэфиценту выпадения. Потом
https://en.cppreference.com/w/cpp/algorithm/random...
А дальше рандомно дёргать из контейнера, оставлять их там или удалять зависит от задачи.
Использовать распределения или нет аналогично.
https://en.cppreference.com/w/cpp/numeric/random
Более сложные варианты я описывать не возьмусь.