+38 (093)  990-30-70

Новости

Королевский бал у Вас дома

Епоха кампаній. Age of Empires 3

Автор:

Андрій Верещагін

Одна із сильних сторін Age of Empires III - потужний редактор сценаріїв. Всім він хороший: і зручний, і функціональний. Одне тільки «але»: редактор не вміє об'єднувати місії в кампанії. Строго кажучи, це завдання іншого редактора (редактора кампаній), але його в грі, на жаль, немає. Саме цей недолік ми сьогодні усунемо, створивши власну унікальну кампанію.

В папці <Каталог гри> \ Campaign ви знайдете два підкаталоги: \ Age 3 Tutorial і \ Blood Ice Steel. Перший відповідає навчальним місіям (tutorial), другий - безпосередньо кампанії. Нас інтересуеттолько другий каталог.

Нову кампанію ми будемо робити на базі оригінальної. Більш того, під час роботи нам доведеться замінити оригінальний набір місій оновленим. Тому перед початком робіт обов'язково зробіть копію папки Blood Ice Steel. По-перше, якщо у вас щось піде шкереберть, ви завжди зможете повернутися до початкового варіанту. По-друге, після того як ви зробите нову кампанію, єдиний спосіб зіграти в стару - це копіювання оригінального каталогу Blood Ice Steel поверх зміненого. Співіснувати ж в грі дві кампанії одночасно вперто не хочуть. Так що і директорію з уже підредагувати файлами після завершення робіт бажано скопіювати. Тоді ви зможете перемикатися між кампаніями шляхом копіювання в каталог Campaign відповідної папки з ім'ям Blood Ice Steel.

Зайдіть в цю директорію. Там знаходяться файли двох форматів: .age3scn і .xml. Перші мають назви виду age3N (N - номер місії) і являють собою карти, які входять до складу кампанії. Сценарії можуть бути підправлені в редакторі (запускається з меню Help and Tools / Scenario Editor). Для цього скопіюйте ваші файли в папку Documents and Settings \ <Ім'я користувача> \ Мої документи \ My Games \ Age of Empires 3 \ Scenario. Після завершення перетворень поверніть файли на колишнє місце. Втім, це може і не знадобитися - оригінальні карти нас цікавлять тільки в якості наочних прикладів.

Місцеві XML-файли можна розбити на три групи. Одну з них складають модулі з іменами виду HomecityActX_Y, де X - номер акта (частини кампанії), Y - номер сценарію. Такі файли містять атрибути ворожих міст в різних місіях.

Такі файли містять атрибути ворожих міст в різних місіях

Перша стадія розробки кампанії - створення сценаріїв.

До другої групи входять файли homecitySPCAct1.xml, homecitySPCAct2.xml і homecitySPCAct3.xml, що відносяться до трьох актам і містять характеристики міст гравця (Home City) і список доступних апгрейдів. Ці поселення ви відвідуєте між деякими місіями (якими - визначається у файлі BloodIceSteel.xml).

Третя група представлена тільки одним файлом - BloodIceSteel.xml. Він є основним і відображає послідовність місій, а також їхні базові атрибути. Структури цього файлу ми торкнемося пізніше - коли будемо пов'язувати між собою сценарії нової кампанії.

Всі названі XML-файли можна редагувати в «Блокноті». Вони влаштовані так само, як і модулі формату HTML. Використовувані в грі файли складаються з розділів (блоків), які оформлені наступним чином:

<X>

...

</ X>

Верхній рядок позначає початок розділу, нижня - завершення, а X - назва. Зверніть увагу на те, що блоки в межах одного файлу можуть носити однакові імена. Але зміст у них при цьому розрізняється.

І окремі параметри, і підрозділи оформляються так само, як і «батьківські» розділи. Єдина відмінність: при описі будь-якого атрибуту замість трьох крапок прописано його значення, причому в одну строчку з назвою. Наприклад: <Act> 1 </ Act>. В даному випадку Act - це назва атрибута, а 1 - його значення.

Перед розробкою кампанії слід продумати, якою вона буде. Наступний крок - розробка сценаріїв в ігровому редакторе.Естественно, всі карти повинні бути пов'язані між собою сюжетно і логічно.

Після того як карти будуть готові, їх потрібно об'єднати в єдине ціле. У цьому вам допоможе файл BloodIceSteel.xml. У ньому задається послідовність місій, кожній з яких присвячений той чи інший підрозділ, що має назву як CampaignNode. Чим нижче він розташовується в файлі, тим вище порядковий номер сценарію. У кожному підрозділі приблизно з десяток показників, що характеризують даний рівень. Якщо якийсь параметр відсутній в тому чи іншому підрозділі, мається на увазі, що його значення дорівнює нулю. Розберемося по порядку.

Filename - ім'я файлу, що містить дану карту (нагадаю, що вона повинна знаходитися в папці <Каталог гри> \ Campaign \ Blood Ice Steel і мати розширення .age3scn).

DisplayName - назва місії, що використовується в файлах гри.

DisplayNameStringID - ідентифікаційний номер рядка з назвою сценарію, яке відображається в грі. Щоб зрозуміти, що це за слово містить цей рядок, зверніться до файлу stringtable.xml (лежить в директорії <Каталог гри> \ data). Використовуючи функцію пошуку, знайдіть в файлі той же число, що вказано в значенні даного параметра. У рядку ви побачите реальне назва рівня. Зверніть увагу на те, що гра підтримує кирилицю.

Cinematic - цей показник визначає, чи передує таким сценарієм відеоролик (1 - так, 0 - ні).

Act - номер акта, в який входить місія.

NoHCAccess - дається гравцеві перед даної місією доступ до міста (Home City), в якому гравець може проводити глобальні апгрейди (0 - так, 1 - немає). Нагадаю, що параметри Home City прописані в файлах homecitySPCAct1.xml, homecitySPCAct2.xml і homecitySPCAct3.xml.

LoadImage - завантажувальна картинка рівня. Вона повинна лежати в папці <Каталог гри> \ art \ ui \ singleplayer.

LoadTextID - ідентифікаційний номер рядка (знову ж у файлі stringtable.xml) з текстом, який ви бачите під час завантаження карти.

PostCinematic - ця характеристика визначає, чи слід за проходженням місії ролик (1 - так, 0 - ні).

У новій кампанії може знайтися місце і новим юнитам, яких ми змайстрували в попередньому розтині Age of Empires III.

Роботу з файлом BloodIceSteel.xml почніть з видалення всього його вмісту за винятком перших двох рядків і останньої (можете також на перших порах залишити один з підрозділів - як зразок). Тепер створіть у файлі новий підрозділ - він буде відповідати початковій карте.Виглядеть цей підрозділ повинен таким чином:

<CampaignNode>

<Filename> blood ice steel \ X </ Filename>

<DisplayName> Y </ DisplayName>

<DisplayNameStringID> Z </ DisplayNameStringID>

<Visible> 1 </ Visible>

<Act> 1 </ Act>

<NoHCAccess> 1 </ NoHCAccess>

<LoadTextID> X1 </ LoadTextID>

</ CampaignNode>

Замість X вкажіть назву карти, яке ви дали їй при збереженні в редакторі. Настійно рекомендуємо прописувати в назві кожного сценарію його майбутній порядковий номер. На місці Y вкажіть коротку назву карти - таке, щоб ви могли з ходу зрозуміти, до якого саме сценарієм відноситься даний підрозділ.

Перш ніж привласнювати значення третього параметру, загляньте в файл stringtable.xml. Перед останнім рядком виставте рядок такого змісту: <String _locID = '43335'> ... </ String>. Три крапки замініть на назву карти, яке ви хотіли б бачити в грі. Знову зверніться до файлу stringtable.xml. Число в лапках (в даному випадку - 43335) помістіть на місце Z.

Що стосується значення параметра LoadTextID, то тут слід вказати число 43336, попередньо вставивши рядок з цим номером і завантажувальним текстом місії в файл stringtable.xml.

Щоб додати в кампанію ще кілька сценаріїв, створіть у файлі BloodIceSteel.xml відповідні їм підрозділи, організувавши їх за тим же принципом. Розділів має бути стільки ж, скільки місій у вашій кампанії.

Зверніть увагу, що значення X, Y, Z і X1 для кожного нового підрозділу будуть різними. Зокрема, будьте уважні при роботі з характеристиками DisplayNameStringID і LoadTextID. Замість Z повинен стояти унікальний (!) Ідентифікаційний номер рядка файлу stringtable.xml. У цей файл потрібно додати відповідний рядок (для кожного з нових сценаріїв), як і у випадку з першою місією. Обов'язково подивіться, щоб обраний вами номер до цього не використовувався. Аналогічно для параметра LoadTextID.

Крім того, якщо в кампанії кілька актів, значення атрибута Act також може бути різним. Якщо говорити про налаштування NoHCAccess, то їй можна надати нульове значення в підрозділах, відповідних ключових рівнів. Але при цьому вам доведеться як слід підредагувати файл, що відноситься до даного Home City, щоб відібрати тільки потрібні апгрейди відповідно до специфіки місій (це вимагає ретельного продумування). Хоча можна залишити і оригінальні поєднання бонусів і поліпшень, але вони навряд чи ідеально підійдуть для вашої кампанії.

Особисто я порадив би вам на перших порах не морочитися з Home City, виставивши параметру NoHCAccess значення 1 у всіх підрозділах. Та й кількість актів краще звести до одного. А коли ви в усьому добре розберетеся, можете підключати до кампанії межсценарние відвідування міст, змінювати завантажувальні картинки місій.

Ми додали в гру кампанію, де російські борються з наполеонівським навалою ...

Є і Бородінський бій. На створення цікавої кампанії пішло не більше трьох годин.

Пора створювати нову кампанію. Якої тривалості вона буде і якими будуть входять до неї сценарії, вирішувати вам. Вона може складатися з декількох актів, наповнених десятком місій, а може включати в себе тільки одну невелику частину. Кампанія може бути складною, розрахованої на справжніх профі, а може призначатися для тренування і загартування в боях початківців стратегів.

По-моєму, непоганим варіантом є розробка історичної кампанії, в якій гравець, керуючи російською армією, протистоїть наполеонівським військам. З точки зору використовуваних в той час технологій, вона як не можна краще впишеться в ігрові епохи (тим більше що і російські, і французи на чолі з Наполеоном в грі є).

Нових кампаній може бути і декілька. В цьому випадку ви повинні зберегти вміст папки Blood Ice Steel для кожної з них. Переставляти їх ви зможете, копіюючи в <Каталог гри> \ Campaign відповідні файли. Робіть більше кампаній і надсилайте їх нам. Кращі з них будуть розміщені на нашому DVD.