Страницы

среда, 5 октября 2011 г.

10. Игра с полной или не полной информацией

Описание: Игры с полной информацией: шахматы, шашки, футбол и др.; т.е. те, где мы видим, что делает противник, видим его стратегию. Игры с неполной информацией противоположность полной: стратегий с «туманом войны», покер, шутеры; т.е. те, где мы не видим какую стратегию избирает противник и угадываем или предполагаем где он находится и что он делает.

вторник, 4 октября 2011 г.

9. Игра с нулевой суммой и наоборот

Описание: Игры с нулевой суммой — особая разновидность игр с постоянной суммой, то есть таких, где игроки не могут увеличить или уменьшить имеющиеся ресурсы, или фонд игры. В этом случае сумма всех выигрышей равна сумме всех проигрышей при любом ходе. Естественно, речь идёт о многопользовательских играх (игроках с равными правами, хотя они могут и управлятся компьютером. Хороший пример здесь - Counter-Strike. Это многопользовательская игра, но есть возможность добавить ботов. И хотя они не являются живыми игроками, они обладают всеми теми же правами, что и человек), а не о сингле. Примерами таких игр может служить покер, где один выигрывает все ставки других; реверси, где захватываются фишки противника; либо банальное воровство - один выгрывает, другой обязательно проигрывает; большинство стратегий (Starcraft, C&C, Warcraft), где сколько юнитов уничтожает один, столько теряет второй, сколько зон захвачено одним, столько потеряно другим и т.д. Почему с нулевой суммой?

понедельник, 3 октября 2011 г.

8. Дипломатия

Описание: Если игра подразумевает несколько игроков, «дипломатия» одна из тех технологий, которая очень сильно расширяет возможности геймплея. Естественно, она сильнее работает между игроками, нежели между игроком и компьютером. Но это, скорее всего, недостаток технологий программирования ИИ. Дипломатия помогает распределять между игроками их отношения, а также их менять. При разных значений дипломатий появляются разнообразные действия. При положительных отношениях, положительные действия (Альянс, помочь, подарить и т.д.); при отрицательных отношениях, отрицательные действия (Объявить войну, навредить, подраться и др.).

воскресенье, 2 октября 2011 г.

7. Прятанье в тени

Описание: Одна из способностей персонажа. Есть специальные места в которых этого персонажа не видно, в специальном месте (за спиной противника; в тени; в паутине, если это паук;), со специальной способностью, специальным объектом или другим способом (типа магий и др.). Иногда расширяет геймплей (как в стратегиях, Warcraft III, C&C), а иногда и держит его полностью (Thief, Hitman, NOLF).

суббота, 1 октября 2011 г.

6. Игра с целью или без неё

Описание: В большинстве своём, игры все заканчиваются логическим концом – заключительным роликом, счётом, титрами - при выполнений особых условий, прохождений всех имеющихся уровней (Kyrandia, Half-Life, Warcraft). А есть игры бесконечные, которые не имеют конца ни при каких обстоятельствах, кроме выхода из игры (The Sims, Sim City, Tetris), таких существенно меньше, но они есть. Честно говоря, я бы отказался от последних, потому что человек всегда делает всё для чего-то, он всегда стремится к чему-то или от чего-то. Пока в Sims и Sim City есть мелкие, локальные задания, поставленные самим игроком, играть в них интересно, как таких заданий не остаётся – всё, капут. Лично я, не играю для того чтобы поиграть, а играю для того чтобы достигнуть цели. Эта цель может быть создана искуствнно мною, а может быть уже встроенна в игру.

пятница, 30 сентября 2011 г.

5. Самостроящаяся игра

Описание: Одни из хороших примеров, игры от Сида Мейра. Свободные, бесконечные, самостроящиеся. Pirates, Civilization. Игра Pirates очень гибкая и подстраивается под игрока, хотите идите туда, а хотите туда, хотите быстрее и сложнее, пожалуйста, хотите медленнее и проще, не вопрос. Вы сами влияете на весь процесс от начала и до конца.

четверг, 29 сентября 2011 г.

4. Выделение рамкой

Описание: Одним из самых выдающихся достижений в области интерфейса было управление несколькими юнитами. А как выделить нескольких? Можно щёлкать по ним и добавлять в кучу, но инженеры из Westwood сделали более изящно: в C&C появилось выделение рамочкой, те что были в рамке становились активны и приказы можно было отдавать выделенной группе. Это быстро, это удобно, но чем больше видов юнитов, чем их больше по количеству и если они все расформированы, выделить таким способом очень трудно.

среда, 28 сентября 2011 г.

3. Управление группой как единым юнитом

Описание: Часть интерфейса, позволяет более удобно управлять большим количеством юнитов. Хороший примеры, Ground Control, Company of Heroes. Пехота (а для Ground Control, все юниты) объединена в группу и управляется как один юнит, но действует как группа. Это полезное свойство интерфейса, когда юнитов слишком много, а управлять ими приходиться быстро. Ещё пример, Казаки 2, где юниты были объединены в отряды и ими было легко управлять или серия Total War, где просто огромное количество войнов в отрядах.

вторник, 27 сентября 2011 г.

2. Разделение игрового поля на зоны

Описание: Есть возможность разделить поле на куски, как физически, так и виртуально. Физически: как в Europe Universalis, т.е. каждый кусок отражает как физическое расположение юнитов, так и их характеристики – добывание ресурсов, базы и т.д. Виртуально: В Company Of Heroes поле разделено на виртуальные куски, которые вы можете захватить с помощью флагов и получать ресурсы с захваченных территорий и получать на них подкрепления, на перемещение юнитов они никак не влияют.

понедельник, 26 сентября 2011 г.

События (Events)

Сегодня я хочу поговорить о событиях (Events). Но не о событиях встроенных в ГМ, а в более общем контексте, позволяющим увидеть всю структуру этого интересного приёма программирования.

четверг, 19 мая 2011 г.

1. Глобальная \ локальная карта

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

среда, 18 мая 2011 г.

вторник, 17 мая 2011 г.

Общие вопросы геймдизайна

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

  1. 40 механик для социальных игр
  2. Секреты гейм-девелопмента: 47 игровых механик

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

пятница, 6 мая 2011 г.

Инкапсуляция

Конечно, я описал схемку инкапсуляции уже в предыдущем посте, но на всякий случай сделаю отдельный пост по теме. Итак, поехали:

Абстракция

На текущий момент я доделываю поиск пути и хождение по нему. Так вот, возникла следующая проблема:
Нужна функция хождения с обходом препятствий, но встроенная mp_potential_step() уже не устраивает. К счастью, я заранее сделал функцию-обёртку СделатьШаг() и засунул туда одну единственную строчку mp_potential_step() с параметрами и использовал этот СделатьШаг() где мне надо было. Это может показаться глупо, зачем делать функцию из одной строчки? Но тут мы подходим к одному из столпов ООП: Парадигма абстракция.

четверг, 27 января 2011 г.

Отображение игровых переменных

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

четверг, 13 января 2011 г.

Игровой цикл - Практическая часть

Хочу продолжить тему про Игровой цикл, чтобы полнее понять создание игры с начала. Теперь в практическом ключе. Если вы уже прочитали теорию, то начинаем.

Игра = График + Звук + …

Сегодня хочется рассказать вам о том чем занимаемся, что такое компоненты, как с ними работать и т.д. Приступим к разбору «Что же такое игра». Можете для примера взять любую игру и попробовать разобрать её вместе со мной. Только берите более ли менее стандартный вариант, не надо жаловаться типа: «А вот в моей игре такого нет!», «А вот здесь не так»  и т.д. Мы рассматриваем большинство, а не исключения.

среда, 22 декабря 2010 г.

Иерархия объектов

Сейчас тема посложнее и гораздо объёмнее. В моем текущем проекте необходима иерархическое, наследственное поведение объектов. А что это такое?

Инструменты отладки

Итак, после очень долгого перерыва, я снова возвращаюсь сюда, чтобы задокументировать свои идеи и держать себя всегда в струе. Сегодня будет несколько тем о которых я хочу рассказать. Первая из них это про инструменты, которые нам очень понадобятся. В дополнение к вот этой теме. Все инструменты которые будут перечислены задействуют встроенный отладочный режим (Run → Run in Debug Mode (F6))