
공략 가이드 / 방치형 게임
방치형 게임의 숫자는 왜 이렇게 클까: K, M, aa, e308의 뜻
방치형 게임에서 K, M, B, T, aa, 1.5e45가 무슨 뜻인지, 숫자가 폭발적으로 커지는 이유, 1e308이 마법 같은 한계인 이유, 컴퓨터가 담을 수 있는 것보다 큰 숫자를 코드가 다루는 방법을 저희가 겪은 버그 이야기와 함께 설명합니다.
방치형 게임의 숫자가 거대한 이유는 모든 것이 기하급수적으로 늘어나기 때문입니다. 업그레이드할 때마다 수입이 곱절로 늘어나니, 몇 시간 뒤면 수백만, 몇 주 뒤면 이름이 있는 모든 수를 넘어섭니다. 숫자를 읽기 쉽게 하려고 게임은 숫자를 줄여 씁니다. K는 천, M은 백만, B는 10억(영어로 billion), T는 1조(영어로 trillion)이고, 그다음은 aa, ab, ac 같은 알파벳이나 1.5e45 같은 과학적 표기법을 씁니다. 1.5e45는 1.5 뒤에 45자리가 더 이어진다는 뜻입니다.
요약표: K = 10^3, M = 10^6, B = 10^9, T = 10^12이고, 그다음부터는 알파벳이 한 단계 넘어갈 때마다 1,000배입니다. 과학적 표기법에서 e 뒤의 숫자는 첫 자리 뒤에 몇 자리가 오는지를 나타냅니다. 1e6은 100만, 1e12는 1조입니다.
자주 쓰는 세 가지 표기법
| 값 | 영어 약어 | 알파벳 | 과학적 표기 |
|---|---|---|---|
| 1,000 | 1K | 1K 또는 1a | 1e3 |
| 1,000,000 | 1M | 1M 또는 1b | 1e6 |
| 1,000,000,000 | 1B | 1B 또는 1c | 1e9 |
| 10^12 | 1T | 1T 또는 1d | 1e12 |
| 10^15 | 1Qa (1000조) | 1aa | 1e15 |
| 10^18 | 1Qi (100경) | 1ab | 1e18 |
| 10^33 | 1Dc (10구) | 1ag | 1e33 |
게임마다 방식이 달라 헷갈리지만, 규칙만 알면 쉽게 읽을 수 있습니다. 한 단계는 앞 단계의 천 배입니다.
저희 게임의 실제 예
같은 스튜디오의 게임끼리도 다를 수 있습니다. Idle AI Factory에서는 숫자가 K, M, B, T로 가다가 두 글자 묶음이 시작됩니다. aa는 10^15, ab는 10^18, ac는 10^21이고, 이렇게 120개의 접미사가 이어집니다. Idle Ronin에서는 알파벳이 바로 시작됩니다. 1a는 천, 1b는 백만, 1c는 10억이며 z까지 간 뒤 aa, bb, cc로 이어집니다. 표에는 접미사가 1,743개 있고, 만약 마지막 것까지 넘어서면 게임에 ‘A Lot!’이 표시됩니다. Idle Ronin은 설정에서 과학적 표기법으로 바꿀 수도 있으며, 오래 플레이한 많은 사람이 이쪽을 선호합니다.
숫자가 폭발하는 이유
방치형 게임의 비용과 보상은 단계마다 일정한 비율로 늘어납니다. 즉 기하급수적입니다. Idle Ronin에서는 초반에 적의 HP가 스테이지마다 55~57%씩 늘어납니다. 140스테이지가 지나면 이렇게 쌓인 효과가 약 10^28, 즉 29자리 수에 이릅니다. 곡선은 가이드 방치형 게임의 성장 구조에서 볼 수 있습니다.

1e308이 마법의 숫자인 이유
대부분의 게임은 숫자를 double이라고 부르는 64비트 부동소수점 수로 저장합니다. double이 담을 수 있는 가장 큰 수는 약 1.8 x 10^308이며, 그보다 크면 컴퓨터는 무한대를 반환합니다. 이 한계는 증분형 게임 팬들 사이에서 워낙 유명해서, Antimatter Dimensions는 이를 게임의 일부로 만들었습니다. 약 1.8e308인 Infinity(무한)에 도달하는 것이 이 게임의 첫 번째 큰 목표입니다.
더 작은 형식인 32비트 float는 훨씬 이른 약 3.4 x 10^38에서 한계에 부딪힙니다. 저희가 직접 겪었듯이, 이 차이는 중요합니다.
저희의 버그: 적의 HP가 무한대가 된 날
Idle Ronin은 예전의 방치형 게임에서 출발했고, 그 코드에서는 적의 HP를 32비트 float로 계산했습니다. 스테이지 140을 지나면 적의 HP가 10^28을 향해 올라가고, 스테이지 316 무렵부터 float가 넘쳐 무한대가 되었습니다. 그다음 스테이지에서는 HP가 전혀 없는 적이 나왔고, 스테이지 1000 무렵에는 계산 결과가 NaN(not a number, ‘숫자가 아님’)이 되어 진행이 완전히 멈췄습니다.
해결책은 곡선 전체를 double로 계산하고, 스테이지 1000을 넘는 부분은 게임 자체의 큰 수 자료형에 맡기는 것이었습니다. 이 자료형은 일반적인 수에 더해, 추가로 붙는 0의 개수를 별도의 카운터로 저장하므로 double의 한계를 훨씬 넘어설 수 있습니다. 게임에 접미사 1,743개짜리 표가 있는 것도 그 때문입니다.
게임은 무한대 너머의 숫자를 어떻게 다룰까
브라우저 증분형 게임들도 같은 벽에 부딪혔고, 커뮤니티는 이를 위한 도구를 만들었습니다. 가장 유명한 것은 Patashu의 break_infinity.js로, Antimatter Dimensions의 제작자와 이 게임을 돌리느라 고생한 ‘all the CPUs that struggled to run’에게 바쳐졌습니다. 자릿수와 지수를 두 개의 별도 숫자로 저장해 약 10^(9 x 10^15)까지 다룰 수 있습니다. 후속작인 break_eternity.js는 훨씬 더 멀리 가서, 그 한계를 설명하려면 거듭제곱의 탑이 필요할 정도입니다.
그 대가는 정밀도입니다. 숫자가 이만큼 커지면 게임은 앞의 약 15자리만 저장합니다. 그래도 아무도 눈치채지 못합니다. 수입이 1.52e1204에 이르면 앞의 몇 자리 뒤는 전혀 중요하지 않기 때문입니다.
큰 숫자를 빠르게 읽는 법
- 자릿수가 아니라 알파벳을 세세요. 한 단계(K에서 M, aa에서 ab)마다 1,000배 커집니다.
- 과학적 표기법에서는 지수를 비교하세요. 3e45는 3e42의 천 배입니다.
- 게임이 허락하면 표기법을 바꾸세요. 이름이 있는 수를 넘어서면 과학적 표기법이 비교하기 더 쉽습니다.
- 배율로 생각하세요. x2 업그레이드는 지수에 0.3을 더하고, x10 업그레이드는 1을 더합니다.
자주 묻는 질문
방치형 게임에서 T 다음은 무엇인가요?
Qa(quadrillion, 1000조), Qi(quintillion, 100경), 그다음 sextillion, septillion 순으로 이어지며, 알파벳 표기로는 aa, ab, ac입니다. 한 단계는 앞 단계의 1,000배입니다.
방치형 게임에서 e는 무슨 뜻인가요?
과학적 표기법입니다. 1e6은 1 뒤에 0이 6개, 즉 100만을 뜻합니다. 2.5e20은 2.5 뒤에 20자리가 이어진다는 뜻입니다.
방치형 게임에서 aa는 무슨 뜻인가요?
알파벳을 쓰는 대부분의 게임에서 aa는 T 다음 단계, 즉 10^15입니다. Idle Ronin처럼 알파벳을 더 일찍 쓰는 게임도 있으니 해당 게임의 단위를 확인하세요.
방치형 게임은 왜 1e308에서 멈추나요?
표준 64비트 수로는 그보다 큰 수를 나타낼 수 없기 때문입니다. 그 너머로 가는 게임은 자체적인 숫자 자료형을 씁니다.
출처
- ONI Games 게임 코드: Idle Ronin(double_evrac.cs, PlayerDatabase.CalculateEnemyHP), Idle AI Factory(NiceCurrencyFormat.cs), 2026년 9월.
- break_infinity.js, break_eternity.js, Patashu, GitHub.








