О чем не стоит забывать чтобы в игру было комфортно играть
Я переиграл уже во множество маленьких игр начинающих авторов,
Так что, новичок! Если ты сделал свою первую (2, 3) игру — прочитай эту статью, может перед публикацией игры ты о чем-то забыл?
Высказывайтесь, критикуйте, буду добавлять в статью ваши замечания если я ошибся, сам о чем забыл или не знаю.
Warning! Много текста без картинок.
Опыт пользователя (UX)
UX — это все, что дает игроку удобство.
При разработке игры от 10% до 50% времени может уйти не на саму разработку игры, а только на то, чтобы игроку было удобно в нее играть (пользовательское оформление).
Когда вы что-то придумали или начали делать — сразу прикиньте, а будет ли это удобно для игрока? Подумайте как такие же вещи делаются в других играх и постарайтесь выбрать самый удобный вариант.
По своему опыту могу привести следующие (наверняка многим очевидные) правила, которым, тем не менее многие авторы игр просто ленятся следовать.
* Обращайте внимание на опыт других похожих игр, в которые вам удобно играть
За несколько десятков лет разработчики в каждом жанре методом проб и ошибок нашли наиболее подходящие и удобные для игроков интерфейс, управление и механики в играх. Множество игроков уже играли в эти игры и у них выработался шаблон и привычки. Игрокам будет непривычно если в ваше игре вы все сделаете совершенно наоборот.
* Часто совершаемые действия должны выполняться максимально удобно и с минимумом движений
Именно поэтому перемещение в шутерах вешают на WASD, а прицеливание — на мышь.
Например, самое частовыполняемое действие вешается на Левую кнопку мыши, а не на Правую, потому что на ЛКМ удобнее нажимать. Исключение — стратегии, в которых ПКМ используется чаще чем ЛКМ.
* Композиция — самое важное в игре должно находиться в центре экрана
Именно поэтому прицел в шутерах и наш персонаж в платформерах всегда рисуется в центре экрана, а не с краю.
Также постарайтесь чтобы игроку не пришлось постоянно бегать глазами по всему экрану в поисках своего персонажа, врагов и шкалы здоровья.
Если у вас в игре много текста, то выводите его все время где-то в одном месте, чтобы игроку не приходилось постоянно бегать глазами по экрану.
* Текст должен контрастировать с задним фоном
Самый частый вариант — это черные буквы на белом фоне или белые буквы на черном фоне. Просто потому что их лучше видно. Не стоит делать светлые буквы на светлом фоне.
Если цвет фона не равномерный и все время меняется, то лучше использовать буквы в обводкой (например белые буквы с черной обводкой или наоборот), чтобы быть точно увереным что эти буквы будут читаемы на любом фоне. Или выводить текст на фоне черного или белого прямоугольника вверху или внизу окна, который при этом не загораживает собой остальную игру.
*Частоповторяемые одинаковые звуки — плохо
Если у вас часто совершается какое-то действие (например, подбирание монетки), то для него лучше вообще выбрать звук максимально приятный для слуха. Если звук будет неприятным и часто повторяться — он будет только раздражать игрока.
Также желательно сделать несколько звуков, выбираемых перед воспроизведением случайным образом. Или, если у вас только один звук — менять его частоту (pitch) в пределах 90−110% перед каждым восроизведением.
* Любое событие, приводящее к важным изменениям в игре, должно сопровождаться анимацией и/или звуком
Игрок принимает информацию от игры только в виде картинки и звука. Если на экране ничего не изменилось и звук не меняется, то игрок никак не узнает что произошло что-то важное.
Геймплейный UX
Здесь я опишу неочевидные геймплейные и программерские приемы, о которых игрок может вообще не знать и не догадываться, но без которых играть будет менее удобно.
* Время койота
Это дополнительное время, когда персонаж уже начал падать в пропасть, но ему все еще разрешается нажать кнопку прыжка.
Обычно это 0.1−0.2 секунды. Вы этого не замечаете, но без такой хитрости вы будете очень часто падать в пропасть, прыгая с края платформы, и при этом говорить «я же нажал кнопку прыжка, почему он не прыгнул?!».
Это связано с инерцией нашего мозга — время койота компенсирует задержку игрока между моментом когда пора прыгать и нажатием на кнопку прыжка.
* Уменьшенный коллайдер
Это позволяет избежать моментов когда «блин, я же его не задел, почему я поранился?».
Коллайдер (физическое тело) нашего персонажа, распознающий столкновения, делается немного меньше, чем нужно чтобы реже случайно задевать шипы или соперников.
Так же это справедливо для всех других игр, где можно столкнуться с противником, есть узкие проходы или много препятствий в комнатах.
* Большая пуля — для врагов, маленькая — для стен
Визуально выстрел выглядит одинаково. Но вот коллайдеры — разные.
Когда мы стреляем в шутере — при обнаружении столкновений с врагами у пули используется коллайдер побольше, а при обнаружении столкновений со стенами — коллайдер почти нулевого размера.
Это позволяет легче попадать во врагов (особенно на бегу), не целясь в них с ювелирной точностью и упрощает стрельбу из-за стены и укрытий.
В то же время коллайдер у выстрелов (или ударов) врагов делают меньше — чтобы от них было проще уворачиваться.
* Последняя кровинка
Когда у игрока совсем закончилось здоровье — есть шанс что 1 или несколько следующих пропущенных ударов не нанесут урон здоровью (хотя эффект получения урона будет).
Или же игра показывает на экране наше здоровье не целиком, а только 100% из 105%.
Это создает приятное ощущение что мы спаслись/выжили в самый последний момент.
* Замедленный таймер
Та же песня из предыдущей оперы. Когда остается мало времени — таймер начинает отсчитывать его немного медленее, чем есть на самом деле.
* Поддавки
Во многих играх противники специально играют так, чтобы игроку было интересно, но он не проиграл.
Например, в гонках остающие от игрока машины начинают ехать быстрее, а обгоняющие его — наоборот, медленнее.
* Периодические подсказки
В головоломках, если игрок тупит, тормозит или не понимает как пройти пазл (то есть прошло сколько-то времени с начала пазла), то игра начинает ему давать подсказки. Лучше всего сообщать игроку что для него есть новая подсказка по прохождению, но выводить ее на экран если игрок ее откроет.
Что обязательно должно быть в вашей игре (проверьте это перед релизом)
* Выход из игры
Если у вас не WEB-игра, то нужно предусмотреть выход из нее (из WEB-игры можно «выйти» просто закрыв вкладку браузера). Никому не захочется закрывать вашу игру через диспетчер задач.
Для коротких и маленьких игр делайте выход из игры по одной кнопке — по нажатию мышью на «Крестик» окна (в оконном режиме) и кнопку Escape. Но при этом на кнопку выхода не должно быть назначено никаких других действий, чтобы игрок случайно не вышел из игры.
Для игр дольше 10 минут лучше при нажатии на Escape ставить игру на паузу, а выходить только при подтверждении (например, Y или N, или Пробел — выход из игры, еще раз Escape — вернуться в игру).
Из большинства игр можно принудительно выйти нажатием Alt+F4. Если с вашей игрой это не работает — добавьте эту комбинацию сами.
* Информация об управлении прямо в игре
Игрок, запустивший вашу игру — ничего о ней не знает.
Предполагайте что он не читал readme.txt или описание вашей игры — игроки не любят вообще что-то читать перед самой игрой.
Первое что игрок должен узнать после запуска — управление.
В играх есть 3 привычных игрокам типов управления:
1) мышь, WASD, пробел, E, Q, F, цифры 1−0 — для 3D-шутеров
2) стрелки и Z, X — для 2D-платформеров
3) ЛМК — выбор/перемещение, ПКМ — действие/взаимодействие — для квестов
Большинство опытных игроков знает об этом.
А вот если ваше управление хотя бы чуть-чуть от этого отличается — то о нем обязательно надо сообщить в самом начале, как только начинается геймплей.
Несколько советов:
* Если мышь в вашей игре вообще не используется — просто отключите отображение курсора, чтобы игрок понял что мышь никак не используется.
* Если управление у вас не 3−4 кнопки, то не вываливайте на игрока все управление сразу — он не запомнит.
Лучше всего сообщать новую кнопку тогда, когда игрок впервые сталкивается с ситуацией где ее придется применить.
В крайнем случае сделаете справку обо всех кнопках управлении в игре, которую можно вызывать в любой момент (если игрок что-то забыл). Например по нажатию на F1 или кнопки H и поместите надпись об этом на экран, которая пропадает после первого же нажатия.
Или сделайте справку об управлении отдельным пунктом в меню, если у вас есть меню в паузе.
Если управление в ваше игре непростое, то лучше всего — контекстное обучение управлению, по типу туториала или обучающей миссии.
* Пауза
Игрок может банально захотеть в туалет или его отвлекут во время игры.
Чтобы он не проиграл пока отлучился — нужно сделать в игре паузу с остановкой обновления мира.
Паузу лучше сделать по кнопке Escape или Enter.
И обязательно писать на экране что сейчас ПАУЗА (чтобы игрок не подумал что игра зависла) или затенять экран.
Также нужно добавить остановку игры при потере фокуса окна (некоторые движки это делают автоматически), если только у вас не мультиплеерная игра.
* Оконный и полноэкранный режим
Большинству игроков удобнее играть на полный экран. Причина проста — у игроков разный размер монитора и разрешение экрана.
Если в окне у вас игра выглядит нормально, то у одних игроков окно может быть слишком мелким, а у других — оно даже не будет помещаться на рабочем столе.
А вот стримерам оконный режим — просто необходим, поскольку параллельно с игрой им надо:
1) Следить за временем
2) Читать чат
3) Где-то картинку с веб-камеры вставить (желательно так, чтобы она не загораживала саму игру и была видна самому стримеру)
Играя на полный экран, им бы пришлось постоянно сворачивать и разворачивать игру, что неудобно.
Поэтому в игре должно присутствовать хотя бы переключение между оконным и полноэкранным режимами.
Поскольку соотношение сторон монитора у всех разное — в полноэкранном режиме предусмотрите правильное масштабирование игры с формированием черных полос снизу-сверху или по бокам, чтобы картинка не стала растянутой или приплюснутой.
* Сохранения
Если ваша игра проходится дольше 20-ти минут, то это значит что кто-то не сможет ее пройти за 1 присест.
Также если ваша игра НЕ является полностью линейной, и в ней есть несколько концовок или способов прохождения, то игроку захочется их все попробовать.
В таких случаях делайте в игре сохранения (элемент, позволяющий продолжить игру не с самого начала).
В крайнем случае при старте игры сделайте возможность выбрать любой уровень.
Не делайте в игре пароли — игроки не любят запоминать информацию, которую за них должен запомнить компьютер. Поэтому все сохранения — сохраняйте на диск.
В игре можно сделать пароли, в качестве бонуса, только когда в игре уже есть нормальные сохранения.
* Чувствительность мыши (для 3D-игр)
Если вы делаете 3D-игру или не используете системный курсор (то есть напрямую опрашиваете движения мыши, а не координаты курсора), то вы обязаны делать подстройку чувствительности мыши.
Тут опять все упирается в разные мониторы. Скорость перемещения курсора в системе задается в пикселях, а юзеру важна скорость перемещения в дюймах.
Соответственно на больших мониторах чувствительность мыши будет больше, чем на маленьких.
В итоге прицел в вашей игре у одних будет двигаться слишком быстро, у других — слишком медленно. Да и у каждого игрока свои предпочтения — кто-то любит чтобы прицел в шутерах двигался по-быстрее, а кому-то лучше помедленее.
Решение — добавить множитель перемещения мыши.
Для небольших игр сообщение о подстройке мыши лучше добавить в начале игры и дать возможность менять чувствительность кнопками с клавиатуры прямо во время игры (при этом показывать игроку картинку, поясняющую на сколько изменилась чувствительность мыши).
Для больших игр этот параметр нужно выносить в настройки.
* Для шутеров: Раздельная чувствительность мыши по горизонтали и вертикали, инверсия по оси Y
В шутерах намного чаще приходится стрелять по горизонтали, на одном уровне с игроком, чем куда-то вверх или вниз. Кроме того, перемещение мыши влево-вправо используется для поворота в стороны.
Поэтому вертикальная чувствительность мыши в игре должна быть в ~1,5−2 раза меньше, чем горизонтальная, чтобы при неточных движениях мыши прицел не уезжал сильно вверх-вниз.
Также одним игрокам удобнее играть когда при движении мыши на себя прицел движется вниз, а другим — вверх. Поэтому надо сделать опцию переключения инверсии одной кнопкой (например Y).
* Яркость
Если у вас достаточно темная игра (хоррор или просто в ней много темного), то добавьте регулировку яркости.
У игроков разные мониторы — одни могут хорошо передавать градации черного, другие — плохо. И потом, восприятие картинки будет зависеть от времени суток и внешнего освещения в комнате игрока — в темные игры лучше играть вечером или ночью. В конце концов, у кого-то может быть просто плохое зрение или не хочется напрягать глаза.
Подстройку яркости следует делать сразу после запуска игры. Просите игрока настроить яркость так, чтобы одна из 2−3 показываемых картинок была плохо различима (лучше всего горизонтальным ползунком или кнопками со стрелками).
Что желательно добавить в игру
* Изменение размеров окна
Большинство игроков любит играть на весь экран. Но некоторым больше нравится в окошке. Особенно если в вашей игре низкое разрешение графики, то в нее комфортнее будет играть в небольшом окне, чем на весь экран на большом мониторе.
Добавьте в игру хотя бы изменение масштаба окна в x1, x1.5, x2, x3, x4 раза
Идеальным случаем будет если игрок сможет потянуть курсором за угол окна и задать ему любой желаемый размер.
* Вкл/откл. и изменение громкости звуков и музыки
Это, как и с размером окна, больше завязано на предпочтениях игрока:
— Игрок может захотеть сделать звуки по-тише, а музыку — погромче. Или наоборот.
— Если музыка в вашей игре не очень приятная или даже заунывная, то через 10 минут у игрока может возникнуть желание ее отключить, оставив при этом звуки.
— Вам при записи трейлера или геймплея может понадобится отключить отдельно игровую музыку, звуки или весь звук вообще.
В некоторых игровых конструкторах часть этого функционала уже реализована. Если нет — сделайте ее сами.
* Поддержка геймпада
У всех на ПК есть клавиатура и мышь.
Геймпад есть не у всех, но во многие игры (в основном платформеры) удобнее играть именно на нем.
Особенно это касается игры вдвоем на одном ПК (например, файтинги, гонки или платформеры с совместным прохождением) — двоим на одной клавиатуре играть не очень удобно (кроме того некоторые одновременные нажатия клавиш будут блокироваться самой клавиатурой). В таких случаях кто-то должен играть на клавиатуре, а кто-то — на геймпаде. А иногда — ОБА на геймпаде.
Если добавляете в игру поддержку геймпада, то не забудьте продублировать справку об управлении еще и для его кнопок.
Разумеется, глупо делать поддержку геймпада в одиночных играх, где мышь+клавиатура справятся намного лучше (например, в стратегиях или шутерах).
* Перенастройка управления
Если у вас задействовано много кнопок или сложное навороченное управление, то:
— есть шанс что кому-то не понравится как вы их расположили
— у кого-то может не работать или залипать важная кнопка
— а может быть просто раскладка не QWERTY и все ваши кнопки окажутся в неудобных местах
В таких случаях игроку потребуется возможность перенастроить управление в настройках игры, с сохранением в файл.
Но данная вещь необязательна, поскольку необходимость изменить управление в игре у игроков появляется редко и, в основном, в больших играх.
* Ссылки на другие ваши проекты, сайт или страничку в интернете
Если игроку ваша игра понравилась, то он может заинтересоваться — а какие игры у вас еще есть.
Конечно, он все это сможет сам нагуглить, если захочет, но лучше если эти ссылки будут прямо в игре, не отходя от кассы, пока у игрока не пропало желание ознакомиться с другими вашими играми.
Ссылки лучше показывать после прохождения игры, в главном меню (куда возвращается игра после прохождения), или в меню паузы.
Ссылки должны быть кликабельными (чтобы сразу открывался сайт), а не просто текст ссылки.
- 07 сентября 2019, 21:18
Этого не надо делать, этого добра хватает в постах, которые бывают оформлены кое-как. Нехватало ещё этого бардака в игре. Уж лучше сначала игру нормальную сделают для начала.
Да кто ж эти посты читать будет? На русском?
Это тебе может надоело, а игрок видит игру в первый раз и слыхом не слыхивал про его посты и аккаунты.
Нужно отталкиваться от того что игрок первый раз видит твою игру, не знает о тебе ничего и не знает что у тебя еще какие-то игры есть.
Я говорю, не стоит пихать в игру рекламу. Раз они не умеют оформлять посты, сделать в игре нормально тоже не смогут.
А где он её взял-то тогда, эту игру))000
99% игр я беру в стиме/любом другом магазине/на итче/геймджолте/продолжитесписок. Очевидно, что мне всё сразу известно. А давать рекламу "Весёлых абрикосов 3-в-ряд" после медитативного симулятора ходьбы - нуууу хззз
Просто AndreyMust19 походу не застал времена флешек, где пихали рекламу везде, куда только можно (лишь бы засунуть). Загружаешь новую игру, хочешь скипнуть заставку, а вместо него открывается какой-то сайт. Жутко бесили и раздражали эти моменты. И он предлагает сделать тоже самое сейчас.
Какая заставка, какая реклама, вы о чем?
Я предлагаю добавлять в игру ссылку на другие свои игры, в меню. И не важно где она - на сайте или как отдельное приложение. Особенно это важно в демке, где игрок может узнать что полная версия продается в стиме или скоро там появится. Это не реклама других игр, которую впаривают в перерывах между уровнями, а реклама своих же игр, с которыми игрок захочет ознакомиться если игра ему понравилось. Они могут вести не в стим, а просто на сайт автора.
Вы похоже путаете свое печальное прошлое с навязчивой рекламой в играх и ссылки на другие продукты того же автора.
AndreyMust19, ты просто наивно полагаешь, что новички будут делать как надо, на самом деле, люди делают только так, как они сами того захотят, и уж поверь, они этой возможностью воспользуются и засунут в игру всё что угодно.
Вот соб-но за этим я и пишу. Чтобы новички не забывали о таких "мелочах" и сразу делали как надо.
Не надо учить что не надо делать или как делать неправильно. Нужно сразу учиться правильно.
Тебе где проще перейти по ссылке - прямо здесь и сейчас или самому идти на itch.io, искать страницу автора и там смотреть его другие игры? Ты завтра, может уже забудешь об этом что после игры мимолетно заинтересовался другими играми автора и уже никогда их не посмотришь.
Опять, какая реклама? С чего вы взяли про рекламу?
Ты сам выше употребил "реклама своих же игр".
Не любая игра приемлет в себе ссылки на другие игры, которые отличатся от нее самой.
Ещё бы на пули 2 коллайдера не вешал. Но за остальные советы спасибо, местами интересные замечания.
Мучитель.
Нет, стримеры спасаются двумя и более мониторами.
И ещё советы от стримеров:
Это защита от случайных нажатий. Вряд ли ты случайно зажмешь Esc на целую 1 секунду.
Не у всех стримеров есть деньги на 2-й монитор.
Думаю все эти замечание правильнее будет выделить в отдельную статью "как подготовить игру для стримера".
Мне оконный режим всё равно нужен)
я только в большие/ААА игры играю на полный экран, иначе выбираю оконный режим
Щас бы делать игры, отталкиваясь от удобства стримеров. Стримеры найдут способ совладать с игрой, в конце концов это им надо.
По-моему, это лишний гемор для разработчика, сидеть и думать, как бы его игру было удобнее стримить. Ну то есть это явно советы не базовой необходимости.
Вообще сейчас игры часто делают для удобства как стримеров так и спидранеров =)
Какое-то неверное целеполагание.
Неверное по отношению к обычному игроку может быть. Но с точки зрения продвижения игры - чтобы как можно больше стримеров, летсплейщиков и спидранеров засветило игру - это да.
Вспомнить ту же Getting Over It With Bennett Foddy - одна из причин по которой она зацепила и получила известность - было обращение внутри игры в конце к стримерам. Игр с подобными кривыми и раздражающими механиками сделано довольно много, но на слуху именно эта игра из сотни подобных. Это не относится напрямую к обсуждаемой теме, но эксплуатируется примерно тот же принцип в целеполагании. Игра затачивалась для стриминга в формате "Rage quit", а обращение в конце лишь подстёгивало интересов.
Соглашусь, что смотреть, как стример бесится от игр типа Getting over it, Jump King или I hate this game очень многие любят, но тут получается, что сами разрабы хотели сделать игру вот такой сложной, ведь если бы только стримеры получали от этого мазохистское удовольствие - как игра продастся? Соулсы (может жопу с пальцем сравниваю, но все же) вот сложные пздц, ragequit вызывают у многих, но они не задумывались, как игра, которую стримеры хорошо пропиарят. Вокруг них сплоченное коммьюнити преданных фанатов.
А если игра не задумывалась, как издевательство над игроками (в хорошем смысле), то целеполагание, делать игру под стримера в корне неверно. Нужно делать игру под своего игрока. В Домине интеграция с твичом - прикольное дополнение, работает правда через задницу, но не суть. Игра имеет много поклонников не за счет этой интеграции или стримеров.
Кстати, думаю сначала появилась идея Getting over it, а потом уже разрабы подумали, как игра пойдет на стримах и добавили туда надпись.
Я пытаюсь слишком развёрнуто донести простую мысль: сначала сделать интересную и увлекательную игру для своей целевой аудитории, а потом уже думать о стримерах и что-то там допиливать, если нужно.
Есть класс игр, которые как будто специально делаются для стримов. И это не только "издевательство над игроками". У меня игры тоже над игроками неслабо "издеваются", но их от этого почему-то никто не стримит, а начинают рассказывать какие у меня говномеханики.
И это печально.
Сохранила кусок стрима, а то скоро пропадет. Почти два часа моих неловких подергиваний в попытках зачистить демку. Вдруг, полезно будет.
Смотрите MORTUMASTRA. Тестируем демку. от Chlora_Virgo на www.twitch.tv
Не только о деньгах думают разработчики. Есть еще общение с игроком через игру и обратное общение через летсплеи.
С точки зрения продвижения игры, надо делать хорошую игру. Офигеваю с нынешних разговоров.
Для одиночки-разработчика - да. Для издателя - без разницы, они что угодно могут продать если постараются.
Но не кому угодно (не всем). Всегда можно голосовать рублём и не покупать плохое. Вопрос культуры.
Сделать включаемый таймер в правом верхнем углу - дело 5-20 минут.
Тем более это можно сделать 1 раз и потом просто пихать во все свои игры.
Не спорила и не спорю
Я думаю, в первую очередь - просто игрокам, во вторую - для особых игроков, которые не просто берут, но и дают (моддеры, стримеры, летсплееры и другие).
А если так беспечно относиться, то получится вроде "мой друг поиграл норм, а остальные сами пусть мучаются, это ведь им самим надо".
Вот именно, о стримерах можно подумать, но в самую последнюю очередь, а то новенькие разработчики просто застрянут на этапе "как угодить всем". Те же самые инклюзивные режимы для дальтоников, слабовидящих и т. п. - все это можно и нужно вводить в игру, но не в первую очередь. Сначала пусть базовые вещи сделать не забудут. Ведь игроков с разными размерами экрана (это я все о наболевшем масштабировании UI) больше, чем стримеров.
Апд: Я к тому, что стример найдет способ захватить игру, читать чат и т. д. если он норм стример, это часть навыка, найти способ стримить, когда что-то идёт не так. Куча случается форс-мажоров даже со стримами ААА-игр. Стример конечно скажет спасибо, если игра под него заточена и вообще ТАМ ИНТЕГРАЦИЯ С ТВИЧОМ ОГО, но и без этого будет играть и стримить хорошую игру.
Это так, но лучше самому потратить 5-10 минут на реализацию удобного для захвата окна, чем эти лишние минуты будет тратить стример, вместо того чтобы играть в игру или обсуждать ее после прохождения.
Игры делать - вообще гемор. Пусть привыкают.
Ага, поэтому я и делю что обязательно, а что желательно добавить в игру.
Плюс за безрамочный режим, с ним куда проще переключаться между окнами.
Забавно написано, кстати, как будто заметил свои ошибки как игрока.
Хороший набор советов. Грубо говоря, здесь то, что нужно научиться делать до какого-либо джема, чтобы потом тратить время только на саму игру, а не на скучные, но очень необходимые фичи. Можно какие-то заготовки заранее сделать, чтобы потом копипастить и менять только по мелочам.
Проектирование хорошей игры не зацикливается только на геймплее и интересных механиках, нужно, чтобы все было юзер-френдли.
То же масштабирование, ох, как мне еще не хватает с моим экраном, часто читаю только так.
мне тоже очень важно масштабирование экрана в оконном режиме,
но желательно не кратное, а на весь экран, чтобы окно полностью разворачивалось,
а то не люблю, когда видно рабочий стол за игрой или другие штуки виндовса :D
ну кроме нижней панели, которая обычно не парит)
За выход из игры на ESC, нужно сразу расстреливать =)
Почему? По-моему логично. Тут речь идет о маленьких авторских играх, полноценное меню по ESC делают в больших играх.
Спросить "Точно хотите выйти?" же можно
Потому-что: "Игрок может банально захотеть в туалет или его отвлекут во время игры."
Играешь маленькую игру - 10 минут, но вдруг, отвлекают, автоматически нажимаешь ESC, игра закрывается.
Ненавидишь разработчика и того кто тебя отвлек. Будешь ещё играть? 50 на 50...
На ESC - только пауза и вопрос, выйти или нет (и конечно можно меню).
Мне почему-то кажется, что эти, так называемые "советы", лишь личные хотелки автора темы (Мол, хотите сделать что-то своё? Не ребят, делайте, как я хочу, вот список).
Чет ты какой-то пессимист совсем.
Можно, делать неудобные для игроков игры. Только не удивляйтесь если в них просто не будут играть. Например, ты сам жаловался на необходимость читать какие-то правила и управление в readme. Дескать их никто не читает и вообще это неудобно, лучше прямо в игре.
Я сужу по своему опыту, по комментариям тут, на разных сайтах, в отзывах в стиме - на что жалуются игроки в маленьких играх независимо от их жанра. Причем это что-то такое, что легко сделать или исправить. Например, проблемы с нечитаемым текстом встречаются в играх новичков постоянно. А ведь достаточно просто цвет текста поменять.
А про "Геймплейный UX" я вычитал в какой-то статье, они мне запомнились, в т. ч. некоторые я уже пробовал делать в играх и действительно стало лучше.
Хотелки-то хотелки, но они коррелируют с тем, как игры надо делать чтоб они были хорошими. Другое дело что едва ли именно эта статья кого-то особо просветит - она скучная, и натаскана отовсюду подряд (вертикальная чувствительность мыши в шутере вообще удивила). Ещё например, "время койота" смотрится в играх глупо, а в оригинальных хитах типа того самого Марио и Соника - не было ничего подобного. Это всё дофаминовые подсластители для оказуаливания, и советовать их всем подряд не нужно.
Что-что простите? В Марио на замедленном воспроизведении видео видно что марио уже начинает падать в пропасть, а потом прыгает. Иначе бы все игроки массово падали в пропасти когда надо спрыгнуть с самого края, а такого не происходит. А потом поиграй в платформеры новичков где такого нет и поудивляйся почему там с самого края не получается прыгнуть.
Или просто сам попробуй сделать платформер и попробуй попрыгать с края с разбега с обычной механикой и с временем койота и ощути разницу.
Это не оказуаливание, а тупо вещь, без которой ты не сможешь прыгать с самого края с разбегу.
На самом деле разницы особо нет. Дело привычки. Кто-то, когда-то придумал что дескать так лучше воспринимается, потом это втёрли всем в мозг. И теперь народ поголовно делают эту штуку на радость спидранерам которые не дураки это абюзить.
Насколько я знаю в Megaman Classic, Megaman X, Megaman Zero нету этой бредятины и ничто не помешало игре заполучить миллионы фанатов. Про метроид та же история. Нет там времени койота. В марио может быть, но я не играл в марио особо так что не уверен. В сонике такого точно нету. Даже в пустом рыцаре я не припомню такой механики.
Надо вообще делать автоматический прыжок, надоели игры про ловкое прыгание, как будто других испытаний на свете нет. :P
Золотые слова. Ещё лучше - делать игры где персонаж прыгает сам, а падает только по твоей кнопке.
У Марио просто очень широкий хитбокс, благодаря которому он может стоять на земле одним пикселов своей левой ноги (на краю пропасти находящейся справа).
Если ты такой умный, покажи мне видео где видно не это, а именно что он ПО ВЕРТИКАЛИ уже падать начал в пропасть, и тут вдруг прыгнул.
25 лет играю в платформеры и удивляет меня только такая ахинея, как пишут люди в платформерах не разбирающиеся. Повторюсь - время койота чисто визуально выглядит нелепо. Если визуально всё красиво, значит его в игре просто нет.
Сколько платформеров ты в жизни прошёл? У меня одних Мегаменов 30, Соников (двухмерных) 5, Контр 5, и огромный набор всяких Ниндзя Зенов, Котов-Самураев, Шиноби и т. д. Даже тот самый Desert Demolition с койотом я проходил - и вот именно он выглядит ГЛУПО при прыжке из уже того падения в яму, которое должно состояться. Твои аргументы?
Это я ещё даже до инди не дошёл. Cave Story - платформер, где этого нет. Lyle In Cube Sector - ничего подобного. Я могу продолжать долго.
в моей игре есть время койота, я про Daring Do пони игру на юнити)
но потому-что у меня проверка земли несколько циклов проходит,
если 4-5 FixedUpdate не было проверки на землю, то значить персонаж в воздухе и прыгать уже нельзя)
но сделано по другой причине) просто чтобы не было при микроямах и микровозвышениях резких изменений анимации персонажа с прыжка на бег и наоборот, чтоб не было таких быстрых дёрганий/переключений анимации неприятных для глаза.
Это потому что физику в платформере нелогично использовать.
Как и вообще 3D-движки для 2D-игр.
физика - это 2д движок. Чтобы 3д физдвижок туда запихнуть надо очень постараться.
В Юнити есть и 2D и 3D физика. При этом изначально это - 3D-движок, в 2D он превращается фиксированным поворотом камеры (при этом объекты все еще можно двигать по оставшейся третьей оси, даже спрайты).
когда я только начал разрабатывать Daring Do в юнити была только 3д физика)
поэтому она пока всё ещё там) слишком много кода переделывать)
и там не так много отличий, что в 2д, что 3д объекты медленнее падают, чем в реальности,
я хз почему, но если сильно переборщить с силой гравитации или тяжестью,
то объекты будут сквозь землю пролетать в юнити) не могу нормально настроить это всё,
поэтому кодом вручную поправляю скорость через rigid.velocity
Потому что надо масштаб сцены и объектов брать определённый (вроде бы один юнит = один метр), тогда будет, как в реальности.
https://bash.im/quote/413852
В этом и суть. Если ты его не видишь - это не значит что его нет. Все такие механики с мизерными поддавками игроку должны быть незаметными - ты о них можешь и не узнать, если только разработчики тебе не скажут. Если ты видишь как твой перс уже падает в пропасть и ты прыгаешь - это значит что программист сделал поддавки слишком большие, раз ты их уже стал замечать.
Заметить что-то такое можно только если специально это искать и ходить с лупой.
Я тебе сказал абсолютно конкретный факт - в огромном количестве классических платформеров этого нет. Это тебя удивит, но я очень подробно изучал материалы по физике платформеров - не новодела, а того, во что играли много лет назад, и что до сих пор прекрасно играется.
http://tasvideos.org/Game/nes-mega-man.html - почитай как люди, ставящие мировые рекорды, бьющиеся за дополнительные миллисекунды, расписали абсолютно все возможные баги связанные с физикой а уровне субпикселей, это доли обычного пикселя. И при этом ни одного упоминания того, о чём говоришь ты.
http://tasvideos.org/Game/nes-super-mario-bros.html - вот тебе про Марио.
По Сонику - хакеры-энтузиасты давно дизассемблировали РОМы Сеговских (и не только) игр, полный список можешь видеть здесь, а теперь тыкни-ка мне в этом разделе любую статью, где написано о возможности прыгать с выступа уже после того как ты с него сходишь. Вот статья о прыжках например.
Всё, успокоился?
Если этого нет в марио, мегамене и сонике, то это не значит что этого нет в других платформерах, потому что для игрока эта механика незаметна.
Я же тебе не говорю что в этих играх оно есть. А в марио, действительно, может быть дело только в большом коллайдере.
Игрок - в том числе и я, и тебе никто не давал права расписываться за меня, что мне нужно время койота. Я играл и в койота от которого этот термин пошёл, и в другие платформеры. Ситуация сейчас осложняется тем, что этот эффект теперь будет всё в большем количестве игр только потому что кто-то придумал это, что оно нужно.
А на самом деле оно не нужно. И особенно новичку, у которого ещё игра не готова, а ты его грузишь микромеханиками, место которым - полировка перед самым релизом, но никак не прототипы, которые чаще всего выкатывают на конкурсы. Если в игровой механике не хватает свободы в воздухе, лучше сделать двойной прыжок, чем вот эти непонятные штуки. А игрок пусть учится прыгать заранее, ничего страшного в этом нет.
Кстати, сегодня как раз думал что надо бы добавить что можно просто увеличивать коллайдер столкновения с геометрией уровня по горизонтали во время бега, в зависимости от скорости движения а не использовать таймер.
Ты не увидишь как он падает (если он сделан правильно). Падать он начнет когда "время койота" закончится и тогда ты уже не сможешь прыгнуть. Там смысл в том что флаг "grounded" или "нижнее касание" снимается не сразу, а через едва заметный промежуток времени (а прыгать можно только когда он есть, и персонаж начинает падать когда его нет). Максимум что можно заметить - небольшую ходьбу по воздуху когда с разбегу падаешь в пропасть, а стоя на краю уступа и медленно идя в пропасть - падаешь немного раньше.
Обожаю когда люди мнят из себя гуру чего-то, к чему не имеют никакого отношения. Ты так рассказываешь, будто я первый раз слышу об этом всём. Или как будто ты сам сделал хоть один платформер когда-либо в жизни. Тебе ничего не кажется странным в этой ситуации?
Знаю, я тоже не светило жанра. Но из публичных прототипов у меня-то хотя бы EX-802 есть.
А шарящий в них Хейзер, как видишь, разбил идею в пух и прах.
https://store.steampowered.com/app/507520/ZzzzZzzzZzzz/ - его коммерчески успешный платформер.
Ну и ты сам рассказываешь быдто ты гуру а я об этом первый раз слышу.
Ты сам попросил тебе объяснить почему нет видео где персонаж может прыгать когда уже падать начал.
DrawColor, еще не закончен.
Полная коробка сюрпризов, в 3D. Там я ничего из описанного не применял потому что еще не знал об этом.
Не делаю платформеров потому что я не фанат этого жара и пока не могу придумать чего-то интересного для них, из-за чего стоило бы делать.
Просто, если ты его не видишь - это не значит что он есть. (парадоксально, да?)
А он есть. Только ты его не заметишь. Некоторые баги до сих пор остаются незамеченными, например, на посл. стриме по коду заметил пару багов. Никто не заметил или все решили что так надо.
Давай всё же придерживаться рациональной точки зрения что всегда есть способ объективно проверить, есть оно или нет. В отсутствие исходников и возможности декомпилировать, это проверяется ботом который вместо человека играет в игру и прыгает с заранее чётко установленного расстояния и с меняющимся таймером, через яму. И всё, никаких мистических "не видно, не ощущается, никто это даже не кодил в игру, но оно существует".
Если вычесть исходный код, то проверить можно отключением и включением этой фичи в игре и дальнейшими плейтестами (стал ты чаще падать в пропасть или реже). Но ты же знаешь, вряд ли кто-то из разработчиков сделает такую возм-ть в игре, разве что в отладочных опциях и то не факт. По-другому ты это никак не проверишь - кто знает из-за какой именно особенности в одной игре ты чаще не успеваешь нажать кнопку прыжка чем в другой. Это могут быть какие-то программерские хитрости или просто кривой или более широкий коллайдер персонажа.
Я помню что когда вышел первый Styx в Стиме, многие игроки в отзывах жаловались что есть проблемы с прыганьем по платформам и зацепаниям за уступы (игроки просто часто не долетали до другого "берега"). Потом ситуация исправилась (я играл в игру до и после обновления). Кто знает что именно разработчики сделали.
Или померить тайминги нажатий и падений. Если часто падаем и совсем немного не успеваем нажать прыжок при этом, то вот и повод что-то поменять.
Для этого достаточно померить задержку ввода игрока, просто сказав ему нажать кнопку как только загорится красная лампочка (10-20 замеров). По-моему это где-то в среднем 0,15 секунды а разброс (0,1...0,2).
Я эту штуку добавлял в недоделанный в симулятор бокса чтобы что-то менять в мультиплеере, точно уже не помню.
Но время реакции самого игрока на лампочку и на сложную игровую ситуацию может быть разным.
Ты вообще читаешь что я пишу? БОТ должен играть в игру и имитировать нажатия кнопок на одном и том же интервале от платформы до пропасти, в разные моменты. Результаты, записанные покадрово на видео, сравниваются.
Справедливости ради скажу что я таки использовал в некоторых своих играх время койота (Cold Silence, Зеркальный), но особой супер-разницы я не заметил и никто не заметил. Как были сложные игры так и остались.
А вообще в платформерах не столь важно время койота сколько возможность регулировать высоту прыжка длительностью нажатия - вот это очень тонкий баланс.
В чем принципиальное отличие физически недостоверного коллайдера от "времени койота"? Точно такой же прыжок из "невозможного" положения
В том, что "время койота" палевно - явно видно, когда спрайт уже начинает падать.
не знаю. мне кажется "начал падать в пропасть" означает не совершенное уже перемещение вниз, а только изменение статуса объекта на "нет опоры", прямо перед непосредственным падением.
Дергать картинку, конечно, стремно
Если нет опоры, то от чего прыгать? Это тогда второй прыжок, который почему-то есть при почти-падении, но нет в обычном прыжке.
"нет опоры под видимым рисунком" что визуально слабоотличимо от "опираться одним пикселем". но под коллайдером опора еще есть и можно прыгнуть
Я вот гадаю, почему такая специфическая тема занимает людей, которые не делают платформеры? Когда вот твой платформер будет прототипироваться? Или уже был?
уже несколько, один с видом сверху, что позволяет кучу нестандартных механик. но сначала надо доделать основной проект(если это хоть как то влияет на обсуждаемую тему))
Платформер с видом сверху, надо запомнить...
В случае времени койота игра считает что опора под ногами персонажа пропадает не сразу, а только через короткий промежуток времени после того как она фактически пропала.
ммм, то есть при большом коллайдере он некрасиво будет стоять на краешке, а со койотом можно настроить чтобы аккуратно падал. И анимацию неустойчивого положения на время пока не падает. Этож еще лучше
Я тебе уже писал что по-правильному персонаж начнет падать только тогда когда он уже не сможет прыгнуть. Никакого "палева" с падением и дальнейшим прыжком не будет - персонаж чуть-чуть пройдется по воздуху.
Здесь вопрос далеко не только в управлении, у каждого игрока свои привычки. Удобство - этой тайминги дял каждого действия. Можно сделать управление как ты сказал, но оно не будет удобным.
Не всегда. Всё зависит от задачи. Вот в скроллшутерах персонаж всегда слева, чтобы была больше область вдимости для игрока. Так что композицию нужно строить не от того "в центре -главнее", а от того чтобы игрок видел игровую картину и был способен её понять распознать и пользоваться.
Очень примитивно. Чёрный текст на белом фоне СЛИШКОМ контрастный и глаза быстрее устают чем от серого текста на белом фоне. Что-то в духе #555555 на белом. Обводку тексту сделать технически сложнее, чем положить под текст плашку с нужным цветом, что и делают в 90% случаев.
Не выберешь ты такой звук никогда в жизни. Кому-то он всё равно будет неприятен. Но проблема есть, да. Я обычно воспроизвожу звук со случайным сдвигом по питчу.
Идеологически всё правильно, но вообще это палка о двух концах. В некоторых случаях экспиренс наоборот страдает из-за непредсказуемости поведения, особенно когда начинают ставить прыжки на пиксельхантинг. Время койта компенсирует прыжок во время движения, но когда ты стоишь на краю и прицеливаешься в каком-нибудь хардовом платформере типа мегамена - персонаж падает раньше чем игрок привык и время койота никак ничего не компенсирует. В общем - снова всё зависит от задачи и от реализации. Может быть в таких случаях стоит время койота делать только когда игрок прыгает с платформы с разбега.
Ууууууу. Уууууууу. Это тоже палка о двух концах. Возможно тут нужно не перегнуть. В Целесте например такой холлайдер что вообще херпрсосыш какой он на самом деле по размеру. Снова всё от задачи зависит. В булетхеллах его делают ОЧЕНЬ маленьким чтобы можно было от пуль уворачиваться, но при этом совершенно непонятно какого он размера на самом деле. А вообще хочется понимать габариты персонажа, особенно когда это ВАЖНО в игре. В DS, S&S очень хуёвые коллайдеры как у игрока так и у противников. Иронично что это стало "изюминкой" жанра. И ДС игры копируют часто вместе с кривейшими хитбоксами.
Звучит как бред. И я ни разу такого не видел в играх. И никакого ощущения выжившего не видел.
Чтобы исказить восприятие времени игрока? Не всегда хорошо, например если механика игры построена на таймерах. И да, никогда не применяйте этот метод для кулдаунов на механики игрока XD
Такое себе. И это настолько сложная логика, что новички вряд ли смогут её реализовать.
Только не забыть сделать эту опцию отключаемой. Я как любитель паззлов ненавижу когда мне пытаются давать подсказки. Поэтому в гробу я видал паззлы на мобилках например, где всё этим изобилует, а не обращать внимание на это становится всё сложнее. Даже в сраном мач3 эти подсказки нервируют и сбивают настрой принимать СОБСТВЕННЫЕ решения. В итоге может оказаться так что ты последовал совету игры и проебал, потом вообще перестаёшь доверять игре.
Тоже домафиновые приправы. Другое дело если это механически обусловленный АндерШот как в НавиКаст БаттлНетворке. А в голой механике - нет, гнать ссаными тряпками.
Это чтобы у игрока было время среагировать на летящих на него врагов и их выстрелы. В итоге все равно вы , не отвлекаетесь на свой самолет, а смотрите в центр экрана, где происходит основное действие - подбитие неприятелей, летящие на нас враги и их выстрелы.
Вот если бы враги могли лететь со всех сторон, тогда самолет был бы в центре экрана. Поэтому я и не написал что персонаж всегда должен быть в центре.
Если сама игра контрастная и состоит из ярких цветов, то выбирать полусветный цвет для текста - нелогично. Игрок от него будет все время отвлекаться. По поводу плашки - опять все зависит от ситуации. На ней лучше видно текст, но она сама собой загораживает часть экран. Уж лучше отвести отдельную область экрана под текст, под которой ничего не будет.
Дополнения хорошие, но все-таки ты углубляешься в детали. Если я тоже буду так углубляться в детали по каждому пункту, а не писать основное - статья получится огромная и новичок вряд ли осилит прочитать ее целиком или даже половину.
Вот именно. Эти механики делают программисты - пока ты не знаешь об их существовании, ты их не заметишь. Я не говорю что так делают во всех играх - ты все равно это не сможешь проверить, если только это не сделано явно или сами авторы не скажут. По крайней мере, в Assassin's Creed первом такое есть, но там это сделано явно.
Я например о времени койота вообще не знал, просто не понимал почему в одних играх легко прыгать с края платформы, а в других я постоянно падаю.
Все эти механики должны быть маленькими, малозаметными, чтобы игрок их не заметил и счет на свою везучесть и пряморукость.
То же самое. Смотря насколько ты замедляешь. Тут надо замедлять так чтобы это не было заметно невообруженным глазом.
Да это не сложно реализовать. Но точно помню что в какой-то F1 на Денди это было сильно заметно. Наверное потому что игра рассчитана на совсем детскую аудиторию, которая этого не заметит.
Конкретно этого - я не любитель пазлов. Помню что в Room после каждой минуты игра предлагала игроку новую, более явную подсказку. Ее можно просто не использовать, не нажимая на ?.
Потому что одни игры тренируют у тебя реакцию, а другие говорят "ну ладно, тормоз, и так сойдёт". Игрок должен давать команды на опережение, это и в реальной жизни всегда так.
Но нет же, я смотрю на весь экран! И на свой самолёт в том числе. Мне же нужно от пуль уворачиваться и бонусы собирать. Игрок смотрит на все части экрана равномерно.
К слову в некоторых платформерах сделано движение по экранам и камера за ним не следит. То есть персонаж находится не в центре экрана. И в этом есть смысл. На самом деле, камера следующая прямо за игроком - не самое удачное решение, т.к. окружение постоянно находится в движении, создавая дизориентацию даже у опытных игроков.
Какие детали то? Сделать тексту обводку - это детали. Кроме векторых движков я не знаю ни одного в котором это делается с попинка. А вот сделать плашку под текст - это в миллон раз площе и реализуемо везде с полпинка.
Если ты задрачиваешь игру - ты знаешь её механики и такие в том числе. Например, я точно знаю что в celeste есть время койта - я и сам видел и на стримах тоже видел. В DmC реалзиована другая UX-уловка - когда противники не в поле зрения игрока имеют приоритет по атаке последней очереди. Так же там есть механизм автоматического захвата цели по приоритетам (кто атакует - тот в приоритете). Эти все штуки чувствуются когда в игру играешь долго. И в этом случае всякие времена койота и прочая хуета начинают больше раздражать, т.к. хочется иметь больше контроля персонажа без автоматический дрисни. Но если делаешь игру для криворуких казуалов, то эти механики сделают игру более приятной для них.
Это не малозамтеные механики механики - это тупо костыли. Давай называть вещи своими именами. Всё это сделано только потому что геймдиз и левелдиз проебались. Эти механики могут быть и не нужны вовсе если в игре нормальный геймдизайн и левелдизайн заточенный под игровую механику. То что игрок падает с края платформы - это хуёвый левел дизайн, изначально ни разу не казуальный, заставляющий игрока долетать до другой платформы. А время койота - это костыль для того чтобы игрок смог долетать без проблем. Если делать нормальные прыжки и нормальные расстояния между платформами то время койота нахер не всралось никому. Вот зачем заставлять игрока прыгать с краю платформы? Просто делай левелдизайн так чтобы не создавать таких ситуаций.
время койота это не косяк дизайнера, а 30 фпс и инпут лаг и дружелюбность бога машины по отношению к игроку. Я несколько раз брался за классического принца и меня сразу же, до рейджквита, вымораживает необходимость жать прыжок за полсекунды до.
Так реализм же! В жизни тоже на бегу мгновенно не прыгнешь. С учётом ротоскопированной анимации и всего такого, я бы рассматривал это как попытку сделать "реалистично"
Надо просто делать игру про белок, а не про принцев. Не придётся тогда объяснять, почему прыжки резкие :)
Ой жизаааааа
Ты привёл игру, в которой механики построены на допрыгах. Хочешь делать казуально - ставь платформы ближе, в чём проблема? Проёб левелдизайнера. Но есть подозрения что игра специально не для казуалов делалась. Там и боёвка ведь непростая.
проблема в том что игрок запоминает интуитивно длину прыжка, и с койотом он 1 подбегает к пропасти которую перепрыгнуть невозможно, чувствует страх; 2 действует надеясь на чудо; 3 совершает невозможное. Гамма чувств которую не получить честно. Подход принца в этом плане слишком суров - мне, казуалу, всего лишь поразвлекаться надо. без АйОфЗеТайгеровщины
Нет не так. Может когда-то это и работало раньше, когда игроки решались ПРОБОВАТЬ. В большинстве случаев сейчас для казуалов это будет выглядеть так:
игрок запоминает интуитивно длину прыжка и с койотом он 1 подбегает к пропасти которую перепрыгнуть невозможно, 2 что захуйня? Куда идти? 3 Закрыл игру.
Это не для казуалов, это проёб левел-дизайна. Должно быть чётко видно, куда можно, а куда нельзя без всяких пробований.
О чём и речь - двигай платформу к игроку и никакое время койота не нужно. А ощущение что ты сделал невозможное казуалом не нужно. Это удел хардкорщиков как раз.
А почему хардкорщику должно хотеться переигрывать игру, если что-то где-то не угадал?
Хардкор, в моём понимании - это когда понятно, что делать, но сделать это не просто или требуется подумать, как это сделать.
Мышление хардкорщика и казуальщика ваще разное. То что казуальщик не осилит визуально - хардкорщик попробует. Вообще свойство хардкорщиков пробовать всё и обкатывать механику до тех пор пока она не будет отскакивать от кончиков пальцев.
Но зачем заставлять его падать в пропасть и умирать, чтобы узнать, можно ли её перепрыгнуть? Для обката есть безопасные зоны же.
Вы оба не о том говорите. Классический Принц Персии анимирован с помощью ротоскопии, а главная идея заключалась в том, чтобы все анимации были бесшовными. Из-за этого получилось, что прыгать с разбега можно только в конкретных позициях, не на каждом шаге (визуальном шаге ногой на полу), а только на каждом втором - с левой ноги в левую сторону, и с правой в правую (т. к. спрайты отзеркалены). Это уже некое анти-время койота, и не является валидным аргументом в текущем обсуждении. Просто автор ради кинематографичности убил отзывчивость управления до 8-16 пикселов вместо каждого 1 или хотя бы 2, и был таков. Но это и не стандартный платформер, а кинематографичный - они всегда были хардкорными, и совет АндреяМаста к этому жанру не относится. Какой новичок будет делать такую сложную вещь, даже не представляю. И левел-дизайн тут ни при чём, уровни как ни меняй - отзывчивости не появится.
Тем не менее в этой игре основной геймплей строится на допрыгах. Похуй на то что прыгнуть можно не каждый фрейм. Механика построенная на допрыгах какая угодно (в том же мегамене есть такие места) сама по себе хардкорна, и зачастую каких койотов ни прикручивай, хоть абстрактных хоть живых.
Там смысл в том что анимация привязана к плитам на полу. Если ты нажмешь кнопку прыжка, то персонаж прыгнет только где-то через пол клетки, когда закончится анимация начала прыжка. Аналогичная проблема есть в Flash Back, где мы можем перемещаться и останавливаться только дискретно, каждые полметра. Но там есть автопрыжок, правда сама игра об этом никак не говорит и игрок должен сам найти или догадаться как этим пользоваться.
Но время койота тут непричем.
Ну вот, Кситилон ниже все лучше меня объяснил.
Another World из той же группы игр. Blackthorne ещё.
Там не так много платформинга и прыжков.
Хейз ерунду сказал, в Гамаке точно так же рисуется инвертированным цветом 4 draw_text с x+1, x-1, y+1, y-1.
Чтобы получить более менее нормальную обводку нужно рисовать так по 8 направлениям. Но это не "сполпинка", представь сколько текста может потребоваться так рисовать, а значит нужно соответсвующие скрипты заводить. Речь то про новичков, а не про скилеров. Проще же просто rectangle нарисовать под текстом.
Обводку можно прямо в атлас шрифта ведь нарисовать, как это было реализовано во многих играх на первой и второй плейстейшн. Никаких лишних дроуколлов и просчетов.
Кстати верно, Хейз, можно нарисовать 8 раз в сёрфейс и подгрузить это как новый фонт. Но это уже совсем не пол-пинка, да. Да и зачем это кэширование там, где игра тормозит не от его отсутствия, а от других вещей.
Обводку можно шейдером делать, но если дело касается шрифта, то проще взять уже обведенный.
еще у юньки это одной кнопкой добавить компонент. хош обводку, хошь тень
Стандартные юнити UI эффекты использовать очень не рекомендую, производительность упадет очень быстро если их часто использовать.
https://github.com/mob-sakai/UIEffect - вот эти сторонние намного быстрее и у них больше настроек
:3 найс
надо кстати когда-нибудь про Кота Зиму выпустить вторую часть, где он будет мочиться)
В каком смысле мочиться? Хентай что ли какой?
стоп, а ты не смотрел последние ролики Death Stranding от Кодзимы?)
это же уже почти мем)
ЗЫ я конечно пошутил) зачем нам также делать как Кодзима xD
Понятно. Я какой-то недавний трейлер смотрел, где геймплей бегает мужик, и сеткой мир обтянут. А может, не смотрел, а прокликал быстро, вот и не увидел.
там в самом начале было, в гемплейном видео на геймскоме,
и это малость вынесло мозг :D
тролль Кодзима)
А там есть сюжетные последствия, если не попадёшь в цель? :)
хз, но шокировало, когда на том месте вырос гриб из Марио xD
Кот Зима Онлайн.
Битва за Интернет продолжается: пометьте как можно больше деревьев, пока это не сделал шустрый агент Смит!
лол xD
Зрение так не работает. Ну или ты сформулировал мысль коряво.
В один момет времени чётко видно небольшой участок изображения. Для оценки всей картины глазу нужно перемещаться по экрану (фиксируясь в некоторых точках), что занимает некоторое время.
Humans and many animals do not look at a scene in fixed steadiness; instead, the eyes move around, locating interesting parts of the scene and building up a mental, three-dimensional 'map' corresponding to the scene. When scanning immediate surroundings or reading, human eyes make saccadic movements and stop several times, moving very quickly between each stop. The speed of movement during each saccade cannot be controlled; the eyes move as fast as they are able. One reason for the saccadic movement of the human eye is that the central part of the retina—known as the fovea—which provides the high-resolution portion of vision is very small in humans, only about 1–2 degrees of vision, but it plays a critical role in resolving objects. By moving the eye so that small parts of a scene can be sensed with greater resolution, body resources can be used more efficiently.
Да, переферийное зрение тоже информацию даёт и есть память об уже отсмотреннных участках, но эта информация, скажем так, с "шумами".
Поле зрения 1, поле зрения 2, пример движения и фиксаций взгляда
Редко в какой игре действие происходит чётко в центре экрана. Какой-нить айзек и его подражатели - пресонаж может забуриться вбок или вверх, что смещает фокус игрока. А играх где камера чётко следут за игроком - игрок может быть в центре экрана, но внимание его большую часть времени будет распределно по краям откуда идут противники. Тезис " в центре - главное" - не работает практически. Только для паззлов каких-нибудь, где вся голооломка в центре, да.
Потому что "главное" - это не спрайт игрока, а некоторая обстановка, которой игрок должен управлять. Так же как в скроллшутерах главным является не кораблик игрока сбоку или снизу, а то, что происходит в общем - положение врагов, выстрелов и так далее.
Да. Но речь то в посте про центр экрана почему-то, хотя главное может запросто находится в любом другом месте.
Костыли - это когда ты совершил ошибку и не можешь ее исправить и вместо этого пишешь код, который эту ошибку будет обходить. В данном случае это именно программерские хитрости.
Левелдизайнер может сделать тебе такую большую пропасть, что ты что с доп. временем на прыжок, что без него - все равно не допрыгнешь.
Попробуй сделай такую "ерунду" даже в прототипе платформера и проверь частоту с которой ты не успеваешь нажать кнопку прыжка до и после.
Ровно затем же зачем вообще делают пропасти и платформы. Если их перепрыгивать слишком просто и они стоят слишком близко, они не несут никакого вызова. Но при этом игрокам не нравится постоянно падать в пропасть и начинать уровень сначала.
Я не делал тысячу раз уже(в той же Zzzz или в Коте). Так же как и делал несколько раз - в безмолвии и зеркальном. Не влияет время койота. Для меня лично точно. Впервые я об этом услышал от Боброва, который походу от кого-то услышал или статей начитался про эту ерунду.
Падают не потому что времени коёйота нет. Скорее всего хитбокс неправильно настроен и когда ты визуально не ждёшь падение персонажа, а он падает - вот это раздражает. И это никак не связано с возможностью ходить по воздуху или сделать олли после падения =)
В общем, совет этот про время койота из разряда бесполезных я считаю.
Нет, костыли - это когда ты делаешь быстрое решение вместо правильного. Сделать прыжок койота - решение более быстрое, чем по всем уровням платформы переставлять.
Вообще есть ещё более быстрое решение - тупо понизить гравитацию и/или повысить импульс прыжка, чтобы дальше прыгалось и не было нужды пиксель-хантить место для спрыгивания. Так что фигня это всё.
Unity
Как человек, в прошлом много играющий в DOOM (тот что 1 и 2), не мог пройти мимо. :) С тех пор моя раскладка в играх такого плана это: asdf и ПКМ. asdf - потому что не надо переставлять пальцы (это быстрее). А ПКМ - потому что выстрел это ответственность, нужно его делать обдуманно. :) Я это не к тому, что статья неверная, но часто порог вхождения в управление и удобство -- не синонимы. Например, пользоваться тайловыми (или как ещё их называют - мозаичными) wm удобно, но порог вхождения - выше, чем просто мышковозня.
Сорри, что не совсем по теме. :)
А что же тогда на левой кнопке мыши, открытие двери и прочие активации?
В думе классическом - ничего. В современных - прыжок. :)
Активация в думе классическом - повешена на ту же кнопку что и назад. ;)
Вот хитрожопый!
Это не я придумал -- мне рассказали. :) Кстати, во многих ремейках дума эта возможность (повесить на одну кнопку несколько действий) -- отсутствует. :(
А смысл?
За закрытой дверью нередко куча монстров.
Чтобы открыть дверь и при этом сразу отступать назад.
Тогда логично. Я просто подумал что это будет на лифтах (которые чаще всего пустые) бесполезно. Или просто переключателях у стены.
Для лифтов/переключателей оно безвредно абсолютно. Но сейчас уже вряд ли кто то будет это пробовать. :)
В десматче тоже было удобно. Пока дверь открывается уже отходишь для разгона. Ну и кнопок меньше -> больше спиномозговика. :)
А если стрельба хитсканами?
Думаю, только по требованию игрока, чтобы не задеть гордость игрока. Иначе может восприняться в контексте "я не думаю, что у тебя хватить мозгов справиться с задачей, так что вот тебе подсказка".
А как насчет такого банального звука как выстрел? Он явно будет частым, а вариации для него подбирать довольно сложно.
выстрел хорошо варьировать от окружения, чисто эхами, реверами.
В чем будет разница?
Если выстрел имеет видимую траекторию, будет очень заметно, если выстрел будет идти возле врага, но попадет по нему, хотя линия выстрела будет упираться в воздух. С прожектайлами проще - так как они двигаются, момент исчезновения может быть не настолько заметен.
Можно немножко варьировать высоту звука случайным образом. Хороший способ!
Когда у тя летил прожектайл ты же всеравно должен рекастить чтобы сгладить разрыв между кадрами, пользоваться чистыми коллайдерами геморройно
А вот некоторые звуки как подбор монеток вообще варьировать вредно. В сонике, например, это один и тот же звук. Зато у него длинное монотонное интро которое аккуратно продлевает интонацию при быстром подборе следующей монетки, создавая разнообразие.
Где ты такого совета набрался? Кто источник?
Тут я думал о том что озвучка частосовершаемого звука одним и тем же звуком, даже приятным - плохая идея. Через какое-то время этот звук все-равно начнет раздражать.
Тут ты прав. Вариант с подбиранием монетки - не подходящий, в Марио он озвучен.
Я имел в виде что не припомню чтобы в платформерах озвучивалась ходьба персонажей. Наверное потому что иначе бы звук ходьбы быстро надоел.
Здесь правильнее сказать что нет смысла озвучивать очевидные, не важные для геймплея и часто повторяемые вещи. А все важные - отображать анимацией и/или звуком (подбирание монетки).
Кстати, вспомнил, что в THPS и ее продолжениях была забавная разновидность "времени койота" - там можно было после грайнда сделать олли от воздуха, грубо говоря. Неинтересный факт
Обновил статью. Обвел зеленым цветом пункты, которые изменились или добавились.
Хорошие советы, плюсую.
Жаль только что они не помогут ни одной игре. Пушто играют в интересное а не в то где есть удобный гуй.
Помогут большему количеству людей поиграть в интересную игру.
P.S. Кстати, Кситилон, ты в игноре, так что можешь не зудеть.
Но помощь эта по сравнению с их отсутствием, для интересной игры, будет несравнимо менее важной, чем сама интересность игры. А большинство игр сейчас - не интересны.
Очень дельное замечание, если по правде
Спасибо. Та моя фраза конечно рассчитана на лёгкое троллирование, но это не мешает содержать и реальную правду.
Проверка: тыкаешь наугад в стим на любую игру которую ты НЕ хочешь покупать. И мысленно подставляешь в неё все правильные советы по ux. Станет после этого игра лично для тебя соблазном для покупки? Вряд ли.
Проверка 2. Берешь игру которая для тебя совершенно точно хорошая. И мысленно убираешь из неё скажем половину всех правильных решений хорошего ux. Перестанешь ли ты в неё играть? Думаю нет.
Так что советы Андрея в самом деле верные, но нужно понимать что их вес в успехе игры весьма мал.
Про "проверку 2" я тут где-то даже писал что-то похожее, так что тут согласен.
Опять же, "мысленно представить" - это не истина в посл. инстанции. Ты представишь, скажешь что перестанешь играть, другой на твоем месте сделает то же самое и даст прямо противоположный ответ.
Представлять и предполагать заранее нужно, но то, что ты представил, может не совпасть с результатом когда ты его сделаешь. Обычно получается хуже, чем ты ожидал, потому что во время реализации ты упустил или отмел важные детали, которые делают игру лучше, но слишком гемморойны для тебя как разработчика.
Не я а ты сам. Сам себе ведь доверяешь?
Вот в какую игру ты играл последнюю ну хотябы часов 5 чтобы наиграл. И пройди по своему списку ux, представь что половины нет.
Проверка хороша тем что ты сам всегда можешь прочекать истинность этого дела.
По-моему проще выбрать любимую игру, найти в ней косяки UI/UX и понять, что игра всё равно остается для тебя хорошей.
Проверка 2 ложна так как от хорошей игры ты получил уже синергитично больше чем получил бы от нее же с плохим UX.
Проверка 1 плоха так как либо не твой жанр, либо откровенно плохое исполнение видное и без погружения в игру.
Опыт 1 - я не смог играть в Горьки-17 при всей его культовости и том что это мой любимый жанр только из-за отвратительного UX.
Опыт 2 восьми(или одиннадцати)минутная непроматываемая заставка в FF12 реально пугает ее запускать. Это пара сессий в ганджеоне или айзеке.
текст Андеймаста не о том как сделать отличную игру, а о том как не испортить хорошую. Утрирование и излишние ожидание не принесет читающему пользу. В наше время когда игор миллионы и нужно за два часа убедиться что ты не зря ее купил неудобное управление легко может стать решающим
А с третьей стороны если у тебя уже есть хорошая игра - то там уже всё хорошо с ux.
Прямо всё хорошо, и даже на отлично стараться вообще не надо.
Это слишком сильно сказано. Даже в очень хорошую стратегию игрок не будет играть если не разберется в интерфейсе, а он удобный и понятный интерфейс там очень нужен.
Любой игре поможет удобный интерфейс и удобность для игрока. А вот если игра не интересная - дальше этого игрок не пройдет.
Без конкретных примеров легко говорить что-то пальцем в небо.
Кетчуп (catch up) сам по себе жопоподрывающий костыль, от которого бомбит. Особенно если добавлен грубо. Но есть более нозящие приемы в гонках.
1. Сброс скорости лидера ботов перед самым финишем.
2. Если трасса имеет сокращения, то боты ими на первых кругах пользуются, а на последнем начинают игнорировать, давая возможность игроку вырваться вперед.
Эти приемы выглядят, как метко подметил камрад lentinant, задевающими гордость игрока. Получается не я, как игрок, благодаря своим скиллам и тренировкам пришёл первым к финишу, а игра мне позволила выиграть. Лично у меня вот такие ощущения. Поэтому, когда в гонках замечаю подобные кривые приемы бездарей, возомнивших себя великими "гейдизайнерами", бросаю играть.
Я думаю, это ещё можно считать как туториал - наблюдая за противниками, удобно узнавать, что вообще можно.
и чему тебя учит их бросание пользоваться срезами?
Бросание даёт возможность выиграть. Можно было вообще идеально держать трассу, и игрок бы никогда не выиграл.
В любом случае, киви прав и выглядит это как будто игра делает одолжение игроку и поддаётся. Я тоже такое не люблю. Не только в гонках но и вообще в туториалах это частый ход, да. Враги начинают вести себя заскриптовано: специально промахиваться или отнимать игроку нарочито мало ХП и т.д. Это прям раздражает.
Да, ведь это и есть одолжение, просто слишком явное. Т.е. одолжения сами по себе - это норм, т.к. у людей время реакции больше компьютера.
Киви настолько прав, что даже я его плюсанул, несмотря на разногласия по огромному ряду других вопросов.
истина истинная. остается только придумать почему множество геймдизов эпик уровня продолжают применять кечап, причем кечап палевный, в самых различных вариантах
Ну так понятно же - миллионы мух не могут ошибаться. Массам нужны игрушки, а не игры. Где легко чувствовать своё превосходство, не отягощая себя рефлексией о его мнимости.
а создавать игры нужно только для элитки?
и будто бы превосходство в играх без кечапа подлинное. Просто чуть менее заметно.
Я бы обобщил это правило с учетом замечания: "Играй с игроком в поддавки, но только до тех пор, пока это не бросается в глаза"
Элитка котирует ТОЛЬКО игры, а не игрушки. Создавать можно для кого угодно, это выбор каждого автора.
Справедливо конечно, все мы побеждаем только потому что CPU притворяется глупым. Замечание хорошее.
Кстати, добавь пункт: если игра по каким-то причинам не идёт, в игре появляются вещи, препятствующие прохождению игры, то он должен самостоятельно исправлять свои косяки (так как это его игра), а не игрок (разраб же заинтересован, чтобы в его игру играли). А то такие перфомансы встречаются повсеместно (типа фразочки "смени шрифты" и т.д. и т.п.), что я мол игрок должен исправлять косяки разработчика.
Как видевший много подобных случаев, скажу, что надо добавить "на платформе указанной версии", потому что под Windows XP мало смысла что-либо чинить со стороны разраба в 2019 году (который тоже почти закончился). Игра должна запускаться на конфигурации, которую будет вменяемо поддерживать.
А что? Ты опять только что встретился с таким?
Нет, но такое бывает очень часто.
В стратегиях чаще правая кнопка, потому что правая только жмёт, а с левой выполняют сложные действия (перетягивания).
С поддержкой геймпада в Windows: DirectInput — всегда, XInput — если есть смысл жать на оба спусковых крючка. Ну или если библиотека его поддерживает. Ну или если хотите заморочиться.
Например, Undertale не поддерживает XInput, но это ему и не надо, с тремя рабочими кнопками. А вот Hyper Light Drifter или любая гонка должна.
Про геймпад я собираюсь написать отдельную статью.
Еще планирую отдельную статью про сохранения.
Если в игру вводится новая для игрока механика, то создайте комфортные условия для её изучения. Не заставляйте игрока переигрывать предыдущие части уровня, если он не справится. И уж тем более не делайте с ходу челлендж на скорость использования этой механики.
Это ты уже углубляешься. Про обучение лучше писать отдельно. И про UX так-то надо тоже писать отдельно.
Здесь я старался написать то, о чем начинающие авторы забывают.
У нас было другое: если появляется новый рядовой враг, пусть игрок освоит его в простой обстановке.
Так если неначинающие забывают, то начинающие - тем более. Это как раз связано с началом игры и вхождением в неё.