見出し画像

사운드 볼텍스 점수 아트의 수학적 원리

사운드 볼텍스를 하다보면 스코어에 같은 숫자 몇 개가 반복되어 나타나는 이른바 '점수 아트'를 가끔 볼 수 있다. 아래 사진들은 모두 점수 아트의 대표적인 예시이다. (모두 필자의 기록이므로 불펌 같은 건 아니니 안심하시라.)

첫 번째 사례. 가장 단순한 형태의 점수아트로, 끝의 몇 자리가 같은 숫자로 채워진다. 자세히 보면 갱신 이전의 스코어도 984'6666'으로 끝 4자리가 같은 숫자임을 볼 수 있다.
두 번째 사례. 98'93939'와 같이 두 자리 숫자가 반복된다. 이쪽도 갱신 전 스코어가 9'878787'로 두 자리 숫자가 반복됨을 볼 수 있다.
세 번째 사례. 자릿수별로 크기가 달라서 얼핏 보면 와닿지 않겠지만 자세히 보면 9'934934'와 같이 세 자리 숫자가 반복된다. 

위에서 예시를 든 세 곡은 모두 점수 아트가 잘 나오는 곡들이다.
위 세 곡의 공통점은 모두 점수 아트가 잘 나오는 체인 수를 가지고 있다는 것이다. 그렇다면 왜 이런 체인 수를 갖는 곡들은 점수 아트가 잘 나오는 것이고, 다른 리듬게임보다 사운드 볼텍스에서 이러한 점수 아트에 대한 담론이 자주 오가는 것일까?
들어가기에 앞서, 모든 점수는 EX 스코어가 아닌 1000만점 만점의 노멀 스코어를 기준으로 했음을 알린다. EX 스코어는 계산식 특성상 + S-CRITICAL의 존재로 인해 점수아트를 노리기가 훨씬 어렵다. 만약 EX 스코어로 점수아트를 노린다면 세부작에 도가 튼 탑랭커라는 뜻이니 자랑스러워해도 좋을 것이다.


점수아트의 수학적 원리

사운드 볼텍스의 스코어 계산식은 아래와 같다. 아마 사운드 볼텍스 유저들이라면 대부분 알고 있을 것이다.

$${\mathrm{Score}=\dfrac{\mathrm{Critical}+0.5\times\mathrm{Near}}{\mathrm{Total}}\times 10000000}$$

여기서 Total은 총 체인 수, Critical과 Near는 각 판정의 갯수이며, 소수점 이하는 버린다.
예컨대, 체인 수가 1501개인 곡에서 CRITICAL 1466개, NEAR 30개, ERROR 5개가 났다면 위 공식에 의해 점수는 9866755점이 된다.
그렇다면 위 점수 공식으로부터 어떻게 점수 아트가 가능한 체인 수를 알아낼 수 있을까?
요즘 교육과정은 어떨지 모르겠지만 필자는 중학교 2학년 수학 시간에 순환소수에 대해 배웠다. 일단 아직 순환소수를 배우지 않은 사볼 유저나, 배웠어도 잊어버린 독자가 있을 수도 있으니 간단히 개념을 다시 소개하고 넘어가겠다.
순환소수란 소수점 아래에서 특정한 숫자의 배열이 반복되는 소수를 말한다. 대표적인 예시로는 아래와 같은 것들이 있다.

$${\dfrac{1}{3}=0.33333…=0.\dot{3}}$$

$${\dfrac{5}{22}=0.2272727…=0.2\dot{2}\dot{7}}$$

$${\dfrac{5}{37}=0.135135135…=0.\dot{1}3\dot{5}}$$

순환소수에서 반복되는 숫자의 배열을 순환마디라고 하는데, 순환마디는 위와 같이 순환마디의 첫 숫자와 끝 숫자에 점을 찍어서 표현한다. 첫 번째와 세 번째 예시처럼 순환마디가 소수 첫 자리부터 바로 시작할 수도 있지만, 두 번째 예시처럼 순환마디가 소수 둘째 자리 혹은 그 이하부터 시작할 수도 있다. 주로 전자를 순순환소수, 후자를 혼순환소수라고 한다.
(필자는 어렸을 때 순순환소수를 2호선, 혼순환소수를 6호선이라고 불렀다. 왜인지는 서울 지하철 노선도를 펼쳐서 노선 모양을 확인해 보라.)
사운드 볼텍스의 점수 아트의 핵심이 바로 이 순환소수이다. 예컨대 체인 수가 1800개인 곡이 있다고 하면, CRITICAL 1750개와 NEAR 42개, ERROR 8개를 낼 경우 이를 스코어 계산식에 대입하면 다음과 같이 나온다. (마지막에서는 소수점 이하를 버림했다.)
$${\mathrm{Score}=\frac{1771}{1800}\times 10000000 = 0.983\dot{8}\times 10000000 = 9838888}$$
이와 같이 앞에 나온 분수를 소수로 나타내면 소수점 아래 적당한 곳에서 8이라는 숫자가 반복되기 때문에 여기에 1000만을 곱하면 뒤 4자리가 반복되는 점수 아트가 나옴을 알 수 있다.
위의 예시에서 보듯 일반적인 분수는 소수로 고치면 유한소수(소수점 아래 자릿수가 유한 개인 소수로, 0.1이나 0.234, 0.5678 등이 해당.) 아니면 순환소수가 된다. 사볼의 점수 계산식에서도 분수가 들어가 있으니, 이 분수를 소수로 고치면 순환소수가 나올 것이라고 예상할 수 있다. 따라서 이론상으로는 점수아트가 꽤 자주 보여야 하지만, 실제로 점수아트가 자주 나오는 곡은 한정되어 있다. 왜 그런 걸까?
답은 간단하다. 사볼의 스코어는 소수점 아래를 버리고 자연수로 나타내기 때문에 표시할 수 있는 자릿수가 한정되어 있기 때문이다. 예컨대 다음을 보자.

$${\dfrac{1}{17}=0.\dot{0}58823529411764\dot{7}}$$

1/17은 순환소수이지만, 순환마디가 너무 길다. 따라서 사볼의 1000만점 만점제 스코어 내에서는 점수아트를 만들 수가 없다. 사볼과 같은 점수체계를 쓰는 에뮬레이터 K-Shoot Mania에서 노트수 17개짜리 채보를 하나 만들고 크리티컬 1개만 내 보라. 그렇다면 점수는 위 1/17에 1000만을 곱한 588,235점이 나올 것이다. (위에서도 언급했듯 소수점 이하는 버린다.) 이걸 점수아트라고 하기는 어렵지 않은가.
따라서 점수아트가 나오기 위해서는 순환마디가 짧은 분수를 찾아야 한다. 사볼 스코어의 자릿수는 PUC(1000만점)를 제외하면 7자리 이하이므로, 같은 자릿수가 반복되는 것이 보이려면 순환마디는 3자리 혹은 그 이하여야 할 것이다. (0.ABCABC… 나 0.ABABAB…, 0.AAAAA… 같은 것들을 말한다.)
하지만 이것만으로는 부족하다. 위에서 순순환소수와 혼순환소수에 대해 언급했는데, 순순환소수는 순환마디가 첫째 자리부터 시작하므로 문제가 없지만, 혼순환소수의 순환마디가 너무 늦게 시작해 버리면 문제가 된다. 다음과 같은 예시를 보자.

$${\dfrac{1}{192}=0.005208\dot{3}}$$

이 분수는 순환마디가 한 자리 수이지만, 순환마디가 소수 7번째 자리부터 시작한다. 따라서 당신이 체인수가 192개인 곡을 플레이한다면 점수 아트를 보기가 힘들 것이다. (불가능하다는 뜻은 아니다. 판정의 갯수가 절묘하게 맞아떨어지면 점수아트를 볼 수는 있다.)
위에서 논의한 내용을 종합하면, 점수아트가 잘 나오려면
1. 순환마디가 최대한 짧으면서 (3자리 이하),
2. 순환마디가 최대한 빨리 시작해야 한다.

그러면 다음 장에서는 이를 바탕으로 점수 아트가 잘 나오는 체인 수를 찾아 보자.


점수 아트가 잘 나오는 체인 수는?

위에서 순환소수에 의하여 점수아트가 나오는 원리를 알아보았다. 순환소수의 순환마디의 길이는 기본적으로 순환소수를 분수로 나타냈을 때, 분모의 값에 따라 결정된다. 분자는 그저 순환마디에 오는 숫자들을 결정할 뿐이다. (궁금하면 직접 계산기에 1/11, 2/11, 3/11 등을 계산해 보라. 모두 순환마디가 두 자리로 나올 것이다.) 따라서 사운드 볼텍스의 스코어 계산식에 따르면 분모에 오는 총 체인 수가 점수 아트를 결정한다고 말할 수 있다.
그러면 점수 아트가 잘 나오는 체인 수를 찾으려면 직전 장의 끝자락에서 강조한 조건 1, 2를 모두 만족하는 체인 수를 찾으면 된다.
우선 조건 1부터 살펴보자. 순환마디가 3자리 이하인 순환소수는 다음과 같은 분수로 나타낼 수 있다.

$${0.\dot{A}B\dot{C}=\dfrac{ABC}{999}}$$

$${0.\dot{A}\dot{B}=\dfrac{AB}{99}}$$

$${0.\dot{A}=\dfrac{A}{9}}$$

이렇듯 순환마디가 3자리 이하인 순환소수를 분수로 나타내면 분모가 9, 99, 999 중 하나가 된다. (노파심에 이야기하자면, ABC는 숫자 A, B, C의 곱이 아니라 백의 자리가 A, 십의 자리가 B, 일의 자리가 C인 자연수를 말한다.) 
위에서는 아직 약분을 하지 않았기 때문에 약분을 하고 나면 분모는 각각 9, 99, 999의 약수가 될 것이다. 아래처럼 말이다.
$${0.\dot{0}\dot{9}=\dfrac{9}{99}=\dfrac{1}{11}}$$

위에서는 순순환소수만을 알아보았는데, 혼순환소수는 다음과 같이 나타난다. (편의상 순환마디 이전의 자릿수는 모두 0으로 가정하겠다. 자릿수가 0이 아니라도 분모는 바뀌지 않는다.)

$${0.0\dot{A}B\dot{C}=\dfrac{ABC}{9990}}$$

$${0.0\dot{A}\dot{B}=\dfrac{AB}{990}}$$

$${0.0\dot{A}=\dfrac{A}{90}}$$

이렇듯 순환마디가 시작하는 자릿수가 하나씩 밀려날 때마다 분모에는 0이 하나씩 추가된다. 99 → 990 → 9900, 9 → 90 → 900 같은 식으로 말이다.
그러면 순환마디가 3자리 이하인 체인 수는 아래와 같은 것들이 있다. 사운드 볼텍스의 많은 곡들은 체인수가 1000개를 거뜬히 넘어가므로, 1000~3000 사이의 체인 수만을 적는다. 게임 내에서 실제로 존재함을 확인한 체인 수는 특별히 볼드체로 표시한다. (표시한 체인 수 말고도 더 있을지도 모른다.)

  • 9000의 약수: 1000, 1125, 1500, 1800, 2250, 3000

  • 90000의 약수: 1000, 1125, 1200, 1250, 1500, 1800, 1875, 2000, 2250, 2500, 3000

  • 9900의 약수: 1100, 1650, 1980, 2475

  • 9990의 약수: 1998

이렇게 조건 1을 만족하는 체인 수를 대충 찾아보았는데, 다행히도 이 체인 수들은 조건 2를 딱히 위배하지는 않는 것 같다. 조건 2에 대해서도 할 말이 있기는 하지만, 거기까지 나가면 너무 복잡해질 테니 생략하도록 한다.
위에서 볼드체로 표시한 체인수의 예시를 간단히 열거하고 장을 마무리하고자 한다. 독자 여러분들도 아래 곡들을 플레이하면서 유독 점수 아트가 잘 나옴을 느꼈을 것이다.

  • 1125개: { eXLIPXe } ADV, 最果ての勇者にラブソングを ADV, オルターエゴ ADV, GEMINI LA2ER ADV, PROVOES*PROPOSE ADV, Sakura Reflection 音頭-盆踊Remix- EXH

  • 1650개: ΩVERSOUL MXM

  • 1980개: ΛΛemoria EXH, All We Need is HAPPY END!!! MXM, Nofram EXH

  • 1998개: Innocent Azure MXM, 少年リップルズ MXM, 御伽噺に幕切れを MXM, Trill auf G EXH, Chocolate Parade MXM

  • 2250개: ΣgØ ADV, Chant du Cygne EXH, AμreoLe ~for Triumph~ ΜΧΜ

  • 기타: Яe:son D'être EXH (999개)

사볼에서 유독 점수 아트가 많은 이유

점수 아트는 유독 사운드 볼텍스에서 많이 언급되는 주제지만, 다른 리듬게임에서도 충분히 나타날 수 있다. 하지만 사운드 볼텍스에서 특별히 점수 아트가 많이 나오는 이유는 아래와 같다.
우선 만점이 10만점이나 100만점이 아닌 1000만점이기에 표시할 수 있는 점수의 자릿수가 하나 더 늘었고, 그렇기 때문에 반복되는 숫자의 패턴이 더 명확하게 드러난다. 당장 10만점이 만점인 팝픈뮤직만 봐도 표시 자릿수가 부족해서 점수 아트가 잘 나타나지 않는 것을 알 수 있다.
또한 1000만점에 콤보나 세부 판정 등에 따른 추가 점수가 붙지 않는 것도 한 몫을 한다. 다른 리듬게임의 예시를 들자면, EZ2ON은 110만점 만점에 콤보에 따른 추가 점수가 붙는 방식이고, Arcaea는 사운드 볼텍스와 동일한 1000만점 만점이지만 세부 판정 1개당 1점의 추가 점수가 붙는다. 따라서 이들 게임은 점수를 계산할 때 순환소수에서 나오는 순환마디의 패턴이 추가 점수에 의해 무력화되기 때문에 점수 아트를 보기가 힘들다. 사운드 볼텍스도 세부판정이 있기는 하지만, 세부판정에 따른 점수는 EX SCORE라는 별도의 점수로 집계되므로 통상적인 스코어 체계에서는 점수 아트에 영향을 주지 않는다.
마지막으로 단순한 판정 체계와 점수 계산식도 점수 아트에 영향을 끼쳤다. 사운드 볼텍스의 판정은 CRITICAL, NEAR, ERROR의 3개뿐이고 점수 계산식도 오로지 판정에만 의존하여 타 리듬게임보다 단순한 편이다. 유비트와 펌프 잇 업 PHOENIX도 100만점 만점제를 택한 게임이지만, 펌프의 점수 계산식은 판정뿐 아니라 콤보에도 영향을 받는데다가 판정이 Perfect, Great, Good, Bad, Miss의 5개나 되기 때문에 그만큼 점수 아트를 만들기가 어렵다. 심지어 펌프 특성상 의도적으로 노트 수를 맞춘 곡이 많은데도 말이다. 유비트는 펌프처럼 판정이 5개인 데다 10만점 어치의 셔터 보너스가 있어 점수 아트를 보기 어렵다.
IIDX나 EZ2AC처럼 만점제를 택하지 않은 리듬게임은 말할 것도 없다. 더군다나 IIDX와 EZ2AC의 최고 판정은 사볼의 S-CRITICAL보다도 엄격하기 때문에 의도적으로 점수를 맞추기도 어려워서 이들 게임에서 점수 아트를 보는 것은 정말 천운이 따라야 할 것이다.

마치며

필자의 전공은 수학이다. 그래서인지 수학적으로 흥미로워 보이는 주제가 생기면 그것을 수학적으로 분석하는 것을 좋아한다. 사볼의 점수 아트 또한 그 중 하나라고 할 수 있겠다.
수학적인 주제로 이렇게 긴 글을 쓰는 것은 논문 쓸 때 빼고는 이번이 처음이었는데, 내가 좋아하는 리듬 게임과 수학을 접목시키니 글을 쓰는 과정 자체가 매우 흥미로웠다.
혹시라도 리듬 게임에서 점수 아트 말고도 수학적으로 설명할 만한 현상이 있으면 또 노트를 써 보도록 하겠다. 소재 제보 또한 환영한다.

いいなと思ったら応援しよう!