company_banner

Игры, в которых нужно писать код (часть 2)


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


    Flexbox Froggy


    http://flexboxfroggy.com/
    Язык: CSS


    Игра для веб-разработчиков, которые не чураются вёрстки. Нужно помогать лягушонку и его друзьям перемещаться по листкам лилий, изменяя их местоположение с помощью CSS-кода. А по ходу дела вы закрепите в голове работу с модулем Flexbox, появившимся в CSS3.



    Flexbox Defence


    http://www.flexboxdefense.com/
    Язык: CSS


    Ещё одна игра, которая поможет вам освоить применение модуля Flexbox на ваших веб-страницах. Игра относится к жанру Tower Defence, только здесь нужно менять с помощью кода координаты оборонительных башен, чтобы не дать врагу прорвать оборону.



    Ruby Warrior


    https://www.bloc.io/ruby-warrior#/
    Язык: Ruby


    Графика этой игры окунёт вас в атмосферу тёплого лампового 8-битного игрового прошлого. С помощью вашего кода храбрый рыцарь в доспехах должен пройти свой нелёгкий путь к заветной цели, победив врагов.



    JavaScript Fight Club


    https://jsfight.club/
    Язык: JavaScript


    Любопытный проект, вносящий игровую составляющую в создание ИИ. Игроки выкладывают в авторском Github-репозитории форки с JS-кодом своих ботов, которые раз в день подгружаются на сайт, и все желающие могут наблюдать за эпической битвой искусственных интеллектов, разбитых на две команды. В любое время можно посмотреть запись последней прошедшей битвы.



    BOX-256


    http://box-256.com/
    Язык: ассемблер


    Это игровой эмулятор выдуманного 8-битного компьютера, оснащённого всего 256 байтами оперативной памяти и 16-цветным дисплеем 16х16 пикселей. Вам нужно проходить графические тесты и совершенствовать код, чтобы он потреблял как можно меньше циклов процессора или содержал как можно меньше строк. Многопоточность и прочие оптимизации вам в помощь!


    P.S. Есть веб-версия игры и отдельное Windows-приложение.



    Scalatron


    http://scalatron.github.io/
    Язык: Scala


    Ещё одна игра для написания ботов с зачатками искусственного интеллекта, только на этот раз на Scala. На этот раз ваша популяция борется за источники энергии, чтобы выжить. Игра бесплатная, с открытым кодом, веб-версии нет. Вы можете играть как в своей «песочнице», так и поднять сервер и устроить турнир со своими друзьями или незнакомцами.



    Colobot


    https://colobot.info/
    Язык: искусственный


    Ещё один любопытный проект, скорее предназначенный для обучения программированию детей. Здесь нужно строить базы, с помощью роботов подготавливая планеты к колонизации людьми. С одной стороны, в игре трёхмерная графика, но при этом можно писать для роботов собственные программы на искусственном языке, похожем на C++ и Java (количество символов в каждой программе — не более 20 000). Так что вполне можно развеяться и взрослым.




    Shenzhen I/O


    http://www.zachtronics.com/shenzhen-io/
    Язык: ассемблер


    Это симулятор по созданию печатных плат из различных электронных компонентов — микроконтроллеров, модулей памяти и логических вентилей — с их последующим программированием. Прекрасный способ почувствовать себя инженером, пытаясь увязать нужный код с выбранными компонентами. Совсем не то же самое, что переписать кусок кода программы, ведь замена всего одного компонента может повлиять на целый технологический процесс, за которым стоят реальные рабочие, складские запасы, зарплаты, логистика...



    CodeFights


    https://codefights.com/
    Язык: множество языков



    Это не игра, а способ привнесения геймификации в изучение и прокачивание навыков программирования. Здесь есть несколько режимов, включая линейное «аркадное» прохождение заданий, программистские «сражения» один-на-один, турниры, свободный выбор интересных заданий и даже подготовка к собеседованию в американской компании CodeFights, которая и создала этот проект. Но сначала нужно пройти «аркадные» задания, чтобы разблокировать другие режимы. За каждое решённое задание вы получаете баллы, количество которых зависит от ваших навыков и смекалки.



    Pixact.ly


    http://pixact.ly/
    Язык: отсутствует


    Это единственная игра в нашей подборке, не требующая навыков программирования. Зато она развивает глазомер у веб-программистов и верстальщиков. Суть игры очень проста: в каждом из пяти раундов вам нужно нарисовать прямоугольник с заданными шириной и высотой в пикселях. И каждый раз игра говорит, насколько в пикселях вы ошиблись, нередко издевательски комментируя неудачи.


    Mail.Ru Group 643,47
    Строим Интернет
    Поделиться публикацией
    Комментарии 32
    • +2
      Эх, написал бы кто про истоки всего этого. Чтобы «бои в памяти», C Robots… или хотя бы про отечественную Snake Battle.

      По мне так гораздо интереснее, чем очередной «сборник задач для программистов» с геймификацией (коих в материалах такого плана половина).

      Впрочем, другая половина действительно хороша. Один Colobot чего стоит!
    • +12
      >Вроде бы и развлекаешься, но в то же время с пользой для мозгов.

      Я когда сажусь в такое поиграть, довольно быстро начинаю понимать, что работаю.
      • 0
        HR2 (1994)
        Симулятор строительных роботов, которые можно программировать на языке с си-подобным синтаксисом.
        https://geektimes.ru/post/296019/#comment_10480177
        • 0
          Находил к нему только японский мануал
          • +1
            Тоже не находил перевода. Читал на английском с японского через гугл-переводчик.
        • +1
          Большое спасибо за scalatron. Давно мечтал поиграть используя один из своих любимых языков.
            • 0

              Я чего-то не понял, а где screeps ?

            • +1

              Если честно, я не очень понимаю смысл таких игр. Ну Colobot понятно — для детей, там наверняка и туториал очень подробный и понятный, и задачки не сложные — чего не скажешь, о, например, Shenzhen I/O.
              Очевидно, играть в них будут только программисты. То есть 8 часов я на работе программирую, а потом прихожу домой и… снова программирую? Мне кажется, веселее будет пилить хобби-проект в таком случае.
              Почти единственное, что приходит в голову — обучение новому языку (но и в таком случае хобби-проект кажется полезнее, т.к. навыки ближе к реальным) либо ностальгирующие по кодингу ПМ-ы.

              • 0
                Такие игры очень нужны на первых практических занятиях по программированию.
                • 0

                  Ну Shenzhen I/O явно не подходит для такого, уж больно хардкорно.

              • 0
                Это стоило бы внедрить в школьную программу по информатике. А то по прежнему изучают как пользоваться вордом и экселем…
                • –1
                  Тьерра не помню как английском пишется. Программа имитирующая жизнь и эволюцию программ-организмов, создана ещё 1990 году. Там тоже надо программировать на специальном ассемблере.
                  • –1
                    А, ещё вспомнил, сталкер, там логику НПСов можно писать на Lua, чем умней код, тем умней ведут НПСы в игре. Например, в оригинале Тень Чернобыля, сталкеры не умеют бросать гранаты, а с помощью скриптов это уже давно реализовано. Конечно, это всё для мододелов, но всё же, кодить на Lua достаточно просто, легче чем на С++.
                    • +2
                      Чо за дичь я только что прочитал!?
                      • –3
                        А что, конечно сталкер это шутер. Но если вы умеете программировать и вам нравится программировать ИИ, то добро пожаловать. Какие ещё вопросы? Некоторым не очень нравится играть в сталкер и т.ч. в моды, но нравится именно программировать. И плюс, то что вы можете отрабатывать реальные идеи, которые затем можете использовать в своих проектах, в т.ч. коммерческих.
                    • 0
                      Не путайте разработку игр (а разработка модов тоже сюда относится) и игровой процесс. Так-то есть очень много игр где есть простор для модов, это не повод их всех перечислять.
                  • 0
                    Вообще идея прикольная, только вот игры так себе и выбор языков никакой. И что это за язык CSS? :)
                    • 0
                      А чем не язык, люди на нём игрушки пишут, может и не ЯП, но это и не утверждалось.

                      Довольно увлекательно писать код в SpaceEngeeneers, хотя детям там сложновато будет, я даже не предлагал.

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

                    • +2
                      Помню, в своё время ещё баловались с .NET Terrarium.
                      • 0
                        • 0
                          Поддерживаю. Отличная игра, шикарная идея.
                          Сделали бы еще по синтаксису ближе к vhdl или verilog…
                          Да и задач бы побольше. А то быстро проходится
                        • 0
                          В Garry's Mod на Lua можно
                          • 0
                            Помню была еще интересная игра — human resource machine.
                            Не совсем про написание кода, но алгоритмы составлять надо.
                            • 0
                              Kerbal space program + мод kOS :)
                              Можно делать божественные вещи вроде вот такой(не моё):

                              • 0
                                Спасибо за наводку. CodeFights — то, что нужно
                                • 0
                                  Мне только что пришла идея игры! Есть реальный код на каком-либо языке программирования. Но при попытке его запустить, вылетают ошибки, некоторые вещи не работают как надо. Цель игры исправить баги и заставить код работать!
                                  • 0
                                    Я в игры деградировать прихожу, а не это вот всё)
                                    • 0

                                      Увидел эту статью и внезапно вспомнил, как сто лет назад читал цикл рассказов про бета-тестеров от Призрака, и в одном из них тоже была игра, в которой игроки сами программируют множество ништяков. Даже раскопал цитату из него.


                                      В конце концов вместо планетарного боя прикрутили движок одной старой игры, которая самостоятельно так и не вышла в вирте. «Механический воин». Режим планетарного боя фактически представляет собой операционное пространство с набором модификаторов. Вся наука сводится к тому, чтобы разузнать операторы внутреннего языка и построить на их базе скрипты, управляющие действием оружия.
                                      — Погодите, — округлила глаза Внучка. — То есть фактически игроки сами пишут игру?
                                      — Именно. Любой команде просто жизненно необходим хороший программист, владеющий внутренним языком. Он описывает действие оружия, сервер все это просчитывает и выдает результат. Лаборатории пашут над разработками, программист проектирует новое оружие, испытывает его, потом лучшие образцы ставят на вооружение...

                                      Мне идея очень понравилась и я еще долго фантазировал, как можно вставить программирование в ММО и как это круто.

                                      Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                      Самое читаемое