формулы какието изобретать, тут даже думать ничто не нужно))). Я бы сделал так!
берём случайный число при открытии сундучка от 0 до 100000 (может миллион, может 1000, но тысяча маловато, ябы поставил тысяч 30 верхний предел для такой цифры.)
изначально 0 подков =1 (просто единица)
Проверяем если выпавшая цифра гсч меньше 1, то отправляем на вычисление рара.
в проверку рара, генерируем ещё рандом число от 0 до 100 например.
и теперь если цифра меньше 90, то игрок получает ягдаш, а если от 90 до 100, то ещё какойто рар из оставшихся 10))).
Подкова. просто +1 к шансу на выпадение рара, но нафек утруждаться и писать лишнюю строку кода, чтобы она влияла ещё и на качество рара, так что на качество рара подкова не будет влиять.
?????????????????????????????????????+?+?=?????????????????????????????????????????????????????