Как выглядит игрушка соника

Обновлено: 27.04.2024

Меха Соник (англ. Mecha Sonic) — неигровой персонаж в серии игр «Sonic the Hedgehog». Это робот, созданный доктором Эггманом по образцу ежа Соника. Он отличается от хорошо известного Метал Соника. На самом деле, в различных играх серии было несколько моделей Меха Соников. Хотя в японских источниках они все широко известны под данным названием, многие из этих моделей изначально не были названы так в англоязычных источниках.

Содержание

Появления в играх

Основная статья: Сильвер Соник.

Sonic the Hedgehog 2 (16-бит)

Sonic & Knuckles

Основная статья: эггмобиль доктора Эггмана и сражается как обычно. Это финальная битва с боссом в истории ехидны Наклза, в которой он использует Мастер изумруд, дабы войти в свою супер форму.

Sonic the Fighters

Sonic the Hedgehog Pocket Adventure

Меха Соник — пятая версия Меха Соника, основанная на версии, ранее замеченной в игре «Sonic the Hedgehog 2». Появляется как босс в Sonic Adventure

Меха Соник — предположительно шестая версия Меха Соника, которого можно увидеть в стазисной капсуле на базе доктора Эггмана. Он напоминает вторую версию Меха Соника.

Другие появления

Манга Shogakukan

В манге Меха Соник появляется в 12 главе Shogakukan Sannensei и играет ту же роль, что и в игре «Sonic the Hedgehog 2».

Archie Comics

В данной серии комиксов Меха Соник и Сильвер Соник отличаются друг от друга.

Метал Соник/Шард

В своём первом появлении Метал Соник доктора Роботника (версия из игры «Sonic the Hedgehog CD») был ошибочно идентифицирован как Меха Соник. В более поздних выпусках данная ошибка была исправлена. Однако после того, как персонаж был возрождён в качестве Шарда, он также был назван «оригинальным Меха Соником», дабы отличить его от других роботов, созданных доктором Эггманом.

Меха Соник (Robian)

Роботник сумел поймать Соника, благодаря ласке Наку а затем роботизировал его и взял под свой контроль в 39 выпуске комикса. Меха Соник, как его назвали, был отправлен в Банни Раббот , и ехидну Наклза , и он продолжал сеять разрушения в деревне, пока у Сильвер Соник 1.0

Сильвер Соник был отдельным роботом, появившимся в мини-серии «Сага о Яйце смерти» от « Sonic Quest ». Это была гигантская роботизированная версия Соника с серебристым телом, красно-чёрными глазами и мощными стальными кулаками, с которыми ёж Соник сражался на борту Яйца смерти. Он победил его, поджарив электронику электричеством из разрезанных кабелей. Позже он заполз вовнутрь и взял управление на себя, чтобы сразиться с Роботником в его боевой броне. Соник покинул робота, когда сбегал из Яйца смерти.

Сильвер Соник 2.0

Сильвер Соник 2.0 — это уменьшенная копия первой версии Сильвер Соника. Его послали атаковать ежа Шэдоу послали за изумрудом хаоса , робот попытался напасть на него, но ёж с лёгкостью уничтожил его.

Игры Соник

Соник – легендарный ежик, придуманный компанией Сега, чтобы представлять ее лицо на рынке видеоигр. Шустрый синий Соник противопоставлялся Марио, который был лицом компании Ниндендо. Соник очень быстро бегает и умеет, свернувшись в клубок, преодолевать самые сложные виражи. Игры Соник динамичные и интересные, с яркой графикой и простым, но увлекательным сюжетом. Мы разместили здесь как классические игрушки, которые развлекают геймеров уже много лет, так и самые новые приключения этого ежика. Чего только Соник не делает в этих новых играх. Он гоняет на мотоцикле, как настоящий профи, летает на самолете и догоняет злодея Роботникса на серф доске! В некоторых - Соник собирает монеты, делает это на легковой машине и грузовике. А когда ежик устает от активных свершений, он играет в пинбол или ищет отличия! Лучшие флеш игры про Соника собраны, чтобы развлечь вас, на этой страничке!

Майти и Рей: Соник 2

Соник Мегамикс

Пазлы Соник

Соник: меморина

Соник 2

Соник: тренировка памяти

Бег Соника

Соник на мотоцикле в пустыне

Соник бегалка

Гонки Соника

Прорыв птички 2

Соник спешит в туалет

Соник: раскраски

Нарисуй путь Сонику

Сбрось Соника в корзину

Прыжки Соника

Соник: пазлы

Соник: найди пары

Раскраски Соник

Приключения Соника

Как появился знаменитый Соник?

В процессе разработки внешнего вида персонажа, который должен был стать талисманом платформы Сега, отдел исследований и развития предлагал множество разных вариантов – это были и собака и кролик и разные другие довольно странные персонажи, которые, как правило, потом были использованы в играх, но для талисмана им не хватало простоты и обаяния. А вот у ежика Соника, которого придумал Наото Ошима, этого всего было в избытке, что и привело к тому, что он был выбран новым талисманом. Цвет Соника был выбран таким, чтобы соответствовать логотипу компании, а внешний вид ботинок подсмотрен в клипах Майкла Джексона. Интересный факт – то, что Соник не умеет плавать, произошло из-за ошибочной уверенности его разработчика в том, что все ежи не умеют этого делать. Пятнадцать человек, которые стали более подробно разрабатывать этого ответственного персонажа, переименовали себя в команду Соник. Был написан шикарный саундтрек к игре, который, наверняка, помнит каждый, кто хоть раз играл в нее. Кроме того, чтобы подогреть интерес к еще не вышедшей игре Соника повсеместно изображали на туристических автобусах, а специальные люди распускали слухи о подробностях этой игры.

Изначально, у Соника были острые клыки и подружка – человек по имени Мадонна. Команда Сега-Америка убрала эти детали, чтобы смягчить образ для более спокойной американской аудитории. Этот факт вылился в напряженное противостояние американской и японской команд. Сейчас сотрудники тех времен признаются, что, возможно, это было и к лучшему.

Игры Соник

Компания Сега возложила большие надежды на синего ежика, и он оправдал все самые смелые ожидания. Игры Соник - яркие, увлекательные и очень интересные. Вы можете поучаствовать в самых веселых приключениях Соника с помощью игр про него, лучшие из которых мы собрали на этой странице. Развлекайтесь вместе с легендой мира видео игр - Соником Супер-Ежиком!

Внешний вид Соника

Соник может выглядеть совершенно по-разному в зависимости от того, в каком типе медиа продукта он в данный момент появляется и в каком стиле художник решил его изобразить. В оригинальном дизайне Соник был округлым и низеньким, с короткими иглами, круглым телом и без радужной оболочки вокруг зрачка. Этот дизайн использовался в большинстве видеоигр. Во второй части игры Соник Суперёжик поменялось только соотношение размеров головы и тела от 1 к 2 до 1 к 2,5. Однако уже начиная с игры Приключения Соника (1998) внешний вид героя сильно изменился. Юджи Уекава нарисовал ежика более высоким, с длинными ногами и менее круглым телом. К этому прибавились длинные иглы и зеленые глаза. В дальнейшем в разнообразных комиксах и мультфильмах художники придерживались одной из этих двух вариаций, допуская мелкие изменения, разрешенные официальной инструкцией по изображению персонажа.

Интересные факты о Сонике

  • Существует геном, названный в честь Соника – Супер Ежика
  • В 1993 году Соник стал первым персонажем из видео игр, который появился на параде в честь дня Благодарения.
  • Вторым стал покемон Пикачу. В 2011 году Соник снова участвовал в параде и даже возглавлял его.
  • Если игрок надолго оставляет Соника без внимания в первой игре – Соник проявляет нетерпеливость и притопывает ногой. А в игре Соник CD в случае, если игрок не совершает с Соником никаких действий в течение трех минут, Соник произносит фразу «Я отчаливаю!» и выпрыгивает из границ видимого на экране. После чего появляется экран с надписью Game Over.
  • Первое появление Соника в играх было не в игре Соник Супер Ежик, а в игре Рэд Мобайл.
  • Во всех классических играх про Соника можно увидеть, что веки Соника того же цвета, что его руки и морда. Соник появился в качестве эпизодического (но играбельного) персонаж в бонусном уровне Рождественских Ночей. Это было первое появление Соника в трехмерной игре.
  • Любимая еда Соника – острые хот-доги с перцем чили.
  • В игре Соник Раш если нажать на Соника стилусом он будет хлопать в ладошки, прыгать вперед и назад и крутить лапами, как если бы он разминался.
  • Изначально предполагалось, что у Соника будут большие клыки. После того, как разработчикам и дизайнерам пришлось «смягчить» образ Соника для западного рынка, клыки остались, но их стало видно только когда рот Соника открыт. В изначальной версии их должно было быть видно даже при закрытой пасти.
  • В игре Литтл Биг Плэнет игрок может переодеть своего персонажа в Соника.
  • Возраст Соника никогда не был определен однозначно. В переводе из японской документации значится, что ему 10 лет, в технических бумагах – 18. В игре Соник Джем – ему 16, а в Соник Чэннел упоминается, что ему 15.
  • В японских версиях игр, Соник демонстрирует изрядные познания в английском языке, гораздо большие чем у других персонажей, ведь он единственный, кто говорит на английском. Это, вероятно, было сделано, чтобы подчеркнуть «крутость» Соника, ведь английский язык считается «крутым» в Японии.
  • Соник – единственный персонаж, который научился с пользой для себя применять Кристаллы Хаоса и трансформироваться с помощью них в Супер Соника.
  • В 2011 году в геймерском рейтинге Гиннесса Соник занял 10е место в списке 50 самых крутых персонажей видео игр. Марио занял первое место.
  • Всегда, когда Соник появляется в составе какой-либо музыкальной группы, он выступает в роли гитариста. Возможно, что Соник в играх двигается со скоростью, превышающей скорость света. Однажды он утверждает, что «Скорость света – это медленно и преодолеть ее – не проблема». Однако, вполне возможно, что это всего лишь шутка. Соник постоянно был преследуем чем-либо или кем-либо в разных играх – китом, грузовиком, шипастыми колесами, гигантским аллигатором, огненным торнадо, черной дырой и вертолетом. Единственное, от чего он не смог убежать, была черная дыра.
  • Похоже, что Соник и его друзья могут дышать в космосе, что показано во многих играх. Однако под водой он дышать не может.
  • Все машины, на которых когда-либо ездил Соник – спортивные кабриолеты. А все машины Эми – ретро автомобили.
  • Команду НБА – СуперСоники из Сиэттла часто называют ежиками.
  • Между 1993 и 1997 годами Сега спонсировала японскую футбольную команду и Соник был изображен на их униформе.
  • В некоторых играх иголки Соника двигаются в такт его движениям.
  • В современных играх, когда Соник крутится, вокруг него возникает голубое свечение.
  • Рок группа «День, который стоит запомнить» исполняет песню про Соника со словами «Я буду Соником»
  • Изначально Соник был цвета морской волны (это можно увидеть на ранних эскизах персонажа), но потом его перекрасили в голубой, чтобы его фигура не сливалась с морем в Грин Хилл. Этот факт объясняет то, что персонаж Классический Соник не темно-голубой, а слегка голубой в игре Поколения Соника.

Вот как появился этот, наверное, самый знаменитый в истории ежик и какие изменения претерпевал его внешний вид. В играх Соник, в которые вы можете играть на этой странице прямо сейчас, вы встретите самые разные варианты того, как можно нарисовать этого героя. Какую бы игру Соник онлайн бесплатно вы ни выбрали, забавный шустрый ежик и его друзья повеселят вас на славу!


Метал Соник (англ. Metal Sonic, яп. メタルソニックMetaru Sonikku) — является вторичным антагонистом в серии игр «Sonic the Hedgehog». Он — злая роботизированная версия ежа Соника и, несомненно, самое смертоносное творение доктора Эггмана, построенное с единственной целью уничтожить синего ежа. Очень хорошо показавший себя во время операций Эггмана на маленькой планете, Метал Соник столкнулся с Соником в битве и проиграл, хотя он неоднократно возвращался, чтобы бросить вызов синему ежу и его друзьям. Смоделированный с целью максимально точно скопировать Соника, он не только полностью напоминает его копию, но также может имитировать его движения и достигать скоростей, соответствующих и даже превышающих скорость синего ежа.

В то время как в основном он служит послушным и молчаливым слугой Эггмана, Метал Соник — это интеллектуальная машина с очень тёмной стороной. Хладнокровный, агрессивный и безжалостный убийца, он одержим тем, чтобы доказать своё превосходство над Соником и устранить его навсегда до такой степени, что он не раз восставал против Эггмана, чтобы достичь своей цели. Однако в конце концов он всегда терпит неудачу. По сей день Метал Соник продолжает оставаться одним из самых грозных врагов синего ежа.

Содержание

Внешний вид

Он был создан по образу ежа Соника и, поэтому, в основном, сделан из синего металла. У него есть черное круглое углубление в груди желтого цвета, отражающим персиковую кожу на груди Соника. Его голова имеет металлические тупые плавники, напоминающие иглы Соника, и пару треугольных ушей. У Метал Соника морда, плечевые пластины, предплечья, ноги и пальцы сделаны из серебристого металла. Ладони у него чёрные, а тыльная сторона ладоней имеет квадратные жёлтые пластины. Его предплечья и голени сделаны из того же синего металла, как и голова и тело, и у него красные ступни с белыми полосками, которые напоминают ботинки Соника. В качестве глаз выступают оптические датчики с чёрной склерой и красными радужками. Нос представляет собой отдельную деталь, напоминающую шип.

После игры «Sonic Rivals 2», он получил небольшое обновление в дизайне, которое сделало его выше и дало ему более эллипсоидное тело. Он также получил более детальные руки, блестящую синюю краску, суставы на руках и ногах и более острые глазницы.

Личность

Несмотря на то, что он построен так, чтобы соответствовать ежу Сонику во всех аспектах, Метал значительно отличается от своего органического аналога с точки зрения личности. Вместо того, чтобы веселиться, наслаждаться жизнью и отрываться, он является жестокой, агрессивной, хладнокровной и умной машиной для убийства с большим комплексом превосходства. Однако с самого начала у него была привычка подражать жесту Соника, если не в насмешливой манере. Ещё одна заметная черта Метала заключается в том, что он не может говорить (не мог вплоть до Sonic Heroes).

В то время как обычно машины Эггмана являются безмозглыми роботами, Метал Соник обладает искусственным интеллектом, который даёт ему разум (хотя он всё ещё ограничен программированием). Эта черта, однако, была использована им только для достижения его тёмных целей разрушения и господства и позволила его программированию развиваться дальше того, что было задумано, в несколько раз. В большинстве случаев Метал лишён эмоций и полностью подчиняется доктору Эггману. Однако под этим фасадом скрывается глубокая жажда мести. Когда он сталкивается с врагом, робот обычно остаётся тихим и холодно серьезным, что делает его тихим убийцей в буквальном смысле.

Самой доминирующей чертой Метал Соника является его ненависть и одержимость ежом Соником. Будучи запрограммированным с единственной целью превзойти и уничтожить синего ежа, робот одержим верой в то, что он превосходит Соника во всех параметрах. Самое большое его желание — любым образом доказать настоящему Сонику, что он лучше его во всём и в конце концов победить его раз и навсегда. Когда он сталкивается с синим ежом, Метал бросает все свои силы на уничтожение Соника; ничто другое, похоже, не имеет значения для него, кроме того, чтобы доказать свое превосходство над соперником. Хотя он, как известно, утверждает, что у него есть другие мотивы, его действия, даже когда он пожелал мирового господства, можно транслировать на его желание доказать, что он превосходит Соника, и, следовательно, всех других.

Поскольку Метал Соник продолжал терпеть неудачу в своих попытках победить Соника, его желание победить превратилось в жгучую ненависть к своему двойнику, что только сделало его более решительным победить синего ежа, даже если это означало идти против своего создателя. Например, после того, как он был избит Соником на Маленькой планете и вернулся на Землю примерно через год, Метал развил смертельную злобу против синего ежа и стремился свести счёты, дойдя до того, чтобы бросить вызов ежу на матч-реванш их первого поединка. Однако с каждым поражением ненависть Метал Соника к двойнику только усиливалась.

В игре «Sonic Heroes» ненависть и желание Метала победить Соника достигли точки, которая позволила ему выйти за пределы своей первоначальной программы и полностью раскрылась. На этом пике своей одержимости он показал себя безжалостным, властным, высокомерным и хитрым негодяем, не считающимся с другими. Кроме того, его желание доказать свое превосходство над всеми остальными привело к тому, что Метал Соник приобрёл ненасытную жажду власти и желание завоевать мир и установить господство роботов, с ним в качестве их правителя. Эти действия, однако, просто служили фронтом для первоначальной цели робота, которая заключалась в том, чтобы получить силу, необходимую для того, чтобы он мог, наконец, победить Соника. Однако, вскоре после его поражения в игре «Sonic Heroes», Метал был лишён своей независимости через подавление его поврежденной программы самим доктором, что привело к возвращению прежнего «я». Несмотря на это, независимость Метал Соника вновь проявилась в игре «Sonic Free Riders», когда он замаскировался под участника команды Дарк E-10000B, проникнув на соревнования незаметно для доктора Эггмана и выкрал у него данные, чтобы победить Соника в экстремальных гонках.

После того, как Метал Соник обрёл полную самостоятельность в игре «Sonic Heroes», сам робот пал в безумие и начал принимать извращенную веру в то, что он был настоящим Соником и что оригинальный синий ёж был его копией. Неизвестно, сохранил ли он эту часть своей личности после подавления своих эмоций.

Несмотря на многочисленные поражения и поколебленные убеждения, Метал Соник никогда не отказывается от своих целей и всегда будет преследовать их с непреклонной решимостью и примет любые необходимые меры, независимо от количества неудач. Пока конечная цель робота — победить настоящего Соника, он всегда будет возвращаться, чтобы встретиться с синим ежом и его друзьями, и Метал не успокоится, пока не выполнит свою цель уничтожить Соника навсегда и доказать всем что он лучший из них двоих раз и навсегда.

Силы и способности

Смоделированный как чрезвычайно точная имитация ежа Соника, Метал был сделан, чтобы копировать каждую способность синего ежа, включая его скорость и силу. Сам по себе робот может идти в ногу со своим двойником как в битве, так и в других областях, что делает его одним из самых мощных и талантливых творений доктора Эггмана. Когда-то он также считался самым сильным роботом, которого когда-либо изобретал Эггман, будучи только вторым после E-123 Омеги, который был назван самым мощным роботом в мире.

Метал разделяет суперскорость Соника, которую он может достичь с помощью мощной реактивной двигательной установки. С помощью этой системы робот способен превзойти ускорение синего ежа, который может мгновенно ускориться до скорости звука, и равняться скорости Соника; в нескольких случаях Метал даже способен превзойти скорость двойника, чья самая высокая известная максимальная скорость превышающей одного числа Маха. Даже тогда, робот может взять свою скорость ещё дальше. Перегружая свои цепи, он может увеличить свою скорость в четыре раза за ограниченное время. Используя определенные техники, Метал может даже мгновенно достичь скорости света. Кроме того, робот также обладает поразительной кинетикой, точностью и временем реакции Соника, чтобы соответствовать его скорости. Он отличными акробатическими навыками и ловкостью, а также улучшенными рефлексами, что позволяет ему избегать любых препятствий точными и деликатными движениями.

Будучи роботизированным клоном Соника, Метал может имитировать несколько методов подписи синего ежа. Наиболее заметные из них включают основной атакующий маневр Соника: Spin Attack, техника, в которой он сворачивается в ударный шар или режущий диск и направляет себя на свои цели. С ним, Метал Соник может прорываться или закапываться через примерно любое вещество, учитывая достаточную скорость. Очень искусный в использовании синим ежом этой техники, он может использовать несколько вариантов Spin Attack как для наземных, так и для воздушных манёвров, включая Spin Dash, Spin Jump, самонаводящуюся атаку и атаку со скоростью света. Кроме того, будучи созданным по образу Соника, Метал обладает способностью предсказывать движения ежа.

Как видно во время Гран-При Формула M .

Трансформации

Нео Метал Соник

Он принял форму Нео Метал Соника в игре «Sonic Heroes», скопировав данные других команд. В то время как большинство способностей Нео остаются неизвестными, он, как известно, способен изменять форму и имеет возможность стрелять молниями из своей руки.

Метал Маднес

Используя различные варианты Hyper-go-on от виспов, Метал может использовать их определенные способности для преобразования в определенную форму, такую как дрель, лазер или даже астероид, каждый из которых обладает своими уникальными способностями. До сих пор Метал Соник способен трансформироваться в голубой лазер, жёлтую дрель и астероид индиго. Тем не менее, эти трансформации требуют постоянного обеспечения сил Hyper-go-on для поддержания.

Слабости

Метал Соник имеет несколько недостатков дизайна, так как ряд его собственных методов может оказаться вредным для его внутренних систем. Например, его энергетическое поле, имея широкую область действия, использует так много энергии, что это уменьшает его подвижность. Существует также атака V. Максимальное ускорение, которое вызывает такую большую нагрузку на схемы робота, что после нее он проходит процесс перегрузки и, возможно, может уничтожить его, если она используется слишком долго.

Технические характеристики

  • Основной процессор: LIPS AI Эггмана на заказ. Расположенный в голове, этот процессор содержит три выходных канала. Внутренний процессор содержит систему, которая способна выполнять математически логические действия и одновременную аналоговую нейросвязь между всеми компонентами. Проще говоря, это позволяет Метал Сонику очень быстро реагировать на определенные ситуации.
  • Саб процессор: Чип Neo Super FX, содержащий пятиканальную систему, соединяющуюся со всеми основными компонентами корпуса, управляет системой управления мощностью. Следующая A Next Risk Chip серии III, с 8 основными портами нагрузки в каждом блоке глаза, проецирующие RGB изображение области.
  • Рама: Монокок из титана.
  • Цветное покрытие: Армированный синий металлический тектит.
  • Главный двигатель: 250 кс, четырёхклапанный двигатель Fusion Orgon.
    • Максимальная мощность: 55 л.с./6800 оборотов в минуту.
    • Максимальный крутящий момент: 7.54 кг-м/4000 оборотов в минуту.
    • Максимальная мощность: 256 киловатт.

    Интересные факты

    Общее


    • Он имеет рот на обложке игры «Sonic the Hedgehog CD». Интересно, что это даже относится к римейкам игры.
    • Файл справки, включенный в исходный порт ПК игры «Sonic the Hedgehog CD», утверждает, что некоторые ранние материалы относятся к нему как к Меха Сонику. Это считается ошибкой, так как последний никогда официально не назывался Метал Соником.
    • В западном выпуске игры «Sonic & Knuckles» он сражался с Соником, а позже в качестве финального босса в истории Наклза был Метал. В японской версии этот робот был вместо Меха Соника, и это было позже использовано для западной версии много лет спустя.
    • Хотя за него можно играть в игре «

    В этой статье я хочу разобрать внутреннее устройство легендарной игры Sonic the Hedgehog для приставки Sega Mega Drive, а также способы ее модификации или, как еще говорят, хакинга. Эта игра насчитывает порядка сотни хаков, включающих как действительно достойные работы (такие как Pana Der Hejhog или Sonic Remastered), так и странные и даже жутковатые (вроде An Ordinary Sonic ROM Hack). Чтобы понять, как их создавать, нужно разобраться, как писать на языке ассемеблера Motorola 68K (обычно игры для приставок тех времен писались именно на ассемблере), откуда взять дизассемблированный вариант игры и какую архитектуру имеет ее движок.

    Sonic hacks

    Дизассемблирование ROM-файлов для Sega осуществляется при помощи коммерческого дизассемблера и дебаггера IDA Pro. Затем происходит кропотливый процесс разметки, структурирования и причесывания сырого ассемблерного кода с использованием дебаггера (и смекалки). Этот процесс требует хорошего понимания технических особенностей платформы Sega Mega Drive и игр для нее.

    К счастью, на GitHub уже есть дизассемблированные и размеченные версии всех игр серии Sonic the Hedgehog, созданные энтузиастами при поддержке сайта Sonic Retro. Лучше всего размечен и структурирован исходный код именно первой игры серии. Эта версия кода находится в репозитории sonicretro / s1disasm и именно она будет разобрана в статье.

    Погружение в внутреннее устройство игрушки начнем с теории.

    Технический обзор приставки




    Sega Mega Drive (известная в США как Sega Genesis) оснащена 32-битным центральным процессором Motorola MC68000 (сокращенно Motorola 68K) и дополнительным звуковым сопроцессором Zilog Z80 (взамодействие с Z80 происходит через общую память). Объем оперативной памяти (RAM) – 64K. Разрешение экрана в основном режиме (в американской версии) – 320x224 пикселей.

    Использованный процессор Motorola 68K в свое время был достаточно распространен. Этот чип применялся в самых разных системах, от популярных домашних компьютеров и игровых приставок до космических шаттлов. Одна из модификаций Motorola 68K даже была установлена в легендарном Apple Macintosh.

    Графическая подсистема Mega Drive основана на видеоконтроллере Yamaha YM7101 и поддерживает аппаратную работу с двумя слоями фона и отрисовку до 80 спрайтов поверх них. Подробнее графика в игре будет разобрана далее; прочитать о графике в Sega Mega Drive отдельно можно в статье "Как работала графическая система Sega Mega Drive: Video Display Processor".

    Для сборки игры используется макроассемблер AS. Набор инструкций этой платформы совершенно не сложный и содержит всего 82 инструкции. Для сравнения: по подсчетам пользователя ResearchGate современный Intel Core i7 имеет 338 инструкций.

    Процессор имеет восемь 32-битных регистров общего назначения: D0 – D7 . Все эти регистры активно используются в играх для хранения промежуточных данных и в качестве операндов арифметических операций. Также существует восемь специальных адресных регистров A0 – A7 . Адресные регистры оптимизированы для хранения указателей на какие-либо объекты в памяти и их использование в некоторых операциях невозможно. Последний адресный регистр A7 по совместительству работает указателем стека и имеет алиас SP .

    Разберем основные инструкции Motorola 68K.

    Операция копирования

    move – скопировать данные из источника в приемник.

    При записи операнда в скобках вычисление происходит со значением по такому адресу в памяти:

    Такой режим адресации возможен только для адресных регистров ( a* ).

    Арифметические операции

    • add – прибавить значения источника к значению приемника.
    • sub – отнять значение источника от значения приемника.
    • mulu – беззнаковое умножение; muls – знаковое умножение.
    • divu – беззнаковое деление; divs – знаковое деление.

    Операции управления потоком выполнения

    • jmp , bra – безусловный переход.
    • jsr , bsr – вызов подпрограммы, rts – возврат из подпрограммы (аналоги call и ret в x86).

    Операции ветвления

    Для выполнения условных переходов в процессоре 68K используется регистр CCR (Condition Code Register). Инструкции cmp , tst и btst позволяют выставить биты (флаги) этого регистра, которые затем используются в операциях условного перехода beq , bne , bge , ble и других.

    • cmp – сравнить значения.
    • tst – сравнить значение с нулем.
    • btst – сравнить заданный бит с нулем.
    • beq / bne – перейти, если сравниваемые значения были равны/не равны.
    • bge / ble – перейти, если второе сравниваемое значение было больше/меньше первого.

    Более подробно изучить команды Motorola 68K вам поможет отличный мануал (с ужасным фоном и шрифтами) автора Марки Джестера, где каждая из команд разобрана максимально подробно.

    Сборка игры

    Репозиторий s1disasm содержит Python-скрипт, автоматически запускающий нужную версию ассемблера для текущей операционной системы со всеми необходимыми флагами. Также этот скрипт выполняет специфическую для игры Sonic the Hedgehog операцию "Kosinski compression", которая сжимает карты уровней и другие бинарные данные (чтобы они поместились в память картриджа).

    Все, что нужно сделать пользователю, это перейти в git-ветку AS ( git checkout AS ) и выполнить команду:

    Результатом выполнения скрипта должен стать готовый ROM-файл игры с названием s1built.bin . Этот файл можно запустить в вашем любимом эмуляторе Sega Mega Drive. Для macOS, например, рекомендуется использовать замечательный OpenEmu.

    Архитектура движка игры

    Начнем обзор с основной точки входа для сборки игры – файла sonic.asm . В нем находятся процедуры инициализации: ожидание готовности сопроцессора Zilog Z80 ( WaitForZ80 ), установки параметров видеопроцессора ( VDPSetupGame ) и проверка контрольной суммы. После инициализации игра выполняет подпрограмму GameInit и переходит в главный цикл MainGameLoop , задачей которого является считывание переменной глобального игрового режима и запуск соответствующему ему кода.

    Полный список глобальных переменных, используемых игрой вынесен в файл Variables.asm . Каждая переменная представляет собой константу со ссылкой на адрес в RAM, где должно храниться значение переменной.

    Глобальный игровой режим хранится в переменной v_gamemode . Список глобальных игровых режимов включает в себя:

    • 00 – экран "Sega",
    • 01 – титульный экран с Соником,
    • 08 – демо,
    • 0C – уровень,
    • 10 – special stage,
    • 14 – экран "Continue",
    • 18 – финальная заставка,
    • 1C – финальные титры,
    • 8C – титр уровня.

    Переменная v_gamemode определяет подпрограмму для главного цикла, которая должна исполняться в данный момент. Например, в режиме id_Title приставка будет исполнять подпрограмму GM_Title , а в режиме id_Level – GM_Level .

    Игровые параметры

    Многие переменные, объявленные в файле Variables.asm представляют интерес для хакинга. Рассмотрим для примера v_sonspeedmax , v_sonspeedacc и v_sonspeeddec .

    Изменяя значения, помещаемые в эти переменные в подпрограмме Sonic_Main , можно изменять динамические характеристики перемещения Соника: максимальная скорость, значение ускорения и торможения соответственно, получая интересные результаты:

    Дробные переменные хранятся в формате с фиксированной точкой, поэтому для получения реальных значений их необходимо разделить на 256. Так, ускорение Соника составит 0xC / 256 = 0.046875, а торможение – 0x80 / 256 = 0.5 (пикселей на игровой цикл в квадрате).

    Графика

    Графикой в Mega Drive занимается тайловый графический процессор Sega 315‑5313 (Video Display Processor, VDP). Конфигурирование VDP производится с помощью регистров, запись в которые производится через специальные адеса в памяти vdp_data_port и vdp_control_port . Изначальная конфигурация процессора устанавливается в подпрограмме VDPSetupGame , которая берет параметры по адресу VDPSetupArray . Однако, в каждом из глобальных игровых режимов, некоторые регистры выставляются повторно. Например, на игровых уровнях это делает подпрограмма GM_Level . Подробное описание функций всех регистров VDP приведено в вики Sega Retro.

    Для примера приведем скриншот игры с включенным режимом Low Color (нулевой бит регистра Mode Register 1 выставлен в ноль):


    Video Display Processor позволяет аппаратно работать с двумя фоновыми слоями – background (слой B) и foreground (слой A), а также со слоем спрайтов, которые отображаются поверх фона. Фоновые слои собираются из тайлов 8x8 пикселей с помощью карт тайлов. Спрайты также собираются из тайлов; максимальный размер спрайта – 4x4 тайла. Таким образом, максимальный размер аппаратного спрайта составляет 32x32 пикселя.

    Удаление кода из подпрограмм работы с фоновыми слоями ( LoadTilesAsYouMove , DrawChunks ) и спрайтами ( BuildSprites ) позволяет понять, какие из игровых объектов к какому слою относятся:


    Как видно из названия, подпрограмма LoadTilesAsYouMove занимается подгрузкой тайлов на фоновые слои по мере продвижения игрока по уровню. В игре Sonic the Hedgehog размер обоих тайловых плоскостей составляет 64x32 тайла или 512x256 пикселей.

    Графический процессор также позволяет устанавливать не только общее смещение фонового слоя, но и смещение его отдельных горизонтальных рядов тайлов, используя так называемую таблицу скроллинга. Эта возможность позволяет перемещать удаленные элементы фона медленнее, чем близкие. Таким образом создается эффект параллакса, который имитирует 3D-графику и придает сцене объем. Этот эффект используется почти во всех уровнях Sonic the Hedgehog.

    Эффект параллакса в фоновом слое уровня Marble Zone:

    Игровые объекты

    Движок игры выделяет 8192 байта в RAM на хранение состояния динамических объектов сцены. Вся эта информация хранится по смещению v_objspace . К динамическим объектам относится все объекты на уровне, кроме стен и пола. Примеры: Соник, враги Соника, мониторы с бонусами, кольца, пружины, Босс и так далее. При необходимости объекты отрисовывают себя в слое спрайтов при помощи подпрограммы DisplaySprite .

    Sonic game objects

    Размер данных состояния игрового объекта статичен и составляет 64 байта. Эта информация формирует структуру, поля которой могут быть получены с использованием макросов, объявленных в файле Constants.asm . Адрес структуры данных текущего обрабатываемого игрового объекта обычно заносится в регистр a0 . Таким образом, данные игрового объекта могут быть считаны так:

    • ObX(a0) , ObY(a0) – текущие координаты объекта в пикселях.
    • ObVelX(a0) , ObVelX(a1) – текущая скорость объекта в 1/256 пикселя за шаг.
    • obHeight(a0) , obWidth(a0) – высота и ширина объекта.
    • obSubtype(a0) – подтип объекта (пример: тип бонусного монитора).
    • obStatus(a0) – байт с флагами состояния объекта.
    • obRoutine(a0) – номер текущей подпрограммы объекта.

    Отметим, что система координат в игре типична для экранной графики и имеет ось X направленную вправо, и ось Y, направленную вниз.

    Подпрограмма ExecuteObjects вызывается на каждом шаге главного цикла уровня. Она последовательно вызывает программный код каждого из игровых объектов, присутствующих на сцене. Список указателей на программный код каждого из объектов задан в таблице в файле Object Pointers.asm . Программный код большей части объектов вынесен в отдельный файл в каталоге _incObj .

    Многие из объектов имеют по несколько подпрограмм, которые соответствуют разным этапам жизни объекта (например, только что созданный объект, объект в рабочем состоянии, "предсмертное" состояние). В этом случае номер подпрограммы, которую необходимо выполнять сейчас, хранится в поле obRoutine .

    При необходимости передвижения объекта с заданной скоростью вызывается специальная подпрограмма SpeedToPos . Она интегрирует скорость текущего объекта, прибавляя ее значение к его координатам.

    Хак: no-ring challenge

    В качестве примера реализуем довольно простой хак, который может понравиться самым ярым фанатам игры: no-ring challenge. Этот хак предлагает пройти игру без золотых колец. В результате, каждая атака Соника будет сразу убивать его и заставлять игрока проходить уровень заново (либо с точки сохранения).

    Перейдем в главную подпрограмму объекта "Кольцо" – Ring_Main и добавим в самое ее начало простейшую инструкцию прыжка ( bra ) на процедуру удаления кольца:

    С бонусными мониторами поступим так же. Главная подпрограмма объекта "Монитор" находится в файле 26 Monitor.asm . Тип монитора хранится в поле obSubtype размером 1 байт. Экспериментальным методом выяснено, что значение для монитора с кольцами равно 6. Добавим простую проверку типа монитора с помощью инструкции cmp и условный прыжок beq на процедуру его удаления в случае, если его тип равен шести:

    Можно убедиться, что в получившемся ROM'е кольца и бонусные мониторы с кольцами на уровнях будут отсутствовать, что усложнит прохождение. Патч целиком можно посмотреть на GitHub. Туда же выложен готовый бинарник на случай, если кто-то захочет поиграть в такую версию игры, не разбираясь со сборкой.

    Хак: притягивание колец

    В первой и второй играх серии бонусный щит только защищает игрока, но при этом не имеет никаких дополнительных функций. Попробуем его улучшить и добавить к нему возможность электрического щита из Sonic the Hedgehog 3 – притягивание колец.

    Алгоритм Sonic the Hedgehog 3

    Алгоритм, использующийся для этого эффекта, подробно описан в вики Sonic Retro. Если персонаж, обладающий электрическим щитом, находится ближе, чем в 64 пикселях от кольца по каждой из осей, кольцо переходит в режим намагниченности и начинает движение. В дальнейшем этот флаг больше не снимается с кольца. В режиме намагниченности кольцо ускоряется на 0.1875 за каждый шаг в сторону игрока, если оно уже движется в нужную сторону по данной оси. Если же кольцо движется от игрока, ускорение составляет 0.75.

    Разница в значениях предусмотрена для того, чтобы кольца с одной стороны не слишком перестреливали, но, с другой стороны, если перестрел уже случился либо если игрок движется быстро и резко оказывается с противоположной стороны, быстро "исправлялись" и меняли свое направление движения.

    Реализация алгоритма

    Изучим подробнее исполняемый код объекта "Кольцо", который находится в файле 25 & 37 Rings.asm . Список подпрограмм объекта:

    Кольцо имеет несколько жизненных этапов: Main – инициализация; Animate – обычное висение с анимацией вращения; Collect – момент сбора Соником; Sparkle – анимация искр при сборе Соником; Delete – удаление кольца. Для того, чтобы изменить поведение кольца в обычном его состоянии, смотрим в сторону подпрограммы ptr_Ring_Animate .

    Для хранения состояния намагниченности кольца отлично подойдет однобайтное поле obStatus . Анализ кода кольца показывает, что в этой версии игры флаги состояния для этого объекта не используются. Назначим нулевой бит obStatus (наиболее младший) ответственным за хранение флага намагниченности. Установка отдельного бита ячейки памяти будет возможна с помощью инструкции bset , а проверка, установлен ли он – с помощью инструкции btst .

    Добавим в начало подпрограммы Ring_Animate код, устанавливающий флаг намагниченности в случае, если игрок ближе к кольцу, чем на 64 пикселя по каждой оси:

    Реализация алгоритма предполагает разное ускорение в зависимости от того, летит кольцо в сторону игрока или нет, что по сути может быть представлено как сравнение знаков значений скорости кольца и разницы положений кольца и игрока. В псевдокоде такое сравнение может иметь примерно такой вид:

    Для простой реализации такого сравнения вспомним, что способ хранения знаковых целых чисел в большинстве процессоров (включая Motorola 68K) подразумевает возможность определить знак числа простым считыванием самого старшего бита, причем 0 будет обозначать положительное число, а 1 – отрицательное. Проверить равенство битов в байте можно с помощью операции исключающего "или" – XOR ( eor на Motorola 68K).

    Как уже было отмечено выше, дробные значения (включая скорость игровых объектов) хранятся в формате с фиксированной точкой, поэтому необходимые значения ускорения (0.1875 и 0.75) необходимо домножить на 256 (получив 48 и 192 соответственно).

    Реализуем процедуру притягивания колец:

    Для того, чтобы кольцо действительно осуществляло движение согласно установленным скоростям, необходимо добавить вызов упомянутой выше подпрограммы SpeedToPos :

    Собираем итоговый ROM игры, запускаем и — вуаля — фича из Sonic 3 доступна в Sonic 1!

    На GitHub можно просмотреть патч целиком, а также скачать получившийся бинарник.

    Заключение

    Эта статья является лишь базовым разбором методов модификации игры. Статья не рассматривает инструменты для редактирования уровней (SonED2, Chaos), создание новых персонажей, игровых объектов и механик. Также не рассмотрен симулятор/отладчик Motorola 68K EASy68K, который может помочь более пристально разобраться, как работает процессор Sega.

    Тем не менее, я получил большое удовольствие, покопавшись в кишках любимой игры детства. Надеюсь, этой статьей мне удастся разбудить в ком-то такую же ностальгию, к тому же черпать вдохновение для работы можно и из сотен уже реализованных хаков, и из последующих игр серии.


    Время бежит очень быстро, и в этом убеждаешься, когда узнаешь, что одному из героев видеоигр, с которыми многие из нас просиживали до утра, исполняется уже 30 лет. Кажется, что первая игра про скоростного синего ежа появилась совсем недавно, но нет — на носу, в июне, круглый юбилей Соника.

    С течением времени общий стиль прорисовки персонажа, некоторые его характеристики и даже заявленный возраст менялись. Сейчас Соник чуть более взрослый, что ли, персонаж сильно отличается от изначальной концепции. Но это все тот же герой. Под катом — история ежа, защищающего своих друзей от антагониста, доктора Роботника, и описание наиболее интересных игр с этими персонажами.

    Когда и почему Соник был создан?

    Компании Sega понадобился герой, который стал бы таким же популярным, как сантехник Марио, который в 90-х был одним из самых известных игровых персонажей. В апреле 1990-го года команда AM8 принялась за разработку. Придумали и реализовали персонажа художник Наото Осима, программист Юдзи Нака и дизайнер Хирокадзу Ясухара.

    Но не стоит думать, что ежик появился вдруг и сразу. До него команда придумала множество других героев, включая броненосца, кролика, пса и даже президента США Теодора Рузвельта. Его нарисовали как человека в пижаме, причем образ получился настолько удачным, что даже после выбора Соника в качестве протагониста второго персонажа решили не забывать, а сделать антагонистом, чуть изменив внешний вид, чтобы на Рузвельта уже не было похоже.

    На общем собрании, которое организовала Sega, решением большинства был выбран именно ежик. После этого оставалось придумать ему простое и запоминающееся имя. Сначала было предложено имя Нидлмаус.

    Изначально эскиз был черно-белым, но позже его раскрасили, причем сразу в те цвета, которые мы видим и сейчас. Имя заменили чуть позже на Соник. Стоит отметить, что изначально образ ежика был несколько пугающим — у него были острые клыки, которые торчали почти как у саблезубого тигра. Это была работа японцев, углы которой несколько сгладили американцы — они сделали протагониста более дружелюбным.

    Интересный момент — в ходе проработки характеристик персонажа был допущен один просчет. Один из разработчиков, отвечавший за физику главного героя, не знал, что ежи умеют плавать. Поэтому и Соник был лишен такой способности.

    Ежика сделали быстрым и нетерпеливым — такой персонаж не мог устоять на месте. Он нервничал, когда ему приходилось оставаться в бездействии, а в одной из игр он и вовсе убегал за пределы экрана, если игрок ничего не предпринимал в течение трех минут. Ну а что — играть нужно, а не ходить где-то.

    Чуть позже ежику добавили друзей — двухвостого лисенка, который умеет летать и ехидну Наклза, героя, который помогал пробивать стены, разрушать камни и выполнять прочие силовые задачи. Все они боролись с доктором Роботником.

    Самые известные игры с Соником

    С момента выхода первой игры про Соника мир увидело свыше 120 разных проектов франшизы — на самых разных платформах, от консолей до мобильных телефонов. Есть интересный нюанс — впервые Соник появился не в собственной игре, а в гоночной аркаде Rad Mobile. Там он висел в качестве украшения.

    Ну а теперь давайте вспомним игры про Соника.

    Sonic the Hedgehog


    Здесь он появился как самостоятельный и весьма нетерпеливый персонаж. На ежа он был не слишком похож, но геймерам протагонист очень понравился. Причем если Марио больше подходил для младшей возрастной категории (понятно, что после появления игры в нее играли и млад, и стар), то Соник уже позиционировался как более взрослый герой. Во многом именно благодаря Сонику компании Sega удалось быстро получить огромную часть рынка игр и консолей.

    Соник стал сенсацией, началом целой франшизы, в которую входили другие игры, комиксы, мультфильмы и даже фильмы.

    Sonic X-treme


    Эта игра должна была стать следующим большим шагом в истории Соника. Но, к сожалению, не стала. Тому есть несколько причин. Во-первых, геймеры ожидали уже иного, более «зрелого» Соника. Во-вторых, у разработчиков возникли проблемы с игровым движком Sonic Team. В-третьих, разработчики стали понимать, что игра получается не самой удачной и потеряли энтузиазм. Через несколько месяцев разработки один из ключевых членов команды тяжело заболел и выпал из процесса. Игру отменили. В последней попытке сделать хоть что-то Sega портировала изометрическую игру Sonic 3D Blast на Sega Saturn. Но ничего хорошего это не дало, игра не была эксклюзивом, а именно их, эксклюзивных игр серии Sonic, ждали владельцы консоли Sega Saturn.


    Это была гоночная игра, на выбор игрок получал десять персонажей серии игр Sonic the Hedgehog. Команде героев нужно было победить все того же доктора Роботника, не дав ему украсть Изумруды Хаоса, которые понадобились антагонисту для очередной попытки поработить мир.

    Игра была трехмерной, с неплохой графикой. Но вот управление было откровенно неудачным, его даже называли «попыткой пройти по льду в пьяном виде». Еще один недостаток — малое время прохождения, игра была ну очень короткой.

    Тем не менее, многим геймерам игра понравилась, поскольку в ней были скрытые трассы, секретные двери, сокращающие время прохождения и другие возможности. В общем, хитом продаж ее назвать было сложно, но запомнилась многим.

    Sonic the Fighters

    image

    Снова новый жанр для Соника — Sonic the Fighters является файтингом. Вышла игра в 1996 году на игровом автомате Sega Model 2B. Чуть позже ее портировали для PlayStation 2 и GameCube. На Saturn и эта игра не попала, поскольку ко времени выхода игры продажи консоли терпели катастрофу в США.

    Но игре было что показать — хотя бы потому, что здесь используется полигональная трехмерная графика. А еще в игре был мультиплеер. Базируется игра на движке Fighting Vipers, адаптированным для Соника. К слову, для этой игры разработчики создали двух новых героев, включая динамита Бина и белого медведя Барка. Используя чит-код, можно добиться появления секретного персонажа — кошки Хани.


    А это не одна игра, а сразу четыре. Разработчики взяли игры для Genesis, обновили их и представили в качестве пакета. Релиз состоялся для Sega Saturn в 1997 году. Скорее всего, игра была выпущена для поддержания интереса геймеров, поскольку популярность Соника стала понемногу убывать.

    В сборник вошли такие игры, как Sonic the Hedgehog, Sonic the Hedgehog 2, Sonic the Hedgehog 3 и Sonic & Knuckles (вместе с дополнениями Blue Sphere, Sonic 2 & Knuckles и Sonic 3 & Knuckles). Был и бонус — уровень «Sonic World», выполненный полностью в трёхмерной графике. Он давал возможность изучить историю игр про Соника с 1991 по 1997 годы.

    Sonic Jam стал достаточно успешным проектом, так что после него Sonic Team решила начать разработку полноценной трехмерной игры.

    Sonic Adventure


    После отказа от Saturn, Sega стала активно развивать Dreamcast. На этот раз для консоли был подготовлен проект Sonic Adventure, который получился действительно отличным. Игра представляет собой насыщенное и красочное приключение с большим количеством персонажей и шикарным игровым процессом.

    Это был полностью трехмерный платформер, первый в серии игр о Сонике. По Сюжету Соник с друзьями должны были вступить в борьбу с монстром Хаосом.

    Игра настолько понравилась геймерам, что было продано свыше 2,5 млн экземпляров — это лучший результат для Dreamcast, больше никакая другая игра для этой платформы не расходилась таким тиражом. В целом, это было реально новое слово в разработке игр.

    Sonic Heroes


    Еще один очень успешный проект серии игр про Соника. Подготовили игру специалисты Sonic Team из США. Издателем, как водится, выступила Sega. Sonic Heroes вышла сразу на GameCube, PlayStation 2 и Xbox, став одним из наиболее продаваемых тайтлов для всех платформ. Несмотря на то, что Nintendo была главным конкурентом Sega, игру все же выпустили и на GameCube.

    Игроку нужно было выбрать команду из трех персонажей для продвижения по игровому миру. Отличием этой части стало появление особых уровней, предназначенных для сбора Изумрудов Хаоса. Здесь же можно было набрать и дополнительные жизни.

    В целом, 2003 год, когда игра вышла (изначально лишь в Японии, годом позже — в других странах), стал очень успешным для франшизы Соника. В это время вышел анимационный сериал, фигурки героев стали раздавать в МакДональдс, вышло несколько других игр для разных платформ.


    Все эти игры, несмотря на некоторые проблемы, относились к периоду процветания франшизы. Потом что-то пошло не так. Компания Sega преобразовала Sonic Team в Sega Studios и начала работу с выпуска спин-оффа Sonic Adventure 2. Это была не самая плохая игра, но вот дальше команда столкнулась с кризисом. Из проекта ушел Юдзи Нака, руководство Sega стало оказывать сильнейшее влияние на Sega Studios, требуя перезагрузки франшизы. Из этого мало что получилось — у Соника начался период неудач.

    Возможно, перезагрузка и не была нужна. Так, в 2017 году появилась Sonic Mania, которая стала коммерчески успешным проектом. Она стала самой популярной игрой про Соника с момента расцвета серии на Sega Genesis. В то же время, это была игра в духе и стиле первых тайтлов про Соника без всяких попыток что-то там перезагрузить.

    Как бы там ни было, стоит надеяться на лучшее и ждать появления новых отличных игр про синего ежика, который может быстро бегать и с помощью друзей спасать мир.

    Читайте также: