PlayPendium

State Stacker · Пища для размышлений

Границы и устойчивость

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

Написано и отредактировано на английском языке. Эта русская версия создана машинным переводом; там, где важна точность, авторитетным остаётся английский оригинал. Читать оригинал на английском →

Ядро устройства движка

Движок игры сплавляет две разные области: эрудицию и географическую смежность. Игрок зарабатывает штат в виде блока, ответив на вопрос о нём, а затем кладёт этот блок на вершину растущей башни. Вся соль — в правиле устойчивости: положенный блок устойчив лишь тогда, когда штат прямо под ним, нынешняя вершина башни, имеет с ним общую сухопутную границу. Исключение только одно — первый блок, фундамент: он стоит твёрдо всегда. Это требование смежности превращает башню в физическое воплощение связности карты, где каждая укладка обязана считаться с реальными отношениями соседства, записанными в наборе данных. 2

Основанием этого замысла служит собственный набор данных игры о штатах, в котором собраны все пятьдесят записей коллекции штатов США. В каждой записи хранятся название, двухбуквенное почтовое сокращение, столица, регион по классификации Бюро переписи, список соседей и короткий факт. Особенно важен список соседей: в него входят только соседи по сухопутной границе, записанные почтовыми сокращениями. Штаты, обращённые друг к другу через одно из Великих озёр, — например, Michigan (Мичиган) и Illinois (Иллинойс), — соседями поэтому не считаются, а у Alaska (Аляска) и Hawaii (Гавайи) сухопутных соседей нет вовсе. Это точное определение смежности и становится правилом, по которому судят каждую укладку. 2

Когда игрок кладёт блок, движок сверяет его с блоком на вершине башни. Два штата считаются смежными, только если каждый из них указывает другой как соседа по суше. Поскольку проверка требует обеих записей, отношение симметрично по построению: штат A держит штат B ровно тогда, когда штат B держал бы штат A. Эта симметрия обеспечивает согласованность по всей башне: любое устойчивое соединение должно удовлетворять одному и тому же двустороннему условию, независимо от того, какой из двух штатов появился первым. 2

Башня становится физическим путём по графу смежности сорока восьми смежных штатов.

Четыре категории вопросов

Прежде чем заработать блок, игрок должен ответить на вопрос о штате, выбрав один из четырёх вариантов. Движок порождает вопросы четырёх разных типов, и каждый опирается на свою часть записи о штате. Тип «столица» спрашивает столицу штата. Тип «регион» спрашивает, к какому из четырёх регионов Бюро переписи — Northeast, Midwest, South или West (Северо-Восток, Средний Запад, Юг или Запад) — относится штат. Тип «факт» спрашивает, какой из четырёх коротких фактов верен для этого штата; остальные три позаимствованы у других штатов. Тип «сосед» спрашивает, какой из четырёх штатов с ним граничит: один настоящий сосед и три штата, которые с ним не граничат. Вместе четыре типа задействуют четыре поля записи из шести — столицу, регион, факт и соседей, — тогда как название и сокращение подписывают вопрос и блок. 2

Каждый тип вопроса служит в игровом цикле своей цели. Вопросы о столице и регионе проверяют знание неизменных признаков. Столица штата — один-единственный город, а регион по переписи — одна из четырёх возможностей, поэтому в каждом вопросе о регионе предлагаются одни и те же четыре варианта. Вопрос о факте проверяет память на короткое описательное утверждение. Вопрос о соседе проверяет знание самого списка смежности — той самой структуры, которая позже и определит устойчивость. О каждом штате в раунде спрашивают только один раз, а типы чередуются в постоянном порядке — столица, регион, факт, сосед, снова столица, — так что раунд из двадцати четырёх вопросов равномерно перемешивает все четыре. 2

Верный ответ приносит штат в виде блока; неверный не приносит ничего, и игра переходит к следующему вопросу. Получив блок, игрок принимает ровно одно решение: положить его или выбросить. Выбирать место не приходится — каждый блок ложится наверх, — но игра заранее сообщает, будет ли блок стоять твёрдо: она называет штат, который сейчас на вершине, и указывает, граничит ли с ним заработанный штат. Такое разделение добычи и укладки создаёт стратегический слой: блок, который зашатается, можно выбросить, а не класть, и именно так и следует поступить, потому что его укладка обрушит всю башню. 2

Правило устойчивости как проверка смежности

Правило устойчивости — тот элемент замысла, который отличает эту игру в складывание блоков от прочих. В обычной игре такого рода устойчивость — вопрос физики: надёжно ли опирается подошва блока на тот, что снизу. Здесь физики нет вовсе. Устойчивость решается целиком географией: блок стоит твёрдо, только если, согласно набору данных игры, он настоящий сосед блока под ним. Это превращает башню из физической конструкции в топологическую, где связи означают реальную смежность на карте. 2

Проверка смежности воплощает это ограничение. Она берёт два штата и смотрит, указывает ли каждый из них другой среди своих соседей. Условие это строже, чем просто наличие общей границы в некотором отвлечённом смысле: отношение должно быть явно записано в наборе данных. Например, два штата, обращённые друг к другу через Великие озёра, смежными не считаются, потому что в наборе данных записаны только сухопутные границы. Alaska и Hawaii, у которых сухопутных соседей нет совсем, никогда не смогли бы образовать устойчивое соединение, поэтому игра никогда о них не спрашивает; впрочем, их названия и факты всё ещё могут попадаться среди неверных вариантов ответа. Эти решения отражают сознательный выбор: опереть смежность на конкретное определение, а не на одну лишь географическую интуицию. 2

Симметрия отношения существенна для согласованности. Если штат A может держать штат B, то и штат B точно так же мог бы держать штат A. Соединение либо допустимо, либо нет — по неизменным спискам соседей, независимо от того, какой из двух штатов появился первым. Это свойство упрощает рассуждения игрока: каков бы ни был штат на вершине, на нём может лежать любой его сосед, и весь вопрос лишь в том, оказался ли только что заработанный блок одним из них. 2

Блок, положенный на несоседа, обрушивает башню и тут же завершает раунд.

Целевая высота и надёжная высота

Условие победы задаётся двумя связанными числами: целевой высотой и надёжной высотой. Целевую высоту движок принимает как параметр, и игра всегда передаёт значение по умолчанию — восемь; это число устойчивых блоков, которые должна держать башня, считая и фундамент, так что восемь означает фундамент плюс семь блоков, положенных на соседей. Надёжная высота считает устойчивые блоки от фундамента вверх, и, поскольку единственная неустойчивая укладка тут же завершает раунд, всякий блок в устоявшей башне устойчив: надёжная высота — это попросту высота башни. Каждая устойчивая укладка поднимает её на единицу. Когда укладка неустойчива, блок шатается и башня рушится. 2

Это различие между надёжными и ненадёжными блоками создаёт настоящий риск. Поскольку ничто сложенное выше шатающегося блока всё равно не зачлось бы в надёжную высоту, игра не заставляет игрока продолжать: единственная неустойчивая укладка сразу завершает раунд поражением под заголовком “Tower Toppled!” («Башня рухнула!»), называя штат, который не граничил с блоком под ним. Уже набранные очки сохраняются. Именно поэтому игра даёт кнопку сброса и перед каждой укладкой предупреждает, зашатается ли блок; предупреждение прямо говорит, что шатающийся блок обрушит башню и завершит раунд. Напряжение рождается из того, что заработать блок — ещё не значит продвинуться: к цели игрока ведут только устойчивые укладки на непрерывной башне. 2

В раунде двадцать четыре вопроса, так что дойти до цели в восемь блоков — значит превратить в твёрдо стоящие блоки ровно треть из них. Неверный ответ башне не вредит, но стоит возможности, а поскольку вопросы сцеплены от соседа к соседу, пропущенный штат может оставить следующий без границы со штатом на вершине. Каждый верный ответ стоит 10 очков, каждая устойчивая укладка — ещё 15, а достижение цели добавляет бонус в 100 очков и немедленно завершает раунд. Если раньше кончатся вопросы, башня «доросла до верха» (“topped out”), не дотянув до черты; если же раньше лёг шатающийся блок, она рухнула. 2

Порождение вопросов по зерну

Каждый набор вопросов порождается генератором псевдослучайных чисел с зерном. При одном и том же зерне движок выдаёт ту же последовательность вопросов, в том же порядке, с теми же вариантами ответов на тех же местах. Этот детерминизм служит сразу нескольким целям. Он делает возможным общий опыт: режим Daily («Ежедневный») берёт зерно из даты, поэтому все, кто играет в этот день, получают одни и те же вопросы и могут сравнить результаты, тогда как режим Practice («Тренировка») берёт для каждой партии новое случайное зерно. Он же делает игру проверяемой, ведь любую партию можно в точности воспроизвести по её зерну. Наконец, он делает поведение игры предсказуемым для анализа, поскольку вся последовательность вопросов — функция от зерна. 2

Зерно решает, какие штаты появятся и в каком порядке, но порядок этот не произволен. Движок строит его цепочкой: он начинает со случайного штата, и каждый следующий штат в вопросе — по возможности ещё не использованный сосед предыдущего; и только в тупике движок перескакивает к какому-нибудь другому неиспользованному штату. Именно это сцепление даёт игроку честный шанс на связную башню: ответьте верно на череду вопросов — и заработанные штаты, как правило, будут граничить друг с другом. Игрок не может выбирать, какой штат придёт следующим, поэтому стратегия сводится к тому, чтобы отвечать хорошо и решать, блок за блоком, класть или выбрасывать. Зерно задаёт ритм партии, но насколько точно этот ритм выдержан, определяет игрок. 2

Генератор псевдослучайных чисел с зерном гарантирует, что одно и то же зерно всегда даёт одну и ту же партию.

Смежность как понятие теории графов

Правило устойчивости опирается на теорию графов — науку о графах как математических структурах, которыми моделируют попарные отношения между объектами. 1 В этих понятиях штаты — вершины, а общие сухопутные границы — рёбра. Два штата смежны тогда и только тогда, когда их соединяет ребро. Список соседей каждого штата — это множество смежных с ним вершин, а проверка смежности спрашивает, существует ли ребро между двумя данными вершинами. Башня, если она устойчива целиком, представляет собой путь в этом графе: последовательность рёбер, соединяющих последовательность попарно различных вершин, — различных здесь потому, что ни об одном штате в раунде не спрашивают дважды. 3

Этот взгляд с позиций теории графов проясняет, почему на одних штатах строить труднее, чем на других. У Alaska и Hawaii в графе нет рёбер вовсе — потому игра никогда о них и не спрашивает. Среди сорока восьми смежных штатов число рёбер сильно разнится: Maine (Мэн) граничит только с New Hampshire (Нью-Гэмпшир), тогда как Missouri (Миссури) и Tennessee (Теннесси) граничат каждый с восемью штатами. Хорошо связанный штат на вершине башни даёт место для приземления многим заработанным штатам; плохо связанный, вроде Maine, не оставляет почти ни одного. Связность графа и определяет трудность задачи складывания. 2

Путь в графе — это последовательность рёбер, соединяющих последовательность вершин. 3 Башня, построенная устойчиво, — физическое воплощение такого пути. Каждый устойчивый блок удлиняет путь на одну вершину, соединённую ребром с предыдущей. Целевая высота в восемь означает, что игрок должен найти путь через восемь вершин, длиной в семь рёбер. Трудность в том, что путь приходится строить постепенно, и каждую новую вершину нужно сначала заработать в викторине, прежде чем добавить её к башне. 2

Синтез замысла

Устройство движка сводит викторину, смежность и складывание блоков в единый связный цикл. Вопросы викторины черпаются из собственного набора данных игры о штатах и проверяют знание столиц, регионов, фактов и соседей. Проверка смежности зеркалит теорию графов, считая штаты вершинами, а сухопутные границы — рёбрами. Механика складывания даёт физическую метафору построения пути в графе. Каждый элемент подкрепляет остальные: викторина приносит блоки, смежность определяет устойчивость, а складывание ведёт к цели. 2

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

В итоге игра одновременно проста и сложна. Правила легко высказать: отвечай на вопросы, зарабатывай блоки, складывай их на соседей, доберись до цели. Но исполнение требует постоянной оценки штата на вершине, его соседей и только что заработанного блока. Ограничение по смежности превращает то, что могло бы быть пустяковой задачей на складывание, в проверку структуры карты, где каждая укладка обязана считаться с реальной географией, записанной в наборе данных. 2

Notes

  1. "Graph theory," Wikipedia: the study of graphs, which are mathematical structures used to model pairwise relations between objects. A graph is made up of vertices (also called nodes or points) which are connected by edges (also called arcs, links, or lines). The article's account of the four color problem treats a map the same way, asking about regions that have a common border. en.wikipedia.org/wiki/Graph_theory.
  2. State Stacker game engine and interface: a pure, deterministic trivia-and-stacking game over the 50 US states. Its dataset gives each state a name, a two-letter postal abbreviation, a capital, a Census region (Northeast, Midwest, South, or West), a list of the states it shares a land border with (land borders only; Alaska and Hawaii have none), and a short fact. A round has 24 four-choice questions, one per state, rotating through capital, region, fact, and neighbour kinds; Alaska and Hawaii are never question subjects, though their names and facts can appear among the wrong choices, and the subject order is chained so that each state borders the previous one where possible. A correct answer earns that state as a block (10 points), which the player stacks on top of the tower or discards. A block is stable if the tower is empty or if it and the block directly beneath it each list the other as a land neighbour (a symmetric relation); a stable placement scores 15. The secure height counts stable blocks from the bottom up to the first unstable one, and stacking an unstable block topples the tower, ending the round at once as a loss with the points scored so far kept; reaching the goal height (8 by default) wins and adds 100 points. Questions come from a seeded random number generator, seeded from the date in Daily mode and at random in Practice mode. Read from the game's own source.
  3. "Path (graph theory)," Wikipedia: a path in a graph is a finite or infinite sequence of edges which joins a sequence of vertices which, by most definitions, are all distinct. en.wikipedia.org/wiki/Path_(graph_theory).
  4. Further reading on Graph theory, Relativistic quantum fields : Bjorken, James D : Free Download, Borrow, and Streaming : Internet Archive. archive.org.
  5. Further reading on Graph theory, [cond-mat/0602129] Introduction to graphs. arxiv.org.
  6. Further reading on Graph theory, “Small World” architecture in brain connectivity and hippocampal volume in Alzheimer’s disease: a study via graph theory. doi.org.
Was this worth reading?
Play State Stacker
PlayPendium · About · Contact · Privacy · Terms · Cookies · Accessibility · Copyright · Browse all games · Classic arcade games · © 2026