Daily Sensation - дневник разработки
дневник заведен 30-11-2007
закладки:
цитатник:
дневник:
14-01-2008 11:37 Основы инструментария
Фактически, при разработке одной игры дизайнеры занимаются созданием минимум двух.
И если во вторую из них будут играть сторонние люди, то в первую - только одни разработчики.
От того, насколько удобно и интересно будет создана первая во многом будет зависеть качество второй.

Как вы поняли, первая - это инструментарий.
Разработку его можно разделить на несколько этапов: Сначала нужно прояснить, что вообще хочется от игрового редактора и постараться в общих чертах расписать его функционал.

В данном случае я начал с вопроса: "Какой мне понадобился бы инструментарий, чтобы сделать VV?"
1)
Если бы я делал VV, мне нужно было бы расставить на карте игровые элементы, коих я насчитал всего три типа:
Зоны Изменения Характеристик (ЗИХ) - территории на карте, реагирующие на то, что игрок перетащил на них персонажа.
Чекпойнты - точки между которыми строятся пути движения персонажей и которые задают параметры персонажей.
Стенки - места, куда игрок не может перетащить персов и которые персы должны обходить.

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

Для чекпойнтов это в первую очередь действия и условия их выполнения.

Для стенок параметров нет.

3)
Нужно придумать условия для глобальных событий, которые бы проверялись раз в единицу (квант) времени для всех персонажей независимо от того, где персонажи находятся и что делают. Например, в глобальные события можно поставить усталось. Если персонаж устал, он бросает все дела (т.е. глобальное событие "срывает" его с обычного пути) и идёт отдыхать по одному из возможных "путей скуки" не привязанных ни к каким ЗИХам.

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

5)
Нужны инструменты, позволяющие задать и удобно отредактировать начальную позицию для очередного плейтеста - поставить на нужные места персонажей с объектами и выставить их параметры)

Когда функционал в общих чертах расписан - можно обсуждать его с программисткой стороной.
Известно, что в "больших" играх редакторы часто представляют собой тяжёлые и мощные программы, однако, чем игры меньше, тем больше разработчики стараются "привязать" редактор к уже существующим прогам, лишь немного "надстроив их". Например, для большинства казуальных мачтри редактор представляет собой столбики цифр в xml или xls документе и небольшую программку, экспортирующую их в игру. А когда я делал уровни для арканоида Temple of Bricks выглядело это примерно вот так - http://keep4u.ru/full/080115/70c579796fda091f1e/jpg то есть, редактор был надстройкой над Excel, в котором и рисовались уровни.

В OV, понятно, что одним xls файлом не обойтись - как минимум нужен инструмент, позволяющий удобно рисовать всякие пути и не путаться в них (а их будет много). Однако настройки можно задавать и в обычных текстовых файлах, если, конечно программа рисования путей сама будет их "подставлять". Так же, учитывая что в игре будет много текста, и нужно изначально этот подготовить этот текст к переводу на много языков - понадобится xls файл, из которого будут браться все текстовые элементы.

Вот. Только зная всё это можно приступать к разработке инструментария.

Ваш комментарий:
Камрад:
Гость []
Комментарий:
[смайлики сайта]
Дополнительно:
Автоматическое распознавание URL
Не преобразовывать смайлики
Cкрыть комментарий
Закрыть