TIS-100

TIS-100 — компьютерная игра в жанре головоломки о программировании, разработанная студией Zachtronics Industries под руководством геймдизайнера Зака Барта.

Общие сведения
TIS-100
Разработчик Zachtronics Industries
Издатель Zachtronics Industries
Дата выпуска Windows, OS X, Linux
20 июля 2015
iPadOS
8 января 2016
Жанр Головоломка, программирование
Создатели
Геймдизайнер Зак Барт
Технические данные
Платформы Windows, OS X, Linux, iPadOS
Движок Unity
Режим игры одиночная игра
Язык интерфейса английский
Носители цифровая дистрибуция

Игровой процесс

По сюжету TIS-100 игрок находит неисправный компьютер TIS-100 (Tessellated Intelligence System) и руководство к нему, основанное на документации к ранним компьютерам 1980-х годов. Компьютер представлен в виде двенадцати отдельных вычислительных узлов, расположенных в виде сетки четыре на три. Каждый узел имеет один процессорный регистр для хранения числового значения, а также резервный регистр. Узлы также содержат собственную программу на языке ассемблера, введённую пользователем. Язык ассемблера в игре — это упрощённая версия реальных языков. Он позволяет узлу принимать внешний ввод или числовое значение от соседнего узла. Узел может выполнять базовые математические и логические операции, сохранять и резервировать текущее значение данных, а затем отправлять результаты соседнему узлу или на вывод программы. В более поздних головоломках появляются узлы стека и вывод на простой пятицветный графический дисплей.

undefined

Игроку предлагается серия головоломок. В них требуется запрограммировать узлы для выполнения определённых действий над набором чисел, поступающих с одного или нескольких входных терминалов, чтобы получить заданный результат на других терминалах. Например, одна из задач требует удвоить значение ввода на выходном терминале. Игра показывает список входных данных и ожидаемые целевые значения на выходе. Игрок должен написать код для каждого узла, чтобы достичь этого результата. Если во время выполнения выходные узлы получают неожиданные значения, решение придётся переделать. В некоторых головоломках доступны не все узлы, поэтому игроку необходимо прокладывать маршрут в обход них. Игра позволяет пошагово выполнять код и вставлять инструкции для отладки, чтобы находить логические ошибки. Головоломка считается решённой, когда выполняются целевые условия вывода. Отключённые узлы содержат загадочные сообщения, связанные с сюжетом игры. Дополнительную информацию из них можно получить после полного прохождения игры[1].

Как и в предыдущих играх Zachtronics, таких как SpaceChem и Infinifactory, после решения головоломки результат игрока сравнивается с результатами других пользователей в онлайн-таблицах лидеров. Рейтинг формируется на основе количества использованных узлов, числа инструкций в коде и количества затраченных командных циклов. Игрок может возвращаться к пройденным головоломкам для улучшения своего решения. Игра вышла в раннем доступе в июне 2015 года и содержала около 25 головоломок[2]. Ещё 25 уровней были добавлены к моменту официального релиза в следующем месяце[3].

Компьютерная архитектура

«Машина» TIS-100 состоит из 12 взаимосвязанных узлов на сетке. Это могут быть вычислительные узлы или модули стековой памяти. Каждый вычислительный узел вмещает до 15 инструкций, а каждый узел памяти — до 15 значений. Узлы сверху или снизу могут подключаться к внешним источникам ввода или вывода соответственно[4].

Каждый вычислительный узел TIS-100 имеет два регистра: ACC и BAK. Регистр ACC используется большинством инструкций. Доступ к BAK возможен только через две инструкции: для обмена и для копирования. Набор команд содержит 13 задокументированных инструкций для арифметики, базового управления потоком (условный переход), пустых операций (no-op) и отправки данных на соседние узлы. В игре также присутствуют недокументированные инструкции. Первой известной из них стала HCF (перезагрузка игры)[5].

Архитектура TIS-100 также была реализована вне игры в виде эмулятора, предназначенного для использования как эзотерический язык программирования[4].

Разработка

В основу TIS-100 легла идея, придуманная основателем и ведущим геймдизайнером Zachtronics Заком Бартом за несколько лет до этого. Концепция носила название The Second Golden Age. Её действие разворачивалось на Ближнем Востоке в ближайшем будущем. Игрок должен был программировать наноботов, вводимых в кровь главного героя, для решения различных головоломок в духе Myst. По одной из задумок, персонаж находил в магазине подержанной электроники старый компьютер с повреждёнными секторами. В процессе их восстановления он обнаруживал, что эти сектора содержат ядро искусственного интеллекта. Во время разработки Infinifactory Барт хотел начать работу над The Second Golden Age, но совмещать два проекта оказалось слишком сложно. Тем не менее, он завершил часть с головоломками на языке ассемблера и решил доработать её до полноценной игры[6]. Для завершения проекта он привлёк Кита Холмана к написанию руководства по языку, вдохновлённого реальными компьютерными мануалами того времени. Мэттью Бернс помог создать простой сюжет. При написании ироничного повествования для игры и руководства они использовали концепции из инфографики журнала Mondo 2000, посвящённой кибертехнологической моде[6].

Выпуск

TIS-100 вышла в раннем доступе Steam 1 июня 2015 года. Барт отметил, что применил тот же подход к раннему доступу, что и в случае с Infinifactory. Он предоставил почти готовую игру для сбора отзывов и добавления нового контента перед финальным релизом. По оценкам Барта, фаза раннего доступа должна была продлиться один-два месяца[7]. Финальная версия вышла 20 июля 2015 года[8]. Мобильный порт под названием TIS-100P, изданный Metaversal Studios и включающий двадцать уровней, был выпущен эксклюзивно для iPadOS 8 января 2016 года[9].

Отзывы

В статье «Могут ли видеоигры научить вас программированию» издание Rock, Paper, Shotgun назвало технологии игры «актуальными» и отметило: «Если вы сможете справиться с её суровыми испытаниями, вы готовы писать код»[10].

Примечания

  1. Hudson, Laura Program a strange, corrupted computer and discover its secrets. Boing Boing (9 июня 2015). Дата обращения: 11 апреля 2026. Архивировано 10 июня 2015 года.
  2. TIS-100. Zachtronics Industries (1 июня 2015). Дата обращения: 11 апреля 2026. Архивировано 2 июня 2015 года.
  3. Matulef, Jeffrey Zachtronics' programming puzzler TIS-100 now out of Early Access. Eurogamer (21 июля 2015). Дата обращения: 11 апреля 2026. Архивировано 23 июля 2015 года.
  4. 1 2 Anderson, Derek Phlarx/tis: A TIS-100 emulator, uses TIS-100 save file format. GitHub (28 марта 2018). Дата обращения: 11 апреля 2026. Архивировано 7 мая 2021 года.
  5. Assembly. TIS-100 Hacker's Guide. Дата обращения: 11 апреля 2026. Архивировано 31 марта 2022 года.
  6. 1 2 Wawro, Alex 'Things we create tell people who we are': Designing Zachtronics' TIS-100. Gamasutra (9 июня 2015). Дата обращения: 9 июня 2015. Архивировано 9 июня 2015 года.
  7. O'Conner, Alice. SpaceChem Dev's TIS-100: A Programming Puzzler, Rock, Paper, Shotgun (1 июня 2015). Дата обращения: 11 апреля 2026.
  8. Estrada, Marcus TIS-100 Just Launched Out of Early Access. Hardcore Gamer (20 июля 2015). Дата обращения: 21 июля 2015. Архивировано 22 июля 2015 года.
  9. TIS-100P. TouchArcade. Дата обращения: 11 апреля 2026.
  10. Sayer, Matt. Can Videogames Teach You Programming, Rock, Paper, Shotgun (3 октября 2016). Дата обращения: 11 апреля 2026.

Ссылки

  • Core War — игра о программировании с использованием языка ассемблера.
  • Connection Machine — семейство реальных суперкомпьютеров с похожей архитектурой.
  • Транспьютер — реальный центральный процессор с похожей архитектурой.
  • Фантазийная консоль — группа вымышленных эмуляторов консолей с аналогичными ограничениями.
  • zachtronics.com/tis-100/ — официальный сайт TIS-100

Дополнительно по теме