Проблема: ваш персонаж похоронен в абзаце, который нельзя переиспользовать
Вчера мы записали концепцию игры как Markdown-страницу в чистом локальном проекте (если вы пропустили превратить идею игры в настоящую страницу дизайна). Концепция - это «что». Теперь нам нужно «кто» - персонажи.
Здесь и кроется большая сложность, которую не каждый сможет сразу заметить:
Хлоя - бывший охранник торгового центра, 34 года. У неё 100 здоровья и 40 выносливости. Её роль в группе - замедлять врагов и защищать более слабых выживших.
Читается неплохо, но это простыня текста. Спросите себя:
- Можно ли сделать по ней запрос? «Какие выжившие имеют 40+ выносливости?» Придётся перечитывать каждый абзац самостоятельно.
- Можно ли её переиспользовать? Копируете абзац в другой документ и надеетесь, что он сойдётся.
- Можно ли её сбалансировать? Здоровье и выносливость - это числа, спрятанные в предложении, - вы не можете их отсортировать, сравнить или выгрузить в движок.
- Можно ли на неё сослаться? Ничто не указывает на Хлою из её способностей, предметов или квеста, где она появляется, ничего за этим не последует.
Дизайн персонажа перестаёт быть документом и становится рутиной, однако это легко исправить: сделайте героя структурированным элементом с полями.
Почему структурированный игровой объект
IMS Creators даёт вам тип элемента, созданный ровно для этого - Игровой объект. Игровой объект по-прежнему является элементом (файлом на диске, частью проекта), но вместо одного большого блока текста у него есть поля: свойства с именем, свойствами и реальными значениями.
| Абзац прозы | Игровой объект | |
|---|---|---|
| Здоровье | «100 здоровья» спрятано в предложении | Настоящее поле Здоровье = 100 |
| Выносливость | «40 выносливости» спрятано в предложении | Настоящее поле Выносливость = 40 |
| Тип | угадывается по формулировке | Типизированное поле (Целое число, Строка, ...) |
| Запрос | читать всё глазами | фильтровать, искать, сравнивать |
| Переиспользование | копировать и молиться | дублировать элемент, изменить одно поле |
| Переименование | обновлять каждое упоминание вручную | ссылки следуют автоматически |
Созданная система поможет не только в текущем проекте. Когда позже мы построим ссылки, таблицы баланса и выгрузку в движок, именно структурированные поля обеспечат нам беспроблемную миграцию между проектами.
Создайте первый игровой объект: Хлоя
Давайте создадим Хлою как настоящий игровой объект. Это займёт пару минут.
Шаг 1: Нажмите «Создать элемент»
В левой панели (или на верхней панели инструментов) найдите кнопку Создать элемент и нажмите её - ту же кнопку, что мы использовали для концепции в Markdown вчера.
Шаг 2: Выберите тип «Игровой объект»
В меню выбора типа выберите Игровой объект . Это создаст структурированный элемент с полями - именно то, что нужно персонажу.

Шаг 3: Назовите элемент «Хлоя»
IMS Creators отображает поле для ввода названия. Напишите Хлоя - это станет именем файла и заголовком элемента. У вас теперь свежий игровой объект.

Шаг 4: Посмотрите, что даёт игровой объект
Новый игровой объект поставляется с несколькими готовыми блоками:
- Галерея - добавьте её портрет или концепт-арт.
- Описание - краткое введение
- Свойства - структурированные поля (здесь и происходит магия).
- Локализация - переведённые названия/описания на случай, когда игра выйдет на других языках.

Шаг 5: Добавьте поля в блоке Свойства
Блок Свойства - это компактная таблица из двух столбцов: название свойства | значение. Для Хлои добавим три поля:
- Здоровье - задайте тип поля Целое число, значение
100. - Выносливость - задайте тип поля Целое число, значение
40. - Роль - задайте тип поля Строка, значение
Защитник.
Чтобы добавить поле, наведите курсор на строку и нажмите кнопку + (с подписью «Добавить свойство после») или откройте меню поля и выберите то же самое.


Чтобы задать полю тип, откройте меню поля, нажав три вертикальные точки в ячейке поля, выберите Изменить настройки и укажите Тип - IMS Creators предлагает Игровой объект, Игровую механику, Структуру, Перечисление и многое другое, так что вы можете смоделировать ровно то, что нужно персонажу.



В меню каждого поля можно Изменить настройки (тип и параметры), Дублировать, Копировать, Вставить и Удалить - поэтому создание персонажа очень простое.
Шаг 6: Созданный герой - настоящий, переиспользуемый элемент
Хлоя теперь - игровой объект в вашем проекте, сохраняемый автоматически прямо в странице концепции, который структурирован, доступен для запросов и неоднократного использования.
Смысл структуры раскроется позже, по мере роста проекта:
- Ссылайтесь на неё где угодно. Когда мы свяжем элементы дальше, способности Хлои, предметы и квест, где она появляется, будут указывать на её элемент - а не на скопированное имя. Переименуйте её один раз, и каждая ссылка последует за ней.
- Выгрузите её данные. Её поля - это реальные данные, поэтому проект может выгрузить их в JSON, который читает игровой движок, - без ручного переписывания из абзаца.
- Сбалансируйте её числа. Когда персонажей будут десятки, вы будете сравнивать, сортировать и ребалансировать Здоровье и Выносливость как значения - а не перечитывая предложения.
Вы можете подумать: «это больше работы, чем написать предложение». Для одного персонажа - да. Но это упростит вашу работу в самом ближайшем будущем:
- Переиспользование. Дублируйте Хлою и измените одно поле - и у вас есть Дмитрий, су-шеф, без переписывания абзаца.
- Ссылки. Чуть позже мы свяжем Хлою с её способностями и предметами. Переименуйте её один раз, и каждая ссылка последует за ней - больше никаких ломающихся скопированных имён.
- Баланс. Когда мы добавим таблицы значений, вы будете сортировать врагов и оружие по числам.
- Выгрузка в движок. Её структурированные поля станут JSON, который движок может загрузить напрямую.
- ИИ. Позже вы спросите у ассистента «какие выжившие имеют контроль толпы?» - и он ответит по настоящим полям, а не сканируя прозу.
Что дальше: коллекция врагов
У вас есть Хлоя, структурированный персонаж. Одному протагонисту одиноко, но монстры уже идут.
В завтрашнем посте мы соберём 15 идей врагов в одну коллекцию: создадим папку Враги, добавим «Посетитель-ходячий» и «Обжора из фуд-корта» как игровые объекты и организуем их так, чтобы весь бестиарий жил в одном центральном списке. Мы также начнём видеть, как её структура связана со структурой игры.
FAQ
В чём разница между Markdown-элементом и игровым объектом?
Markdown-элемент - это текстовый документ, отлично подходящий для концепций и длинных текстов. Игровой объект - это структурированный элемент с типизированными полями: именованными свойствами вроде Здоровье, Выносливость и Роль, которые содержат реальные значения. Оба - элементы; они просто хранят разные виды данных.
Нужно ли заполнять каждое поле?
Нет. Добавляйте только то, что важно, а остальное оставляйте пустым. Вы можете добавлять, переименовывать, дублировать и удалять поля в любой момент. Лист остаётся таким чистым, как вы его держите.
Как добавить поле с определённым типом?
В блоке Свойства наведите курсор на строку и нажмите кнопку + («Добавить свойство после»), чтобы добавить поле. Затем в ячейке поля нажмите три вертикальные точки, чтобы открыть его меню, выберите Изменить настройки и задайте Тип поля - Целое число, Число, Строка, Текст, Флажок, Перечисление, Выбор элемента и многое другое. Тип управляет тем, что можно внести в ячейку значения и как это будет вести себя позже.
Может ли у персонажа быть больше характеристик, чем просто простые текстовые/числовые поля?
Да. Некоторые поля богаче - например, поле Выбор элемента может указывать на другой элемент проекта (вроде способности), а поле Перечисление может ограничить значение фиксированным набором, который вы зададите. Мы будем использовать их на протяжении всей серии.
Что, если я уже описал Хлою прозой?
Ничего страшного. Создайте игровой объект, скопируйте ключевые факты в поля, а остальное вставьте в блок Описание. Пять минут структурирования сейчас экономят часы дальнейшей работы.
Где хранится Хлоя?
В папке проекта как Хлоя.ima.json - обычный, открытый JSON-файл. Вы можете открыть его в любом редакторе, закоммитить в git, скормить движку или передать ИИ-инструменту.
Это платно?
Нет. Структурированные игровые объекты - часть бесплатного локального проекта. Никакого аккаунта, никакого облака, никакой платы.