Читаемость и честность
Игрок должен понимать, за что умер. Телеграфы, время реакции, контраст и хитбокс, который не обязан совпадать с картинкой
Тест честности один: умирая, игрок винит себя или уровень? Всё на этой странице сдвигает ответ к "себя"
Телеграф
Опасность должна быть видна до того, как станет опасной
Форма и коллайдер - два отдельных поля одного объекта. Поэтому предупреждение делается просто: луч с формой, но без коллайдера светится и не бьёт. Через полсекунды рядом появляется второй, уже с коллайдером
Обратное тоже законно: невидимая стена - это объект без формы, но с настоящим коллайдером
Невидимая опасность честна только в одном случае: игрок уже знает, что она там, потому что уровень показал её раньше
Время реакции
Человек замечает опасность и реагирует примерно за 0.2-0.25 секунды в лучшем случае. При 60 кадрах уровня в секунду это 12-15 кадров
Опасность, которая появляется меньше чем за 12 кадров до столкновения (например, за 10), с первого раза не проходится. Её можно только выучить. Когда это допустимо - Сложность и кривая › Заучивание
Контраст
Опасное должно отличаться от фона сильнее, чем декор. Самый частый провал - тёмный снаряд на тёмном фоне, причём ровно тогда, когда фон ещё и меняется
Берите цвета и фона, и снарядов из темы. Тогда одна правка темы сохраняет контраст везде. Вбитые руками цвета сохраняют его только до первой правки
Одна опасность - один облик
У каждого вида опасности должен быть свой узнаваемый облик, а если вы используете звук, то и свой звук. Когда игрок выучил, что такая штука бьёт, всё, что выглядит так же, тоже должно бить
Не противоречьте своим же сигналам. Если что-то похожее на декор в одном месте убивает, игрок перестаёт доверять всему, что похоже на декор
Структура важнее плотности
Экран, полный движения, читается как шум, а не как сложность. Игрок не различает 40 снарядов. Он различает стену с дыркой, волну, спираль, коридор
Восемь объектов со структурой сложнее и честнее, чем сорок без неё
Уровень всегда играется одинаково
В уровне нет условий, счётчиков и триггеров, которые реагируют на игрока. Всё записано на таймлайне. Случайность тоже не меняется: одно и то же место выдаёт одни и те же числа на любом устройстве
Поэтому уровень нельзя сделать реагирующим. Зато и нечестным случайно он не станет, только намеренно
Между запусками меняется только то, что выбирает игрок: жизни, скорость воспроизведения и чекпоинты. Подробнее - Сложность и кривая › Что выбирает игрок