If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Prototyp:Sonic the Hedgehog 2 (Mega Drive)/Prototyp Nick Arcade

From The Cutting Room Floor
Jump to navigation Jump to search
This page is a translated version of the page Proto:Sonic the Hedgehog 2 (Genesis)/Nick Arcade Prototype and the translation is 83% complete.
Outdated translations are marked like this.
Other languages:
English • ‎polski • ‎русский

To jest podstrona Proto:Sonic the Hedgehog 2 (Genesis)/Nick Arcade Prototype.

Hmmm...
Do Zrobienia:

Hiddenpalace.org logo.png  Ten prototyp jest udokumentowane na Hidden Palace.

Download.png Pobierz Sonic the Hedgehog 2 (Prototyp Nick Arcade)
Plik: Sonic The Hedgehog 2 (Nick Arcade Prototype).bin (1 MB) (info)
Sonic2nickarcadetitle.PNG

Prototyp Nick Arcade Sonic the Hedgehog 2 to bardzo wczesna kompilacja z wieloma widocznymi pozostałościami po Sonic 1, takie jak nazwy poziomów i muzyka. Jest bardzo niekompletny, z brakującymi wrogami i poziomami oraz wszędzie występują usterki graficzne. Jednak podstawowe układy dla kilku poziomów zostały ukończone, a Tails został zaimplementowany.

Prototyp został zrzucony przez drx i udostępniony publicznie 7 listopada 2006 roku. Swoją nazwę nadano mu ze względu na podobieństwo do wersji „Sonic 2”, która została zaprezentowana w co najmniej dwóch odcinkach teleturnieju Nick Arcade, ponieważ ta konfiguracja wydaje się być bardzo zbliżona (jeśli nie dokładnie taka sama) do konfiguracji użytej w programie. Kolejna podobny build został użyty na Summer Consumer Electronics Show (SCES) w dniu 28 maja 1992 roku, a także podczas Tokyo Toy Show w 1992 roku[1].

Dodatkowa uwaga: jest to jedyny znany kartridż Mega Drive wykorzystujący etykietę holograficzną, która została porzucona, ponieważ bardzo podniosłaby koszty produkcji kartridża.

Podstrony

HPZiconS2.png
Strefy
Hidden Palace, Emerald Hill...Green Hill?!

Leftovers

Sonic2SonicIdle1.png
Leftovers
Oh boy, there's a lot here.
Blank.png
Symbol Tables
How big are they?!

Ogólne Różnice

Przykład tego, jak kiepski jest tryb dla dwóch graczy.
  • W tym momencie rozwoju Tails jest quasi-niezależny: Gracz 2 jest w stanie kontrolować Tailsa, z wyjątkiem tego, że będzie również podążał za Sonicem. Co więcej, Tails nie może samodzielnie ukończyć poziomu, ponieważ gra ładuje znak celu tylko wtedy, gdy zbliża się do niego Sonic. Jeśli Tails zostanie ranny, może stracić pierścienie Sonica. Sztuczna inteligencja jest również znacznie prostsza: Tails kopiuje ruchy Sonica i nie próbuje nadążyć za nim.
  • Tryb 2 graczy jest jeszcze mniej kompletny ze względu na różnego rodzaju dziwne usterki i nie jest włączony dla każdej strefy.
  • Niezwyciężoność nie pokazuje efektu gwiazdy, choć muzyka jest nadal odtwarzana. Muzyka i nietykalność trwają do końca Aktu.
  • Istnieje mechanika polegająca na tym, że Sonic odbija się od ścian, jeśli wpada na nie z dużą prędkością, używając sprite'ów, które nie były używane przez prototyp Simona Wai, chociaż sprite, w którym wstawał, został później poprawiony i ponownie użyty, gdy Sonic opuści swoją animację bezczynności „leżenia na ziemi”.

Zostałem powalony, ale znowu wstałem...

  • Spin dash jest w trakcie prac nad nim, ponieważ Sonic i Tails mogą go naładować tylko raz; ponadto można usłyszeć dźwięk turlającego się Sonica z Sonic 1, ponieważ nie ma jeszcze określonego efektu dźwiękowego dla spindashu.
  • Zachowanie obrażeń od kolców działa tak samo, jak w przypadku Sonic 1.
  • Ograniczenie prędkości względem ziemi z Sonic 1 jest nadal obecne.
  • Sprite'y eksplozji są takie, jakie są w Sonic 1.
  • Tryb debugowania jest zgodny z logiką Sonic 1.
    • Szybkość i prędkość Sonica nie są resetowane podczas wychodzenia z debugowania.
    • Sonic zostanie odrzucony tylko wtedy, gdy zostanie trafiony bez pierścieni.
      • Sonic nie może wejść do debugowania, gdy jest odrzucany.
    • Sonic nie może wejść do debugowania, gdy jest w swojej animacji śmierci.
    • Wchodzenie i wychodzenie z debugowania w zanurzeniu nie spowoduje zresetowania zegara podwodnego Sonic.
    • Sonic zachowuje prędkość na lądzie, jeśli wchodzi do debugowania z wody i wychodzi na ląd.
    • Jeśli Sonic minął drogowskaz, wejście i wyjście z debugowania nie pozwoli graczowi odzyskać możliwości kontrolowania go.
  • Połącznie tego prototypu z Sonic & Knuckles odblokuje pełną grę Blue Sphere.
  • Licznik resetuje się do 9:00 przed osiągnięciem 9:59, umożliwiając graczowi testowanie etapów przez dłuższy czas.
  • Jeśli Sonic i Tails zostaną trafieni w tym samym czasie, niosąc co najmniej jeden pierścień, pojawi się duża ilość pierścieni, niezależnie od tego, ile faktycznie posiadają.
  • Ekran nie przewija się w górę ani w dół, gdy patrzysz w górę lub w dół przez określony czas.
  • Wskoczenie na sprężynę skierowaną w dół powoduje, że Sonic podczas upadku używa animacji umierania.

Kody

  • Wybór Poziomu - Góra, Dół, Dół, Dół, Dół, Góra, A + Start.
  • 2-Player Mode - W oknie wyboru poziomu naciśnij B + Start na dowolnym poziomie.
  • Tryb Debugowania - C, C, Góra, Dół, Dół, Dół, Dół, Góra, A + Start. Debugowanie można również włączyć za pomocą kodu Pro Action Replay FFFFFA:0001. Jak w Sonic 1, C wystarczy nacisnąć dwukrotnie przed ostatecznym wprowadzeniem Góra.
  • Tryb Debugowania i Wybór Poziomu - Góra, Dół, Dół, Dół, Dół, Góra, UDLR, Góra, Dół, Dół, Dół, Dół, C, C, Góra, A + Start. "UDLR" oznacza po prostu naciśnięcie dowolnego kierunku na D-Pad, aby zresetować kod wykrywania oszustw. W przeciwieństwie do wersji finanej, w której zarówno tryb debugowania, jak i wszystkie szmaragdy można włączyć, grając 19921124126 na ekranie wyboru poziomu, ostatna Góra kodu Level Select nie może „nachodzić” na pierwszą Góra kodu trybu debugowania.

Tryb Przyciągania

Nick Arcade do 21 Sierpień 1992 14 Wrzesień, 1992 do Beta 4 Beta 5 i dalsze
Zejdź mi z drogi, Tails! Teraz z opcjami! Na wypadek, gdybyśmy nie byli wystarczająco klarowni, obok wybranego przedmiotu znajduje się teraz odznaka.

Ekran tytułowy jest inny, ze szczególnie znanym designem: nie tylko pojawia się w późniejszej wersji Simon Wai, pojawia się również w instrukcji obsługi gry, a także wersjach Master System i Game Gear. Wersja widoczna w instrukcji obsługi jest taka sama jak na drugim zdjęciu powyżej.

Demo 1 Demo 2
Demo 3 Demo 4

Gra przechodzi przez cztery wersje demonstracyjne: Chemical Plant, Emerald Hill (2 Graczy), Hidden Palace, i Hill Top. Byłby to ostatni raz, kiedy nowe dema zostały nagrane do gry przed ostateczną kompilacją; wszystkie inne prototypy używają danych wejściowych z tej kompilacji.

Zmieniona Grafika

Sonic i Tails

Sonic 1 Nick Arcade/Simon Wai 21 Sierpnia i później
Sonic2SonicIdle1.png Sonic2SonicIdleEarly.png Sonic2SonicIdleFinal.png

Sprite Sonica w Nick Arcade i kompilacjach Simona Waia jest znacznie bliższy jego projektowi w Sonic 1. Jego bezczynna sylwetka jest identyczna, z wyjątkiem krótszych butów i dodatkowego połysku z boku głowy. Build z 21 sierpnia zmienia kształt oczu Sonica i dodaje trochę cieniowania w górnej części oka.

Nick Arcade/Simon Wai 21 Sierpnia i później
Sonic2SonicEyesClosedEarly.png Sonic2SonicEyesClosedFinal.png

Migająca ramka Sonica we wcześniejszych prototypach jest nieco dziwna. Wygląda mniej jakby miał zamknięte oczy, a bardziej jakby jego źrenice były na samym dole. Ostatecznie gra na szczęście dodaje Sprite'owi powieki w kolorze cielistym.

Nick Arcade/Simon Wai 21 Sierpnia i później
Sonic2SonicLookUpEarly.png Sonic2SonicCrouchEarly.png Sonic2SonicLookUpFinal.png Sonic2SonicCrouchFinal.png

Projekt oka Sonica nie został zaktualizowany we wszystkich klatkach: w jego animacjach patrzenia w górę i kucania po prostu dodali cieniowanie w górnej części oka, nie zmieniając jego kształtu.

Nick Arcade/Simon Wai 21 Sierpnia i później
Sonic2SonicWalkEarly.gif Sonic2SonicWalkFinal.gif

Animacja chodzenia Sonica ma 12 klatek animacji we wcześniejszych wersjach w porównaniu z 8 klatkami widzianymi w ostatecznej wersji. Minimalna prędkość animacji jest również dwukrotnie większa niż w ostatecznej grze i pokazuje znacznie więcej amerykańskiego projektu „mohawk”.

Nick Arcade/Simon Wai 21 Sierpnia i później
Sonic2SonicRunEarly.gif Sonic2SonicRunFinal.gif

Jedna z najłatwiejszych do zauważenia zmian: w kompilacji Nick Arcade i Simon Wai, gdy Sonic biegnie, jego buty i nogi zamieniają się w kreskówkową plamę. Zostało to stonowane w ostatecznej wersji, tak jak w Sonic 1, co wpłynęło tylko na jego trampki. Co dziwne, te wczesne sprite'y zostały użyte w zwiastunie Sonic 4 - Episode I. Ten rodzaj sprite'a został później ponownie użyty w Sonic Mania, gdy on lub Knuckles poruszają się z pełną prędkością.

Nick Arcade/Simon Wai 21 Sierpnia i później
Sonic2SonicSkiddingEarly.gif Sonic2SonicSkiddingFinal.gif

Animacja poślizgu Sonica jest tutaj zupełnie inna. Zaczyna się od nowego, unikalnego początku, po czym ponownie wykorzystuje kilka klatek z Sonic 1, po czym odwraca się i zaczyna pchać w innym kierunku. Ostatnie dwie klatki będą zapętlone, aż Sonic albo całkowicie się zatrzyma, albo wykona inną akcję. Początek animacji został później ponownie wykorzystany na Sonic Mania.

Sonic 1 Nick Arcade/Simon Wai 21 Sierpnia i później
Sonic2SonicPush1.gif Sonic2SonicPushEarly.gif Sonic2SonicPushFinal.gif

W oryginalnej grze ciało Sonica porusza się, ale jego ręce nie. We wczesnych prototypach jego ręce poruszają się, ale jego ciało pozostaje w poziomie. Końcowy sprite dzieli różnicę i porusza ciałem i rękami w różnych klatkach. Co dziwne, na jego butach jest pomarańczowe zabarwienie, ponieważ sprite'y powstały z Sonic 1 z drobnym niedopatrzeniem kolorystycznym. Ten pomarańczowy odcień byłby najciemniejszym odcieniem czerwieni, gdyby wziąć pod uwagę główną paletę pierwszej gry.

Sonic 1 Nick Arcade/Simon Wai 21 Sierpnia i później
Sonic2SonicBalance1.gif Sonic2SonicBalanceEarly.gif Sonic2SonicBalanceFinal.gif

Animacja balansowania jest po prostu szybszą wersją animacji „Sonic 1” z dodatkowym blaskiem głowy i pomarańczowymi ustami, ponieważ sprite'y są oparte na tych z Sonic 1 i podobnie jak animacja pchania, mają niedopatrzenia w swojej kolorystyce. Ostateczna gra dodaje cztery nowe animacje balansujące w oparciu o to, jak daleko Sonic jest od krawędzi i czy stoi twarzą do krawędzi.

Nick Arcade/Simon Wai 21 Sierpnia i później
Sonic2TailsSpinEarly.gif Sonic2TailsSpinFinal.gif

Jedyna różnica w grafice Tailsa to dodatkowy blask jego wirującego sprite'a.

Badniki

Nick Arcade/Simon Wai 21 Sierpnia i później
Sonic2BuzzerEarly.gif Sonic2BuzzerFinal.gif

Sprite Buzzera został nieco poprawiony między buildem Simona Wai a 21 sierpnia: jego głowa została przeprojektowana, aby była mniej podobna do mrówki, dodano więcej szczegółów do brzucha, a dysze zostały wyprostowane.

Nick Arcade to August 21st 14 Września Prototyp CENSOR dalej
Sonic2CrawlEarly.gif
Sonic2CrawlPreBeta.gif
Sonic2CrawlFinal.gif

Wczesny sprite Crawla (0xA9580 w pamięci ROM) bardzo różni się od ostatecznego projektu, brakuje mu jakiejkolwiek animacji chodzenia i jest w stanie unieść tarczę tylko w jednym kierunku.

Inne Sprite'y

Nick Arcade Simon Wai dalej
Czy Tails nie jest uroczy? Teraz z 200% mniejszą symetrią!

Wszystkie trzy drogowskazy były pierwotnie symetryczne. Ostatecznie symetryczny pizostał tylko Robotnik.

Nick Arcade Simon Wai i dalej
Sonic2BreakableBlockN.PNG Sonic2BreakableBlockW.png

Pod addressem 0xA3C16 jest sprite czegoś, co wygląda jak łamliwe klocki z Sonic 1. Jest tak ogólny, że mógłby być na każdym etapie, ale najbardziej przypomina klocki Hill Top. Były to z Sonic 1, a także tam nieużywane.

Nick Arcade Simon Wai i dalej
Sonic2FireballNick.png Sonic2FireballFinal.png

Pod addressem 0xA4368 jest grafika przedstawiająca kulę ognia. Boss Hill Top w finalnej grze może strzelać ognistymi kulami, ale te kule ogniste rosną i kurczą się oraz mają trzy klatki animacji. Starszy sprite byłby prawdopodobnie ożywiony jak ogniste kule w Strefie Marble w Sonic 1: Sonic2NickFireball.gif

(Źródło‏‎: Sonic Retro, orginalne badania TCRF)

Nieużyte grafiki

Sonic

Grafika ID Klatki Opis
Sonic2proto LookingAtYou.png Sonic2TurnAnim.gif 0A-0B Niewykorzystane sprite'y obracania się Sonic. Deweloperzy mogli mieć zamiar by Sonic obracał się podczas zmiany kierunku zamiast natychmiastowego zwrócenia się w drugą stronę, lub być może jest to zwycięska poza podobna do znaku celu Sonica w tej wersji.
Sonic2SonicRunFaster.gif 40-43
4C-4F
58-5B
64-67
Sprite'y dla Sonica poruszającego się jeszcze szybciej niż normalnie.
Sonic2SonicRunFastest.gif 44-47
50-53
5C-5F
68-6B
Więcej sprite'ów dla Sonica prawdopodobnie osiągającego maksymalną prędkość. Spójrz na niego, jak tylko wystawia głowę. Tails ma animację pełnej prędkości, chociaż jedyną zmianą jest to, że jego dwa ogony używają tylko dwóch sprite'ów.
Sonic2Beta SonicPull.gif
7B-7D Niewykorzystana animacja Sonica ciągnącego lub niosącego coś. Mogły być zaplanowane elementy puzzlowe polegające na ciągnięciu lub przenoszeniu rzeczy.
Sonic2SonicBalanceAlt.gif
8B-8C Nieużywana animacja balansowania przez Sonica na krawędzi. Prawdopodobnie miało to być używane, gdy graczowi brakowało zaledwie kilka pikseli od upadku. Wygląda podobnie do animacji balansowania na krawędzi widzianej w Sonic the Hedgehog 3.

Pozostałe

Grafika Offset Kompresja Opis
Sonic2pre hpzbg.png
0x27098 Żadna Element tła przedstawiający jaskinię przesłoniętą stalagmitami (i stalaktytami), a nie dziwną fioletową plamę. Używana we wczesnej wersji tła Hidden Palace widocznego na próbnym zrzucie, ale nie w żadnym prawdziwym (znanym) prototypie.
Sonic2NickChemAnim.gif Sonic2NickChemBelt.gif 0x27798 Żadna Animowane kafelki, które nie są ładowane w żadnej strefie, ale wydają się całkiem dobrze pasować do palety poziomu Zakładów Chemicznych. Kod źródłowy pozostawiony z wcześniejszej wersji Sonic 2 sugeruje, że miały one zostać załadowane do pamięci VRAM w Chemical Plant Act 3 dla bossa. Boss Zakładów Chemicznych był określany jako „vacume” w pozostałym kodzie źródłowym i z jakiegoś powodu został usunięty, a cały jego unikalny kod został usunięty z tej kompilacji.
Sonic2NickPropeller.gif Sonic2NickLiquid.gif 0x27DD8 Żadna Więcej animowanych kafelków przy użyciu palety Chemical Plant. W końcowej grze nie ma żadnych śmigieł ani wody na pierwszym planie
Sonic2BurningCinders.gif
0xA44A0 Nemesis Coś co wygląda jak płonący kawałek czegoś. Wczesne grafiki koncepcyjne przedstawiają pszczołę podobną do Buzzera, która może niszczyć mosty, spalając je ognistymi kulami — to może być pozostałość tego pomysłu.
Sonic2HTZGate.png
0xA4BCE Nemesis To jest jednokierunkowa brama Hill Top. Jest identyczna z tą w finalnej grze, po prostu nie została jeszcze zakodowana.
S2-HPZ Unused platform.png
0xA5826 Nemesis Grafika dla obiektu Hidden Palace, prawdopodobnie pływającej platformy. Nie jest jasne, w jaki sposób zostałyby zmontowane. Podobny obiekt jest widziany w reedycji z 2013 jako platforma wodna.
Sonic2EarlySmoke.gif
0xA59C0 Nemesis Rozpraszająca się chmura, prawdopodobnie przeznaczona do źródeł pary w Strefie Metropolis.
Sonic2GraySwitch.png
0xA5D9E Nemesis Standardowy przełącznik Sonic 2 został już narysowany i zdigitalizowany w tym momencie, po prostu nie został jeszcze zakodowany.
Sonic2BouncingBall.gif
0xA8CA0 Nemesis Kręcąca się metalowa kulka. Widoczna na niektórych wczesnych grafikach koncepcyjnych – działałaby jako przeszkoda, stale podskakując po podłodze po wysokim łuku. Co ciekawe, kod dla tego obiektu jest zaimplementowany w kompilacji Alpha. Odbijała się w losowym kierunku raniąc gracza w przypadku dotknięcia, zmieniałby kierunek po dotknięciu ściany. Można ją znaleźć w reedycji z 2013 za pośrednictwem trybu debugowania, chociaż używa innej palety i eksploduje, gdy unosi się nad głową gracza.
Sonic2BubblerMother.gif Sonic2BubblerMotherProj.gif 0xA8F36 Nemesis Niedokończony badnik o imieniu Bubbler's Mother. Latał po scenie, zrzucając na podłogę cząsteczki, które zamieniały się w Bubblery. Pojawiają się one również w wersji z 2013 za pośrednictwem trybu debugowania. W wersji z 21 sierpnia istnieje kod dla Bubbler's Mother, jednak pociski są niedokończone i nie tworzą Bubblerów. Zgodnie z grafiką koncepcyjną był przeznaczony dla „Chemical Factory Zone”, która ostatecznie stała się Chemical Plant Zone.
Sonic2Bubbler.gif
0xA9162 Nemesis Bubbler upuszczony przez Bubbler's Mother. Przykleiłby się do podłogi, zanim eksplodował w trzy bąbelki. W kompilacji z 21 sierpnia istnieje niedokończony kod dla Bubblera. Zgodnie z grafiką koncepcyjną był przeznaczony dla „Chemical Factory Zone”, która ostatecznie stała się Chemical Plant Zone.
Sonic2CrawlEarlyDebris.png
0xA9580 Nemesis W duszkach Crawla jest coś, co wydaje się być skałami lub grudkami piasku. Crawl pierwotnie miał wyskoczyć z ziemi, a pod nim pojawił się piasek/skały. Pomysł został prawdopodobnie odrzucony po tym, jak Crawl został zmieniony na Strefę Casino Night. Co ciekawe, sprite jest używany w kompilacji z 21 sierpnia, jeśli zostanie przywrócona grafika Crawla. Piasek/skały były również widoczne w szkicu projektu Crawla.
Używany Zamierzony
Sonic2BBatPalette1.png Sonic2BBatPalette0.png

Badnik BBat używa palety 01, ale wygląda to trochę dziwnie. Jeśli jest ustawiony na używanie palety 00 (Paleta Sonica i Tailsa), kolory ucha i płomienia wyglądają o wiele lepiej. Nie zostało to naprawione w żadnej wersji gry, zanim jego grafika i kod zostały całkowicie usunięte z ROM-u.

(Źródło‏‎: Sonic Retro, Yawackhary, orginalne badania TCRF)

Nieużywane Obiekty

Octus

Sonic2Octus.png Sonic2NAOctusFloating.gif Sonic2NAOctusFiring.png

ID Obiektu: 4A

Ten badnik pojawia się w Strefie Oil Ocean w finalnej grze, choć jego zachowanie jest tutaj nieco inne:

  • W tej i wersji Simona Waia unosi 32 piksele z ziemi, wystrzeliwuje pojedynczy strzał w Sonica, a następnie szybko leci w lewo lub w prawo, aż zniknie.
  • We wszystkich innych wersjach po wystrzeleniu pocisku nie odleci, ale po prostu wyląduje na ziemi i powtórzy proces

Stego

Sonic2StegoWalk.gif Sonic2StegoRun.gif
ID Obiektu: 4D

Badnik typu triceratops, który pojawił się na próbnym zrzucie ekranu Strefy Hidden Palace. Powoli porusza się w przód i w tył, a kiedy Sonic się do niego zbliża, aktywuje silniki i szarżuje na niego jak ślimak-badnik. Można go umieścić w Hidden Palace w trybie debugowania, ale jego grafika jest zniekształcona bez użycia kodu PAR.

Gator

Sonic2Gator.gif
ID Obiektu: 4E

Badnik typu krokodyl, po raz pierwszy widziany na próbnym zrzucie ekranu z usuniętej strefy pustynnej, choć nie jest jasne, czy ten wróg miał się tam pojawić. Powoli porusza się w przód i w tył, otwierając szczęki, jeśli jest zwrócony w stronę Sonica i znajduje się w odległości 64 pikseli od niego. Można go umieścić używając debugowania w Strefie Hidden Palace, ale jego grafika jest zniekształcona bez użycia kodu PAR.

Aquis

Hmmm...
Do Zrobienia:
Uzyskaj materiał filmowy z ich zachowań.

Sonic2Aquis.png
ID Obiektu: 50, 51

Badnik konik morski ze Strefy Oil Ocean ma dwa różne warianty, z których żaden nie pasuje do tego, jak zachowuje się w końcowej grze.

Obiekt 50 ("Konik Morski"):

  • Porusza się po prostej ścieżce, od lewej do prawej iz powrotem. Zakres ruchu wynosi 16×(niższe cztery bajty podtypu) szerokości w pikselach.
  • Po upłynięciu 256×(górne cztery bajty podtypu) klatek czasu, „tryb strzelania” zostaje włączony. Jeśli Sonic zbliży się do badnika, gdy jest on w trybie strzelania, a Sonic jest w zasięgu wzroku, wystrzeli pojedynczy strzał, a następnie zeskoczy do współrzędnych Y 0398. Wydaje się, że ta wartość jest zakodowana na stałe.
  • Jeśli jego początkowa współrzędna Y jest większa niż 0398, powoli podniesie się do 0398. Następnie, gdy odda strzał, szybko wróci do swojej początkowej współrzędnej Y.
  • Jeśli górne cztery bajty podtypu to 00, zegar jest ustawiony na FFFF skutecznie uniemożliwiając strzelanie.
  • Zwróć uwagę na słowo „włączone”. Badnik może wyjść z trybu strzelania, jeśli minie wystarczająco dużo czasu.

Obiekt 51 (Konik powietrzny):

  • Porusza się jak pierwszy Aquis na ustalonej ścieżce, ale będzie również śledzić pozycję Y Sonica do pierwotnej wysokości odrodzenia.
  • Licznik odlicza czas dla każdej klatki, w której Sonic znajduje się w polu widzenia tego badnika. Jest to początkowo ustawione na 180 klatek. Gdy licznik osiągnie zero, wystrzeliwuje pojedynczy strzał w Sonica. Przed ponownym uruchomieniem timera strzału występuje dodatkowe 36 klatek opóźnienia.
  • W przeciwieństwie do finałowej gry, nie ma ograniczeń co do liczby pocisków, które ten wróg może wystrzelić.
  • Sonic2AquisAltBody.gif
    Wykorzystuje alternatywną grafikę ciała z rakietą zamiast płetwy. Grafika tego ciała została usunięta z jego zestawu klocków począwszy od wersji Beta 4.

BFish

Sonic2NickBFish.gif Sonic2NickBFishJump.gif
ID Obiektu: 52

Badnik typu piranii. Poruszy się 32×(niższe cztery bajty podtypu) pikseli w prawo przed skokiem, a następnie wyskoczy wysokim łukiem. Dokładnie, jak to działa, zależy od jego początkowej i aktualnej pozycji Y:

  • Jeśli jego początkowa pozycja Y jest mniejsza lub równa 0380 (podobnie jak Aquis, wydaje się, że jest to zakodowane na sztywno), podskoczy, a następnie będzie spadać, aż osiągnie współrzędną Y 0380. Następnie wykona skoki z tej pozycji Y, aż zniknie.
  • Jeśli jego początkowa pozycja Y jest większa niż 0380, będzie animował się wolniej i podskakiwał po niższym łuku niż zwykle. Gdy osiągnie swoją początkową współrzędną Y, skacze ponownie.

Można go umieścić z pomocą debugowania w Strefie Hidden Palace, ale jego grafika jest zniekształcona bez użycia kodu PAR.

Lamppost

Sonic2LamppostEarly.png Sonic2 NickArcade lamppost.gif
ID Obiektu: 79

Jest to latarnia Sonic 1 o bardzo odmiennym designie niż ta widziana w ostatecznej wersji Sonic 2. Można ją umieścić w trybie debugowania w Strefach Emerald Hill i Hill Top. Pojawiają się w Emerald Hill, ale ich grafika jest zniekształcona.

Nieużywane Podtypy

Monitory
Sonic2MonitorStatic.gif
00: Monitor statyczny. Po zniszczeniu nic nie robi. W końcowej wersji gry (gdzie również nie jest używany), zadaje obrażenia graczowi.

Sonic2MonitorEggman.png
03: Monitor Robotnik. Również nie robi nic w proto i uszkadza gracza w wersji finalnej, ale ten jest ostatecznie używany w trybie dla 2 graczy.

Sonic2MonitorQuestion.png
08: Tajemniczy monitor. Po zepsuciu nic nie robi... w tej wersji. W prototypie Simona Wai aktywuje paletę Super Sonic, a pozostałe atrybuty są później aktywowane w prototypach 21 sierpnia i przed beta, zanim zostaną zastąpione monitorem teleportacji w późniejszych wersjach.

Sonic2MonitorSpring.png
09: Sprężynowy monitor. Obecny tylko w tym prototypie i kompilacji Simona Wai, ale nie robi nic, gdy jest zniszczony. Dwa domysły, jak by mógł działać:

  • Jak monitor Pogo Spring w znacznie późniejszym Sonic the Hedgehog Triple Trouble, gdzie umieszcza Sonica/Tailsa na sprężynie pogo, która podskakuje w górę i w dół, dopóki nie odniosą obrażeń.
  • Zwiększono wysokość skoku gracza. Pomogłoby to wyjaśnić moce Super Sonica: jest niepokonany (pasuje do wzmocnienia z monitora niezwyciężoności) i ma zwiększoną prędkość (jak monitor Speed Shoes), ale nie ma monitora odpowiadającego jego zwiększonej wysokości skoku.

Platformy Chemical Plant Zone
Wydaje się, że kod w tej wersji został ponownie wykorzystany z obiektu 52 w Sonic 1, który został użyty do ruchomych bloków w strefach Marble, Labyrinth, i Scrap Brain. Podtypy 02-03 (klocek Marble Zone, który porusza się w prawo po nadepnięciu, a następnie spada, gdy uderza w solidną płytkę), 04-07 (ukryty blok w akcie 1 strefy labiryntu aktywowany przełącznikiem, który prowadzi do szybszej trasy), i 09-0A (platformy przesuwne w Strefie Scrap Brain) są nieużywane w tej kompilacji.

Boss

00: Chemical Plant Zone boss. The code was completely removed and the pointers to it are set to 0. Leftover symbol data call the subobjects "bossvac" and "vacumeguy". Its graphics do remain in the ROM, alongside leftover entries for loading them. However, the code was rediscovered in the August prototype, and can be ported over to the Nick Arcade prototype. With just some small object ID and pointer fixes and restoration of those graphics load entries, it'll work just about right out of the box, as shown in the above video.

The behavior is different to the final, generally having slower movement.

Dziwności w Kodzie

  • Gra ładuje układ i fragmenty Green Hill Zone z inną rutyną niż pozostałe etapy; próbuje również zastosować to do "Labyrinth Zone", ale nie działa z powodu wykorzystania danych Chemical Plant.
  • Rutyna ładowania animowanych kafelków poziomów zawiera listę etapów aż do $0F, chociaż jest tylko $06 poziomów (w tym zakończenie Sonic 1); wydaje się to sugerować, że programiści już przesuwali identyfikatory etapów, co dodatkowo potwierdza fakt, że Hidden Palace jest wymieniony jako $08, który jest jego slotem zaczynając od wersji Simona Wai i dalszych.
  • Jakoś, kompresja z Kid Chameleon znalazła się w kodzie, a nawet jest używana w kawałkach Green Hill!

Lista Obiektów/Kod Zródłowy

Ogromną listę obiektów można znaleźć w pamięci ROM, wraz z surowym kodem źródłowym.

	addsym
	nolist
	include	"equ.lib"
	include	"macro.lib"
	list

	xref	colichgpat
	xref	ringpat,itempat,butapat,kanipat,hachipat,togepat
	xref	fishpat,fish2pat,mogurapat,shimapat2,jyamapat
	xref	musipat,sjumppat,kamerepat,arumapat,kagebpat,ballpat
	xref	firepat,fblockpat,signalpat,bobinpat,yoganpat,yogan2pat
	xref	usapat,yadopat,boxpat,bryukapat,daipat,break2pat,yogancpat
	xref	batpat,z5daipat,dai2pat,switch2pat,z4daipat
	xref	elevpat,pedalpat,steppat,funpat,sisoopat,hassyapat
	xref	brobopat,unipat,yaripat,udaipat,dai3pat,kazaripat,kassyapat
	xref	awapat,mizupat,boupat,benpat,fetamapat,mawarupat,hagurumapat
	xref	patapat,yukafpat,nokopat,dai4pat,doorpat,yukaepat,fire6pat
	xref	elepat,yukaipat,scolipat,imopat,savepat,bigringpat,btenpat
	xref	actionsub,actwkchk,frameout,playpat,dualmodesub
	xref	flicpat,usagipat,pengpat,azarpat,fbutapat,niwapat,risupat

	xref	kaitenpat,prodaipat,buranko0dpat
	xref	frntlitpat,gempat,wfallpat,pltfrmpat
	xref	takipat,banepat,dai00pat

	xref	redzpat,bfishpat,seahorsepat,horsepat
	xref	stegopat,wasppat,gatorpat,bbatpat,octpat,wfish2pat,snailpat

	xdef	edit

;------------------------------------------------------------------------------
edit:
	moveq	#0,d0
	move.b	editmode,d0
	move.w	edit_move_tbl(pc,d0.w),d1
	jmp	edit_move_tbl(pc,d1.w)
edit_move_tbl:
	dc.w	editinit-edit_move_tbl
	dc.w	editmove-edit_move_tbl
editinit:
	addq.b	#word,editmode
	move.w	scralim_up,editstack
	move.w	scralim_n_down,editstack2
	move.w	#$0000,scralim_up
	move.w	#$0720,scralim_n_down
	andi.w	#$07ff,playerwk+yposi
	andi.w	#$07ff,scra_v_posit
	andi.w	#$03ff,scrb_v_posit
	move.b	#0,patno(a0)
	move.b	#0,mstno(a0)
	cmpi.b	#spgamemd,gmmode
	bne.b	.jump0
*	move.b	#7-1,stageno
*	move.w	#$000,rotspd
*	move.w	#$000,rotdir
	moveq	#7-1,d0
	bra.b	.jump1
.jump0:
	moveq	#0,d0
	move.b	stageno,d0
.jump1:
	lea	edittbl,a2
	add.w	d0,d0
	adda.w	(a2,d0.w),a2
	move.w	(a2)+,d6
	cmp.b	editno,d6
	bhi.b	.jump
	move.b	#0,editno
.jump:
	bsr.w	editpatchg
	move.b	#12,edittimer
	move.b	#1,edittimer+1
editmove:
	moveq	#7-1,d0
	cmpi.b	#spgamemd,gmmode
	beq.b	.jump
	moveq	#0,d0
	move.b	stageno,d0
.jump:
	lea	edittbl,a2
	add.w	d0,d0
	adda.w	(a2,d0.w),a2
	move.w	(a2)+,d6
	bsr.w	editwalk
*	bsr.w	dirsprset
	jmp	actionsub
editwalk:
	moveq	#0,d4
	move.w	#1,d1
	move.b	swdata1+1,d4
	andi.w	#$0f,d4
	bne.b	.jump0
	move.b	swdata1,d0
	andi.w	#$0f,d0
	bne.b	.jump
	move.b	#12,edittimer
	move.b	#$0f,edittimer+1
	bra.w	.lend
.jump:
	subq.b	#1,edittimer
	bne.b	.jump1
	move.b	#1,edittimer
	addq.b	#1,edittimer+1
*	cmpi.b	#255,edittimer+1
	bne.b	.jump0
	move.b	#255,edittimer+1
.jump0:
	move.b	swdata1,d4
.jump1:
	moveq	#0,d1
	move.b	edittimer+1,d1
	addq.w	#1,d1
	swap	d1
	asr.l	#4,d1
	move.l	yposi(a0),d2
	move.l	xposi(a0),d3
	btst.l	#0,d4			*swdata+0
	beq.b	.jump2
	sub.l	d1,d2			*yposi
	bcc.b	.jump2
	moveq	#0,d2
.jump2:
	btst.l	#1,d4			*swdata+0
	beq.b	.jump3
	add.l	d1,d2			*yposi
	cmpi.l	#$7ff0000,d2
	bcs.b	.jump3
	move.l	#$7ff0000,d2
.jump3:
	btst.l	#2,d4			*swdata+0
	beq.b	.jump4
	sub.l	d1,d3			*xposi
	bcc.b	.jump4
	moveq	#0,d3
.jump4:
	btst.l	#3,d4			*swdata+0
	beq.b	.jump5
	add.l	d1,d3			*xposi
.jump5:
	move.l	d2,yposi(a0)
	move.l	d3,xposi(a0)
.lend:
	btst.b	#6,swdata1+0
	beq.b	.jump7
	btst.b	#5,swdata1+1		* c button check
	beq.b	.jump77
	subq.b	#1,editno
	bcc.b	.jump6
	add.b	d6,editno
	bra.b	.jump6
.jump77:
	btst.b	#6,swdata1+1
	beq.b	.jump7
	addq.b	#1,editno
	cmp.b	editno,d6
	bhi.b	.jump6
	move.b	#0,editno
.jump6:
	bra.w	editpatchg
.jump7:
	btst.b	#5,swdata1+1		* c button check
	beq.b	.jump8
	jsr	actwkchk
	bne.b	.worknai		;z=0:ok	z=1:no
	move.w	xposi(a0),xposi(a1)
	move.w	yposi(a0),yposi(a1)
	move.b	patbase(a0),actno(a1)
	move.b	actflg(a0),actflg(a1)
	move.b	actflg(a0),cddat(a1)
	andi.b	#$7f,cddat(a1)
	moveq	#0,d0
	move.b	editno,d0
	lsl.w	#3,d0
	move.b	4(a2,d0.w),userflag(a1)
	rts
.worknai:
.jump8:
	btst.b	#4,swdata1+1		* b button check
	beq.b	.jump9
	moveq	#0,d0
	move.w	d0,editmode
	move.l	#playpat,playerwk+patbase
	move.w	#$0780,playerwk+sproffset
	tst.w	dualmode		; dual mode check
	beq.b	.end
	move.w	#$0780/2,playerwk+sproffset
.end:
	move.b	d0,playerwk+mstno
	move.w	d0,xposi+2(a0)
	move.w	d0,yposi+2(a0)
	move.w	editstack,scralim_up
	move.w	editstack2,scralim_n_down
	cmpi.b	#spgamemd,gmmode
	bne.b	.jump9
*	clr.w	rotdir
*	move.w	#$040,rotspd
*	move.l	#playpat,playerwk+patbase
*	move.w	#$0780,playerwk+sproffset
	move.b	#02,playerwk+mstno
	bset.b	#cd_ball,playerwk+cddat
	bset.b	#cd_jump,playerwk+cddat
.jump9:
	rts
editpatchg:
	moveq	#0,d0
	move.b	editno,d0
	lsl.w	#3,d0
	move.l	0(a2,d0.w),patbase(a0)
	move.w	6(a2,d0.w),sproffset(a0)
	move.b	5(a2,d0.w),patno(a0)
*	move.b	4(a2,d0.w),userflag(a0)
	bsr.w	dualmodesub
	rts

dcblw	macro	\1,\2,\3,\4,\5
	dc.l	(\1)*$1000000+(\2)
	dc.w	(\4)+(\5)*$100
	dc.w	(\3)
	endm

edittbl:
	dc.w	edit1tbl-edittbl
	dc.w	edit2tbl-edittbl
	dc.w	edit3tbl-edittbl
	dc.w	edit4tbl-edittbl
	dc.w	edit5tbl-edittbl
	dc.w	edit6tbl-edittbl
	dc.w	edit7tbl-edittbl
edit1tbl:
	dc.w	14
	dcblw	ring_act,ringpat,$26bc,0,$00		;1:
	dcblw	item_act,itempat,$0680,0,$00		;2:
	dcblw	kani_act,kanipat,$0400,0,$00		;3:
	dcblw	hachi_act,hachipat,$0444,0,$00		;4:
	dcblw	fish_act,fishpat,$0470,0,$00		;5:
	dcblw	toge_act,togepat,$04a0,0,$00		;6:
	dcblw	shima_act,shimapat2,$4000,0,$00		;7:
	dcblw	jyama_act,jyamapat,$66c0,0,$00		;8:
	dcblw	musi_act,musipat,$04e0,0,$00		;9:
	dcblw	sjump_act,sjumppat,$04a8,0,$00		;10:
	dcblw	kamere_act,kamerepat,$249b,0,$00	;11:
	dcblw	kageb_act,kagebpat,$434c,0,$00		;12:
	dcblw	save_act,savepat,$26bc,0,$01		;13:
	dcblw	colichg_act,colichgpat,$26bc,0,$00	;14:

edit2tbl:
edit3tbl:
;zone0d
	dc.w	07
	dcblw	ring_act,ringpat,$26bc,0,$00		;01:
	dcblw	item_act,itempat,$0680,0,$00		;02:
	dcblw	sjump_act,sjumppat,$04a8,0,$00		;03:
	dcblw	colichg_act,colichgpat,$07bc,0,$00	;04:
	dcblw	kaiten_act,kaitenpat,$e000,0,$00	;05:
	dcblw	prodai_act,prodaipat,$e418,0,$00	;06:
	dcblw	buranko_act,buranko0dpat,$2418,0,$08	;07:

edit4tbl:
;zone00
	dc.w	18
	dcblw	ring_act,ringpat,$26bc,0,$00		;1:
	dcblw	item_act,itempat,$0680,0,$00		;2:
	dcblw	save_act,savepat,$047c,0,$01		;3:

	dcblw	colichg_act,colichgpat,$26bc,0,$00	;6:
	dcblw	taki_act,takipat,$23ae,0,$00		;7:
	dcblw	taki_act,takipat,$23ae,3,$02		;7:
	dcblw	shima_act,dai00pat,$4000,0,$01		;8:
	dcblw	shima_act,dai00pat,$4000,1,$0a		;8:
	dcblw	toge_act,togepat,$2434,0,$00		;10:
	dcblw	sisoo_act,sisoopat,$03ce,0,$00		;9:

	dcblw	sjump_act,banepat,$045c,0,$80		;3: banev
	dcblw	sjump_act,banepat,$0470,3,$90		;3: baneh
	dcblw	sjump_act,banepat,$045c,6,$a0		;3: banevr
	dcblw	sjump_act,banepat,$043c,7,$30		;3: bane45
	dcblw	sjump_act,banepat,$043c,10,$40		;3: bane45r

	dcblw	wasp_act,wasppat,$03e6,0,$00		;25   ""    ""
	dcblw	snail_act,snailpat,$0402,0,$00		;25   ""    ""
	dcblw	wfish2_act,wfish2pat,$041c,0,$00	;21   ""    ""



	dcblw	redz_act,redzpat,$0500,0,$00		;20: will change
	dcblw	bfish_act,bfishpat,$2530,0,$00		;21   ""    ""
	dcblw	seahorse_act,horsepat,$2570,0,$00	;22   ""    ""
	dcblw	skyhorse_act,horsepat,$2570,0,$00	;23   ""    ""
	dcblw	stego_act,stegopat,$23c4,0,$00		;24   ""    ""
	dcblw	wasp_act,wasppat,$032c,0,$00		;25   ""    ""
	dcblw	gator_act,gatorpat,$2300,0,$00		;26   ""    ""
	dcblw	bbat_act,bbatpat,$2350,0,$00		;27   ""    ""
	dcblw	oct_act,octpat,$238a,0,$00		;28   ""    ""

edit5tbl:
edit6tbl:
edit7tbl:
;zone08
	dc.w	15
	dcblw	ring_act,ringpat,$26bc,0,$00		;1:
	dcblw	item_act,itempat,$0680,0,$00		;2:

	dcblw	bgspr_act,frntlitpat,$e485,3,$21	;3:
	dcblw	wfall_act,wfallpat,$e415,4,$04		;4:
	dcblw	break_act,pltfrmpat,$4475,0,$00		;5:
	dcblw	colichg_act,colichgpat,$26bc,0,$00	;6:

	dcblw	redz_act,redzpat,$0500,0,$00		;20: will change
	dcblw	bfish_act,bfishpat,$2530,0,$00		;21   ""    ""
	dcblw	seahorse_act,horsepat,$2570,0,$00	;22   ""    ""
	dcblw	skyhorse_act,horsepat,$2570,0,$00	;23   ""    ""
	dcblw	stego_act,stegopat,$23c4,0,$00		;24   ""    ""
	dcblw	wasp_act,wasppat,$032c,0,$00		;25   ""    ""
	dcblw	gator_act,gatorpat,$2300,0,$00		;26   ""    ""
	dcblw	bbat_act,bbatpat,$2350,0,$00		;27   ""    ""
	dcblw	oct_act,octpat,$238a,0,$00		;28   ""    ""

;------------------------------------------------------------------------------
	align
;------------------------------------------------------------------------------
	end


edit2tbl:
	dc.w	25
	dcblw	ring_act,ringpat,$26bc,0,$00		;1:
	dcblw	item_act,itempat,$0680,0,$00		;2:
	dcblw	sjump_act,sjumppat,$0523,0,$00		;3:
	dcblw	fish2_act,fish2pat,$2486,0,$08		;4:
	dcblw	mogura_act,mogurapat,$84a6,2,$00	;5:
	dcblw	yari_act,yaripat,$03cc,0,$00		;6:
	dcblw	yari_act,yaripat,$03cc,3,$02		;7:
	dcblw	box_act,boxpat,$43de,0,$00		;8:
	dcblw	switch2_act,switch2pat,$0513,0,$00	;9:
	dcblw	toge_act,togepat,$051b,0,$00		;10:
	dcblw	dai_act,udaipat,$43bc,0,$04		;11:
	dcblw	dai3_act,dai3pat,$43e6,0,$01		;12:
	dcblw	dai3_act,dai3pat,$43e6,1,$13		;13:
	dcblw	dai3_act,dai3pat,$43e6,0,$05		;14:
	dcblw	kazari_act,kazaripat,$443e,0,$00	;15:
	dcblw	dai3_act,dai3pat,$43e6,2,$27		;16:
	dcblw	dai3_act,dai3pat,$43e6,3,$30		;17:
	dcblw	kassya_act,kassyapat,$03f6,0,$7f	;18:
	dcblw	uni_act,unipat,$0467,0,$00		;19:
	dcblw	awa_act,awapat,$8348,19,$84		;20:
	dcblw	mizu_act,mizupat,$c259,2,$02		;21:
	dcblw	mizu_act,mizupat,$c259,9,$09		;22:
	dcblw	bou_act,boupat,$43de,0,$00		;23:
	dcblw	ben_act,benpat,$4328,0,$02		;24:
	dcblw	save_act,savepat,$26bc,0,$01		;25:

*	dcblw	dai4_act,dai4pat,$41f0,4,$80		;25:
edit3tbl:
	dc.w	18
	dcblw	ring_act,ringpat,$26bc,0,$00		;1:
	dcblw	item_act,itempat,$0680,0,$00		;2:
	dcblw	hachi_act,hachipat,$0444,0,$00		;3:
	dcblw	toge_act,togepat,$051b,0,$00		;4:
	dcblw	sjump_act,sjumppat,$0523,0,$00		;5:
	dcblw	mfire_act,firepat,$0345,0,$00		;6:
	dcblw	fblock_act,fblockpat,$4000,0,$00	;7:
	dcblw	myogan_act,yoganpat,$63a8,0,$00		;8:
	dcblw	yogan2_act,yogan2pat,$63a8,0,$00	;9:
	dcblw	box_act,boxpat,$42b8,0,$00		;10:
	dcblw	yado_act,yadopat,$247b,0,$00		;11:
	dcblw	bryuka_act,bryukapat,$42b8,0,$00	;12:
	dcblw	dai_act,daipat,$02b8,0,$00		;13:
	dcblw	break2_act,break2pat,$62b8,0,$00	;14:
	dcblw	yoganc_act,yogancpat,$8680,0,$00	;15:
	dcblw	bat_act,batpat,$04b8,0,$00		;16:
	dcblw	imo_act,imopat,$24ff,0,$00		;17:
	dcblw	save_act,savepat,$26bc,0,$01		;18:
edit4tbl:
	dc.w	15
	dcblw	ring_act,ringpat,$26bc,0,$00		;1:
	dcblw	item_act,itempat,$0680,0,$00		;2:
	dcblw	elev_act,elevpat,$4000,0,$00		;3:
	dcblw	break2_act,break2pat,$44e0,2,$00	;4:
	dcblw	shima_act,z4daipat,$4000,0,$00		;5:
	dcblw	pedal_act,pedalpat,$4000,0,$00		;6:
	dcblw	step_act,steppat,$4000,0,$00		;7:
	dcblw	fun_act,funpat,$43a0,0,$00		;8:
	dcblw	sisoo_act,sisoopat,$0374,0,$00		;9:
	dcblw	sjump_act,sjumppat,$0523,0,$00		;10:
	dcblw	mfire_act,firepat,$0480,0,$00		;11:
	dcblw	bgspr_act,hassyapat,$44d8,0,$00		;12:
	dcblw	brobo_act,brobopat,$0400,0,$00		;13:
	dcblw	uni_act,unipat,$2429,0,$00		;14:
	dcblw	save_act,savepat,$26bc,0,$01		;15:
edit5tbl:
	dc.w	15
	dcblw	ring_act,ringpat,$26bc,0,$00		;1:
	dcblw	item_act,itempat,$0680,0,$00		;2:
	dcblw	toge_act,togepat,$051b,0,$00		;3:
	dcblw	sjump_act,sjumppat,$0523,0,$00		;4:
	dcblw	aruma_act,arumapat,$04b8,0,$00		;5:
	dcblw	signal_act,signalpat,$0000,0,$00	;6:
	dcblw	bobin_act,bobinpat,$0380,0,$00		;7:
	dcblw	kani_act,kanipat,$0400,0,$00		;8:
	dcblw	hachi_act,hachipat,$0444,0,$00		;9:
	dcblw	yado_act,yadopat,$247b,0,$00		;10:
	dcblw	shima_act,z5daipat,$4000,0,$00		;11:
	dcblw	dai2_act,dai2pat,$4000,0,$00		;12:
	dcblw	switch2_act,switch2pat,$0513,0,$00	;13:
	dcblw	imo_act,imopat,$24ff,0,$00		;14:
	dcblw	save_act,savepat,$26bc,0,$01		;15:
edit6tbl:
	dc.w	29
	dcblw	ring_act,ringpat,$26bc,0,$00		;1:
	dcblw	item_act,itempat,$0680,0,$00		;2:
	dcblw	brobo_act,brobopat,$0400,0,$00		;3:
	dcblw	uni_act,unipat,$0429,0,$00		;4:
	dcblw	imo_act,imopat,$22b0,0,$00		;5:
	dcblw	buranko_act,fetamapat,$4391,2,$07	;6:
	dcblw	haguruma_act,hagurumapat,$c344,00,$e0	;7:
	dcblw	dai_act,daipat,$22c0,2,$28		;8:
	dcblw	switch2_act,switch2pat,$0513,0,$00	;9:
	dcblw	pata_act,patapat,$4492,0,$03		;10:
	dcblw	pata_act,yukafpat,$04df,0,$83		;11:
	dcblw	noko_act,nokopat,$43b5,0,$02		;12:
	dcblw	break2_act,break2pat,$43f5,0,$00	;13:
	dcblw	dai_act,daipat,$4460,3,$39		;14:
	dcblw	dai4_act,dai4pat,$22c0,0,$00		;15:
	dcblw	door_act,doorpat,$42e8,0,$00		;16:
	dcblw	dai4_act,dai4pat,$22c0,1,$13		;17:
	dcblw	noko_act,nokopat,$43b5,0,$01		;18:
	dcblw	dai4_act,dai4pat,$22c0,1,$24		;19:
	dcblw	noko_act,nokopat,$43b5,2,$04		;20:
	dcblw	dai4_act,dai4pat,$22c0,1,$34		;21:
	dcblw	yukae_act,yukaepat,$44c3,0,$00		;22:
	dcblw	fire6_act,fire6pat,$83d9,0,$64		;23:
	dcblw	fire6_act,fire6pat,$83d9,11,$64		;24:
	dcblw	ele_act,elepat,$047e,0,$04		;25:
	dcblw	yukai_act,yukaipat,$42f0,0,$00		;26:
	dcblw	scoli_act,scolipat,$8680,0,$11		;27:
	dcblw	buta_act,butapat,$2302,0,$04		;28:
	dcblw	save_act,savepat,$26bc,0,$01		;29:

*	dcblw	ring_act,playpat,$0780,50,$00		;28:
*	dcblw	usa_act,usapat,$0448,0,$00		;5:
*	dcblw	mawaru_act,mawarupat,$4348,16,$00	;7:

edit7tbl:
	dc.w	02	*13
	dcblw	ring_act,ringpat,$26bc,0,$00		;1:
	dcblw	ring_act,ringpat,$26bc,8,$00		;2:
*	dcblw	bobin_act,bobinpat,$0380,0,$00		;2:
*	dcblw	usagi_act,flicpat,$05a0,0,$0a		;3
*	dcblw	usagi_act,flicpat,$05a0,0,$0b		;4
*	dcblw	usagi_act,flicpat,$05a0,0,$0c		;5
*	dcblw	usagi_act,usagipat,$0553,0,$0d		;6
*	dcblw	usagi_act,usagipat,$0553,0,$0e		;7
*	dcblw	usagi_act,pengpat,$0573,0,$0f		;8
*	dcblw	usagi_act,pengpat,$0573,0,$10		;9
*	dcblw	usagi_act,azarpat,$0585,0,$11		;10
*	dcblw	usagi_act,fbutapat,$0593,0,$12		;11
*	dcblw	usagi_act,niwapat,$0565,0,$13		;12
*	dcblw	usagi_act,risupat,$05b3,0,$14		;13

Warto zwrócić uwagę na tę grupę kodu:

	dcblw	redz_act,redzpat,$0500,0,$00		;20: will change
	dcblw	bfish_act,bfishpat,$2530,0,$00		;21   ""    ""
	dcblw	seahorse_act,horsepat,$2570,0,$00	;22   ""    ""
	dcblw	skyhorse_act,horsepat,$2570,0,$00	;23   ""    ""
	dcblw	stego_act,stegopat,$23c4,0,$00		;24   ""    ""
	dcblw	wasp_act,wasppat,$032c,0,$00		;25   ""    ""
	dcblw	gator_act,gatorpat,$2300,0,$00		;26   ""    ""
	dcblw	bbat_act,bbatpat,$2350,0,$00		;27   ""    ""
	dcblw	oct_act,octpat,$238a,0,$00		;28   ""    ""

Te wiersze kodu znajdują się w bloku, który tworzy listę debugowania Strefy Hidden Palace z wcześniejszej kompilacji. Zawartość listy wydaje się być identyczna z faktycznie skompilowaną wersją w pamięci ROM; jednak daje nam informacje o obiektach w Strefie, które mogły być wcześniej nieznane:

  • Redz to czerwony badnik T-rex, który pojawia się w Hidden Palace.
  • Bfish to skaczący rybny badnik, którego nie używał prototyp Simona Wai.
  • Seahorse to Aquis, morski badnik, który ostatecznie był w Strefie Oil Ocean.
  • Skyhorse jest najprawdopodobniej drugim obiektem Aquis na liście debugowania Hidden Palace (wersja, która wystrzeliwuje nieszkodliwy pocisk).
  • Stego to badnik triceratops, którego nie używał prototyp Simona Wai.
  • Wasp to Buzzer, pszczoła badnik, która znajduje się w Emerald Hill we wszystkich znanych wersjach „Sonic 2”. W tym prototypie ma również miejsce na liście debugowania Hidden Palace.
  • Gator to aligator/krokodyl badnik, którego nie używa prototyp Simona Wai.
  • Bbat to nietoperz bombardujący, który pojawia się w Strefie Hidden Palace.
  • Oct to Octus, ośmiornicowy badnik, który ostatecznie był w Strefie Oil Ocean.

Te same wiersze są zduplikowane na liście debugowania Emerald Hill, ale nie są używane, ponieważ gra jest poinformowana, że lista debugowania Emerald Hill będzie zawierała 18 wpisów, a wszyscy wrogowie z Hidden Palace znajdują się po wpisie numer 18.

Ten fragment nieskompilowanego kodu wskazuje również, że kolejność stref obecna w tej kompilacji zostanie zmieniona nawet na tym wczesnym etapie. Lista debugowania Emerald Hill jest oznaczona jako Strefa 00, co oznacza Zielone Wzgórze w tej kompilacji, ale Emerald Hill w późniejszych kompilacjach. Podobnie Hidden Palace jest oznaczony jako Strefa 08, gdzie znajduje się w późniejszych kompilacjach i finalnie.

Drugi zestaw etykiet editXtbl wydaje się odpowiadać listom debugowania „Sonic 1”, ale nie pasuje dokładnie do żadnej istniejącej wersji. Warto zauważyć, że listy edit2tbl i edit6tbl mają wpisy poprzedzone gwiazdkami, które nie pojawiają się w ostatecznej wersji gry. Wpisy oznaczone gwiazdką w edit7tbl istnieją tylko w Sonic 1 REV00.

Misc. Leftovers/Earlier Versions of Objects

Inside the ROM, mixed in with the symbol tables and debug mode source code is what appears to be leftover RAM contents from the assembler that includes additional symbols, and also assembled code. What should be noted is that the data is from a previous build, and some objects do indeed have different code.

Emerald Hill Zone Boss

Differences include different positioning, a lack of hitbox for the drill, and a weird bobbing movement for the ship's body. The wheels also do not detect floor collision until they fall off the body.