Об этом проекте

Kül ve Kıvılcım — это турецкий roguelike-декбилдер, который работает в браузере и не требует никаких отдельных файлов или внешних ресурсов. В игре представлены три акта, разветвленная карта, 87 карт, 33 врага, 38 реликвий, 18 зелий и 16 событий. Весь визуал основан на SVG-силуэтах; иконки карт генерируются автоматически из их ID; звуковые эффекты и музыка синтезируются в реальном времени с помощью WebAudio — в репозитории нет файлов .png или .mp3. В центре игры находится уникальная механика под названием «Incandescence»: она накапливается во время боя и не исчезает между ходами. Некоторые карты генерируют Incandescence, в то время как другие тратят весь накопленный ресурс для обеспечения масштабируемых эффектов (например, Blast: 4 единицы урона за каждую единицу Incandescence). Игрок должен стратегически выбирать момент для его разрядки. Три пути используют этот ресурс по-разному: Огонь (высокий урон через взрывы), Пепел (медленное, но экспоненциальное истощение) и Железо (преобразование ресурса в защиту). Карта, награды и здоровье врагов воспроизводимы при использовании одного и того же seed. С точки зрения архитектуры, движок и интерфейс полностью разделены: модуль Combat является синхронным, не взаимодействует с DOM и работает путем записи логов; UI воспроизводит этот лог с задержкой. Это позволяет тестировать и балансировать движок в Node.js. Визуально враги представлены в виде написанных вручную SVG-силуэтов; печати карт выводятся из ID; а эффект горения создается с помощью фильтров feTurbulence и feColorMatrix. Музыка генерируется в ладу Hicaz, при этом уровни слоев и темп меняются в зависимости от ситуации. Система тестирования является комплексной: более 55 юнит-тестов гарантируют, что каждая карта, враг, реликвия, зелье и событие выполняются хотя бы один раз. Симуляции проводят по 250 прохождений для каждого уровня сложности, сообщая о проценте побед, экономике здоровья и распределении смертей. Диагностический запуск измеряет каждое столкновение отдельно. Баланс корректируется на основе измерений: процент поражений в битвах с боссами при использовании эталонных колод составляет от 0% до 7%. Автоматизированный игрок в среднем достигает 20 из 45 этажей, что вознаграждает навык. Существует три уровня сложности: Traveler, Ash Oath и Nightmare. Горячие клавиши: карты разыгрываются клавишами 1-9, Space/Enter завершают ход, D показывает колоду, а Esc закрывает меню. Карты можно разыгрывать перетаскиванием или кликом; для карт с целью сначала выбирается карта, затем враг. Приветствуется вклад сообщества: добавление новых карт или врагов осуществляется просто. Наиболее ценным видом вклада является обратная связь по балансу — информация о том, какие битвы скучны, какие карты никогда не используются или в каких местах возникли трудности. Лицензия MIT; сторонние ресурсы не используются, за исключением символов emoji.