게임 매거진 킬스크린에 대한 내용은 Kill Screen 문서 참고하십시오.
팩맨의 킬스크린. 사실상 팩맨의 엔딩이다.[1] |
[clearfix]
1. 개요
Kill Screen
주로 옛날의 비디오 게임에서 주로 나타나던 현상들.
아케이드 비디오 게임들 중에는 같은 스테이지의 난이도만 올리면서 무한 반복이 되는 형식의 게임들이 많았다. 예를 들면 팩맨이나 동키콩 등이 있는데 물론 당시에는 하드웨어의 비트 문제도 있고 용량 자체가 적었기 때문에 한계가 명확해서 이걸 계속 밑도 끝도 없이 하다 보면 하드웨어가 그걸 버티지 못하고 이상을 일으킬 수 있었으므로 제작사에서는 이걸 방지하기 위해 만들어놓은 일종의 장치를 만들거나 그냥 냅두는 바람에 소프트웨어적인 버그를 일으키는 경우도 있었다. 어쨌거나 둘 다 게임 진행이 전혀 불가능한 상태가 되므로 흔히 킬스크린이라고 불렸다. 요약하면 더 나가면 게임을 넘어서 기계가 버틸 수가 없으니 이제 그만 하고 죽으라는
보통 이런 류의 게임은 밑도 끝도 없으므로 플레이어들은 킬스크린을 진정한 엔딩으로 취급한다.
2. 유명한 킬스크린
-
팩맨: 256레벨에 도달하면 화면 반쪽이 깨진다. 팩맨은 8비트 게임이므로 저장용량이 8비트[2]이기 때문에 레벨 256에 도달하면 레벨 0으로 인식되기 때문이다. 정확히는 우측 하단의 레벨 카운터 때문이다. 레벨 카운터는 1부터 20까지의 번호를 매겨 20개의 아이콘을 보관한 목록에서 현재 레벨에 따라 일정 범위의 그래픽을 불러와 우측부터 그려내는 식으로 작동하는데 현재 레벨을 N이라고 하면 N<8이라면 해당 목록에서 1부터 N까지의 그래픽을 불러오고, 그 다음에 7-N개의 빈 칸(검은색)을 로딩한다.[3] 하지만 레벨 256에 도달하면 레벨 0으로 인식되기 때문에 게임은 1부터 0까지의 목록을 불러오려고 시도한다. 이 때 이 불러오는 작업은 오류로 즉시 중단되지 않고 현재 불러오는 번호가 0이 될 때까지
계속해서 번호를 증가시키며 로딩한다. 따라서 기존에 의도했던 1부터 20까지의 그래픽 데이터 이외에도 사운드 데이터처럼 그래픽이 아닌 데이터를 불러와서 게임의 그래픽을 표시하려고 시도하므로 화면이 박살이 나는 것이다.
해당 과정을 설명한 영상. (영문)
여기서 화면의 오른쪽 절반만 영향을 받는 이유는,팩맨의 그래픽 데이터는 메모리 주소 순서대로 레벨 아이콘과 잔기가 그려지는 맨 아래 2줄[4]이 가장 먼저 오고 나머지 그래픽 데이터는 오른쪽부터 그려진다. 이 때, 위에 설명한 목록에서 1부터 0까지의 데이터를 불러오려고 시도할 때 현재 목록에서 불러오는 데이터의 번호 역시 8비트로 저장되어 0~255의 값만을 가질 수 있기 때문에 256번째 데이터를 로딩할 때 이 번호 역시 오버플로되어 0이 되므로 결과적으로 총 256개의 레벨 아이콘이 로드된다. 이 아이콘들은 메모리 주소 순서대로 배치되기 때문에 처음 14개의 아이콘은 정상적으로 그려지지만,[5] 15번째 아이콘부터는 화면의 우측 상단부터 위에서 아래로, 오른쪽에서 왼쪽의 순서대로 기존에 로딩되어 있던 펠렛, 벽, 파워 펠렛 등을 덮어씌우기 시작한다. 이렇게 총 256개의 아이콘을 로딩하고 나면, 현재 레벨이 게임상에서 0 레벨이므로, 7개의 빈칸이 추가로 로딩된다.
이후에는 게임이 화면 좌측 하단에 잔기를 표기하고, 마지막으로 적과 플레이어를 로딩하고 나면 256레벨 혹은 0레벨이 시작된다. 게임은 정상적으로 동작하지만, 다음 레벨로 넘어가기 위해서는 244개의 펠렛이 필요한데, 잔기를 최대로 들고 오더라도 이 레벨에서 얻을 수 있는 최대 펠렛 갯수는 168개이기 때문에[6] 다음 레벨인 1레벨로 진행하지는 못한다.
킬스크린 중 가장 유명하다. 주먹왕 랄프의 엔딩 크레딧에서 디즈니 로고가 깨져 나오는 것도 이것의 패러디인데 상술한 내용처럼 화면의 오른쪽 반쪽만 깨져 나오는 것도 충실히 재현했다.
- 주니어 팩맨 : 팩맨이 그러하였듯이, 주니어 팩맨도 예외는 아니다. 이쪽은 대신 144레벨부터 킬스크린이 시작된다. 144레벨은 갑자기 기괴하고 이상하게 깨져있는 레벨을 보여주다가 아무 이유 없이 클리어 처리가 되며, 그 후 145레벨은 정상적인 레벨이 나오지만 146레벨부터는 주니어 팩맨과 유령 외에는 아무것도 없는 공허가 펼쳐진다. 펠렛이 없어서 클리어조차 불가능하고, 할 수 있는건 유령에게 닿아서 자살하는 것 뿐이다.
- 디그 더그: 제작사가 의도적으로 255레벨의 접근을 막은 사례. 255레벨에서는 시작 위치에 적이 배치되어 있기 때문에 게임이 시작하자마자 적에게 닿아서 죽는다. 여기까지만 하고 그만 하라는 의미로 보면 된다. 다만 현재는 에뮬레이터도 크게 발달했기 때문에 플레이어 무적 치트를 사용해 강제로 이 레벨을 클리어하면 킬스크린이란 이름에 맞지 않게 게임이 고장나거나 하지는 않고 1 레벨로 다시 돌아온다.
- 덕헌트: 99 레벨이 끝이다. 100 레벨에 도달하면 레벨이 0으로 표기되며 각종 기현상이 일어난다. 자세한 것은 항목 참조.
- 동키콩 Jr : 레벨 F부터 킬스크린이 발생. 동키콩 1과 똑같은 이유로, 오버플로로 인한 시간 제한 오류로 인하여 동키콩 1의 킬스크린과 완전히 똑같은 타이밍에 동키콩 주니어가 죽어버린다.
- 갤러그: 스테이지 0으로 표기되며 화면에 아무것도 나오지 않는다. 자세한 것은 항목 참조.
- 닌텐도 테트리스: 레벨 29가 대표적인 킬스크린으로 알려져 있는데 테트로미노가 내려오는 속도가 1줄 당 1프레임(약 1/60초)에 불과해 0.33초만에 바닥에 닿아 버려 일반적인 방법으로는 게임 진행이 불가능해서 이렇게 알려졌지만 이후에 인공지능을 이용하여 실험해 본 결과 155레벨 이후부터 게임이 멈추는 진짜 킬스크린이 발견되었다. 인간 중에선 13세 소년 윌리엄 깁슨이 157레벨을 돌파해 최초로 킬 스크린을 보는 데 성공했다. 만약 킬스크린을 피해 255레벨을 클리어하면 다시 0레벨로 되돌아간다.
- 보스코니안 : 256스테이지에 도달시 0으로 표기되며 프로그램이 폭주하여 게임 속도가 엄청나게 빨라져버린다. 사실상 계속해서 죽는다. 플레이어가 엄청나게 잘하거나(...) 세이브 로드 또는 목숨을 엄청나게 챙겨왔을시 클리어가 가능하며, 클리어하면 별 이상없이 다시 원 상태로 되돌아온다.
- 버거타임 : 28스테이지부터는 적들의 속도가 극도로 빨라져버린다. 어찌나 빠른지 그냥 시작한지 5초만에 플레이어 코 앞으로 접근한다. 이 상황은 약 90초 동안 지속되며, 90초가 지나면 갑자기 모든 적들의 속도가 극도로 느려져 거의 5초마다 1걸음 꼴로 이동해버린다. 클리어가 가능하긴 하지만 일반적으로는 90초를 버티긴 커녕 5초~10초도 못 버티고 빛의 속도로 쫒아온 적들한테 개싸대기를 맞으므로 여기서 게임오버를 당할 수 밖에 없다. 게다가 클리어해도 이후 레벨부터는 원 상태로 되돌아가는 일 없이 이 기믹을 계속해서 사용한다.
- 다 고쳐 펠릭스 Jr - 실제로 디즈니가 만든 게임으로, 엄밀히 말하면 진짜는 아니고 패러디이다. 39레벨 이후부터는 갑자기 게임이 일렬로 오류로 덮이면서 타이틀 화면으로 되돌아간다.
- 킥 - 팩맨 시리즈의 개발/판매에 관여한 미드웨이 게임즈의 게임. 255레벨 후반대부터 갑자기 화면 위쪽에 주인공 캐릭터의 신체 부위들이 나타나기 시작하고, 레벨 256에 도달시 주인공 캐릭터는 사라져있고 그 자리에 신체 부위만이 남겨져있으며 게임이 그대로 멈추고 더 이상 게임이 진행되지 않는다. 묘사만 보면 EXE 공포 시리즈에 가까울 정도이고 게임이 멈췄기 때문에 BGM조차 나오지 않아 기괴망측한 느낌을 받을수 있다.
- 마리오브라더스 - 초기버전인 "Revision F"만 해당되는 버전에서 킬스크린이 발생. 점수가 980,000점을 넘길 경우, 시스템상에서 다음 추가 목숨을 위한 점수 계산을 해주는데 문제는 이 시스템이 1백만점을 인식하지 못 해 0점으로 되돌아가버리고, 플레이어는 가만히 있기만 해도 목숨이 자동으로 복사가 되어버린다. 그런데 이것 때문에 목숨이 255개를 넘어가버려 0으로 초기화되고, 그럼 즉시 게임 오버가 된다. 즉 점수가 980,000점이 넘으면 그 순간부터 플레이어는 아무것도 하지 않아도 10초내로 아무 이유 없이 강제로 게임 오버를 당하고 타이틀 화면으로 추방된다. 점수를 불리거나 에뮬레이터 등으로 점수를 0점으로 강제로 초기화하더라도 소용 없다. 이미 시스템부터 오류가 난 시점이라서 미리 지정된 점수가 바뀌질 않기 때문이다.
3. 기타
킬스크린을 주제로 만든 인디 게임으로 ROM CHECK FAIL이 있다.PAC-MAN 256은 아예 킬스크린에 침식당한 "256 레벨"을 배경으로 하고 있다. 킬스크린이 화면 밑에서 올라오며 팩맨이 여기 닿으면 즉사하고, 팩맨이 킬스크린에 근접할 수록 화면 자체가 심하게 치직거리는 등 "실시간으로 망가지는 게임"의 정의를 잘 재현했다.
마인크래프트에서도 소프트웨어의 한계로 인해 일정 거리 이상 가다보면 비정상적이고 왜곡된 지형들이 생성되는 경우가 있었다. 킬스크린은 아니지만 원리 자체는 동일하다. 후에 패치되었다.[8][9]
[1]
다만 플레이 자체는 킬스크린 이후에도 무한히 가능하다.
[2]
따라서 저장할 수 있는 값은 0~255의 총 256개이다.
[3]
참고로 7<N<19라면 N-6부터 N까지, N>18이라면 13부터 19까지의 아이콘을 불러온다. 따라서 목록의 20번 아이콘은 기본적으로는 사용되지 않는다.
[4]
$4000~$4039, 16진수
[5]
이 때, 14번째 아이콘은 로딩은 되지만 게임 화면상에는 보이지 않는다.
[6]
화면 우측에 펠렛이 약간 있는데 이 펠렛들은 레벨 아이콘 로딩 과정에서 생긴 것이기 때문에 죽으면 다시 스폰된다. 참고로 255레벨까지 얻을 수 있는 모든 득점요소를 얻고 이 펠렛까지 모두 모으면 이 게임에서 구현할 수 있는 최고 점수인 3,333,360점이 된다.
[7]
이유는
동키콩 문서에도 작성돼 있듯이 동키콩에는 시간 제한이 있는데 레벨 22에 도달하면
오버플로로 인하여 시간이 엄청나게 짧아진다. 이게 얼마나 짧아지냐면
마리오가 두번째 철판에 올라갔는데 죽어버린다.
[8]
지금은 정상적인 지형이 생성되며 자기장 결계와 방벽으로 막혀져있다. 엔더진주를 이용하지 않고는 절대 넘어갈 수 없다.
[9]
원래는 일반적인 플레이로는 도달할 수 없는 곳이니 패치할 생각 없다고 했는데 베타 1.8에서 대대적인 업데이트를 하다가 우연히 고쳐졌다고. 하지만 이 우연한 픽스가 의도하지 않은 또 다른 버그를 불러와서 결국 머나먼 땅 픽스는 롤백했다고 한다.