바로 C++ 가챠 시뮬레이터 입니다. 최근에 가챠 게임을 많이 해가지고 '가챠 시뮬레이터 한번 만들어볼까?' 라는 생각으로 코딩하게 되었네요 ㅋㅋ 화면만 봐서는 무슨 뜻인지 잘 모르는 분들도 계시겠죠? 화면을 하나하나씩 설명해보겠습니당
우선 시작하겠다는 표시로 'y'를 입력했고 각 레어에 대한 확률을 입력했습니다. 위의 화면에서 입력한 정보를 정리해보면 아래와 같습니다.
1성(★☆☆☆☆) 등장 확률 : None
2성(★★☆☆☆) : 74%
3성(★★★☆☆) : 20%
4성(★★★★☆) : 5%
5성(★★★★★) : 1%
그리고 가챠를 10번 돌리겠다고 입력했습니다. 과연 결과는 어떻게 나올까요??
(내 가챠 운은 좋은가 나쁜가... ㅋㅋㅋ)
가챠 결과가 출력되었습니다. 정리해보면,
4성(★★★★☆) 1개
3성(★★★☆☆) 2개
2성(★★☆☆☆) 7개
가 나온 것입니다~!! (나름 좋게 나온거같네요 ㅋㅋㅋ)
후에 프로그램을 종료하겠다는 의미로 'n'을 입력했구요.
이제 핵심이 되는 소스코드만 설명하겠습니다.
※ 가독성을 최대한 높이기 위해 이미지로 제시하였습니다. 아래의 소스코드는 맨 아래쪽에서 다운받으실 수 있습니다.
각 레어에 대한 확률 값을 가지고 가챠 배열을 세팅해주는 함수입니다. 확률 값을 입력받았을 때 해당 값만큼 배열을 레어 숫자로 채워주는 방식을 사용하였습니다. 예를 들어, 2성이 등장할 확률이 90% 이면, 배열 내의 값을 90개만큼 '2'로 채우는 것이지요.
가챠 배열을 이용해 횟수만큼 가챠를 돌려보는 함수입니다. 이 함수가 해당 프로그램에서 가장 핵심이 된다고 볼 수 있습니다.
rand() 함수를 통해 배열 index 값을 랜덤으로 받아 레어 숫자를 결과값으로 얻고, 결과 값을 저장해 출력해주는 방식입니다. 확률 값에 따라 배열 내의 값을 세팅해주었기 때문에, 지정한 확률대로 결과가 출력됩니다.
이렇게 C++로 가챠 시뮬레이터를 만들어 보았습니다. 오랜만에 재미있는거 한번 해보았네요 ㅋㅋㅋㅋㅋ
소스 파일도 업로드해드리니 필요하신 분들은 다운받아서 참고하시면 되겠습니다.
<소스 코드>
'My작품' 카테고리의 다른 글
케이온 같은 그림 찾기 게임 (0) | 2021.08.17 |
---|---|
저그, 프로토스 종족 죽이기 (0) | 2021.05.23 |
출발지에서 목적지로 향하는 모든 경우 출력 (0) | 2020.12.27 |
C++ 가챠 시뮬레이터 (Type B) (0) | 2020.12.26 |
Dynamic Lotto!! (0) | 2020.12.26 |