Героический картострой. Ответы на часто задаваемые вопросы — часть вторая
Открытие конкурса по HoMM4 повлекло за собой лавину вопросов от участников конкурса. Однако не у всех есть Интернет, чтобы оперативно поделиться своей бедой. А некоторые слишком скромны для того, чтобы спросить, и предпочитают мучиться с проблемами в одиночестве. Вполне возможно, что и вы окажетесь в числе тех, кому помогут ответы на вопросы, возникшие у других людей. Q: У меня английская версия локализации “Героев” и, когда я ставлю таблички и Event’ы в редакторе, русский текст принимается, а в игре вместо русского текста выводятся закорючки. Я обязательно должен писать на английском или есть другое приемлемое решение? A: Это обычно для английской версии. Но русская версия локализации от “Буки” правильно воспринимает русские символы. Поэтому вполне можно писать сюжетные вставки и на русском. Однако если вы хотите, чтобы ваш текст был доступен для понимания абсолютно всем, то лучше задуматься о написании его на английском языке. Q: Я решил нарисовать карту на конкурс, но перед тем как начать ее делать, забыл поставить галочку, что она двухуровневая. Я уже очень много нарисовал на поверхности. А никак нельзя поменять данную функцию уже во время редактирования, или придется делать все заново? A: Придется. При создании новой карты лишь о двух вещах надо подумать заранее — о размере карты и о наличии/отсутствии подземных уровней. После того как вы нажали “Ок”, выбрав эти характеристики, поменять их уже не получится. Q: В Quest Hut Properties выбираю Triggered Script, чтобы позволить только одному герою получить задание, выбираю игрока, пишу имя героя. Во время игры почему-то любой герой может войти в Hut. A: А входить им и не запрещается. Задание посмотреть может кто угодно. А вот выполнить (сдать) его может только выбранный игрок/герой. Q: Я сделал Event, согласно которому герою **
выдается группа фей, если он согласится заплатить за них. Но событие срабатывает каждый раз, когда герой проходит через это место. Как мне сделать так, чтоб событие срабатывало только 1 раз? A:Естественно, что после всех одноразовых скриптов необходимо ставить скрипт Remove Script (убрать скрипт). Однако порой, казалось бы, возникает сложность — позволяют выбрать только один скрипт, без добавления следующего за ним, как, например, в случае выдачи монстров. В таких случаях надо использовать скрипты-связки, типа Sequence (последовательность). Пример смотрите на рисунке. Сам скрипт-связка на рисунке не виден, однако отображаются те скрипты, которые он смог связать между собой.__Q: Как сделать в Hut в Quest Requirement так, чтобы заданием было уничтожение монстров?A:**Нужно сделать этих монстров отдельным игроком (недоступным для управления), а потом дать задание на уничтожение этого игрока. Причем в тексте задания это может звучать как “уничтожение всех лепреконов”. Только не забудьте пометить, что эти “все” относятся к игроку конкретного цвета.**Q: Можно ли сделать так, чтобы выиграть можно было после того, как игрок дойдет до определенного места, выполнит квест, а потом захватит замок? Причем замок должен появиться только после того, как игрок выполнит квест.A:**Нет. Вся карта рисуется заранее, и с нее можно только убрать некоторые объекты. Добавить же на нее объекты в ходе игры нельзя.**Q: Как сделать так, чтобы герой, доходя до определенной точки, там получал соответствующее сообщение (например, напуганные жители города сдаются без боя), после чего город переходил к игроку?A:**Для начала расставляются Events на подходах к этому городу. Затем в Triggeral Events (Триггерные события) города создаем событие с названием города (так проще), в котором прописывается скрипт Change Owner (Изменить принадлежность). Осталось только передать сам город. Для этого делается Placed Event (Установленное событие) в Свойствах карты. Проверяете (If), тот ли это герой, и в Then (То) включаете скрипт-триггер. Для этого служит скрипт Trigger Custom Event (Триггер события). И выбираем ранее созданное событие-триггер. Город готов к передаче.**Q: Можно ли связать две карты между собой (например, порталами, туннелями или еще чем-нибудь) по аналогии с подземельем? Например, игроку задается квест, который он должен выполнить на другой карте, вернуться обратно на первую и отсюда попасть на третью или четвертую. Или игра абсолютно линейна, предусматривает перемещение по картам, и переход к следующей возможен только после выполнения основного задания на первой без возврата?A:**Да, именно так. Переход на следующую карту возможен только после победы на предыдущей. Возврат на предыдущую невозможен.**Q: Можно ли с одной миссии уйти на одну из двух других, выполнив разные задания?A:**Нет. Но при помощи скриптов можно сделать вторую и последующие миссии в кампании разными для прохождения, выдавая игроку в конце миссии различные артефакты и запуская различные блоки скриптов в начале миссии в зависимости от выданных артефактов.Q: Я хотела сделать так, чтобы после небольшого текстика задавался вопрос. Я выбрала “Задать вопрос”, набрала текст, затем написала вопрос и описала действия. В итоге в игре у меня в конце строк появились какие-то квадратики между строк.
Откуда могли взяться эти квадратики, если при наборе текста у меня их не было, и я их сама не печатала? Можно ли их как-то убрать? A: Это коварные Enter, так проявляющиеся при выдаче сообщений. Бороться с ними можно тремя способами. Первый — хитрые манипуляции с пробелами для разделения слов и строк. Второй — выдача сообщений в несколько приемов, не более чем по абзацу на сообщение. Третий — написать текст в любом текстовом редакторе (например, в Word) и вставить его через буфер обмена. Тогда в разрывах между абзацами ничего не отобразится. __Q: Как сделать, чтобы при выполнении квеста у меня забирали определенный артефакт? A: Прописать в том месте, где был выдан квест, скрипт Take Artifacts (Взять артефакты). И выбрать тот самый, определенный. Q: После боя или после разговора с каким-нибудь персонажем я даю армии героя артефакт или армию. Каким образом сделать диалоговое окно, которое **
показывало бы, например, “Вам дан крест жизни”, и внизу картинка артефакта или что-то подобное? A:**Оно генерируется автоматически при передаче артефакта. Но здесь есть другой хитрый момент. Как показали опыты, передавать артефакты через отряды монстров не рекомендуется в связи с багом, имеющимся в игре. При этом артефакты только показываются игроку, но в его инвентарь не попадают. Поэтому артефакты через монстров передавать не рекомендуется. Через героев противника это вполне возможно.**Q: Как организовать пропускание одного-единственного героя во временных заграждениях и совершение действий в квестовых домиках с единственным героем?A:*Это абсолютно одинаковый процесс, так как механизм в обоих случаях одинаковый. Открывайте свойства того объекта, что хотите редактировать, и в Quest Requirement (Свойства задания) условия, необходимые для выполнения задания. Поскольку здесь задается непосредственно само задание, то лучше всего скрипт начать с And (И). В одном его разделе будет написано само задание, а во втором — тот, кто способен его выполнить (герой или игрок), то есть, например, скрипт Has Certain Hero (Обладает героем). Выбор остальных вариантов выполнения заданий— за вами.Q: Везде читаю, что в редакторе карт для 4-ых “Героев” нет карты проходимости, а что тогда значит кнопочка со словом “STOP” на красном фоне (рядом с кнопкой “сетка”)?A:Да, действительно, есть такая кнопка, называющаяся Toggle Passability Display (Переключает изображение проходимости).При нажатии на нее частично проходимые зоны (занятые артефактами или монстрами) окрашиваются в желтый цвет, а абсолютно непроходимые (занятые городами, горами и т.п.) — в красный. Желательно использовать эту функцию для проверки своих сценариев. Правда, использование ее несколько усложнено трехмерными ландшафтами, из-за чего происходит смещение отображений участков местности. __ * * Засим прощаюсь с вами. Задавайте вопросы. Если их накопится достаточное количество, мы опубликуем еще один FAQ или даже развернутый материал по редактору карт четвертых “Героев”.