35 игр, которые прокачивают логику, алгоритмы и радуют умный мозг
Пишет Анастасия: Есть «Super Mario», признанная классика видео игр. Есть «Doom», который запускают на чайниках и тестах на беременность. Есть супер-популярные по статистике twitch.tv игры («League of Legends», «GTA V», «Fortnite», «Apex Legends») которые стримят пятая часть всех стриммеров.
А есть игры, на которые очень мало обзоров, но они супер крутые — игры про алгоритмы. Игры, в которых можно кодить на ретро-компьютере; игры, которые надо взламывать; игры, где можно программировать контроллеры или поведение персонажей; игры, где можно создавать свою игру внутри игры.
Под катом подборка классных игр про алгоритмы за последние 10 лет. Если что-то упустила — буду рада дополнениям.
Платформы
Проекты, в которых встречаются слова «платформа», «игры» и «программирование», чаще рассчитаны на детей (вроде CodeCombat или Code.org). Я все же решила упомянуть одну платформу, которая рассчитана на взрослую аудиторию.
CodinGame
CodinGame — это компания, которая создала одноименную платформу, на которой можно поиграть. Платформа поддерживает 25 языков программирования. Можно самому в головоломках поковыряться, есть раздел training, можно с друзьями поиграть в multiplayer. На Хабре некоторые даже участвовали в челленджах с этой платформы.
Судя по отзывам, для некоторых поиграться на CodinGame — это вместо перекура на работе. Вот тут уже писали (Поиграл == покодил) про игры, которые для «прокачки скиллов», и упоминали CodinGame. В статье по ссылке еще много подобных игр, так что я больше не буду упоминать «обучающие» программировать игры.
Игры от Zachtronics Industries
Есть ребята, Zachtronics Industries, которые специализируются на играх-головоломках, играх, связанных с программированием и инженерией. За последние 10 лет они выпустили около десятка игр, 7 из них я включаю в подборку, т. к. они больше других связаны с алгоритмами или программированием. Кстати, все «инженерные» игры разработчики предоставляют школам и некоммерческим организациям бесплатно.
SpaceChem (2011)
Это одна из первых игр Zachtronics, игра-головоломка, в которой разработчики попробовали объединить химию, программирование и космических монстров.
Игрок должен создать определенную молекулу, запрограммировав два удаленных манипулятора, которые в игре называются «waldo». Эти уолдо можно запрограммировать с помощью визуального языка программирования.
SpaceChem был первой попыткой разработчиков создать коммерческую игру после ряда бесплатных Flash-игр. Игру перевели на русский язык.
SpaceChem был включен в некоторые академические институты для преподавания концепций, связанных как с химией, так и с программированием.
Трейлер:
Infinifactory (2015)
В этой игре тоже есть производственные линии, как в SpaceChem, но в 3D. По лору игры вас похитили инопланетяне, вы строите для них производственную линию и пытаетесь при этом не умереть. Время от времени вы находите трупики своих предшественников, аудиозаписи с их предсмертными истериками, или видите их оранжевые скафандры в окно иллюминатора. Игра работает на PS4.
Код тут писать не надо, вы строите производственную линию из блоков, которые могут передвигать, поворачивать и объединять объекты, т. е. функции блоков заранее определены. Нужно выстроить блоки в правильном порядке, чтобы выполнить задачу. Игра предлагает задействовать минимальное количество блоков при построении линий и показывает результаты друзей из Steam, кто уже проходил эту игру.
Вот трейлер игры:
TIS-100 (2015)
TIS-100 — это головоломка для программистов. Игроку предлагается написать код на упрощенном ассемблере для выполнения задач на вымышленном виртуальном компьютере 1970-х годов, который был поврежден. У виртуального компьютера 12 узлов, часть из них не работает в начале игры. Игроку нужно переписать код, исправить ошибки и решить головоломку. После каждого этапа игрок может сравнить свои результаты с результатами всех игроков. Игра собирает статистику, сколько строк кода, сколько узлов, сколько тактов игроки использовали при решении головоломки.
Вот на Хабре писали про TIS-100.
Трейлер:
Shenzhen I/O (2016)
По лору игры вы — новичок, приходите в китайскую компанию, набираетесь опыта. Первый экран игры — это рабочий стол сотрудника, где он по электронной почте получает инструкцию и первое задание — создать дизайн электронного устройства. Вы пишете прошивку, прошивка проходит тесты, а после вы получаете письмо, сколько такое устройство будет стоить, сколько девайс жрет электричества и сколько строк кода в вашей прошивке. И время от времени недостаточно пройти нагрузочное тестирование успешно. Чтобы устройство отправилось в производство, его придется оптимизировать. Короче, игра про то, как безопасно, дешево и сердито создать свой Flipper Zero.
Трейлер:
Opus Magnum (2017)
Если SpaceChem была про химию, то это игра про алхимию. В игре есть сюжетная линия, по которой талантливого алхимика принимают на должность главного алхимика в старейший влиятельный род, но она скорее для красоты.
На каждом этапе игроку надо построить систему, которая создает алхимический элемент. Игроку дают какое-то количество реагентов для проведения опыта, карту трансмутаций, которая объясняет, как превратить в золото ртуть, и неограниченное количество манипуляторов, которые влияют на стоимость систем, что создает игрок. Систему надо «запрограммировать» с помощью визуального программирования. По традиции игр Zachtronics, чем меньше шагов, чем меньше элементов в системе и чем меньше кода, тем лучше.
Трейлер:
Exapunks (2018)
Симулятор программиста, c сеттингом вокруг культуры хакерства 1990-х.
Альтернативные 90-е в Сан-Франциско. Вы больны странной болезнью, превращающий части вашего тела в части компьютера. Чтобы получить дозу лекарства и выжить, вам надо заработать $700 в день. Вы выполняете первое легальное задание и получаете аж 10 центов.
Или вы можете начать взламывать банки, университеты, фабрики, писать вирусы. Информацию об этом можно найти в подпольном журнале «Trash world news». По сути вы получаете руководство к игре, ребята даже предусмотрели вариант для тех, кто захочет заморочиться, и напечатать себе бумажную версию этого руководства.
Программирование происходит на подобии ассемблера. Игры нет на русском языке, так что вот самый внятный replay на английском, что я нашла:
Трейлер:
MOLEK-SYNTEZ (2019)
Это головоломка, как Opus Magnum, только действие происходит в будущем, 2092 год, и создаете вы не алхимический философский камень, а реальные органические соединения: бензол, ацетон, соляная кислота. Иногда даже наркотики.
Стилистически игра очень похожа на TIS-100, то же минимальное количество эффектов в игре. На эту игру нет официального перевода, но есть русификатор. По традиции этого производителя, в игре есть лидерборды, чтобы сравнивать, насколько оптимальны решения игроков. Вот тут чувак рассказывает про игру подробно, но на английском. Видимо, русскоязычное сообщество не очень активно играет в MOLEK-SYNTEZ.
Трейлер:
Инди-проекты
4 законченных инди-игры про алгоритмы и визуальное программирование.
Else Heart.Break() (2015)
Игра-песочница, в который вы можете писать код. Прям внутри игры. Написание кода — не основная механика, эту игру можно пройти, плохо разбираясь в программировании и выполняя основные несложные квесты по инструкциям. Но если вы умеете писать код, играть становится в разы интереснее.
У вас есть главный персонаж по имени Себастьян, он переезжает в новый город, где по началу все выглядит как обычная игра бродилка. Можно ходить по мрачному ретро-миру, разговаривать с людьми и выполнять квесты. Но если вы разбираетесь в программировании, то можете менять мир под себя. Почти любые объекты, кроме людей, можно запрограммировать. Программирование в игре происходит на странной смеси Python с чем-то.
Ссылка на Стим:
store.steampowered.com/app/400110/Else_HeartBreak/?l=russian
Вот обзор:
А вот трейлер к игре:
PonyIsland (2016)
Игра про поняшу. Самая жуткая игра про поняшу, что я видела. PonyIsland создал канадский инди-разработчик Дэниел Маллинс.
Игрок оказывается перед экраном сломанного старого игрового автомата, и вынужден играть в бесконечный забагованный раннер. Чтобы выиграть, надо «починить» игру. Очень инди проект, с минимальными графическими средствами. По сюжету игрок получает доступ к псевдо-коду игры, и с помощью визуального программирования (переместиться вниз, зациклить, остановить и т. д.) обходит забагованные фрагменты кода, или получает достижения в игре. И вообще суть игры — спасти свою душу от Дьявола.
Трейлер:
Human Resource Machine (2015)
Игра от Tomorrow Corporation для тех, кто любит алгоритмы. Игрок появляется в качестве сотрудника корпорации, где он должен решать задачи, связанные с перемещением и хранением зеленых коробочек с числами. Игрок постепенно узнает команды, вроде «inbox», «outbox», «copyto», «add» и т. д., чтобы выполнить задачу — по сути, просто перекладывать коробочки с места на место. Игрок проходит около 40 уровней головоломок, каждый уровень — год жизни в офисе.
Трейлер:
7 Billion Humans (2018)
Продолжение предыдущей части, в том же визуальном оформлении, с похожими головоломками. Теперь вы автоматизируете не свои действия, а действия своих подчиненных, которые мечтают о работе. Да, их работа тоже сводится к тому, чтобы перетаскивать зеленые кубики с числами.
Трейлер:
Baba Is You (2019)
Инди проект финского разработчика. У игры какие-то супер отзывы в Steam. Игра требует, чтобы вы манипулировали правилами, чтобы персонаж игрока мог достичь определенной цели. Baba — это вы, точнее вот эта белая клякса-кролик на экране. Но вы можете поменять правила и стать крабом. Или стеной. Не так важно, главное успешно выполнить условие головоломки.
Игра содержит более 200 уровней и получила несколько инди-наград, а некоторые обозреватели игр считают ее одной из лучших видеоигр-головоломок за последние годы. Игра выпущена для ПК, Nintendo Switch и на мобильные устройства.
Трейлер:
Игры-редакторы
Понимание алгоритмов и логики дает преимущество в освоении редакторов, вроде тех, что я упоминаю ниже. Редакторами могут пользоваться даже дети, есть встроенные туториалы. Но взрослому, кто знает программирование, будет проще и быстрее разобраться с инструментами и начать создавать свои игры.
Dreams (2020)
Раньше Media Molecule выпускали игры, со встроенными редакторами, но в этот раз они выпустили редактор, со встроенными играми. Получилась целая гейм-студия, с обучающим руководством, 3D-моделированием, визуальным программированием, аудио-студией. Короче, целая игра по созданию игр. Творческая песочница, где все скрипты создаются с помощью блок-схем.
Трейлер:
Game Builder Garage (2021)
Редактор для игр на Nintendo Switch. Можно создать шутер, головоломку, трехмерный платформер. Игру совсем с нуля сделать не получится, в редакторе представлен конечный ассортимент объектов, но зато визуально игра будет напоминать игры Nintendo.
По версии Nintendo, игра состоит из «Нодонов» — существ, со своими характеристиками, которые можно настроить. Можно разместить на экране героя, наделить его желаемыми параметрами, задать окружение и способы взаимодействия. С помощью Нодонов можно создать вроде аналога логического интерпретатора. В приложение разработчики включили кампанию по обучению на 7 уроков и проверочные чекпоинты.
Трейлер:
Turing Complete (2021)
Игру выпустили в октябре прошлого года, пока она в раннем доступе, но уже около 600 положительных отзывов на Steam.
Практически с нуля (начиная с проводов и простейших бинарных блоков) строим процессор и программируем его. Вначале логические блоки, далее сумматоры-счетчики, потом компараторы, мультиплексоры-демультиплексоры, регистры, АЛУ… процессор… свой ассемблер и программируем его на решение простых задач. Визуально в теплом ламповом стиле 80-х (шины данных, бегающие по ним байты-биты и т.п.). Помимо собственно конструирования блоков и их программирования на некоторых задачах существуют ограничения на количество элементов или «площадь кристалла» для размещения схемы.
Трейлер игры
The Nand Game
Бесплатная игра в браузере, где вы собираете компьютер, начиная с базовых компонентов.
На каждом уровне нужно создать компонент, который ведет себя в соответствии со спецификацией. Затем этот компонент можно использовать в качестве строительного блока на следующем уровне.
Игра не требует каких-либо предварительных знаний о компьютерной архитектуре или программном обеспечении и не требует математических навыков, кроме сложения и вычитания.
From NAND to Tetris
Два обучающих курса («Nand2Tetris Part I» и «Nand2Tetris Part II») от предыдущего проекта, оба доступны бесплатно на платформе Coursera.
Курсы «Nand to Tetris» преподаются более чем в 400 университетах, средних школах и учебных лагерях. Студенты, которые их проходят, варьируются от старшеклассников до аспирантов и инженеров Google.
MHRD ( 2017)
Станьте инженером по оборудованию, создайте свой собственный процессор по технологии 80-х годов, пишите свои проекты на языке аппаратного проектирования MHRD. Короче, по картинке видно, что игра для дерзких парней, которым плевать на графику.
MHRD — отличная игрушка, поддержу (эх, будет ли когда-то продолжение, намёк на которое, помнится, где-то там в титрах мелькал?) Печалит только, что некоторая часть заданий с последовательностной логикой подвержена хакам, основанным на несовершенстве тестов. Поэтому иногда «лучшие» результаты других игроков, в которые игра непременно ткнет носом после выполнения задания, на практике честным путём не могут быть достигнуты.
Трейлер игры
Prime Mover (2018)
Можно создавать печатные платы, чтобы решать задания головоломки. Как в играх от Zachtronics, есть сравнение результатов с друзьями:
преобразование входа в выход, похожа на Opus Magnum
Геймплей трейлер
Robo Instructus (2019)
Инди-игра, где вы программируете робота на вымышленном языке программирования. Цель каждого уровня — довести робота до выхода, само собой, постепенно выполнить задание становится все сложнее.
Забавный момент — уровни состоят из треугольных тайлов, а не квадратных как во многих других играх.
На Хабре ее советовали тем, кто про алгоритмы на JavaScript.
Трейлер игры
Silicon Zeroes (2017)
В игра есть сюжетная линия в сеттинге 60-х в Кремниевой долине. В этой головоломке можно создавать электронику из множества простых компонентов, таких как сумматоры, защелки и мультиплексоры. Но на Steam есть критические отзывы, которые ругают игру за игрушечность и технические неточности.
Геймплей трейлер
The Signal State (2021)
Визуальная версия MHRD в сеттинге постапокалипсиса. 40 головоломок, которые игрок проходит за техника. Техник получает задание восстанавливая жизнь на одной из старых ферм и для этого должен перебрать всю нерабочую технику и восстановить ее. В начале игры есть обучалка. В отличии от последовательного MHRD, в Signal State нет возможности на следующих уровнях использовать свои компоненты из предыдущих.
Трейлер игры
Colobot (2001)
Ностальгические нотки: игра для детей от 10 лет, для обучения программированию. 3D стратегия в реальном времени, где вы программируете своих юнитов (ботов) на языке CBOT, который похож на C++ и Java. По сюжету игры, вы должны найти новую планету для жизни и выживания.
Прочитав заголовок, сразу вспомнил игру, с которой еще в школьные годы начиналось мое становление как разработчика — Colobot.
Сколько времени я там провел за экспериментами и программированием ботов на почти-С++, даже и не знаю.
С тех пор она еще и в open-source перешла.
Трейлер игры
Bitburner (2021)
Вышла буквально месяц назад и уже собрала на Steam 1 500+ крайне-положительных отзывов. Это первый публичный проект автора.
Я просто оставлю этот отзыв со Steam [орфография и пунктуация как в оригинале]:
Отличный способ выучить как пользоваться терминалом и начать списать первые скрипты на JavaScript(точнее на его внутри-игровом аналоге) если вы пробовали пользоваться такими сервисами как codewars или leetcode но долго там не задерживались то это будет отличная альтернатива в стиле старых фильмов про хакеров
Трейлер игры
Factorio (2016)
Factorio — это игра, где можно проектировать, строить и обслуживать фабрики. Можно создавать свои собственные карты, писать моды или играть через мультиплеер.
Как подсказывает Хабр, игра не совсем про алгоритмы:
Factorio — это все же не игра про алгоритмы, а игра где можно прикрутить алгоритмы почти ко всему. Но можно и не прикручивать.
Скорее придётся. Без нормальной автоматизации ракету сложно построить :)
И плюс постоянно возникает «так, почему у меня этого нет, ах, вон того не хватает, т.к. я теперь на вот это трачу», что довольно близко к программированию. Параллелизм, балансировка, кэш, дедлоки — всё на месте :)
Factorio находилась в разработке с весны 2012 года по начало 2021 года, так что вот трейлер посвежее (2020 года)
while True: learn() (2019)
Как подсказали на Хабре, эта игра о машинном обучении и нейронных сетях, но про комбинаторику. Специалиста по машинному обучению она из вас конечно не сделает, но заинтересовать темой может.
А еще в этой игре есть кот, он прекрасный программист, но не говорит по-человечески. И игрок должен освоить машинное обучение, чтобы создать систему-переводчик с кошачьего на человеческий.
Больше 5 000 отзывов на Steam с оценкой игры на 10 котов-программистов из 10.
Вот интервью с создателем: Создатель игры while True: learn() о программировании в геймдеве, проблемах с VR и симуляции ML / Хабр (habr.com)
Трейлер игры
BOX-256 (2016)
BOX-256 — это 8-битный фэнтезийный компьютер с 256 байтами памяти, 16-цветным дисплеем 16x16. Вот мануал, как пользоваться этим компьютером.
Игра, в которой нужно на примитивном ассемблере рисовать картинки на дисплее. Хотя, это скорее не развлекающая игра, а обучающая: хорошо и довольно точно показывает как на самом деле ЦП выполняет инструкции. Да и в целом наглядно показывается что такое инструкции и память.
Screeps (2016)
ММО стратегия, где вы программируете поведение своих «юнитов»
«Screeps» это «scripting creeps». Хоть и есть обучалка, игра все таки для людей с навыками программирования. В отличие от других игр, в «Screeps» не нужно постоянно играть за крипов, они могут реагировать на события без прямого участия игрока, при условии, что их правильно запрограммировали.
Своего рода Colobot на хардкор-уровне. Как пишут в рецензиях на Steam:
Твой шеф будет думать что ты кодишь нужные вещи.
Трейлер игры
Gladiabots (2019)
Программируете роботов и воюете
В игре 4 класса ботов из которых можно набрать команду из 4 юнитов. Боты умеют ходить, стрелять, распознавать свой чужой, тащить ресурс, но умеют это в том порядке, в котором игрок прописал это в редакторе искусственного интеллекта. В игре есть компания и мультиплеер, разбитый на лиги.
Трейлер игры
Oh My Git! (2021)
Игра для помощи новичкам в Git, которая визуализирует внутренние структуры репозиториев в режиме реального времени. Игрок может сразу увидеть результаты своих действий.
В игре есть интерфейс игральных карт, которые помогают запоминать недавно введенные команды Git. Бесплатно и опенсорс.
Трейлер игры
Pocket Robots Test Chamber
Игра со спартанским интерфейсом, где надо создать логическую схему для робота так, чтобы он смог пройти уровень. Играть можно в браузере бесплатно по ссылке.
Shapes IO + (2020)
shapez.io — игра, похожая на Factorio, в которой можно строить фабрики по автоматизированному производству геометрических фигур. В игре нет лора, вселенной, просто геометрические фигуры, у которых есть очевидные свойства: форма и цвет. Есть бесплатная демка, чтобы решить, а надо ли оно.
Трейлер игры
Crazy Machines (Заработало!) (2005)
Серия игр, основанная на создании машин Голдберга. Это серия из 5 игр с кучей дополнений, в названии год релиза первой игры из серии. Вот тут даже заботливо поддерживают сайт по игре. Игра больше для детей, тоже идет с пометкой ностальгия.
Трейлер первой игры
Mindustry (2019)
Гибридная песочница tower-defense с упором на управление ресурсами. В игре 24 встроенных карты, кроссплатформенный мультиплеер и масштабные сражения PvP-юнитов. Есть исходный код на GitHub.
там есть программируемые блоки (процессор, память итд), с их помощью можно менять логику юнитов, например
Трейлер игры
Awesome Programming Games
А еще вот ссылка на github, которая меня просто порвала. Там штук 150 потрясающих игр для программистов. Я в ближайшее время обязательно проверю подборку, и добавлю те игры, что вы посоветовали, если их там еще нет.
Комментарии
Отправить комментарий