Теория игр на основе плиток

Я ищу статьи о играх на основе плитки, таких как старый ultima 6 & 7 или даже головоломки пиратов. В частности:

  • Как они отслеживают объекты на карте. Такие объекты, как другие символы, деревья или вещи, которые персонаж может перемещать.
  • AI за персонажами. Как игра обрабатывает поведение персонажа для символы на карте, которые находятся за пределами экрана. Особенно с очень большими картами и многочисленными персонажами.

Ответ 1

Я помню, как просматривал Amit Game Development, когда писал несколько игр. У него есть отличный раздел о плитки, который имеет большую часть того, что вы хотите.

Ответ 2

Вы можете просмотреть обратные выпуски журнала Game Developer, чтобы узнать, что-то обращается к тому, что вы спрашиваете подробно.

Для (1) самый простой способ работы с таблицей на основе плитки, где каждая плитка может содержать несколько объектов, - это просто иметь большой многомерный массив структур, представляющих каждый элемент. Структура содержит указатель на заголовок связанного списка, представляющий все объекты в этом фрагменте. Это очень эффективная память и позволяет быстро найти все в определенной плите, а также перечислить их вдоль некоторой другой оси (например, владелец, арена распределения и т.д.).

Ответ 3

RogueBasin посвящен играм типа Rogue (например, Rogue, NetHack). Все эти игры были основаны на простой квадратной сетке. На сайте есть обширный раздел по разработке таких игр: http://roguebasin.roguelikedevelopment.org/index.php?title=Articles

Здесь вы найдете как предложения, так и код, которые можно использовать для создания игры, как вы описываете. В конце концов, единственное реальное различие между Rogue/Larn/NetHack/и т.д. а Diablo или Ultima используют простые текстовые символы для отображения карты и игрового процесса по сравнению с изометрическими спрайтами.

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

Ответ 4

Проверьте Gamasutra. У них есть множество статей для всех видов разработки игр.

Ответ 5

Карта будет представлять собой массив значений. Его можно разделить на отдельные части. Будут загружены только части в диапазоне проигрывателя, и объекты и npc в этих частях активны.

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