Перейти к содержанию

Сообщения от Текущие вопросы и ответы по редактору карт

Аватар пользователя
спасибо. это не будет превращать карту в мод?

Whatever
Аватар пользователя
Да, такое было, Героист. Есть настройка такая у городов вроде в дереве свойств.
Поехали.
Надо вытащить все файлы диалоговой сцены... А вот где их взять надо посмотреть в скриптах: там должна быть ссылка на главный файл диалоговой сцены, оттуда на все прочие файлы.
Rhenish, открываете скрипт, принадлежащий карте с выбранным Вами роликом. Находите строчку StartDialogScene(бла-бла-бла). Вот это бла-бла-бла -- путь к файлу название_диалоговой_сцены.xdb, который Вам нужен. Правда, строк StartDialogScene может быть несколько, если в сценарии роликов несколько, но тут уж надо будет как-то суметь их различить! Или методом тыка, но долго относительно. Так вот, возвращаемся к название_диалоговой_сцены.xdb. Собственно, проще всего Вам скопировать этот файл в свою карту (с сохранением путей) и все сопутствующие ему. Как определить сопутствующие? Двумя способами: внешние признаки (они лежат все в одной папке, которая названа a-la диалоговая_сцена_1, или у них имена у всех схожие, a-la диалоговая_сцена_1.xdb, диалоговая_сцена_1_реплика_1.txt и так далее). Такой способ имеет минус: можно что-то пропустить. Допустим, реплики лежат, где нужно, а звуки в другом месте, это будет проблема, ролик перенесётся не на 100%. Можно, конечно, порыться в архиве получше и всё же найти недостающие файлы... А можно открыть блокнотом название_диалоговой_сцены.xdb и тупо поглядеть там ссылки на внешние файлы. Это не сложно, ведь Вам нужны ВСЕ ссылки, все пути файлов, которые вообще там есть. То есть роетесь в документе, нашли имя какого-то файла -- значит файл надо скопировать в Вашу карту.
Вот так примерно. Скрипт сейчас напишу.
--------
Разве что запретить нанимать соответствующий грейд в городе с помощью свойства CreaturesUpgradesFilter.
А, ну вот. Не будет, Героист.
 

К А
Стикеры GBF в Telegram
Аватар пользователя
Спасибо всем за помощь.

Whatever
В ответ пользователю MasteR
Аватар пользователя
Juss456
спасибо) а где доставать новых героев ТЭ? У них иконки прикольные, а найти их файлах не могу. В редакторе их тоже нет
Ранлит и Агбет?
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Аватар пользователя
Rhenish, вот, с частичной конвертацией. Разбивка на отряды, конечно, гуд, но, во-первых, не совсем очевидно игрокам, во-вторых, не очевидна, мне, не уверен, что смогу написать скрипт на поиск слотов в войске ) А тут можно конвертировать вампиров по частям и сразу максимальное количество. Скрипт не проверял (!), нет возможности, но вроде нормально...
function OurTalkBox()
TalkBoxForPlayers( PLAYERFLT_1, nil,nil,'путь к тестовому файлу с описанием способности Вячеслава и вопросом, сколько существ конвертировать','путь к дополнительному текстовому файлу, не знаю, зачем нужен, поиграйтесь', 'callbackvamps', 1, 'путь к тексту заголовка окна','путь к тексту заголовка перед кнопками, тоже не знаю, зачем нужен, если не нужен, поставить nil', 0, 'путь к ответу один, рекомендую поставить там одно существо','путь ко второму ответу, в данном случае 5 существ','тут, например, 15 существ','тут, например, 50','наибольшее количество существ, которое можно конвертировать при данном количестве князей вампиров и данном количестве ресурсов у игрока' );
end;

function callbackvamp(nom)
if nom==1 then
if (((GetPlayerResource(1, GOLD)>=700) and (GetPlayerResource(1, MERCURY)>=1)) and (GetHeroCreatures('Visas', 155)>=1)) then
RemoveHeroCreatures('Visas',155,1);
AddHeroCreatures('Visas',89,1);
else
MessageBox('путь к файлу, где будет написано, что ресурсов не хватает');
end;
elseif nom==2 then
if (((GetPlayerResource(1, GOLD)>=3500) and (GetPlayerResource(1, MERCURY)>=5)) and (GetHeroCreatures('Visas', 155)>=5)) then
RemoveHeroCreatures('Visas',155,5);
AddHeroCreatures('Visas',89,5);
elseif ((GetPlayerResource(1, GOLD)<3500) or (GetPlayerResource(1, MERCURY)<5)) then
MessageBox('путь к файлу, где будет написано, что ресурсов не хватает');
elseif (GetHeroCreatures('Visas', 155)<5)
MessageBox('путь к файлу, где будет написано, что вампиров не хватает');
end;
elseif nom==3 then
if (((GetPlayerResource(1, GOLD)>=10500) and (GetPlayerResource(1, MERCURY)>=15)) and (GetHeroCreatures('Visas', 155)>=15)) then
RemoveHeroCreatures('Visas',155,15);
AddHeroCreatures('Visas',89,15);
elseif ((GetPlayerResource(1, GOLD)<10500) or (GetPlayerResource(1, MERCURY)<15)) then
MessageBox('путь к файлу, где будет написано, что ресурсов не хватает');
elseif (GetHeroCreatures('Visas', 155)<15)
MessageBox('путь к файлу, где будет написано, что вампиров не хватает');
end;
elseif nom==4 then
if (((GetPlayerResource(1, GOLD)>=35000) and (GetPlayerResource(1, MERCURY)>=50)) and (GetHeroCreatures('Visas', 155)>=50)) then
RemoveHeroCreatures('Visas',155,50);
AddHeroCreatures('Visas',89,50);
elseif ((GetPlayerResource(1, GOLD)<35000) or (GetPlayerResource(1, MERCURY)<50)) then
MessageBox('путь к файлу, где будет написано, что ресурсов не хватает');
elseif (GetHeroCreatures('Visas', 155)<50)
MessageBox('путь к файлу, где будет написано, что вампиров не хватает');
end;
elseif nom==5 then
max=GetPlayerResource(1, GOLD)/700 - mod(GetPlayerResource(1, GOLD),700)/700;
if max>GetPlayerResource(1, MERCURY) then
max=GetPlayerResource(1, MERCURY);
end;
if max>GetHeroCreatures('Visas', 155) then
max=GetHeroCreatures('Visas', 155);
end;
if max>0 then
RemoveHeroCreatures('Visas',155,max);
AddHeroCreatures('Visas',89,max);
else
MessageBox('путь к файлу, где Вы напишете, что игрок не может конвертировать ни одно существо');
end;
end;
if (GetHeroCreatures('Visas', 155)>0) then
QuestionBox('путь к текстовому файлу, где Вы спросите, не хочет ли игрок продолжить конвертацию оставшихся вампиров-князей', 'OurTalkBox', nil);
end;
end;

function vamps(hero)
if (hero=='Visas' and GetHeroCreatures('Visas', 155)>0 and GetDate(DAY_OF_WEEK)==1) then -- проверка выполнения всех условий
OurTalkBox;
end;
sleep(1); -- эта и последующая за ней строка не нужна, если Вы не включили строку, комментарий к которой дан ниже.
MakeHeroInteractWithObject('hero','имя_города');
end;

SetObjectEnabled('имя города',nil); -- эту строчку добавлять проблематично. Скажем так, лучше не стоит, не знаю, какие будут глюки. Она нужна, чтобы заход в город не предшествовал появлению окна конвертации, но ведь конвертировать можно и после посещения города, верно?

Trigger(OBJECT_TOUCH_TRIGGER,'имя города','vamps');
 

К А
Стикеры GBF в Telegram
Аватар пользователя
Проще будет запускать конвертацию при посещении какого-то строения или при вызове специального походного заклинания.
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Аватар пользователя
Да, вспомнил, что забыл деньги отнять там (
 

К А
Стикеры GBF в Telegram
Аватар пользователя
У меня видео создано не с картой. Оно отдельно в MOD. Как там скрипт открывать - не дошло
Правило во взгляде...
В ответ пользователю RedHeavenHero
Аватар пользователя
RedHeavenHero
Ранлит и Агбет?
Да, они) Правда я подозреваю, что они - результат работы какого-то картостроителя, а не разработчиков. В любом случае, вопрос отпадает. Другой есть:
Есть ли способ заблокировать карту для редакторов тех, кто её качает? Запретить любые изменения в ней самой и скриптах? Заблокировать консоль, консольные команды, читы?
Кампании для Heroes V 3.1 (Трилогия):

Пробуждение зла
Нашествие из Преисподней
Смена эпох

Скачать все кампании одним архивом: Яндекс.Диск Google.Диск

You can download the set of 3 Campaigns (English version) here


Одиночные сценарии Heroes V 3.1:


Незваные гости
Красный кристалл
Синий кристалл
Закат тьмы

Мультиплеерные карты для Heroes V 3.1:

Легендарная война
Сердце вулкана
Передел мира
Аватар пользователя
У меня видео создано не с картой. Оно отдельно в MOD. Как там скрипт открывать - не дошло
То есть это не диалоговая сцена, а просто видеоролик? Если так, то в карте его проиграть скорее всего нельзя.
 

К А
Стикеры GBF в Telegram
В ответ пользователю RedHeavenHero
Аватар пользователя
RedHeavenHero
Проще будет запускать конвертацию при посещении какого-то строения или при вызове специального походного заклинания.
А с походным заклинанием вполне даже мысль.
Правило во взгляде...
В ответ пользователю MasteR
Аватар пользователя
Juss456
Да, они) Правда я подозреваю, что они - результат работы какого-то картостроителя, а не разработчиков. В любом случае, вопрос отпадает. Другой есть:
Есть ли способ заблокировать карту для редакторов тех, кто её качает? Запретить любые изменения в ней самой и скриптах? Заблокировать консоль, консольные команды, читы?

У меня есть некоторые предположения на этот счет...Но консоль лучше не блокировать - потому что она важнейший инструмент для просмотра ошибок. Читы отдельно заблокировать нельзя, т.к они относятся к тем же скриптам.

Whatever
В ответ пользователю Ment
Аватар пользователя
Ment
То есть это не диалоговая сцена, а просто видеоролик? Если так, то в карте его проиграть скорее всего нельзя.
MOD - это отдельная упаковка h5m. Только там есть index.bin, который помогает повторно открывать её в редакторе.

Добавлено через 8 минут
Juss456
Да, они) Правда я подозреваю, что они - результат работы какого-то картостроителя, а не разработчиков. В любом случае, вопрос отпадает.
Нет, Агбет встречается в миссии "Око за око", а Ранлит - вражеский герой в последней миссии Повелителей Орды.
Другой есть:
Есть ли способ заблокировать карту для редакторов тех, кто её качает? Запретить любые изменения в ней самой и скриптах? Заблокировать консоль, консольные команды, читы?
Что ты так беспокоишься об этом?
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
В ответ пользователю RedHeavenHero
Аватар пользователя
RedHeavenHero


Что ты так беспокоишься об этом?

Не хочу, чтоб при первых же непонятках все сразу лезли в редактор копаться в скриптах или рассматривать карту и т.п. А тем более чтоб сами пытались что-либо сделать, провацируя баги, сбои и пр.
Кампании для Heroes V 3.1 (Трилогия):

Пробуждение зла
Нашествие из Преисподней
Смена эпох

Скачать все кампании одним архивом: Яндекс.Диск Google.Диск

You can download the set of 3 Campaigns (English version) here


Одиночные сценарии Heroes V 3.1:


Незваные гости
Красный кристалл
Синий кристалл
Закат тьмы

Мультиплеерные карты для Heroes V 3.1:

Легендарная война
Сердце вулкана
Передел мира
Аватар пользователя
Я лично не вижу в этом ничего плохого. Я так на 3.0 версии несколько карт проходил, вручную удаляя 3.1 скрипты, а нормальные вбивая в консоль. Что касается самостоятельности, то это же пойдет на вред только тем, кто будет пытаться что-либо исправить = их же проблемы.
Ну или засунь в файл с картой инсталлер с прогой, которая будет изменять настройки консоли и редактора карт, пока её не деинсталлируют.

Whatever

Статистика

Приветствуем новейшего участника: Emil