Как создать игровую карту? - PullRequest
5 голосов
/ 27 мая 2010

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

альтернативный текст http://www.totaldiplomacy.com/Portals/0/Other/Expansion-Map.jpg

альтернативный текст http://www.teamteabag.com/wp-content/uploads/2008/04/gemfire2.jpg

Как мне это сделать и какое программное обеспечение использовать в книгах / руководствах?

Спасибо

Ответы [ 3 ]

2 голосов
/ 27 мая 2010

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

Территория будет иметь

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

«Жесткий» бит может генерировать граф связности. Вероятно, проще всего ссылаться на каждую из ваших территорий по номеру, как на вашем втором изображении. Тогда «список соседних территорий» для территории 14 будет 13, 15 и 23. Поэтому не пытайтесь делать это автоматически, это будет намного проще (до тех пор, пока область действия не станет слишком большой) просто определить это вручную.

0 голосов
/ 27 мая 2010

В общем случае, игнорируя язык и структуру, вы хотите иметь две вещи:

  • модель, которая в обоих этих примерах будет хранить все домены, армии и т. Д.
  • представление карты, которое в простом случае представляет собой файл изображения некоторого вида с некоторой маркировкой, чтобы указать, какие биты модели идут куда.
0 голосов
/ 27 мая 2010

Если вы ищете программные игры, я бы порекомендовал фреймворк XNA. Есть много хороших ресурсов для новых программистов, зайдите на http://msdn.microsoft.com/en-us/library/bb203893%28v=XNAGameStudio.40%29.aspx, чтобы начать свою первую игру!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...