company_banner
16 мая в 18:58

Игры, в которых нужно писать код: Grid Garden, Elevator Saga и другие


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


Grid Garden


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


В этой незатейливой игре с несколько инфантильным интерфейсом нужно с помощью CSS-кода поливать полезные растения в огородике. Доступно 28 несложных для прохождения уровней.


image


Elevator Saga


http://play.elevatorsaga.com/
Язык: JavaScript


Если вы мечтали создавать алгоритмы для лифтов (а в реальности это весьма интересная и сложная алгоритмическая задача), то Elevator Saga — отличная песочница. Здесь абстрактно представлено здание из нескольких этажей и лифты, перевозящие людей. Нужно запрограммировать движение лифтов так, чтобы перевезти определённое количество пассажиров за указанный срок. По мере прохождения уровней увеличивается этажность и поголовье лифтов, а условия становятся строже.


image


CheckIO


https://checkio.org/
Язык: JavaScript, Python


Наверное, эта игра всё же ближе к обучающим, но и «уже обученным» программистам она тоже будет интересна. К тому же здесь очень приятная графика. С помощью кода нужно исследовать острова и решать различные задачи.


image


CodinGame


https://www.codingame.com/
Язык: C, С#, C++, Java, JavaScript, Python, Python 3, Bash, Clojure, Dart, F#, Go, Groovy, Haskell, Lua, Objective-C, OCaml, Pascal, Perl, PHP, Ruby, Rust, Scala, Swift, Swift 3, VB.NET


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


image


CodeWars


https://www.codewars.com/
Язык: Clojure, C, C++, C#, Crystal, Dart, Elixir, F#, Go, Haskell, Java, JavaScript, PHP, Python, Ruby, Rust, Shell, SQL, Swift, TypeScript


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


image


CSS Diner


https://flukeout.github.io/
Язык: CSS


Простенькая игра, позволяющая освоить (или освежить) азы CSS.


image


Untrusted


https://alexnisnevich.github.io/untrusted/
Язык: JavaScript


Приключенческая игра с олдскульной символьной графикой. Вам даются текстовые задания, которые нужно решить — внимание! — с помощью кода на JavaScript. Как неожиданно!


image


CodeHunt


https://www.codehunt.com/
Язык: C#, Java


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


image


CodeCombat


https://codecombat.com/
Язык: Python, Java, CoffeeScript, Lua


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


image


Screeps


https://screeps.com/
Язык: JavaScript


ММО-игра, в которой нужно программировать ИИ своих абстрактных юнитов. Нужно строить базу, добывать ресурсы, управлять территорией, экономикой, производством, транспортировкой и так далее. Чем лучше ваши скрипты, тем лучше идёт игра. Причём ваше хозяйство работает круглосуточно, даже если вы в оффлайне.



TIS-100


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


Это игра с открытой концовкой. В ней нужно переписывать испорченные куски кода на ассемблере, чтобы восстановить TIS-100 и раскрыть его секреты.



Знаете другие игры для программистов? Кидайте ссылки в комменты.

Автор: @Barrayar
Mail.Ru Group
рейтинг 577,11
Строим Интернет

Комментарии (46)

  • +4
    SpaceChem — химический ассемблер, думаю, представлять нет обходимости
    Robozzle — заковырыстая головоломка (Android) — программируем маршрут робота
    http://vindinium.org/ — онлайн-батл через http-API, управляем ботом в а-ля-рогалике в игре против 3 других игроков, лимит на ход — 1 секунда.
    • 0
      У Robozzle есть и веб-версии:

      Silverlight: http://robozzle.com/
      JS: http://robozzle.com/js/
      HTML5: http://robozzle.com/beta/
    • 0
      Robozzle есть и онлайн, но на сильверлайте.
  • +3
    Ruby Warrior — то, что сразу приходит на ум.
    Ссылка
    • +2
      Еще хочется упомянуть две части Flash-игры Light Bot, в которых нужно запрограммировать бота («черепашку») с помощью набора встроенных команд.
      Часть 1
      Часть 2
  • +14
    Colobot забыли! На первую позицию эту игру!
    • +1
      Да!!! Поддерживаю!
      • 0
        Colobot — огонь!
  • 0
    https://booking.riddles.io/ пакман для двух играков
  • +1
  • +5
    SHENZHEN IO — программирование микросхем, но несколько иначе по сравнению в TIS-100
    • 0
      Очень похоже, но лучше. Существенно более доработанная и интересная игра.
  • +1
    Немного из другой «оперы»: Space Engineers(С#), KSP(с модами kOS или kRPC — C#, C++, Java, Lua, Python, Ruby, Haskell), From The Depth(Lua). Но как по мне значительно интересней, потому что программируешь автопилоты для своих творений или целую космическую программу — ощущения от запрограммированного тобой полностью автоматического полета к луне с посадкой и возвратом не передаваемы.
  • +2

    Одиссея роботов. Про неё даже статья на Хабре была. Самая сложная игра всех времён и народов, родом из 80-х.

  • 0
    SHENZHEN IO
  • +1

    http://store.steampowered.com/app/400110/Else_HeartBreak/ — Else Heart.Break(), открытый мир, где можно что угодно перепрограммировать.


    http://www.zachtronics.com/shenzhen-io/ — Shenzen I/O — программирование микроконтроллеров.

  • +1
    Сразу вспоминается Human Resource Machine. Там, конечно, не нужно писать код, но задумка похожая, да и сама игра интересная.
  • +2
    Robocode же. Нестареющая классика.
  • +1

    Hacked (Android)

  • +1

    Playcodemonkey.com
    При помощи кода на coffee script управляешься обезьянкой и другими объектами на экране, чтобы собрать бананы

  • 0
    flexboxzombies.com ещё интересная штука, правда последние главы сейчас находятся в процессе написания, у автора так же есть блог где он описывает некоторые моменты связанные с созданием игры
  • 0
    Одна из старейших — была ещё по ДОС — Robocom Workshop — программируем роботов на языке приближенном к ассемблеру. Можно выплнять код в разных банках памяти, перепрограммировать банки у других роботов, форкаться (клонировать робота) и т.д. На каждую инструкцию тратится определенное количество времени. Можно проводить соревнования и целые турниры.
  • 0
    Когда-то начинал с книжки Фаронова и probots. Не знаю, правда, насколько это сейчас актуально для кого-то, кроме музейщиков.
  • 0
    Эх, нет ни одной игры, поддерживающей язык Prolog…

    По моему, в эпоху блокчейна, очень полезной была бы экономическая многопользовательская игра с поддержкой «умных контрактов». Ни кто такой не видел?
  • 0

    Hackmud, хоть я не играл, но может найдутся заинтересовавшиеся.
    http://store.steampowered.com/app/469920/hackmud/

  • 0
    Про некоторые не слышал, пойду проходить.
  • +1
    Для майнкрафта есть несколько модификаций, добавляющих виртуальные терминалы, позволяющие кодить в частности на Lua различную логику. Собственно, в ванильном майнкрафте реализована механика логических схем, в дальнейшем успешно модиффицированная до сумасшедших схем исключительно на использовании «И» «Или» «Не» и иже… Также, по книге, описанной в следующей статье, в том же Майнкрафте можно наглядно изучать Python
    • +1
      Да кстати, отличная штука, самое главное там с терминалами был программируемый на луа робот, умеющий копать и ставить блоки. Конечно порог вхождения выше, но возможность заставить «злой куб с киркой» построить тебе башню, или пройтись по соседним домам выковыривая из стен полезные блоки, бесценна.

      Ну и тогда можно вспомнить GarrysMod с дополнением с проводами и чипами — можно как физически «распаять логику на плате» так и написать в одном чипе-ЦПУ.
  • 0
    для андроида:
    Hacked (питоноподобные скрипты)
    Gladiabots (арены роботов с програмируемым АИ програмирование drag&drop, но мозг поламать можно)
    ну и для Пк HumanResourseMachine drag&drop ассемблер. тоже иногда взрів мозга особенно изза того что циклов как таковых нет а есть только переходы и условия
    • 0
      gladiabots пробовал, несколько хромает баланс — практически под все арены было достаточно одного единственного кода (который работал хуже чем задумано т.к. не всё в полной мере программируется).
      Но в целом задумка хорошая.
  • +2
    Моя самая любимая игра Colobot. До сих пор в нее иногда играю.
  • 0
    Не уверен, подходит ли по требованиям, но есть такой рогалик Nethack (www.nethack.org). Это не игра, где игрок пишет непосредственно код, как в исходном посте, а классический rogue-like. Но исследование и модификация кода игры является её традиционной частью в игровом сообществе и именуется source diving. Игроки исследуют код для понимания игромеханики, для «читерства» через модификацию кода, ит.д. Язык — C.
  • 0
    И моя игра image Язык программирования — ассемблер. Вот только графику так и не смог нарисовать нормальную:)
  • +1
    «Здесь нужно программировать свою систему обороны для уничтожения врагов.» это не про codingame, а про первую тривиальную задачку из него.
    Так-то там всё интересно и разнообразно, а в каждой задаче свой сюжет. Плюс многопользовательские игры.
  • +1
    Nether Earth, хе-хе
    • 0
      :) MilitarySuperiority Опять же у меня все закончилось на дизайне))
    • 0
      Тоже игра со времён Спека, однако так и не появилась на других ПК: Soldier of Future По современным меркам скорее RPG + «визуальное» программирование. Заигрывался ею в своё время.
      Хотя возможно это клон или копия какой-то игры с PC.
      • 0
        Точно, ее тоже видел, но как-то не зашло.
    • 0
      Совсем не про программирование. Но очень много времени в ней потеряно :-)
  • –1
    И еще одна моя программа не вышедшая в свет изза недостатка дизайна)
    image
    Программа для робота пишется путем вытаскивания пиктограм и их соединений.
    Есть даже видео
  • +3
    Time to go home and relax
    image
  • +1
    От автора http://cssgridgarden.com/ только про Flexbox
    https://flexboxfroggy.com
  • 0
    Ещё не совсем про программирование, а скорее около.
    Изучение Vim в игровой форме. Давно не смотрел, раньше было всего несколько у ровней бесплатно.
    https://vim-adventures.com
  • 0
    Помню, в 2013м году сильно залипал в trAInsported.
    Написана немецким парнем, код есть на гитхабе. В игре надо кодить на lua ИИ для управления системой простых поездов.
    В игре даже есть русская локализация, сделанная мной)
  • 0
    Немножко отдаленно, но странно, что никто не упомянул
    Hack-n-Slash

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

Самое читаемое Разработка