XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Желтая пресса: обучающие статьи
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

 
Sergey
Старейший
offline
Опыт: 44,363
Активность:
Импортирование наработок
Чтобы сэкономить время и силы, картостроителям часто требуется перенести чужую или одну из своих наработок с карты на карту. Импортирование наработок – процесс несложный, в ТФТ worldedit имеются для этого все необходимые инструменты. Однако эти инструменты нужно как минимум знать и уметь ими грамотно пользоваться. Чтобы все получилось как можно лучше, нужно придерживаться четкой последовательности действий.

Инструментарий
Итак, начнем с азов. Думаю, практически каждому известна комбинация клавиш ctrl-c (копировать) и ctrl-v (вставить). При работе с редактором, эти комбинации часто помогают, но работают в различных ситуациях по разному. Если вы откроете одновременно несколько карт, то скопировав что-то на одной карте вы сможете вставить это на другой.
Совет: не забывайте про еще одну комбинацию клавиш – ctrl-z (отмена последнего действия), которая позволит в большинстве случаев исправить ошибку, если вы что-то не туда вставите.
1. Слой рельефа (terrain layer), если вы отключите все флажки изменения рельефа, установится особый режим – режим выделения. В этом режиме вы можете выделить прямоугольный участок земли (он станет выделен зеленым цветом). Используя комбинации клавиш ctrl-c и ctrl-v вы можете скопировать какой-то участок земли (форму и текстуру) в любое другое место на карте (причем не только этой). При вставлении фрагмента – нужно указать место, куда его вставлять – щелкните левой кнопкой мыши в каком-то месте на карте. Чтобы отменить режим вставления – жмите esc.
Плохо то, что копируя участок рельефа вы не можете скопировать вместе с ним дудсы и юниты, которые на нем находятся. Это придется делать по отдельности, причем не всегда удается поставить их так же, как на оригинальной карте. Другой серьезнейший недостаток – очень сложно, практически невозможно нормально работать со слишком большими участками, которые не помещаются на экране. Поэтому, учтите, что чаще всего проще импортировать триггеры и объекты на готовый рельеф, чем пытаться сделать обратное.
2. В слоях дудсов и юнитов все практически так же, как и в рельефе, только немного проще и нагляднее. Вы можете выделить и скопировать один или несколько дудсов или юнитов и перенести их в другое место или на другую карту. Однако, при переносе с карты на карту может возникнуть проблема: допустим вы скопировали какой-то особый тип юнита (custom unit), который есть на одной карте, а на другой таких нет. В этом случае из вашей попытки ничего не получится. Чтобы все прошло правильно, вам придется скопировать данные из редактора объектов так, чтобы на другой карте тоже существовал точно такой же тип юнита.
3. В редакторе триггеров с помощью описанных выше комбинаций вы можете копировать папку с триггерами, один триггер, одно или несколько событий, условий или действий + в текстовых триггерах вы можете использовать эти же комбинации для копирования фрагментов текста (как в текстовом редакторе).
Иногда вам требуется перенести много триггеров с карты на карту. Однако больше одного триггера за раз копировать не получается. Чтобы не переключаться по сто раз между сценариями, поместите все необходимые триггеры в одну папку и скопируйте всю папку целиком.
При переносе триггеров из сценария в сценарий, вы должны помнить и учитывать следующее: триггеры связаны с игровыми объектами (дудсами и юнитами), а также с переменными (variables).

Пример:
--------
Event
Unit enter region <Region0001>
Condition
Unit type of [Event response entering unit] equal <Crusader>
Action
Set u = <Event response entering unit>
Kill u
-----------
В данном триггере имеются ссылки на регион <Region0001>, на некий тип юнита Crusader и на переменную u типа юнит. Если мы скопируем этот триггер на другую карту, на которой не будет объектов с тем же названием, то в скопированном триггере отключатся строки, в которых есть ссылки на несуществующие объекты. Поэтому ваша задача заранее создать (или перенести) такие же объекты на карте, куда вы собираетесь импортировать триггеры (в нашем примере: регион Region0001, тип юнита Crusader, переменную типа unit - u). В этом случае при переносе триггеров с карты на карту не отключится ни одной строчки, что сэкономит кучу вашего времени.
Совет: для того, чтобы потом было легче копировать триггеры с карты на карту – делайте как можно меньше ссылок на конкретные игровые объекты. Заменяйте их на ссылки на переменные! Например, если у вас десяток триггеров связаны с каким-то героем, то сделайте переменную hero, в которую поместите нужного героя в самом начале игры и во всех триггеров делайте ссылку не на героя, а на переменную. Тогда при переносе на другую карту вам придется всего лишь исправить один триггер (в котором вы поместили героя в переменную), а в противном случае придется исправлять все строки, где есть ссылка на конкретный юнит-герой.
Если переменных и триггеров очень много и у вас нет никакого желания возиться с их переносом - есть еще один способ.
File->import triggers – записать триггеры вместе с переменными в специальный файл.
File->export triggers – импортировать триггеры с переменными из специального файла.
Это очень хороший способ, но нужно учитывать, что экспортированные триггеры и переменные полностью заменяют старые. Поэтому, если и использовать такой способ, то только до того, как вы начали серьезно работать над другими триггерами сценария.
4. Редактор объектов имеет свою специфику. Нужно учитывать, что в нем отсутствует возможность отменить действие – если вы что-то испортите, восстановить назад можно будет только вручную. Что касается копирования объектов, то здесь все примерно также, как и везде: описанные комбинации позволяют копировать объекты по одному. Можно копировать с карты на карту или создать копию объекта на той же самой карте.
Совет: будьте осторожны, когда создаете копию юнита на этой же карте. Новый тип юнита будет иметь точно такое же имя и характеристики. Вы просто не сможете отличить где объект, а где его копия, а ведь это бывает важно, особенно если на такой объект уже есть ссылки. Поэтому используйте особое свойство объектов – Editor Suffix – которое не имеет в игре никакого значения, но позволяет отличать объекты с одинаковыми именами.
При импортировании объектов могут возникнуть сложности такого рода: одни объекты могут ссылаться на другие. К примеру, вы хотите скопировать из сценария в сценарий заклинание summon beast, которое призывает какого-нибудь особого монстра Beast (custom unit). Очевидно, в заклинании есть ссылка на тип юнитов Beast. Если вы просто скопируете заклинание из сценария в сценарий, то тип призываемого юнита заменится на какую-нибудь ничего не значащую строку и заклинание не будет работать. Ведь в другом сценарии нет типа юнитов Beast. Значит, чтобы все корректно скопировалось и не пришлось потом ничего исправлять, нужно сначала скопировать тип юнита Beast, а затем уж заклинание summon beast.
При импортировании типа юнитов Beast тоже может возникнуть проблема. Предположим, что этот юнит имеет специальную способность (custom ability) Evasion 50%. Что произойдет, если вы скопируете юнит в сценарий, где нет такой же способности? Ничего хорошего. Значит нашу последовательность копирования нужно усложнить: Evasion 50% - Beast – summon beast. Думаю, идея понятна: нужно уметь правильно выбирать последовательность копирования объектов. Это поможет уменьшить объем работы.
Существует более простой способ скопировать все объекты разом:
File->import all object data – записать все объекты (юниты, заклинания, апгрейды и т.п.) в специальный файл.
File->export all object data – импортировать все объекты (юниты, заклинания, апгрейды и т.п.) из специального файла.
Все взаимосвязи между объектами сохраняются, но есть недостаток: импортируемые объекты полностью заменяют старые. Поэтому желательно экспортировать объекты один раз в самом начале создания сценария.
5. Регионы и камеры тоже можно копировать по одной, но подробно я останавливаться на этом не буду.

Итак, вы узнали практически все что нужно. Осталось лишь немного потренироваться переносить свои же или чужие наработки. Однако не забывайте, что другие авторы могут обидеться, если вы без спроса и даже без упоминания будете брать их наработки. Что касается меня, то свои наработки я разрешаю брать всем, кому они нужны.
Старый 03.03.2004, 20:09
B100D E1F
Scarecrow
offline
Опыт: 4,719
Активность:
Советую для тех же целей использовать WE Unlimited - все становаится куда прощще!
Старый 24.09.2005, 21:29
NETRAT

offline
Опыт: 83,712
Активность:
B100D E1F ты имеешь ввиду WE Enchancer?! Это, вообще говоря, не одно и то же

Sergey не думаю, что этот пост имеет смысл...
Старый 24.09.2005, 23:16
zibada

offline
Опыт: отключен
пост сергея полуторагодичной давности...
варнинг за занятия археологией на первый раз не ставлю, т.к. тема может быть еще актуальна =)
Старый 24.09.2005, 23:33

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 10:10.