WATERFALL / ВОДОПАД
Физический Breakout в водопаде · Гравитация + течение · HTML5 Canvas
Концепция

Водопад — это физический ремейк Breakout, где классический «мячик» заменён на камешек, падающий сквозь водопад. Платформа внизу отбивает камень вверх, но на его путь постоянно действуют две силы: гравитация тянет вниз, а течение воды толкает вбок. Камень летит не по прямой, а по параболе.

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

Ключевые оригинальные механики
🌊 Параболическая физика

Камешок подчиняется трём силам одновременно: гравитация (вниз), течение водопада (вправо или влево), импульс от платформы (вверх под углом). Итог — полёт по параболе. Угол отскока от платформы влияет на форму траектории сильнее, чем в классике.

🎯 Зарядка с прицеливанием

Камешок «сидит» на платформе. Игрок удерживает пробел — растёт сила выстрела, а пунктирная линия показывает предполагаемую траекторию с отскоками от стен. ← → наклоняют платформу, меняя угол вылета. Отпускание — выстрел.

🔄 Изменяемое течение

Течение воды — не статичный ветер. Оно имеет слои: внизу поля течение сильнее, вверху слабее. Кроме того, при разрушении блоков вода «прорывается» сквозь бреши, создавая локальные водовороты и струи, которые меняют физику уровня прямо во время игры.

🪨 Каскадное обрушение

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

💦 Водяные вихри

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

Управление
ДействиеКлавиатураТач / Мышь
Движение платформы← → / A DПеретаскивание пальцем / мышью
Наклон платформы (угол)↑ ↓ / W SСвайп вверх/вниз во время прицеливания
Заряд силы + выстрелУдержание Пробел → отпусканиеУдержание → отпускание
Форсированный отбивShift + отбивУдержание вторым пальцем
ПаузаP / EscКнопка паузы
Типы блоков
Песчаник
Разрушается с 1 удара. Лопается с облаком песка. Самый лёгкий, но часто держит сверху тяжёлые блоки.
Гранит
2 удара. При первом ударе появляется трещина. Тяжёлый — если стоит внизу, держит всю конструкцию.
Ледяной глыбник
1 удар, но при разрушении выпускает ледяную струю, которая на 3 секунды замораживает платформу (не двигается).
Заросли мха
1 удар. Поглощает энергию удара — камешок отскакивает очень слабо, почти падает вертикально.
Газовый пузырь
Не разрушается ударом. При попадании взрывается, толкая соседние блоки и камешок волной. Можно использовать как бомбу.
Камень на корне
Не разрушается. Держит ряд блоков от падения. Чтобы убрать — нужно разрушить все блоки, которые он поддерживает.
Бонусы (выпадают из блоков)
🫧 Пузырёк воздуха
Камешок получает подъёмную силу на 5 секунд — летит выше и медленнее падает.
🪨 Железное ядро
Камешок становится тяжёлым. Пробивает гранит с 1 удара, но падает быстрее и дальше.
🌪️ Водоворот
Создаёт на поле временный вихрь, который закручивает траекторию. Можно использовать для трюковых попаданий.
🌧️ Ливень
Сверху падает 3 дополнительных камешка одновременно. Каждый управляется своей физикой.
Режимы игры
Каменоломня
Классический режим: 30 уровней с нарастающей сложностью. Новые блоки, сильнее течение, сложные каскады. Цель — разрушить все блоки.
Бескрайний поток
Бесконечный режим. Блоки постоянно спускаются сверху. Нужно не дать им достичь воды. Рекорд по времени и счёту.
Точный бросок
15 миссий с ограниченным числом камней. «Разруши только гранит», «Используй газовый пузырь», «Попади в блок за вихрем».
Тихая заводь
Расслабляющий режим без поражения. Только физика, брызги и звук воды. Для медитации.
Визуальные эффекты
Аудио
Музыка
Спокойный фортепиано + струнные с природными элементами. Усиливается ритмично при серии точных попаданий. В режиме опасности — добавляется тёмный бас.
SFX (процедурный)
Web Audio API: плеск при касании воды (filtered noise), треск камня (crackling + low thud), свист ветра при полёте (sine sweep), булькающие пузыри (bubbling oscillator).
Технический стек

HTML5 Canvas 2D — рендер воды, частиц, блоков, траекторий.

Физика камешка — Euler integration: vx, vy, gravity (0.15), flowForce (0.02–0.08 по слоям), dampening (0.995).

Предсказание траектории — отдельный симулятор на 120 шагов без отрисовки, результат — массив точек для пунктира.

Web Audio API — процедурный синтез всех звуков. Фоновый шум воды через BufferSource + фильтры.

localStorage — рекорды, прогресс уровней, разблокированные скины камешка.

Адаптивность — на мобильных платформа шире, прицел упрощён, течение слегка ослаблено.

Скины камешка

Разблокируются за достижения:

Речная галька Янтарь Лава Ледяной осколок Жемчужина Метеорит
Waterfall / Водопад — Game Design Document v0.1 · Для служебного пользования