서문

’메이플스토리’는 2003년부터 서비스되기 시작한 온라인 MMORPG 게임으로, 꽤 많은 유저들이 지금까지도 즐기고 있다.

이 게임는 캐릭터를 자신이 만들고 45개의 직업 중 1개를 선택하여 스토리 및 관련 컨텐츠를 즐기는 게임으로, 다양한 사용자들이 12개의 서버 중 1개의 서버를 주로 선택한 후 컨텐츠를 즐긴다.

서버 당 캐릭터의 생성 제한 수도 정해져있고, 모든 캐릭터에 시간을 동등하게 쓸 수 있는 건 아니기에 대부분의 사람들은 ’주캐릭터’를 한 개 정하여 그 캐릭터들에게 장비 및 경험치를 몰아주는 편이다.

최근에는 (22년 8월) 여름 업데이트로 신규 맵 및 밸런스 패치가 진행되면서 관련 커뮤니티에서는 어떠한 직업이 상향을 받았는지 혹은 받지 않았는지, 변경점은 무엇인지 파악하면서 직업 간 비교를 하였다.

대체로 상향을 받았지만, 어떤 직업들은 상향을 받지 못했음에도 불구하고 해당 직업을 ’주캐릭터’로 하는 사람이 적어 알아주는 사람이 적다고 하소연하는 상황도 있었다.

이에 이러한 직업간 편차가 실제로 존재하는지 알아보기 위해서 본 분석을 진행해보았다.

추출 방법

분석을 해보기 전에, 관련 데이터를 가져와야 한다. 이는 Maple.gg 사이트의 ‘통합 랭킹’ 부분에서 파싱해왔다. 파싱 날짜는 2022년 8월 17일 오후 6시 50분 경이다.

추출한 데이터는 다음과 같다 :

  • ‘통합 랭킹’ 페이지의 ‘일반 랭킹’의 ’전체’ 항목의 1위부터 50000위까지의 닉네임, 레벨, 직업, 인기도, 길드 데이터.

  • ‘통합 랭킹’ 페이지의 ’일반 랭킹’의 각 서버(12개)1 2의 1위부터 10000위까지의 닉네임, 레벨, 직업, 인기도, 길드 데이터.

데이터를 가져온 파일의 소스코드는 다음과 같다. 이는 Python으로 작성되었다.

  • ‘전체’ 항목 가져오기
import requests
from bs4 import BeautifulSoup

# 전체 랭킹 1~50000위
list1 = list()

for i in range(1, 2501, 1) :
    url = 'https://maple.gg/rank/total?page=%s'% i
    response = requests.get(url)
    print(str(i), response.status_code)
    html = response.text
    soup = BeautifulSoup(html, 'html.parser')
    for j in range(1,21,1) :
        nickname = soup.select_one('.table > tbody:nth-child(3) > tr:nth-child(%s) > td:nth-child(2) > div:nth-child(2) > span:nth-child(2) > a:nth-child(1)'%j).text
        level = soup.select_one('.table > tbody:nth-child(3) > tr:nth-child(%s) > td:nth-child(2) > div:nth-child(2) > div:nth-child(3) > span:nth-child(1)'%j).text
        job = soup.select_one('.table > tbody:nth-child(3) > tr:nth-child(%s) > td:nth-child(2) > div:nth-child(2) > div:nth-child(3) > span:nth-child(4)'%j).text
        inki = soup.select_one('.table > tbody:nth-child(3) > tr:nth-child(%s) > td:nth-child(3)'%j).text
        try :
            guild = soup.select_one('.table > tbody:nth-child(3) > tr:nth-child(%s) > td:nth-child(4) > a:nth-child(1)'%j).text
        except :
            guild = '-- 없음 --'
        string = nickname + ',' + level + ',' + job + ',' + inki + ',' + guild.replace(' ','').replace('\n','')
        #print(string)
        list1.append(string)
    #print(list1, len(list1))
a = open('ranking_all.csv', 'w',encoding='utf-8')
for i in range(0, len(list1), 1) :
    a.write(list1[i] + '\n')
a.close()
  • ‘각 서버별’ 항목 가져오기
import requests
from bs4 import BeautifulSoup

# 서버 별 1~10000위
#serverlist = ['luna', 'elysium', 'croa', 'aurora','bera','red','union','zenith','enosis','arcane','nova']
serverlist = ['scania']
for i in serverlist :
    list1 = list()
    for j in range(1, 501, 1) :
        url = 'https://maple.gg/rank/total/%s?page=%s'% (i, j)
        response = requests.get(url)
        print(str(i), str(j), response.status_code)
        html = response.text
        soup = BeautifulSoup(html, 'html.parser')
        for k in range(1,21,1) :
            nickname = soup.select_one('.table > tbody:nth-child(3) > tr:nth-child(%s) > td:nth-child(2) > div:nth-child(2) > span:nth-child(2) > a:nth-child(1)'%k).text
            level = soup.select_one('.table > tbody:nth-child(3) > tr:nth-child(%s) > td:nth-child(2) > div:nth-child(2) > div:nth-child(3) > span:nth-child(1)'%k).text
            job = soup.select_one('.table > tbody:nth-child(3) > tr:nth-child(%s) > td:nth-child(2) > div:nth-child(2) > div:nth-child(3) > span:nth-child(4)'%k).text.replace(',','')
            inki = soup.select_one('.table > tbody:nth-child(3) > tr:nth-child(%s) > td:nth-child(3)'%k).text.replace(',','')
            try :
                guild = soup.select_one('.table > tbody:nth-child(3) > tr:nth-child(%s) > td:nth-child(4) > a:nth-child(1)'%k).text
            except :
                guild = '-- 없음 --'
            string = nickname + ',' + level + ',' + job + ',' + inki + ',' + guild.replace(' ','').replace('\n','')
            #print(string)
            list1.append(string)
        #print(list1, len(list1))
    a = open('ranking_%s.csv'% i, 'w',encoding='utf-8')
    for i in range(0, len(list1), 1) :
        a.write(list1[i] + '\n')
    a.close()

위 데이터의 명칭을 지금부터 ‘전체 랭킹’, ’서버 랭킹’으로 갈음한다.

데이터 분석

전체 랭킹

직업과 레벨

전체 직업 분포

직업간 편차를 알기 위해 가장 먼저 해본 것은 ‘전체 랭킹’에서의 직업의 비율을 알아보는 것이다. 특정 직업이 더 많은 비율을 실제로 차지하고 있는지, 있다면 어느 직업인지를 알아보기 위해서이다. 따라서 ’전체 랭킹’에서 ’직업’ 항목만 따로 떼어서 각 빈도 수를 체크하여 보았다.

직업 비율
아델 10.88
듀얼블레이더 7.44
비숍 6.23
나이트로드 5.94
아크메이지(불독) 4.44
패스파인더 4.17
아크메이지(썬콜) 4.04
섀도어 3.85
아크 3.51
팬텀 3.04
엔젤릭버스터 2.92
호영 2.80
은월 2.68
윈드브레이커 2.59
제로 2.45
직업 비율
히어로 2.43
캐논마스터 2.06
팔라딘 1.98
아란 1.80
에반 1.71
다크나이트 1.67
메르세데스 1.59
데몬어벤져 1.42
소울마스터 1.42
키네시스 1.31
루미너스 1.30
바이퍼 1.30
보우마스터 1.13
카이저 1.13
데몬슬레이어 1.12
직업 비율
제논 1.05
플레임위자드 1.05
카데나 0.87
카인 0.82
나이트워커 0.80
메카닉 0.72
배틀메이지 0.59
신궁 0.58
캡틴 0.58
블래스터 0.52
라라 0.46
와일드헌터 0.46
일리움 0.44
스트라이커 0.38
미하일 0.35

비율의 단위는 퍼센트(%)이며, 소숫점 2자리에서 반올림하였다.

‘아델(5438명, 10.88%)’이 혼자 두자리수 점유율을 가져가며 2위인 ’듀얼블레이더(3720명, 7.44%)’를 큰 차이로 앞서고 있으며, ’비숍(3117명, 6.23%)’, ‘나이트로드(2972명, 5.94%’)이 뒤를 잇고 있다. 가장 적은 랭커를 가진 직업은 ’미하일(174명, 0.35%)’이었다. ’미하일’과 ’아델’은 약 31배 차이가 난다.

메이플스토리 관련 커뮤니티에서는 타 직업 대비 효율 등이 좋은 직업들(속칭 ‘(0)1티어’ 직업들)을 엮어 부르는 경향이 있다. 이와 관련 데이터를 비교해보면 다음과 같다 :

  • ‘호아아’ (호영(12위), 아델(1위), 아크(9위)) - 가장 오랫동안 언급되었던 직업인 만큼 상위권에 위치해있다.

  • ‘나로호독’ (나이트로드 (4위), 호영(12위), 아크메이지(불독)(5위)) - 모험가 리마스터(22년 1월 경)부터 후술할 ’데은불닼’이 나오기 전까지 언급되었던 직업들. 역시 상위권에 위치해있다.

  • ‘데은불닼’(‘은데불닼’) (데몬어벤져 (23위), 은월(13위), 아크메이지(불독)(5위), 다크나이트(21위)) 2022년 4월 밸런스패치 이후로 언급되었던 직업들. 현재 (2022년 8월 기준)도 언급되고 있다. 패치와 리마스터로 좋아진 직업들이 많기에 시간을 많이 투자해야 하는 상위권에는 아직 분포가 적은 모습을 볼 수 있다.

레벨별 직업 분포

’메이플스토리’는 레벨이라는 시스템이 존재한다. 레벨에 따라 스토리가 해금되고 캐릭터의 능력치가 좋아지는 등의 전형적인 RPG 시스템이다. 최고 레벨은 300레벨이며, 1레벨 부터 9레벨은 0차 전직, 10레벨부터 29레벨은 1차 전직, 30레벨부터 59레벨은 2차 전직, 60레벨부터 99레벨까지는 3차 전직, 100레벨부터 200레벨까지는 4차 전직으로 분류된다. 200레벨 이상은 5차 전직으로 분류되는데, 이 5차 전직부터 메이플스토리의 대부분 기능이 해금되기에 대부분의 주력 캐릭터는 5차 전직을 완료한 상태이다.

또한 1레벨부터 200레벨까지의 레벨을 올리는 것은 쉬우나, 200레벨부턴 레벨업을 하는데 어려움이 따른다.

따라서 레벨은 단순히 강함을 표시하는 수치도 되지만, 얼마나 오랫동안 캐릭터를 육성해왔는지에 대한 의미도 내포하는 수치도 된다는 것이다.

그렇다면 이 직업들의 레벨 간에도 차이가 있을까? 이를 알아보기 위해서 각 레벨에 어느 직업이 분포되어있는지를 파악해보기로 하였다.

레밸 전체인원
262 2956
263 4924
264 3405
265 3395
266 2665
267 2187
268 1695
269 1274
270 3806
271 3164
레밸 전체인원
272 2290
273 1640
274 1763
275 6504
276 2570
277 1496
278 998
279 664
280 1677
281 438
레밸 전체인원
282 188
283 115
284 65
285 74
286 22
287 14
288 5
289 3
290 1
291 2

가장 많은 캐릭터를 가지고 있는 분류는 263레벨의 아델(635명) 이다. 그 뒤는 275레벨의 아델(615명), 275레벨의 듀얼블레이더(541명)이다.

또한 대부분의 많은 캐릭터가 275레벨(6504명)과 263레벨(4924명), 270레벨(3806명)에 머물러 있다는 것을 알 수 있다.

281레벨부터 285레벨까지는 대체로 100명에서 500명 사이의 캐릭터만이 있었으며, 286레벨부터는 1명에서 20명 사이의 캐릭터만이 있었다. 최고 레벨은 291레벨이었다.3

각 직업별 최고 레벨과 각 직업별 최다 분포의 레벨은 다음과 같다. 평균레벨은 소숫점 2자리에서 반올림하였다. 정렬은 평균레벨 순이다.

직업 최고레벨 최다레벨(인원수) 평균레벨
와일드헌터 287 275(35) 271.57
아크메이지(불독) 285 275(383) 271.55
제논 287 275(66) 271.53
나이트로드 286 275(483) 271.23
메카닉 287 275(59) 270.96
캐논마스터 283 275(148) 270.76
은월 286 275(187) 270.72
팔라딘 286 275(148) 270.72
캡틴 285 275(46) 270.64
팬텀 289 275(201) 270.58
보우마스터 289 275(82) 270.54
플레임위자드 286 275(63) 270.53
듀얼블레이더 290 275(541) 270.44
일리움 286 275(22) 270.36
배틀메이지 287 275(38) 270.32
아란 287 275(121) 270.27
제로 287 275(153) 270.27
데몬슬레이어 287 275(66) 270.25
에반 285 275(109) 270.25
블래스터 281 275(35) 270.17
윈드브레이커 291 275(165) 270.15
루미너스 285 275(72) 270.11
전체 291 275(6504) 270.06
아크 288 275(221) 270.04
카데나 285 275(50) 270.03
메르세데스 287 275(88) 269.95
다크나이트 285 275(107) 269.97
스트라이커 286 263(25) 269.82
비숍 289 275(409) 269.75
소울마스터 287 263(98) 269.68
데몬어벤져 285 275(78) 269.66
히어로 285 275(142) 269.59
신궁 285 275(37) 269.57
패스파인더 285 275(267) 269.55
섀도어 285 263(210) 269.39
나이트워커 285 275(52) 269.32
아델 287 263(635) 269.29
아크메이지(썬콜) 285 263(244) 269.28
엔젤릭버스터 285 275(170) 269.65
카이저 288 275(77) 269.63
호영 285 275(180) 269.52
카인 285 275(55) 269.30
키네시스 291 263(76) 269.26
바이퍼 283 263(89) 269.20
미하일 284 275(20) 269.18
라라 281 265, 263(27) 268.30

45개 직업 중 라라가 가장 안 좋은 지표를 가지고 있는데, 라라는 출시된지 얼마 되지 않았기 때문에4 상위권에 분포되기 쉽지 않다는 점을 감안하자.

전체 레벨 평균 (270.06)보다 위에 있는 직업은 22개이며, 평균보다 밑에 있는 직업은 23개이다.

가장 높은 평균레벨을 가지고 있는 직업은 와일드헌터(271.57)이며, 가장 낮은 평균레벨을 가지고 있는 직업은 라라(268.30)이다. 그 위로는 미하일(269.18)이 자리하고 있다.

가장 높은 최고레벨을 가지고 있는 직업은 키네시스, 윈드브레이커(291)이고,가장 낮은 최고레벨을 가지고 있는 직업은 블래스터(281)이다.

최고레벨은 대체로 285레벨이 많았으며(16), 그 뒤로 287레벨(10), 286레벨(6) 순이다.

직업 분포의 비교

이제 앞서 확인하였던 두 데이터를 서로 비교하여 실제로 직업간 편차가 존재하는지 알아보자.

직업 평균레벨 순위 직업분포 순위 순위 합계
아크메이지(불독) 2 5 7
나이트로드 4 4 8
듀얼블레이더 13 2 15
은월 7 13 20
팬텀 10 10 20
캐논마스터 6 17 23
팔라딘 8 18 26
비숍 28 3 31
아크 23 9 32
제로 17 15 32
제논 3 31 34
아란 16 19 35
윈드브레이커 21 14 35
아델 36 1 37
보우마스터 11 28 39
에반 19 20 39
패스파인더 33 6 39
메카닉 5 36 41
섀도어 34 8 42
와일드헌터 1 42 43
아크메이지(썬콜) 37 7 44
플레임위자드 12 32 44
다크나이트 26 21 47
메르세데스 25 22 47
히어로 31 16 47
데몬슬레이어 18 30 48
루미너스 22 26 48
캡틴 9 39 48
엔젤릭버스터 38 11 49
배틀메이지 15 37 52
데몬어벤져 30 23 53
소울마스터 29 24 53
일리움 14 43 57
카데나 24 33 57
카이저 39 29 58
블래스터 20 40 60
스트라이커 27 44 61
호영 40 12 62
키네시스 42 25 67
나이트워커 35 35 70
바이퍼 43 27 70
신궁 32 38 70
카인 41 34 75
라라 45 41 86
미하일 44 45 89

합계가 적을 수록 해당 직업을 가진 캐릭터의 수가 많고 그 캐릭터의 평균레벨이 높은 것이다.

분석 결과는 다음과 같다 :

  • 아크메이지(불독), 나이트로드, 듀얼블레이더는 평균레벨과 직업분포 둘 다 상위권을 형성하였다. 공교롭게도 상위 3개 직업 중 2개가 위에서 ’(0)1티어 직업’으로 언급된 직업들이다. (나이트로드, 아크메이지(불독))

  • 아델은 직업분포에서 1위를 차지하였으나, 평균레벨 순위는 사람이 많은 것도 있어서 하위권에 위치하였다.

  • 와일드헌터는 평균레벨에서 1위를 차지하였으나, 유저풀이 적은 관계로 직업 분포 순위에서 최하위권에 위치하였다.

  • 라라는 평균레벨에서 45위, 직업분포에서 41위를 하여 최하위권에 있다. 그러나 계속 말하지만 라라는 아직 출시한지 얼마 되지 않아 상위권을 형성하기까지 충분한 시간이 필요한 것으로 판단된다.

  • 미하일은 직업분포에서 45위, 평균레벨에서 44위를 차지하여 가장 마지막 순위를 차지하게 된다.

따라서 실제로 직업간 편차가 존재한다는 결론을 내려도 무방하다.

길드의 유무

그렇다면 과연 유저들의 실력차는 단순히 ’직업’에서만 나타날까?

‘메이플스토리’ 에서는 ’길드’라는 시스템이 존재한다. 보통 길드에 들어가있는 경우 혼자서 게임하지 않고 다른 유저(캐릭터)와 하는 것이 대부분이다.

또한 ’길드’에는 ’길드 스킬’이라는 항목이 있으며, 이는 (미미한 수준이지만) 캐릭터의 육성에 도움이 되기도 한다.

추가로 많은 컨텐츠 등을 즐길 수 있어서 길드를 가입하는 사람이 많은 가운데, 길드를 가입하지 않고 혼자 게임을 즐기는 사람이 있다.

이러한 상황에서 상위 1~50000위 캐릭터들의 길드 유무를 파악해보아 길드의 가입 여부가 실력 편차에 영향을 끼치는지 알아보도록 하였다.

길드 가입안됨 길드 가입됨
4847(9.69%) 45413(90.9%)

분석 결과 약 10%의 인원만 가입하지 않았으며, 나머지는 모두 길드에 가입하였다. 이에 상위권은 대부분 길드에 가입되어있다는 사실을 알 수 있었다.

위 데이터로 길드의 유무도 실력 차에 영향을 끼치는 것을 알 수 있었다.

인기도와 랭킹의 상관관계

직업과 레벨간 편차에서 이용하지 않은 수치가 하나 있다. 바로 ’인기도’인데, 이는 해당 사용자는 조정할 수 없으며, 다른 사용자가 인기도를 증감시킨다.

인기도는 예전에는 게임에 직접적인 영향을 끼치기도 했으나, 현재는 게임에 직접적인 영향을 끼치는 않는다.

다만, 250레벨 이상은 게임에서 특정 조건을 만족 시킬 때 게임에 영향을 끼치는 버프를 주는 경우가 있으므로5 인기도가 높을 수 있다.

그렇다면 랭킹이 높을 수록 인기도가 높을 가능성이 높다는 가설이 수립되는데, 과연 그런지 파악해보기로 하였다.

인기도의 범위는 -99,999부터 99,999까지이다. 최하 인기도가 -17,005라 그래프를 잘랐다.

평균 인기도는 1065.90이다. 소숫점 2자리에서 반올림하였다.

그래프를 보면 알겠지만 대부분의 캐릭터는 인기도가 0에서 25,000 구간에 머물러있는것을 볼 수 있다. 또한 레벨이 높다고 인기도가 매우 높은 것도 아니고, 오히려 264레벨에서 인기도 최고치인 99,999가 관측되었다.

이로써 인기도와 랭킹의 상관관게는 없다고 볼 수 있다.

서버 랭킹

이제까지는 ’통합 랭킹’에 관한 통계를 내보았다면, 이제는 각 서버별 랭킹을 알아보자.

’메이플스토리’에는 총 12개의 서버가 있다.6 각 서버는 별개로 취급되며, 캐릭터 및 아이템의 이동은 제한된다.7

따라서 서버별로 인구 수, 직업 분포 등이 다를 것이므로, 이를 파악해봄으로써 ’전체 랭킹’에서의 직업간 편차가 여기에서도 존재하는지 확인해보기로 하였다.

그리고 ’서버간 격차’의 존재 유무도 파악해보기로 하였다.

각 서버별 직업 분포

먼저 ’전체 랭킹’에서 하였던 것과 마찬가지로 각 서버 별 직업의 분포를 파악해보고자 하였다.

서버의 개수가 많음에 따라 간략하게 보기 위하여 서버별 상위 직업 3개와 하위 직업 3개를 따로 정리하였으며 이는 다음과 같다.

서버 상위직업 하위직업 제외직업
루나 아델,듀얼블레이더,나이트로드 스트라이커,미하일,와일드헌터
스카니아 아델,듀얼블레이더,비숍 와일드헌터,미하일,라라
엘리시움 아델,듀얼블레이더,비숍 스트라이커,미하일,일리움 시티즌8
크로아 아델,듀얼블레이더,비숍 일리움,스트라이커,미하일 초보자9
오로라 아델,듀얼블레이더,비숍 와일드헌터,메카닉,일리움 초보자, 매지션10
베라 아델,듀얼블레이더,비숍 미하일,라라,일리움 매지션
레드 아델,듀얼블레이더,패스파인더 와일드헌터,일리움,배틀메이지 아처11, 노블레스12, 초보자
유니온 아델,듀얼블레이더,비숍 블래스터,일리움,와일드헌터 해적13,시티즌,노블레스,초보자
제니스 아델,듀얼블레이더,비숍 일리움,블래스터,와일드헌터 캐논슈터14 ,세미듀어러15,노블레스,초보자
이노시스 아델,듀얼블레이더,비숍 와일드헌터,일리움,블래스터 헌터16 ,시티즌,버서커17,노블레스,초보자
아케인 아델,듀얼블레이더,패스파인더 와일드헌터,일리움,메카닉 시티즌,노블레스,초보자
노바 아델,아크메이지(썬콜), 듀얼블레이더 와일드헌터,메카닉,제논 시티즌,매지션,건슬링거18,노블레스,초보자

대체적으로 ‘아델’, ‘듀얼블레이더’, ‘비숍’가 상위 3개 직업을 차지하였다. 또한 ’나이트로드’나 ’패스파인더’, ’아크메이지(썬콜)’이 상위 3개에 랭크된 경우도 있었다.

이들은 모두 ’전체 랭킹’에서 1~7위를 기록하고 있다.

반대로 하위직업은 ‘와일드헌터’, ‘미하일’, ‘일리움’이 하위 3개 직업을 기록하였다. 간혹 ’메카닉’, ‘스트라이커’, ‘블래스터’ 등도 하위직업에 위치한 적이 있다.

이들은 대체로 ’전체 랭킹’에서 40~45위를 기록하고 있다. (제논 31위, 메카닉 36위, 배틀메이지 37위)

이를 조금 세부적으로 분석하기 위하여 각 서버에서 직업이 가지고 있는 순위를 모두 합산하여 평균을 내보았다. 정렬은 평균 순위로 하였다.

직업 루나 스카니아 엘리시움 크로아 오로라 베라 레드 유니온 제니스 이노시스 아케인 노바 평균
아델 1 1 1 1 1 1 1 1 1 1 1 1 1
듀얼블레이더 2 2 2 2 2 2 2 2 2 2 2 3 2.08
비숍 4 3 3 3 3 3 8 3 3 3 10 9 4.58
패스파인더 6 7 6 6 4 5 3 6 5 4 3 4 4.92
아크메이지(썬콜) 8 8 5 7 7 6 4 5 4 7 4 2 5.58
나이트로드 3 4 4 4 5 4 9 4 6 12 7 8 5.83
아크 9 9 8 10 6 7 6 16 14 6 6 7 8.67
아크메이지(불독) 5 6 7 5 9 9 12 9 12 15 14 19 10.17
섀도어 7 5 9 8 10 8 14 11 10 14 16 12 10.33
윈드브레이커 14 15 12 13 12 15 5 10 9 8 8 10 10.92
히어로 15 16 14 15 13 12 10 8 8 13 9 6 11.58
호영 13 12 13 14 8 10 13 12 13 10 11 14 11.92
은월 12 14 17 11 15 14 11 7 7 5 17 21 12.58
엔젤릭버스터 10 10 11 12 11 13 15 19 20 16 20 16 14.42
팬텀 11 11 10 9 14 11 21 15 15 9 22 26 14.5
소울마스터 27 27 24 23 18 24 7 14 11 11 5 5 16.33
팔라딘 17 21 15 17 17 18 20 21 16 21 18 18 18.25
다크나이트 21 20 19 22 21 22 18 13 17 20 12 15 18.33
제로 16 13 16 16 16 16 19 20 21 18 30 33 19.5
데몬어벤져 24 23 22 24 21 26 17 22 19 19 13 12 20.17
아란 19 18 21 19 18 20 23 23 25 23 19 23 20.92
바이퍼 20 29 26 24 27 22 16 18 22 30 15 11 21.67
메르세데스 23 22 20 20 24 21 24 17 17 17 30 30 22.08
캐논마스터 17 17 18 18 20 19 28 28 26 30 28 28 23.08
에반 22 19 23 21 23 17 30 27 29 22 33 35 25.08
키네시스 26 24 28 28 26 24 31 35 28 28 25 24 27.25
카이저 32 32 27 26 25 29 27 26 34 24 26 25 27.75
루미너스 25 28 25 27 28 27 34 30 24 26 32 32 28.17
데몬슬레이어 30 25 29 32 29 28 29 25 30 25 27 30 28.25
나이트워커 36 36 35 34 34 35 22 24 22 29 21 20 29
카인 35 34 34 35 29 32 25 31 26 27 23 22 29.42
플레임위자드 33 26 31 31 31 31 26 34 33 32 29 34 30.92
보우마스터 28 35 30 29 34 30 38 32 32 38 36 36 33.17
카데나 31 32 32 33 32 33 33 38 41 35 35 29 33.67
제논 29 31 33 30 33 34 39 39 31 33 41 43 34.67
라라 41 43 42 42 37 44 35 29 35 34 24 17 35.25
메카닉 34 30 36 37 44 35 37 33 35 41 43 44 37.42
캡틴 37 40 38 41 38 37 36 36 39 36 40 39 38.08
배틀메이지 38 39 37 37 36 40 43 39 40 36 42 41 39
스트라이커 45 42 45 43 42 42 31 41 37 40 34 27 39.08
신궁 39 37 41 39 41 40 40 37 42 42 37 36 39.25
블래스터 40 38 39 40 39 38 42 45 44 43 38 42 40.67
미하일 44 44 44 43 40 45 41 42 38 39 39 38 41.42
와일드헌터 43 45 40 36 45 39 45 42 43 45 45 45 42.75
일리움 42 40 43 45 43 42 44 44 45 44 44 40 43

이런 도중에 메이플스토리 관련 커뮤니티에서는 ’서버의 서열화’가 이루어졌다. 일명 ’도시서버’와 ’시골서버’인데, 월드 리프 제한을 기점으로 나누게 된다. 위 서버를 분류하자면 이렇게 된다.

  • 도시서버 : 루나, 스카니아, 엘리시움, 크로아, 베라

  • 시골서버 : 오로라, 레드, 유니온, 제니스, 이노시스, 아케인, 노바

이 ’서열화된 서버’를 기준으로 한번 분석해보았을 때, 분석 결과는 다음과 같다.

  • ‘전체 랭킹’ 상위 5개 직업과 비교했을 때 ’패스파인더’가 들어오고, ’나이트로드’가 6위로 밀렸다. (전체 랭킹에서 패스파인더는 6위였다.)

    • ’나이트로드’는 ’도시 서버’에서 높은 순위를 얻은 반면, ’시골 서버’에서는 순위가 낮아졌다. 반대로 ’패스파인더’는 뒷서버에서는 순위가 높았다.
  • 또한 ‘소울마스터’가 ’아케인’, ’노바’에서 상위 5개 직업에 랭크되었다. (전체 랭킹 25위)

  • ‘전체 랭킹’ 하위 5개 직업과 비교했을 때 ‘스트라이커’, ‘라라’가 빠지고 ’신궁’, ’블래스터’가 들어왔다. (신궁 전체 랭킹 38위, 블래스터 전체 랭킹 40위)

    • ’라라’는 ’도시 서버’에서 하위권에 랭크되었으나 ’시골 서버’에서 최고 순위 17위까지 기록하는 등 약진을 이루었다.
    • ’스트라이커’도 ’시골 서버’에서 27위를 기록하는 등 ’앞서버’도시 서버’와 차이가 있다.
    • ‘신궁’, ’블래스터’는 ’도시 서버’와 ’시골 서버’에서 모두 하위권에 랭크되어 하위 5개 직업으로 내려갔다.
  • 전체적으로 ’전체 랭킹’과 비교하였을 때 ’도시 서버’는 비슷한 순위를 가진 반면, ’시골 서버’는 약간의 차이가 있는 것을 볼 수 있다.

    • 특히 ’아케인’과 ’노바’가 그러한 경향이 심한 걸 볼 수 있다.

’전체 랭킹’의 표본이 50,000명이었고, ’서버 랭킹’의 표본은 10,000*12 = 120,000명이었다. ’도시 서버’가 전체 랭킹과 비슷하다는 것은 ’도시 서버’가 전체 랭킹에 조금 더 많이 포진되어있었다고 결론내릴 수 있다. 이에 서버간에도 편차가 존재한다는 사실을 확인할 수 있었다.

4차 전직이 아닌 상위랭커

※ 수행평가 항목 : sqldf 사용 및 응용

근데 이 것을 정리하다가 의문점이 들었다. 바로 4차 전직 미만인 직업들이 상위 랭킹에 기록된 경우이다. 실제로 위 표의 ’제외 직업’에는 0차부터 3차까지 고르게 분포되어있는 모습을 볼 수 있었다. 이러한 경우는 특수한 경우이므로 따로 통계를 내보려고 한다.

result <- data.frame(matrix(ncol = 2, nrow = 0))
colnames(result) <- c("level", "job")
server = list("luna", "scania", "elysium", "croa", "aurora", "bera", "red", "'union'", "zenith", "enosis", "arcane", "nova")
job = list("시티즌", "초보자", "매지션", "아처", "노블레스", "해적", "캐논슈터", "세미듀어러", "헌터", "버서커", "건슬링거")
for (i in job) {
  for (j in server) {
    string <- paste("select level, job from", j, paste("where job =\'", i, "\'", sep=''))
    result <- rbind(result, sqldf(string))
  }
}

result2 <- data.frame(matrix(ncol = 4, nrow = 0))
colnames(result2) <- c("job", "min", "max", "mean")
for (i in job) {
  temp <- data.frame(matrix(ncol = 2, nrow = 0))
  colnames(temp) <- c("level", "job")
  string <- paste("select level, job from result where job=\'",i,"\'", sep='')
  temp <- rbind(temp, sqldf(string))
  result2[nrow(result2) + 1,] <- list(i, min(temp$level), max(temp$level), mean(temp$level))
}

kable(result2, col.names=c("직업", "최소", "최대", "평균")) %>%
  kable_paper() %>%
  kable_styling(latex_options = "HOLD_position", full_width = TRUE)
직업 최소 최대 평균
시티즌 222 261 246.3333
초보자 225 261 248.5238
매지션 230 260 249.3333
아처 258 258 258.0000
노블레스 222 261 244.7500
해적 251 251 251.0000
캐논슈터 242 242 242.0000
세미듀어러 244 244 244.0000
헌터 244 244 244.0000
버서커 252 252 252.0000
건슬링거 226 226 226.0000

먼저 0차 전직 직업이다.

  • 시티즌은 레지스탕스 계열 0차 전직 직업이다. 전체 서버에서 6명이 존재했다. 최고 레벨은 261레벨이다.

  • 초보자는 모험가 계열 0차 전직 직업이다. 전체 서버에서 21명이 존재했다. 최고 레벨은 261레벨이다.

0차 전직 직업은 캐릭터가 처음 생성되었을 때 부여되는 직업이다. 일부 직업은 캐릭터 튜토리얼을 진행하면서 1차 전직을 완료하기에 0차 전직이 존재하지 않는 캐릭터도 있다. 스킬 및 대부분의 게임 기능을 사용하기 어렵기 때문에 하기 어려우나, 이러한 어려운 난이도 덕분에 일부러 초보자로만 육성하는 사람들이 있다. 그래서인지 가장 많은 캐릭터 수 (합 27명)이 도출되었다.

다음은 1차 전직 직업이다. (1.5차 직업 포함)

  • 매지션은 모험가(마법사) 계열 1차 전직 직업이다. 전체 서버에서 3명이 존재했다. 최고 레벨은 260레벨이다.

  • 아처는 모험가(궁수) 계열 1차 전직 직업이다. 전체 서버에서 1명이 존재했다. 레벨은 258레벨이다.

  • 해적은 모험가(해적) 계열 1차 전직 직업이다. 전체 서버에서 1명이 존재했다. 레벨은 251레벨이다.

  • 세미듀어러는 듀얼블레이더의 1.5차 전직 직업이다. 전체 서버에서 1명이 존재했다. 레벨은 244레벨이다.

1차 전직구간은 0차 전직 직업보다는 많은 기능이 해금된다. 듀얼블레이더는 타 직업 대비 전직을 2번 더 하기에19 1.5차 전직이 있다. 1.5차 전직 구간은 20레벨부터 30레벨이다.

다음은 2차~3차 전직 직업이다.

  • 캐논슈터는 캐논마스터의 2차 전직 직업이다. 전체 서버에서 1명이 존재했다. 레벨은 242레벨이다.

  • 헌터는 보우마스터의 2차 전직 직업이다. 전체 서버에서 1명이 존재했다. 레벨은 244레벨이다.

  • 건슬링거는 다크나이트의 3차 전직 직업이다. 전체 서버에서 1명이 존재했다. 레벨은 226레벨이다.

2차에서 3차 전직 직업은 1차 전직 대비 많은 기능이 해금된다.

여담으로, ’전체 랭킹’의 50,000위의 랭킹이 262레벨이었다.20 초보자/시티즌의 랭킹이 261레벨이었으니, 만약 조금 늦게 해당 프로젝트를 시작했으면 ’전체 랭킹’에도 초보자/시티즌이 나올 수 있지 않았을까라는 생각을 가진다.

각 서버별 레벨 분포

’각 서버별 직업 분포’에서 우리는 서버별 편차가 존재한다는 것을 알 수 있었다. 그러나 정확히 얼마만큼의 차이가 존재하는지에 관해서는 알 수 없었기에, ’전체 랭킹’에서 했던 것과 마찬가지로 비교적 객관적인 수치인 ’레벨’을 이용하여 분석해보았다.

한눈에 수치들을 비교기 위하여 위 데이터들을 가지고 각 레벨 별로 통합하였다.

정확한 수치로 이를 파악하기 이위해 각 서버의 최대레벨, 최소레벨, 최빈값, 평균을 따로 정리하였다. 정렬은 평균레벨 순이다.

서버 최대레벨 최소레벨 최빈값 평균
루나 291 262 275 270.08
스카니아 291 262 275 269.63
엘리시움 289 261 261 268.17
크로아 288 260 261 267.76
베라 288 259 260 266.11
오로라 288 257 260 264.5
유니온 287 242 250 253.24
이노시스 288 242 250 252.4
제니스 289 241 250 251.37
레드 285 241 250 250.2
아케인 285 223 225 236.65
노바 282 220 220 230.39

분석 결과는 다음과 같다 :

  • ’도시서버’가 정확히 상위 5개 서버에 있다.

    • ’도시서버’는 대부분 평균 레벨이 260레벨대이다.

    • ‘루나’ 서버는 평균 레벨이 270레벨대이다.(270.08)

    • 특이하게 ’오로라’도 평균레벨이 260대에 위치해있다.

  • 시골서버는 대체적으로 250레벨대에 형성되어있었다.

  • ‘시골서버’ 내부에서도 격차가 크게 벌어지는 서버가 있다.

    • ’아케인’과 ’노바’는 유이하게 평균 레벨이 230대이다.

사실 이는 필연적인데, ‘노바’ 서버는 상위권 랭커들이 모두 다른 서버로 이전해버린, 소위 말하는 ’죽은 서버’이다. ’아케인’도 마찬가지이나, ’노바’보다는 상위 레벨 캐릭터들이 많다고 한다.

따라서 ‘노바’와 ’아케인’은 상위 랭커들이 서버에 유지하지 않고 다른 서버로 이동하기에 ’직업 분포’나 ’레벨 평균’ 등이 이질적이라고 볼 수 있다.

결과적으로 전체적으로 봤을 때 서버 간 편차는 각 그룹 내부에서는 특정 서버들을 제외하고는 없으나, 그룹 간 비교에서는 유의미한 결과를 볼 수 있었다.

결론

결론은 이렇게 말할 수 있다.

  1. ’직업 간 편차’에 대하여

결론부터 말하자면 직업 편향이 꽤 심하다는 것으로 말 할 수 있다. ‘전체 랭킹’ 에서의 ’직업 분포’에서 보여지듯 특정 직업(아델, 듀얼블레이더, 비숍)이 전체의 약 25%(24.55%)를 차지하고 있으며, 나머지 42개의 직업이 그 전부를 차지하고 있는 것이다.

이는 여러가지 이유를 볼 수 있는데, ‘아델’, ’비숍’의 경우에는 ’직업의 성능이 매우 좋아서’라는 현실적인 이유를 들을 수 있었고, 듀얼블레이더 같은 경우는 ’접근성이 좋아서’라는 이유를 볼 수 있었다.

그 와 반대로 0.5% 미만의 비율을 가진 직업도 있는데, 이 경우 ‘라라’는 ’신직업이라서’의 이유도 있지만, 전체적으로 ’직업이 안 좋아서’라는 현실적인 이유도 무시할 수 없다. ’와일드헌터’의 경우 ’오류가 많아서’ 선택받지 못했고, ‘일리움’, ‘스트라이커’는 보스 등을 공략할 때에 단점들이 있다.(일리움 - ’딜레이’, 스트라이커 - ‘극딜 최하위권’) ’미하일’의 경우에는 리마스터를 받았으나 그 시기가 최근이고21 그 이전의 이미지가 매우 안 좋기 때문이기도 하다.

이 직업간 편차를 해결하기 위해 최근 리마스터 등을 진행하고 있으며22 또한 최근 패치의 방향이 상향 평준화의 기조로 가고 있기에 긍정적인 전망을 볼 수 있다.

  1. ’서버 간 편차’에 대하여

서버가 편차는 소위 ‘도시서버’와 ’시골서버’의 차이다. 이를 가르는 기준은 점유율과 ’월드리프’ 허용 여부인데, ’도시서버’는 월드리프를 허용하지 않으며 ’도시서버’에서 ’시골서버’로의 이동만 가능하다. 그러나 ’시골서버’는 각 서버 간 자유로운 이동이 가능하다.

‘월드리프’로 인해 ’노바’ 서버에서 심각한 인력 유출이 발생했는데, 이는 상위권 랭커가 ‘베라’, ‘레드’ 등의 ‘중위권’ 서버로 이동했기 때문으로 추정된다.

서버를 이동하는 이유는 여러가지 이유가 있으나, ’아이템 유동성’의 여부와 ’버닝 상태’의 유무가 있다.

‘메이플스토리’에는 소위 ’경매장’이라는, 교환 가능 아이템을 유저들끼리 자유롭게 사고 팔 수 있는 시스템이 있다. 문제는 이러한 시스템이 각 서버별로 달라, ’시골서버’ 등은 아이템의 개수가 적어 아이템을 구할 수 없고, 있더라고 가격이 너무 높아 살 수가 없게 된다.

또한 게임 내부에서는 인적이 드문 사냥터에게 ’버닝 필드’라는, 경험치 버프를 준다. 이는 단계가 1부터 10단계까지 존재한다. ’도시 서버’에서는 유동 인구가 많아 이를 받기 쉽지 않지만, ’시골 서버’는 항상 버닝이 높은 단계로 존재하는 경우도 있어 경험치 사냥에 유리하다는 이점이 있다.

따라서 위 두가지가 합쳐져서 ‘하위 서버에서 레벨을 빠르게 올리고 월드 리프로 상위 서버로 이주하는’ 경우가 많이 발생한다. 이것에 해당되는 서버가 ‘아케인’과 ’노바’ 인 것이다.

이를 해결하기 위해 유저들은 ‘경매장 통합’ 등을 대안으로 내세우고 있다. ’아이템 유동성’의 여부를 해결할 수 있고, 서버에 정착하는 인원을 늘리며, 서버에 정착하는 인구가 늘을수록 유동 인구가 많아져 ’버닝 필드’의 문제도 자연스럽게 해결할 수 있기 때문이다.

  1. 인기도와 길드에 관해서

인기도는 게임에 직접적인 영향을 주진 않고, 캐릭터간 거래에서의 신용도를 파악하기 위해 사용된다. 레벨이 높을 수록 인기도가 높아진다면 인기도에 대한 신뢰도가 낮아졌겠지만, 그러한 결과는 나오지 않았기에 신용도로서의 신뢰도는 어느 정도 존재한다고 봐야겠다.

길드에 관해서는 1인 플레이와 협업(파티) 플레이 중 무엇이 좋은지를 볼 수 있지만, 결과에서 보았듯 협업 플레이가 더 선호되는 모습을 볼 수 있었다.

  1. 끝매듭 및 자신의 생각

앞서 말했듯 ’메이플스토리’는 2003년부터 서비스되어 올해 19년차를 맞는 장수 게임이다. 최근 여러 사건사고들이 있어 인식 등이 나빠졌으나, 그래도 최근에는 나아지려는 모습을 보여주고 있다. 또한 앞서 말한 직업간의 편차 등은 지속되는 밸런스 패치 등을 통해 잡겠다고 이야기한 만큼 개선될 여지가 보인다.

이와는 별개로 이러한 직업간, 혹은 서버간의 격차를 해결해야 하는 게임 기획자는 많이 힘들겠다는 생각이 들었다. 직업 수가 많은 만큼(45개) 각 캐릭터의 밸런스 조정 문제나 이러한 조정에 나오는 여론 수렴 등도 해야하니 힘들 수 밖에 없는 것이다. 수정된 사항을 반영하는 프로그래머 등도 꽤 힘들것이라 사료된다. 나의 진로에 대해 다시 생각해보는 계기가 되었다.

참고문헌


  1. 루나, 스카니아, 엘리시움, 크로아, 오로라, 베라, 레드, 유니온, 제니스, 이노시스, 아케인, 노바↩︎

  2. 리부트 서버(1, 2)는 포함하지 않았음↩︎

  3. 게임 최고 레벨은 300레벨.↩︎

  4. 2022년 8월 기준 최신 캐릭터. 출시일은 21년 7월이다.↩︎

  5. 250/275레벨 이상 달성 시 주는 의자에 앉아 있을 경우, 해당 캐릭터의 인기도를 상승시켰을 때 30분의 공격력/마력 증가 버프 발현↩︎

  6. 리부트 서버, 이벤트 서버(버닝, 핑크빈 등) 제외↩︎

  7. 월드 리프(캐릭터), 레이디 블레어의 드림 익스프레스 이벤트(캐시아이템) 한정 가능↩︎

  8. 레지스탕스 계열 0차 전직 직업↩︎

  9. 모험가 계열 0차 전직 직업↩︎

  10. 모험가(마법사)계열 1차 전직 직업↩︎

  11. 모험가(궁수)계열 1차 전직 직업↩︎

  12. 시그너스 기사단 계열 0차 전직 직업↩︎

  13. 모험가(해적)계열 1차 전직 직업↩︎

  14. 캐논마스터 2차 전직 직업↩︎

  15. 듀얼블레이더 1.5차 전직 직업↩︎

  16. 보우마스터 2차 전직 직업↩︎

  17. 다크나이트 3차 전직 직업↩︎

  18. 캡틴 2차 전직 직업↩︎

  19. 총 6번. 타 직업은 4번한다.↩︎

  20. maple.gg 기준 55,493위까지 262레벨이었다. 이번 프로젝트에서 사용된 자료에 포함하지는 않았다.↩︎

  21. 22년 7월.↩︎

  22. 모험가 리마스터 22년 1월, 시그너스 리마스터 22년 7월↩︎