3% ํ๋ฅ ๋ก SSR ์ด ๋์ค๊ณ
10% ํ๋ฅ ๋ก SR์ด ๋์ค๊ณ
87% ํ๋ฅ ๋ก R์ด ๋์ค๋ ๊ฒ์์ด ์์ผ๋ฉด
์ฝ๋๋ ์ด๋ค ์์ผ๋ก ๊ตฌํํด์ผ ์ง๊ด์ ์ด๊ณ ์ฌ์ฉํ๊ธฐ ํธํ ๊น?
float randomRange = Random.Range(0f, 1f);
if (0.00f <= randomRange && randomRange <= 0.03f)
{
// SSR
}
else if (0.03f <= randomRange && randomRange <= 0.13f)
{
// SR
}
else if (0.13f <= randomRange && randomRange <= 1.00f)
{
// R
}
// ....
์ด๊ฑด ๋ญ๊ฐ ์ข ๊ทธ๋ฐ๋ฐ
์ ๋ฐฉ์๋ ๋์์ง ์์๋ฐ ๊ตณ์ด ๋ฐ๊พธ์๋ฉด ํ๋ฅ ๋น์ฒจ๊ธฐ ๋ถ๋ถ์ ํจ์๋ก ๋ฐ๊พธ๋ฉด ์ข๋ ๊นจ๋ํด๋ณด์ด๊ธด ํ ๊ฑฐ๊ฐ์.
public string Gacha(){ if (RandomIt(0.03f)) return "ssr"; if (RandomIt(0.13f)) return "sr"; return "r" bool RandomIt(float persent) { if (persent == 0) return false; return Random.Range(0f, 1f) <= persent; }}
https://imgur.com/a/zzm1jR6
๊น๋ํด์ ์ข๋ค ๊ณ ๋ง์
๊ฐ์ค์น ๋๋ค
Weighted Random ํค์๋ ๊ฐ์ฌ
์๋จ์ ๊ฐ๋ฐ์ - ๋๋ค๋ง ๋ช ์ํ๊ณ ํ๋ฅ ์์๋ ค์ค
๊ฐ์ค์น๊ฐ ๋ง์. ํ๋ ์ดํฉ ๊ฐ์ฑ ๋ง๋ค์ด๋ณด๋ฉด ๊ทธ๋ฐ๋ฐฉ์
Random generate unique items - Playfab ํค์๋ ๊ฐ์ฌ
https://gall.dcinside.com/mgallery/board/view/?id=game_dev&no=112109&search_head=10&page=1
๋ ์ด๋ ๊ฒ๋ง๋ฌ
ํ์คํ ์ค์ ์์ DB ์ ์ฉํ๋ ค๋ฉด ์ ํจํ๊ฒ ๋ค. ๊ณ ๋ง์
ํ ์ด๋ธ๋ก ๋ฏธ๋ฆฌ ๋ง๋ค์ด๋ใ ใ ใ ใ ใ ใ