슈퍼 마리오 64/버그

 


1. 개요
2. 클로닝(Cloning)
2.1. 폭탄병 버그
2.2. 코인 박스 버그
2.2.1. 원리
3. BLJ(Backward Long Jump)
4. Side BLJ
5. BLJ를 이용한 HSF
6. Hyper Speed Walking(HSW)
7. 꽈당이 버그
8. 벽 속의 스타 먹기 버그
9. 토끼 버그
10. 로비 버그
11. 김수한무 스킵 버그
12. 투척병 버그
13. 벽차기 버그
14. 속도 보존의 법칙
15. PU (Parallel Universe)
16. 기타 버그
17. 여담


1. 개요


슈퍼 마리오 64의 버그들을 모아 놓은 문서다. 다만, 일반적으로 잘 알려져있는 버그들만 모아 놓았다.
슈퍼 마리오 64의 버그를 전부 집대성한 문서를 보고 싶다면 여기로(영어).

2. 클로닝(Cloning)


들어올림과 파괴가 모두 가능한 오브젝트를 파괴되기 직전에 잡아올리는 버그다. 일반적으로 오브젝트를 잡는다고 판정하는 시간은 0프레임으로 즉발하지만 유일하게 펀치하여 잡는데에는 2프레임이 소요된다. 즉 그 2프레임안에 파괴된 오브젝트를 들어올림으로 발생하는 버그다. 피치성 내외나 암흑의 쿠파맵을 제외하고 어느 맵에서나 이러한 오브젝트가 존재한다.

2.1. 폭탄병 버그


대부분의 TASer나, 유저들은 다 아는 버그다.
먼저 폭탄병을 집은 후, 점프와 동시에 던지고 폭탄병이 땅에 닿아 터지기 직전에 다시 집으면 타이밍에 따라 두가지의 경우가 생긴다.
  • 커진 폭탄병을 들고 있다.
    • 이 같은 경우는 뒤로가는 속도가 꽤 빠른데[1], 이는 TAS에서도 자주 쓰이는 버그다.
  • 일반적인 폭탄병을 들고 있지만 터지지는 않는다.
    • 이를 이용해 폭탄병을 가까이에 있는 다른 오브젝트로 바꿀 수 있다. 이를 Cloning이라 한다.[2]
[image]
[image]
위와 같이 다양한 오브젝트들을 들 수 있다.

2.2. 코인 박스 버그


작은 박스를 이용해 위의 폭탄병 버그처럼 할 수 있는 버그.
하는 방법은 간단하게 박스가 없어지기 직전에 다시 집으면 된다. 폭탄병 버그와 같지만 타이밍이 더욱 중요시되며 방법은 세부적으로 두가지로 나뉜다.
  • 박스를 던진 후 벽에 닿아서 터지기 직전에 다시 집는다.
  • 박스를 땅에 내려놓은 후[3] 시간이 지나(30초) 없어지기 직전에 다시 집는다.
마찬가지로 각종 오브젝트로 만들 수 있다.

2.2.1. 원리


Vacant Slot #n, 일반적으로 물리적 형체가 있는 데이터를 오브젝트라고 부르며 이러한 오브젝트들을 인게임에 반영하게 할 수 있는 시스템을 오브젝트박스(OBJ)라고 부른다. 오브젝트는 일정 범위 내에 마리오가 존재할 때 스폰/리스폰하게 되는데 이때 스폰된 오브젝트를 오브젝트박스가 관리하게 된다. 오브젝트박스의 한계치는 240이며 이 이후로 오브젝트가 더 로드되려고 하면 튕긴다. 이 때문에, 마리오의 범위 밖 오브젝트를 온오프함으로 프로세스 요구량을 줄여주는 역할을 하며 상기했듯 리스폰의 역할도 한다. 또, 물리값이 없는 시각적인 오브젝트[4] 또한 관리한다.
위 오브젝트들이 오브젝트박스에 추가되는 것을 로드, 오브젝트가 없어지는 것을 언로드라고 한다. 여기서부터 클로닝의 핵심이 시작된다. 5개의 오브젝트를 로드했다고 하자. 이때 오브젝트박스가 사용하는 칸은 '''로드한 순서대로''' 5칸이 된다. 이때 오브젝트를 3개 제거(언로드)했을 경우 사용하는 칸은 2칸이 된다.[5] 그렇다면 나머지 3칸은 어디로 갔을까? 바로 이것이 핵심. 언로드 된 후의 빈 박스는 그 자리에 계속 있는 게 아니라, 사용되고 있는 박스의 마지막자리의 바로 뒷자리에 '''한꺼번에 역순으로 묶인 채''' 옮겨진다. 박스를 숫자로 표현해보자면, 순서대로 로드된 박스 12345에서 235를 언로드 했을 때 박스 순서는 14|532가 된다. 물론 박스 자체에 주어진 이름은 없지만 그렇다고 가정해본 것이다. 위와는 별개로, 빈 오브젝트박스의 순서를 위해 붙여진 임시적인 박스의 이름을 VS#n라고 한다. VS#의 n은 활성화된 마지막 오브젝트박스의 다음 박스를 기준으로 오름차순으로 결정되고 이는 가변적이기 때문에 오브젝트의 활성화에 따라 얼마든지 변할 수 있다. 그 예로 활성화된 박스를 ■, 비활성화된 박스를 □로 표현한다고 하면, ■■■□□에서 마지막 박스의 n값은 2이고, ■□□□□에서 마지막 박스의 n값은 4다. TAS를 다루는 분이라면 이 원리를 먼저 인지하도록 하자.
도입에서 기술한 내용으로 진행해 보자. 그 방법으로 마리오가 무언가를 들어올린 상태는 그 오브젝트를 담당한 오브젝트박스의 VS#에 저장이 된다. 여기서 클로닝이 시작된다. 마리오가 들어올린 오브젝트의 스폰범위의 바깥으로 나가면 들고 있는 오브젝트가 완전히 언로드되어 해당 오브젝트의 VS#박스는 빈 상자가 되고[6], 마리오가 들고 있는 오브젝트박스는 언로드 되었기 때문에 박스의 순서가 뒤로 밀려난다. 만일 일정거리 갔다가 다시 되돌아간다면 없어야 할 오브젝트가 멀쩡히 있다. 마리오가 들고 있는 오브젝트는 파괴되는 과정을 둔 원래의 오브젝트와 같으면서도 독립적인 존재이기 때문에 이런 일이 발생하는 것이다[7]. 이렇게 하면 클로닝의 첫 단계를 성공한 것이다.
이제 빈 오브젝트박스를 들고 있는 마리오가 이동하여 순서에 맞춰 굼바가 로드되었다면 들고 있는 오브젝트박스에 굼바가 추가됨으로써 마리오는 굼바를 가지고 있는 것으로 판정하게 된다. 들고 있는 것으로 판정된 원래 굼바는 제 자리에서 정상적으로 잘 돌아다니고 있다.[8] 이때 마리오가 오브젝트를 던지(오브젝트박스에서 해제하)는 순간 돌아다니던 굼바가 갑자기 던진 위치(HOLP)로 순간이동하더니 형체와 조건부 물리값만 남긴 채 그 위치에 1회용으로 존재해버리게 된다. 실은 오브젝트에도 마리오가 던진 후의 상태고유값이 있는데 굼바나 코인 등은 들어올릴 수 없으므로 이러한 현상이 발생하는 것이다. 이렇게 클로닝의 첫 루프 끝. 오브젝트박스의 칸이 한계치까지 가기 전까지 무한정 복사할 수 있다.
하지만 먼지 등의 요소 때문에 원하는 복제를 위해서는 계산을 잘 해야 하는 것을 요한다. 대신 특정한 행동이나 이펙트마다 오브젝트박스 고유요구량이 있으니 크게 문제될 변수는 없다. 직접 연구해보자.
여담으로 클로닝은 엄밀히 말하면 '''오브젝트를 먹거나 사용하지 않았다고 속이면서 바꿔치기하는 버그'''다. 예를들어 코인. 무더기로 있는 코인의 경우에는 먹었다고 판정하는 신호가 제 위치 밖에서는 인식되지 않아서 바꿔치기 후 리스폰시키면 원래대로 되돌아가는 것을 볼 수 있다. 다만 레드코인의 경우에는 그 자체로 고유하기 때문에 바꿔치기로 먹어도 2코인만 얻을 수 있고 레드코인 카운트가 추가되지는 않는다. 또한 오브젝트박스에 기본적으로 항시 로드되어있는 오브젝트들[9]을 위 방법으로 바꿔치기 하면 인터페이스 자체가 이동하고, 언로드 개념이 없는 오브젝트이기 때문에 범위 밖으로 들고나가도 제기능을 잃지 않으며, 던지면 클로닝으로 다시 옮기거나 맵을 나갈 때까지 그 자리에 영원히 고정된다.
이 클로닝 버그로 무한 코인 파밍을 하거나 코인 없이 클리어를 하거나 점프 없이 슈퍼 스타를 먹거나 굼바를 복제하여 간이 점프대를 만들거나 하는 등 꽤나 많은 응용법이 존재한다. 물론 작정하고 그러한 도전을 하려는 것이 아니라면 그런 것도 있구나 하는 재미용으로만 알아두는 것이 좋다.
그 외 자세한 사항은 여기(영어)에서 확인하자.

3. BLJ(Backward Long Jump)


국내에서는 무한뛰얏후, 무한멀리뛰기, 이야야야야야야야얏후 등으로 잘 알려져있는 버그다. 일본어로는 ケツワープ(엉덩이 워프)라고 불린다. 슈퍼 마리오 64 TAS의 기본적이고 필수적인 버그 중의 하나로, 멀리뛰기를 하면서 속도가 점점 증가하여 엄청난 속도로 벽을 뚫을 수도 있는 버그다.
이 버그를 내는 방법은 의외로 쉽다.[10] 대신 TAS 수준으로 세밀한 컨트롤이 아닌 이상 오직 계단이나 특수 지형에서만 가능하다.
  • 먼저 앞으로 멀리뛰기를 한 후에 바로 반대 방향키를 눌러 뒤로 멀리뛰기를 한다.
  • 그리고 Z키를 눌러 숙인 상태를 유지하면서, 뒤를 누른 상태로 점프키를 연타하면 된다. 오래하다 보면 손가락이 좀 아플 수 있다. 제일 연습하기 좋은 곳은 성 최상층에 있는 무한의 계단.
타이밍만 잘 맞추면 하는건 크게 어렵지 않다. 뒤로 멀리뛰기 후 계단에 떨어져서 맞닿는 타이밍에 점프키가 정확히 눌린다면 BLJ는 쉬울 것이다. 물론 일반적인 게임 속도에서는 점프키를 연타하다 보면 어느 순간 타이밍이 맞아서 되는 것이다. 툴을 사용해서 게임 속도를 느리게 한 다음 해보면 오히려 더 쉽다.
추후의 진동팩 대응 버전에서는 수정되어서 초기 북미판, 일본판에서만 사용 가능한 버그다. 그런데 특이하게도 버추얼 콘솔에서는 사용할 수 있다. 진동팩 대응 버전을 기반으로 한 슈퍼 마리오 3D 컬렉션에서도 이 버그가 막혔다.

4. Side BLJ



위의 문단과 같은 BLJ지만 하는 방법이 조금 다르다. 보통은 앞으로 멀리뛰기 하며 뒷키를 눌러서 뒤로 하지만, 이건 이름대로 옆에서 하는 것이다. 이건 대부분 계단이 아닌, 벽에서 한다. 단, 계단과 붙어있는 벽이여야 한다. 우선 맨 위 계단 한 계단 아래에 선 다음, 마리오가 계단 위의 땅 부분을 보게 한다(카메라 각도는 약간 오른쪽을 보게 한다. 카메라 각도와 계단 라인이 이루는 각이 작아질수록 가속을 더 받지만 그만큼 실패 확률도 높아진다.) 원하는 옆 방향으로 멀리뛰기를 한 후, 똑같이 느리게 해서 점프키를 연타하면 된다. 상술했던 계단 한 칸을 올라갈 때까지 속도가 누적된다. 하지만 처음에는 꽤 어려울 수 있다. 기존 방식과 다르고 계단 블럭에 거의 정확히 맞춰야 하기 때문이다. RTA에서 사용하기는 어렵다.[11] TAS에서는 느린 속도를 사용하므로 쉽게 사용할 수 있다.[12]

5. BLJ를 이용한 HSF


HSF란 HyperSpeed Flying, 즉 엄청난 속도로 나는 것이다. 먼저 날개마리오 모자를 먹은 뒤에, BLJ를 이용해 속도를 높인 다음, 잘 조작하여 3단 점프를 해서 날면 속도가 엄청나게 빨라진다. 너무 빨라서 느리게 해서 조작하는 방법 외에는 컨트롤이 어렵다.

영상을 직접 보자.

이건 폭탄병의 전쟁터에서 하는 영상.

6. Hyper Speed Walking(HSW)


가파른 경사로에서 마리오가 뒤로 미끄러지는 이유는 게임에서 마리오에게 음의 방향의 속도를 가하기 때문이다. 특히 물에 잠겨있는 경사로에서는 항상 가속도가 마리오가 향하는 방향의 정반대로의 방향으로 가해진다. 따라서 마리오가 경사로의 기울기에 대해 완전히 수직으로 움직이게 되면, 경사로가 계속 있는 한 마리오는 그 경사로의 수평 방향으로 계속 가속도를 받을 수 있다. 이 버그에서 마리오는 뒤로 걷는 애니매이션을 가지기 때문에 hyper speed walking이라고 부른다.
경우에 따라서는 가속도를 무한히 받을 수 있는 경우가 있다. 만일 경사로 옆에 수평방향에 수직[13]인 벽이 있거나 마리오 바로 위에 천장이 있다면 마리오는 속도 때문에 다른 곳으로 튕겨지지 않는 한 계속 가속을 할 수 있다.
앞서 서술한 BLJ에 비해 가속도가 매우 작고 적용할 수 있는 범위가 매우 한정되어 있기 때문에 타임어택 TAS에서는 쓰지 않는 버그이나, 어떤 TASer가 올린 영상에서 속도를 무려 12시간이나 올리는 데 쓰여 화제가 된 적이 있다. 해당 항목 참조.

7. 꽈당이 버그


꽈당킹의 요새에 있는 꽈당이들을 쉽게 죽일 수 있는 버그다. 초보자들도 쉽게 해낼 수 있을 정도로 방법은 간단하다. 꽈당이가 넘어지기 직전에 점프+엉덩이 찍기 콤보를 하면 된다. 그러면 꽈당이는 마리오를 뚫고 넘어진다.
이 버그를 사용하는 좋은 예시: #

8. 벽 속의 스타 먹기 버그


꽈당킹의 요새에 있는 미션 중에 벽을 부숴서 스타를 획득하는 미션이 있다. 원래는 대포를 이용해 벽을 부순 다음 스타를 먹어야 하지만, 버그를 이용해 위치를 잘 맞추고 벽에 닿으면 대포 없이도 먹을 수 있다.

9. 토끼 버그


말 그대로 토끼를 이용한 버그이며, 15 스타를 모으면 지하에 나타나는 토끼를 잡고 문에 딱 달라붙어서 놓으면 마리오가 문을 통과함과 동시에 토끼도 문에 낀다.[14] 그 상태로 다시 토끼를 잡을 수 있으며, 그 버그를 이용해 30 스타를 모아야 갈 수 있는 스타문도 뚫을 수 있다. 이 버그는 슈퍼 마리오 64 DS에서도 비슷한 형태로 나타나며, 나오는 토끼가 더 많아서 많은 곳에서 쓸 수 있고 64 DS 타임어택에서는 평행세계를 가기 위해 필수적으로 써야 한다.
한 때 슈퍼마리오 64 TAS에서 필수적으로 써야 했던 버그였지만, 더 빠른 파훼법의 발견으로 인해 최단기록 타임어택에서는 더 이상 사용되지 않으며, 지금은 16스타 카테고리, 그리고 120스타 TAS에서 문 여는데 소요되는 시간을 아끼는 데 주로 사용된다. 자세한 설명은 타임어택 문단 참고.

10. 로비 버그



피치 성 메인 로비에서 할 수 있는 버그 중 하나이다. 성에 처음 들어와서 가운데 계단 양 쪽에 있는 나무 문으로 들어간 뒤에 오른쪽+앞쪽을 눌렀다가, 착지하기 직전 오른쪽을 떼고 대신 왼쪽을 누르면 된다.
[image]
또는 사진과 같은 비슷한 위치에 서서 2단점프를 하면 아래 사진과 같이 올라올 수 있다. 또는 어렵지만 옆돌기 점프를 통해서도 올라올 수 있다. TAS에서는 문으로 들어오고 바로 떨어져서 땅에 착지 후 바로 점프하면 2단 점프가 되는 것을 이용해 올라간다. RTA에서도 가끔 쓰기는 한다.
[image]
반대쪽도 같은 방법으로 하면 되며, 위 사진 속 위치에서 멀리뛰기를 해서 BLJ도 할 수 있다. 실제로 구 TAS 타임어택에서 쓰였던 버그. 이후의 TAS 루트는 조금 바뀌어서, 0/1스타 2 Key 카테고리에서는 폭탄병의 전쟁터로 들어가는 문 바로 앞의 계단에서 Side BLJ를 해서 바로 암흑 세계의 쿠파로 이동한다. 그러나 RTA에선 시점 때문에 계단에서 BLJ가 매우 어려워서 위의 방식을 사용한다.

11. 김수한무 스킵 버그


스토리를 처음 시작하고 성 입구 바로 앞의 다리로 가면 카메라맨인 김수한무가 성 입구 문에서 나타나서 카메라 조작 관련 설명을 해주는데, 바로 옆 다리 난간으로 멀리뛰기를 해서 넘어가면 김수한무를 만나지 않고 바로 스킵할 수 있다.[15] RTA에서도 쓰이는 버그이다. TAS에서는 슬라이드 버그를 이용해 속도를 높여서 2단 점프로 그냥 넘어가는데, 다리에 닿지 않고 문 앞까지 바로 넘어가면 김수한무가 안 나온다. 그러나 이 루트는 1 Key 카테고리의 개발과 함께 바로 성의 지하로 입장하게 되어 TAS에선 더 이상 쓰이지 않는다.

멀리뛰기를 이용해 스킵하는 영상.

12. 투척병 버그


투척병은 원래 마리오가 멀리 있거나, 바로 앞이 낭떠러지일 때는 따라오지 않는다. 또한 집어서 던지거나 해서 땅에 닿게 하면 바로 죽어버린다. 이 버그는 마르고 젖은 세계(물바다 시티)에 있는 투척병을 바닥까지 내려오게 하는 버그이다. 먼저 투척병을 든 후, 끝 모서리까지 간 다음 타이밍에 맞추어 점프하고 투척병에게 떨어지면 투척병이 떨어지기 직전에 잡아서 던진다. 그럼 투척병은 죽지 않고 계속 살아있게 된다. 이를 이용한 다른 버그로는 바로 위에 있는 물 높이 조절 다이아몬드를 이용해 물 높이를 높인 다음, 물이 다 차오르기 전에 투척병을 집으면 아래와 사진과 같이 된다. 또한 다른 스테이지에 존재하는 투척병도 똑같은 방법으로 사용할 수 있다.
[image]
이렇게 된 상태에서는 마치 다른 오브젝트를 든 것 처럼 움직이고, 던질 수 있다. 또 이 버그를 이용해 위의 폭탄병 버그 사용 시에 나타나는 현상도 나타나게할 수 있다. 다만 이 버그는 슈퍼플레이[16] 용으로, 타임어택에서는 쓰이지 않는다.
이 버그를 하고 있을 때 주의할 점은 잡고 있는 상태에선 항상 같은 방향을 바라보면서 이동하며 후딜이 끝나는 틈을 주지 말아야 한다는 것이다. 단 방향의 교체는 물에 들어가 헤엄치거나 나무를 잡거나 미끄러지는 것으로 해결할 수 있다.

13. 벽차기 버그


벽에 닿자마자(첫 프레임에) 벽차기를 하면 벽차기 애니메이션이 발생하지 않으며, 이로 인한 스피드의 초기화도 이루어지지 않기 때문에 이를 이용해서 약 400정도까지 스피드를 높일 수 있다. 첫프레임에 벽차기를 하는 것을 HSWK(Hyper Speed Wall Kicks)라고 부르며, firsty라고도 한다. 하지만 계속 하다 보면 어지러움을 느낄 수 있다.
현재까지 알려진 RTA에서의 최고기록은 29번이다. Frame Perfect를 요구하기 때문에 매우 어렵다.
실제로 이 버그를 이용한 TAS도 있다. '''뒤로 멀리뛰기 없이''' 1스타 플레이 영상


14. 속도 보존의 법칙


위 BLJ 등을 이용해 속도를 엄청나게 높인 후, 조작을 통해 물속에 들어가거나 나무, 봉에 매달리거나 벽을 미는 행동 등을 하면 속도가 즉시 0으로 된다. 하지만 거기에서 빠져나오는 순간 0이 되기 전의 속도가 돌아오는 버그다. 보통 마리오가 땅에 착지하거나 하면 속도가 덮어쓰기 되어 0으로 돌아오지만 위같은 몇몇 동작은 마리오의 속도가 덮어쓰이더라도 삭제된 속도를 저장하여 그 동작이 해제될 때까지 계속 유지한다[17]. 여기서 공중으로 떨어지면 가속도가 다시 발동해 가속도의 방향에 따라 붕 뜨거나 미끄러지게 된다. 펀치 같은 동작 또한 마리오가 땅에서 가속도를 유지시키며 이동할 수 있게 한다. 그냥 소닉닌자를 합쳤다고 보면 된다.
또한, 메탈 마리오 상태로 물속에 들어간 상태에서도 똑같이 작용한다.
여담으로 디버그 치트를 이용해 저장된 속도를 확인할 수도 있으니 참고바란다.

15. PU (Parallel Universe)




  • 앞서 설명한 BLJ나, 마리오가 특정 지점에 낀 채로 계속 걷는 HSW(Hyper Speed Walking) 등을 이용해 속도를 엄청나게 쌓으면 마리오는 평행우주로 가게 된다. 닌텐도 64로 평행우주를 방문하면 즉시 게임이 튕기지만, 에뮬레이터버추얼 콘솔은 튕기지 않는다. 튕기는 건 닌텐도 64 자체 버그로 보인다.[18]
마리오의 이동경로는 Float(16진수)값을 사용하지만 물리좌표에서는 Short(8진수)값을 사용해서 벌어지는 버그다. 풀어보면 좌표의 한계치는 -32768~32767. 그런데 마리오가 이 좌표를 뚫고나가버리면 좌표는 자동적으로 65536을 더하거나 빼게 된다. 즉, 마리오는 아무것도 없는 세계에서 원래맵의 지형을 그대로 받는 평행세계에 도착하는 것이다.
다시 말해, 마리오가 평행세계에 도달하기 위해서는 최소한 65536의 스피드를 내야 한다. 그런데 이 마저도, 마리오의 경로는 이동 전후의 결과에다가 4등분을 하여 판정하는 중간단계가 있어서[19] 마리오가 내야 하는 최소 속력은 65536*4 정도로 엄청나게 불어나게 된다. 끝이 아니라, 평행세계에 도달한 이후로는 마리오가 가속도를 낼 수단이 없어지고, 지형의 굴곡까지 영향을 받아서 실제 이동경로의 거리가 감소하기 때문에 안전하게 평행세계를 배회하기 위해서는 최종적으로 약 '''50만'''(...)의 속력을 내야 한다. 또 평행세계에는 오브젝트가 없기 때문에 원래세계에서 맵을 이동하거나 스타 등을 먹기 위해서는 되돌아와야 하기까지 한다. 이 때문에 평행세계의 몇행/몇렬에 있는지 파악하게 해주는 가상의 개념인 PU map가 도입된다. 원점은 오브젝트가 있는 원래세계가 기준.
보다시피 조건이 엄청나게 많아서 이러한 개념을 사용하려면 선행계산이 필요할 뿐더러 제대로 사용할 수 있는 방안도 적다. 하지만 2016년 10월 경 나온 4분컷 TAS에서는 이러한 원리를 이용해 용암 세계의 2,3층 돌파는 물론 암흑 세계의 쿠파맵을 아예 입장조차 하지 않고 모조리 스킵(1key)해버리는 위엄을 보여주었다. 잠재용도가 굉장히 높은 버그로 더 많은 기록들이 개선될 예정에 있다.

16. 기타 버그


  • 일본 버전(진동판, iQue Player(神游机)판 제외.)에서 1000개의 코인을 먹으면, 마리오의 목숨이 M25(-25)개가 된다. 코인이 1000개가 되면 코인 개수를 다시 999개로 바꾸도록 프로그래밍했어야 하는데, 실수로 목숨이 999개가 되도록 프로그래밍했기 때문에 일어나는 일이다. 그러나 목숨을 저장하는 바이트는 2바이트뿐이라, 오버플로가 일어나 목숨이 -25개가 되는 것이다. 게임 내 수치상으로 코인 1000개가 남아있는 상태에서 요시에게 목숨 100개를 얻으려 하면 영원히 목숨이 채워지지 않게 된다.
  • pannenkoek2012의 유튜브 채널에도 많은 버그들이 알기 쉽게 나와 있다.
  • 벽이 되기 위한 조건각이 굉장히 빡빡하기 때문에[20], 벽으로 디자인된 부분이 벽이 되지 못하고 바닥이나 경사로, 천장으로 남는 상황도 일어난다.

17. 여담


슈퍼 마리오 64 TAS에서는 대부분 Mupen64 라는 에뮬레이터를 사용한다. 이 툴은 기본적으로 게임 속도 조절 기능이 있으며, 세이브/로드와 무비 녹화도 할 수 있는데, 이 무비 녹화는 세이브/로드를 막 사용해도 자동으로 이전 프레임을 저장해서 처음부터 끝까지 매끄럽게 녹화할 수 있다. 이 Mupen64 녹화 파일의 확장자는 .m64이다. TASVideos 같은 사이트에서도 타임어택 마다 이 파일을 같이 배포하고 있다. 이 툴로 녹화한 파일을 불러오면 마치 직접 플레이하고 있는 것 처럼 녹화할 때 눌렀던 키들이 그대로 적용되어서 보여진다. 무비를 재생하는 중간에도 끊어서 그 시점부터 직접 플레이할 수 있다. 또, 이 무비를 재생하고 AVI 캡처도 해 놓으면 .avi 형식의 영상도 같이 만들 수 있다. TAS를 할 때 대부분 TAS Input(TASDI.dll)[21]이라는 입력 플러그인을 사용한다. 같은 N64 에뮬레이터인 Project64에서도 사용할 수 있다.

[1] 마리오가 커진 폭탄병의 판정을 그대로 받기 때문에.[2] 예를 들어 굼바 3마리가 나타나는 곳에 접근해 굼바가 로드된다면 손에 굼바를 들게 된다. 코인, 스타, 플랫폼 등 온갖 오브젝트에 사용 가능하다. 다만 이런 식으로 들게 된 오브젝트를 놓으면 제기능을 못하는 것도 많다. 예를 들어 이 방법으로 생긴 플랫폼 같은 경우에는 물리적 성질을 가지지 않아 쓸모가 없다. 자세한 것은 후술.[3] 웅크리면 들어올린 오브젝트를 놓을 수 있다. 물론 아기팽귄이나 폭탄병도 이렇게 할 수 있다. [4] 먼지나 스포너나 폭발 등. 이외에도 굉장히 많다.[5] 당연한 소리지만 짚고 넘어가야 할 요소다. 3칸을 제거하고 난 후의 빈 박스(칸)들은 어떻게 되는가? 만약 데이터가 고정되어 있다면 오브젝트박스가 사용하는 칸은 여전히 5칸이 되어야 한다. 다시 말하지만 언로드 후 사용하는 칸은 2칸으로 변했다.[6] 이 상태에서 마리오가 들고 있는 오브젝트를 가짜(Fake)오브젝트라고 한다. 즉, 이때는 갑자기 들고 있는 오브젝트가 달라지거나 없어지는 것을 볼 수 있다. 가짜오브젝트는 던져도 던지는 모션만 취하듯 아무런 효과가 없다.[7] 비고로 해당 오브젝트의 스포너의 범위 안 또는 바깥에 따라서, 그리고 몹의 종류에 따라서 마리오가 들어올리는 VS#박스의 순서 또한 달라진다. 스포너의 활성화 유무와 몹의 처치 시 발생하는 더미오브젝트의 수가 제각각이기 때문. 자세한 내용은 후술한 링크에.[8] 만약 활성화된 오브젝트를 들고 있다면 오브젝트 활성화 유무에 상관 없이 VS#가 뒤로 밀려나기 때문에 영향을 받지 않으므로 안심해도 좋다.[9] 특히 npc(빨간 폭탄병), 스포너 스팟, 텔레포트 스팟, 나무, '''멍멍이''' 등.[10] 옛날 만화잡지인 보물섬에서 슈퍼마리오 64 정식발매 시 공략을 게재했을 때 사용 가능한 기술로 실려있었을 정도다.[11] 익숙해진 사람들은 쉽게 사용한다. 이를 이용해 위 영상과 같이 30스타 문을 뚫을 수 있다.[12] 실제로 TAS에서 기본 루트 중 하나가 암흑 세계의 쿠파 맵에서 열쇠를 얻고 난 후, 이 버그를 이용해 바로 지하층 문으로 가는 루트다.[13] 수직이지 않으면 벽이 마리오를 벽에 수직인 방향으로 밀기 때문에 마리오의 위치가 어긋나게 된다.[14] 가끔 토끼는 안끼이기도 하는데 이는 박치기를 이용해 문에 끼이도록 하면 된다. 그리고 마리오가 낄 확률이 부족하다.[15] 사실 굳이 멀리 뛰기를 안 해도 다리 난간 끝으로만 가면 된다. 다리 난간 끝으로 그냥 걸어가도 김수한무는 오지 않는다. 또는 다리 난간 끝에서 숙인 채 움직여도 안 온다. 하지만 그 끝에서 조금만 벗어나면 온다.[16] 공교롭게도 둘 다 약자가 TAS다.[17] 다만 완전히 유지하는 것은 아니고 시간이 지나면서 속도가 수십단위로 깎여 나간다. [18] 카메라가 마리오를 따라오게 하지 않는다면 튕기지 않는다. 이로 보아 카메라가 마리오를 따라가려는 과정에서 너무 빠르게 이동하는 바람에 튕기는 듯 하다.[19] 만일 3번째 이동경로에 바닥이 비었다면 2번째 경로에서 멈추게 된다.[20] 마리오에 대해 완벽히 수직이어야만 벽이 된다.[21] [image]