Как прыгать в сонике на компьютере

Обновлено: 02.07.2024


От переводчика: части обзора имеют небольшой размер, поэтому решил переводить сразу по две части.

Ссылки на другие части серии:
Часть 1: твердые тайлы
Часть 2: бег
Части 5 и 6: потеря колец и нахождение под водой
Части 7 и 8: пружины и штуковины, суперскорости

Когда Соник находится в воздухе, он может ускоряться быстрее, чем на земле. В два раза быстрее, если быть точным: 0.09375. Назовём это значение air.

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

Кроме того, для замедления также нет отличий, при нажатии кнопки «влево» из горизонтальной скорости всегда будет вычитаться air, а при нажатии кнопки «вправо» air будет к ней добавляться.

Максимальная скорость Соника в воздухе такая же, как и на земле, и равна 6.

Гравитация имеет значение 0.21875 (grv). Эта величина добавляется к вертикальной скорости в каждом шаге, в котором Соник не находится на земле. Она заставляет его падать вниз при соскальзывании с обрыва и не позволяет ему бесконечно двигаться вверх при прыжке.

Максимальная вертикальная скорость

Похоже, что в игре Sonic 1 вертикальная скорость Соника никак не ограничена. При падении grv продолжает прибавляться к вертикальной скорости, бесконечно увеличивая её.

В Sonic CD введено ограничение, в ней Соник не может падать быстрее, чем 16 пикселей за шаг. Это ограничение важно, для того, чтобы Соник никогда не обгонял камеру и не пролетал через землю, потому что он мог двигаться так быстро, что даже не сталкивался с ней. Думаю, это ограничение ввели из-за увеличившейся высоты уровней, например в Collision Chaos, и бесконечной вертикальной шахты в Tidal Tempest. Без этого ограничения Соник мог бы разгоняться до огромных скоростей на некоторых участках, что могло привести к нарушению игрового процесса.


Сопротивление воздуха

На каждом шаге, при котором Соник находится в воздухе, для горизонтальной скорости Соника применяется специальная формула, но только при наличии определённых условий. Во-первых, вертикальная скорость должна быть отрицательной. Во-вторых, вертикальная скорость должна быть больше -4 (например, -3 или -3.5 больше -4). В-третьих, абсолютное значение горизонтальной скорости должно быть больше 0.125. Если эти условия выполняются, горизонтальная скорость умножается на коэффициент 0.96875.


На самом деле, это лишь приблизительный расчёт, и вот почему: поскольку оригинальные игры используют 2 байта для хранения значения скорости Соника, где первый — это пиксели, а второй — субпиксели, скорость 6.5 пикселей за шаг будет выражаться шестнадцатеричным значением $0680. В десятичной форме это 1664. Конечно же, Соник не движется со скоростью больше тысячи пикселей за шаг! 1 пиксель = $100 (256), половина пикселя = $80 (128). Поэтому в оригинальной игре сопротивление воздуха должно рассчитываться примерно так:


Если бы мы выполняли эти расчёты для относительно низких значений горизонтальной скорости, которые всегда будут меньше $20 (32), на горизонтальную скорость это почти не повлияло бы. Почему? Потому что при целочисленном делении любого числа меньше 32 на 32 результатом был бы 0. Поэтому в оригинальной игре перед расчётом сопротивления воздуха не нужно проверять, больше ли горизонтальная скорость определённого значения — если горизонтальная скорость равна или меньше $001F, то в любом случае ничего не произойдёт.

Поэтому более точно эмулировать сопротивление воздуха можно следующим образом:


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

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

Скорость прыжка

Сейчас мы к этому уже привыкли, но в момент выхода игры Sonic the Hedgehog существовало очень много игр, в которых использовалась фиксированная высота прыжка. Не важно, как быстро игрок отпускал кнопку прыжка — персонаж всё равно поднимался вверх на одинаковое количество пикселей. Такие игры, как Mario и Sonic были одними из первых, имеющих более гибкое и отзывчивое управление, обеспечивающее улучшенные ощущения от управления персонажем, а значит и гораздо интересный и щадящий игровой процесс.

Как устроена изменяемая высота прыжка?

При нажатии кнопки «вверх», когда Соник стоит на земле, вертикальная скорость становится равной -6.5 (jmp). В игре без изменяемой высоты прыжка после этого не выполнялось бы никаких последующих вычислений, за исключением добавления гравитации, и скорость персонажа постепенно бы уменьшалась под её воздействием. В результате получился бы прыжок длительностью ровно 1 секунду на высоту 100 пикселей. Такой тип прыжка получается, если игрок нажимает кнопку прыжка и удерживает её, пока Соник не достигнет верхней точки своей траектории. Но хитрость, создающая изменяемую высоту прыжка, заключается в отпускании кнопки.

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

В шаге, на котором компьютер обнаруживает нажатие кнопки прыжка, Соник на самом деле не двигается вверх. Поэтому в следующем шаге он может распознать отпускание кнопки прыжка и Соник начнёт двигаться вверх со скоростью -4, не передвинувшись вверх со скоростью jmp.

Проверка на отпускание кнопки прыжка выполняется перед перемещением Соника в новое положение и прибавлением grv к вертикальной скорости.

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

Тейлс прыгает так же, как и Соник, а Наклз прыгает немного ниже, потому что имеет немного меньшее значение jmp, -6.



Когда Соник начинает вращаться при нажатии на крестовине, но больше не может ускоряться. Как бы игрок долго и сильно не нажимал кнопку в направлении движения, он будет вести себя, как будто игрок ничего не нажимает. Единственное, что задействуется в этом случае — это трение, здесь оно имеет значение 0.0234375 (половина от нормального), поэтому кажется, что Соник катится плавно, как колесо или мяч. В действительности Mega Drive вычисляет трение при вращении, деля пополам значение нормального трения. Если использовать Game Genie для изменения значения трения, то трение вращения всегда будет в два раза меньше.

Однако Соник всё-таки может замедляться при вращении. При нажатии кнопки в направлении, противоположном его движению, горизонтальная скорость будет уменьшаться на 0.125. Кроме того, в отличие от поведения во время ходьбы, трение при вращении продолжает действовать, даже если игрок нажмёт кнопку в направлении движения. Поэтому в действительности при замедлении горизонтальная скорость снижается в каждом шаге на 0.125+0.0234375, или на 0.1484375.

Странно, что та же аномалия замедления, как и при беге, возникает при вращении. Если абсолютное значение горизонтальной скорости меньше 0.1484375, то это значение вычитается, вместо приравнивания горизонтальной скорости к нулю, и становится равным 0.5 в противоположном направлении. Поэтому Соник неожиданным образом может при вращении повернуться, даже если не может ускориться! Эта ошибка исправлена в Sonic 3 and Knuckles, наверно, сами программисты сочли такое поведение нежелательным.

Максимальная скорость

(Примечание: на данный момент это проверено для Sonic 1 и 2. Пока неизвестно, действительно ли это для Sonic 3K или Sonic CD.)
Несмотря на то, что Соник не может катиться быстрее сам по себе, это не означает, что какой-нибудь холм не сможет придать ему небольшой дополнительный импульс. Холмы и склоны можно использовать для вращения с очень высокой скоростью. Как и в случае с бегом, при вращении Соник имеет предел максимальной скорости, хотя он и гораздо выше, и достигает 16 пикселей за шаг. Однако в отличие от бега, Соник никаким образом не может преодолеть это ограничение скорости. Если его gsp достигает значения 16 и пытается увеличиваться дальше, оно автоматически будет установлено на 16.

В играх Sonic 1 и 2 Соник не может начать вращаться, если его абсолютная горизонтальная скорость больше 0.53125.

В Sonic 3 and Knuckles это значение увеличено до 1.03125. Это очень удобно, потому что можно удерживать кнопку «вниз» для вращения. Если бы Сонику нужно было остановиться, перед тем как он пригнётся, у игрока возникли бы сложности при быстром включении вращения.

В Sonic 3 and Knuckles Соник перестаёт вращаться, если его абсолютная горизонтальная скорость падает ниже 0.5, Возможно, этим способом хотели устранить аномалию, связанную с поворотом в другую сторону при вращении в предыдущих играх.

Прыжок во вращении

В Sonic 1, 2, 3 и Knuckles игрок не может управлять траекторией Соника в воздухе с помощью кнопок направления при прыжке во вращении. Поэтому при этом сложно начать вращение для набора скорости, а затем сделать точный прыжок. В Sonic 3 и Sonic & Knuckles игрок может вернуть управление кнопками направлений, выполнив W Kaiten Attack.

Он же Insta-Shield, он же W Spin Attack (W回転アタック) (в Японии), он же Twin-Spin Attack в Sonic Generations — это специальное движение, впервые использованное Соником в Sonic the Hedgehog 3. Прыжок, а затем повторное нажатие кнопки прыжка в воздухе создаёт кратковременную вспышку, увеличивающую радиус атаки Соника и делающую его временно неуязвимым. Этот приём полезен для атаки боссов, находящихся немного за пределами радиуса атаки, и покрытых шипами врагов, таких как Orbinaut. Никто из персонажей, кроме Соника, не может использовать этот приём.



Orbinaut


Эта тема создана для того, что-бы люди, застрявшие на каком-то моменте могли задать вопрос и получить на него ответ или рекомендацию от других пользователей, как именно нужно пройти "тормозной" момент. Ну и что-бы народ не оффтопил в других темах.
По-этому: Если вы где-то застряли, не знаете как нужно "уложить" определенного босса, или у вас еще какая-то проблема в данном "направлении" - милости просим в эту тему. =)


не могу пройти финального босса . подскажите как его пинать и ли че с ним делать?)


nikrol2011 держи буст иззо всех сил не отвлекайся на другие команды держи буст рано или поздно приблизишься (это довольно трудно) но получится целься в шар огромный по середине )))



как убить Сильвера? Запарываюсь на моменте, когда он собирает шар из машин. Буста не хватает



Gext
И ещё накопи перед этим полный буст и мчись к сильверу не отпуская его)


В игре есть какой то skill shop. Я как понял это новые умения или что. И как их активировать. И красные кольца разбросанные по уровням, что они дают.


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



А в каждой зоне только один уровень за классического и один уровень за современого?




saw9999 Возле основных уровней движутся платформы. По ним прыгаешь на верх там ещё задания. Типа портала. Где еще все белое не закрашено. После прохождения их зона постепенно закрасится цветом и возле этих порталов появятся ключи,
которые допустят к боссу. Убив босса откроются новые уровни.




saw9999 на какой ранг пройден основной уровень классическим и современным соником? Попробуй собрать хоть одну звезду. Я когда начинал играть у меня одна была и всё открывалось.


Как убить Shadow?26 минут бегаю прыгаю на него у него остается 000 колец и он убегает.А когда собираю три непонятных фиолетовых круга включается какая то безпантовая супер сила бегаю сшибаю камни а толку нет




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


выбрал суперсоника а на уровнях я обычный что делать


Собери 50 колец и нажми на кнопку "Y" (которая еще отвечает за смену Соников).


СиФоШа
Нужно сбить именно все камни.
а как это, всмысле сбить? подпрыгнуть и сбить или тупо пронестись(он их сбивает). как вообще?
PS: я уже все сбивал(лицом) и еще когда его все таки удается догнать(шедоу) он как бэ подсвечивается, что в негро можно пульнуть, но нэ удаётся:(


все, прошел уже: D камни все сбивать нада чтобы его догнать так как они в него летят, не вашно лицом ты их сбиваешь или попом(подпрыгиваешь нэ подумайтэ). игра класс


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

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