자주 묻는 질문

자주 받는 질문과 답변.

15

검색과 플레이어 찾기

이름 검색은 왜 이 사이트에서 조회된 적 있는 플레이어만 찾나요?

공식 API에 이름 검색이 없기 때문입니다. 정확히 일치하는 태그만 조회할 수 있을 뿐, 이름을 받아 플레이어 목록을 돌려주는 엔드포인트는 없습니다.

그래서 이름 검색은 로컬 색인을 대상으로 실행됩니다. 이 사이트에서 열린 모든 프로필은 저장되고 이름도 함께 기록되어, 나중에 이름으로 찾을 수 있게 됩니다. 유효한 토큰으로 처음 시작할 때는 글로벌과 수십 개 국가의 공식 트로피 리더보드를 돌며 색인의 씨앗을 뿌리므로, 새로 설치해도 완전히 비어 있지는 않습니다.

태그로 한 번 검색하면 그 플레이어는 색인에 영구히 추가됩니다. 이전 이름도 보관되므로 개명해도 사라지지 않습니다. 검색 페이지의 “이전 이름 포함” 옵션이 읽는 것이 바로 이 기록입니다.

지난주에 찾을 수 있던 플레이어가 검색에서 사라졌습니다. 무슨 일인가요?

갱신 루프는 일정에 따라 색인된 모든 태그를 API에 물어봅니다. API가 404를 돌려주면 — 계정이 삭제되었거나 애초에 존재하지 않는 태그 — 해당 행은 이름·클럽 기록과 함께 삭제됩니다. 남겨 두면 실패할 수밖에 없는 태그에 요청을 낭비하고 검색 결과에 유령을 남길 뿐입니다.

프로필 아래의 “api”, “cache”, “demo”는 무슨 뜻인가요?

데이터를 가져올 때마다 그 출처도 함께 보고됩니다. api 는 이번 페이지 렌더링 중에 Supercell에서 직접 가져왔다는 뜻입니다. cache 는 저장된 사본이 아직 신선도 기간(플레이어 3분, 클럽 10분) 안이었거나, 실시간 요청이 실패해 오류 페이지 대신 마지막 정상 사본을 제공했다는 뜻입니다. demo 는 API 토큰이 설정되지 않아 결정론적 생성기의 데이터를 표시하고 있다는 뜻입니다.

이 인스턴스는 현재 실시간 API로 동작 중입니다.

전투와 통계

전투 기록은 왜 25경기만 다루나요?

API가 제공하는 전투 기록이 그게 전부이기 때문입니다. 최근 25경기뿐이고 페이징도 날짜 범위도 없습니다. 그보다 긴 기록은 쌓아 가는 수밖에 없습니다.

그래서 프로필이 열릴 때마다 그 25경기 중 새로운 것이 로컬 아카이브로 복사되며, 키를 붙여 같은 전투가 두 번 저장되지 않게 합니다. 자주 조회되거나 북마크되어 빠른 갱신 구간에 들어간 플레이어는 시간이 지나면서 25경기를 훨씬 넘는 기록을 쌓습니다. 전투별 아카이브는 90일 후 정리됩니다.

전투 탭의 분석은 현재 25경기 창으로 계산되므로, 한 번의 플레이 세션 뒤에도 크게 출렁일 수 있습니다.

티어 리스트는 실제로 어떻게 계산되나요?

아카이브된 전투에서 출발해 날짜·모드·맵·구간별로 집계합니다. 티어 리스트는 선택한 필터의 최근 7일을 읽고, 그 창에서 픽이 200회 미만인 브롤러는 무시합니다.

점수는 원시 승률이 아닙니다. 각 브롤러의 승리는 먼저 전체 평균 승률로 약 1,500회의 가상 전투를 더해 풀 평균과 섞입니다 — 경험적 베이즈 수축입니다. 210경기에 연승 중인 브롤러는 평균 쪽으로 당겨지고, 40,000경기를 치른 브롤러는 거의 움직이지 않습니다. 그 위에 로그 스케일의 픽률 항이 작은 가중치로 더해져, 아무도 안 쓰는 브롤러가 틈새 승률만으로 정상에 오르지 못하게 합니다.

티어 문자는 해당 풀의 평균 점수를 중심으로 한 표준편차 구간이며, 고정된 승률 문턱이 아닙니다. S는 평균보다 약 1.25 표준편차 위이고, 평균보다 약 1 표준편차 넘게 아래면 최하위 구간인 D에 들어갑니다. 즉 티어는 언제나 지금 보고 있는 맵에 상대적입니다.

티어 리스트가 가끔 데모 데이터라고 표시되는 이유는?

맵별 티어 리스트는 실제 표본이 있어야 의미가 있습니다. 해당 모드·맵·구간의 아카이브 전투가 5,000경기 미만이면, 80경기로 만든 리스트를 조용히 보여 주는 대신 결정론적 생성기로 물러나고 상단에 그 사실을 명시합니다. 인기 경쟁전 맵이 먼저 채워지고, 마이너한 이벤트 맵은 오랫동안 대체 데이터에 머물 수 있습니다.

“추정 플레이 시간”은 정확히 무엇인가요?

도출된 수치이며, 표시되는 모든 곳에 그렇게 표기됩니다. API는 플레이 시간을 전혀 제공하지 않고 승리 횟수만 제공합니다.

거기서 역산합니다. 3대3 승리는 일반적인 승률에서 대략 두 배의 경기 수를 뜻하고, 쇼다운 1위는 그보다 훨씬 많은 경기를 뜻합니다. 각 경기에 그 모드의 평균 경기 시간을 곱하고, 승리로 집계되지 않는 부분은 계정 레벨로 보완합니다. 일반적인 계정이라면 오차는 약 15% 이내이고, 친선전이나 이벤트 모드 위주의 플레이어는 더 벗어납니다.

쇼다운 순위도 승리로 집계되나요?

상위 절반이면 그렇습니다. 쇼다운에서 API는 승패 대신 순위를 주기 때문에, 10인 솔로의 상위 5위, 5팀 듀오의 상위 3위는 승률이 표시되는 모든 곳에서 승리로 집계됩니다. 기준은 올림 처리한 상위 절반이라서, 듀오 팀 수가 홀수면 중간 순위가 승리 쪽에 들어갑니다. 무승부는 따로 기록되며 승률 분모에서 제외됩니다.

경쟁전 분포는 왜 모델이라고 설명되나요?

래더 인구 엔드포인트는 존재하지 않습니다. 각 랭크에 몇 명이 있는지는 Supercell 밖의 누구도 셀 수 없습니다. 분포 페이지는 추정 총량을 곁들인 모델 형태를 보여 주며, 표시할 수 있는 실측 수치는 이 인스턴스가 색인한 프로필 범위뿐입니다 — 래더 전체가 아니라 표본입니다. 형태는 참고 자료로, 절대 수치는 추정치로 보세요.

일부 브롤러는 왜 희귀도가 없거나 회색으로 표시되나요?

API는 브롤러의 id, 이름, 가젯, 스타 파워, 기어, 하이퍼차지를 돌려주지만 희귀도와 클래스는 주지 않습니다. 그것들은 이름으로 대조하는 내장 표에서 옵니다. 표가 마지막으로 갱신된 뒤 출시된 브롤러는 항목이 없어 미상으로 표시되고 중립 회색으로 그려지며, 그럴듯해 보이는 추측을 배정하는 대신 희귀도 합계에서 제외됩니다. 내장 로스터의 마지막 동기화는 2026-09-15이고, 계산기 표는 2026-09-16 기준 게임 내 수치를 따릅니다.

데이터 신선도와 API 토큰

이곳 데이터는 얼마나 자주 갱신되나요?

두 가지 메커니즘이 겹쳐 있습니다. 페이지를 열 때 저장된 사본이 신선도 기간(플레이어 3분, 클럽 10분)보다 오래됐으면 그 자리에서 바로 다시 가져옵니다.

백그라운드에서는 폴러가 30초마다 깨어나 사이클당 약 100회 요청 예산을 가장 기한이 지난 항목에 씁니다. 속도 제한이 걸려 있어 전체 과정이 토큰 한도 안에 머뭅니다. 예산의 향방은 우선순위 구간이 정합니다. 북마크되었거나 최근 1시간 안에 조회된 계정은 약 2분마다, 최근 하루 안에 조회된 계정은 15분마다, 나머지는 6시간마다 갱신됩니다. 이 프로필 갱신 과정에서 전투 기록까지 함께 가져오는 것은 상위 두 구간뿐입니다.

다만 전투 기록 자체는 그 구간에 묶이지 않습니다. 별도의 수집 과정 — 보통 사이클 예산의 절반쯤 — 이 각 계정의 기록을 마지막으로 수집한 지 오래된 순으로 색인 전체를 돌며(차가운 계정 포함), 최근 30분 안에 수집되지 않은 플레이어의 기록을 가져옵니다. 아무도 조회하지 않는 계정도 여전히 경기를 하고 있고, 그 경기들이 티어 리스트 표본을 만듭니다.

서버리스 환경에는 이 간격을 유지할 상주 프로세스가 없으므로 폴러는 꺼지고, 외부 스케줄러가 cron 엔드포인트를 대신 호출합니다.

API 토큰의 IP 주소가 바뀌면 어떻게 되나요?

Supercell API 키는 고정 IP에 묶여 있습니다. 서버의 공인 IP가 바뀌면 — 새 호스트, 동적 가정용 회선, 다른 이그레스 노드 — 모든 요청이 “IP 불일치”를 뜻하는 403으로 실패하기 시작합니다.

그럴 때 갱신 사이클은 성공할 수 없는 요청에 예산을 태우는 대신 일찍 멈추고, 오류와 원인 힌트를 기록하며, 페이지는 마지막 캐시 사본으로 물러납니다. 사이트는 계속 동작하되 그 시점에 멈춰 있을 뿐입니다. 해결책은 developer.brawlstars.com 에서 현재 공인 IP용 새 키를 만들어 환경 변수에 넣고 재시작하는 것입니다.

계정과 직접 운영

내 계정에는 무엇이 저장되나요?

사용자 이름, 솔트를 더한 scrypt 비밀번호 해시, 선호 언어, 그리고 타임스탬프 두 개입니다. 이메일 주소는 요구하지도 저장하지도 않으며, 그래서 비밀번호 재설정도 없습니다. 잊어버린 비밀번호는 복구할 수 없고 새 계정을 만드는 수밖에 없습니다.

그 외에는 최대 25개의 북마크와 최근 조회한 프로필 25개(둘 다 계정에 묶여 기기 간에 따라다닙니다), 그리고 90일짜리 세션 쿠키가 있습니다. 계정을 삭제하면 북마크, 기록, 세션도 함께 지워집니다.

이 사이트를 로컬에서 돌리려면?

Node 22 이상이 필요합니다. 영속화에 Node 내장 SQLite를 쓰기 때문에 컴파일할 네이티브 모듈도, 설치할 데이터베이스 서버도 없습니다. 의존성을 설치한 뒤 3000번 포트에서 개발 서버를 시작하면 됩니다.

API 토큰 없이도 동작합니다. 모든 것이 결정론적 생성기로 물러나고, 이름 검색이 결과를 돌려줄 수 있도록 데모 디렉터리가 심어집니다. 로컬 환경 파일에 토큰을 넣고 재시작하면 첫 실시간 기동 때 합성 행이 모두 제거되어 검색 결과나 리더보드에 새어 들어갈 수 없습니다.

내장 게임 데이터(브롤러, 가젯, 스타 파워, 하이퍼차지)는 실행 중에 가져오는 것이 아니라 동기화 스크립트로 갱신합니다.

이 사이트는 공식인가요?

아닙니다. 공개 Brawl Stars API 위에 만든 비공식 팬 콘텐츠이며 Supercell의 승인을 받지 않았습니다. 같은 고지가 모든 페이지 하단에 Supercell 팬 콘텐츠 정책 링크와 함께 있습니다.

더 보기

여기서 다루지 않은 내용은 아마 기술 정보 또는 검색 사양 에 있습니다.

자주 묻는 질문 · BrawlPeek