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

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

Аватар пользователя

Осмотрел внутренности карты, файл types.xml не обнаружил файла🙈. Подскажите плиз где его искать, и именно его редактировать? На map.xdb только ориентируемся, но не трогаем, верно? И карта для мультиплеера, может с ней какая особенность снова) как с боевыми скриптами выяснилась...

Ещё заметил такую штуку, в папке карты обнаружил файл Agrael-2.(AdvMapHero).xdb файл. На нём экспериментировал, когда добавил всех героев чек-боксами и в Map Properties / Player Properties / Player 2 / Reserve Heroes List / Add добавил Agrael-2 в резерв третьему игроку (ИИ склад). В списке оказались все доступные герои, не только из таверны. Под мои нужды сейчас это подходит, т.к. научился доставать из резерва героев и переприсваивать игрокам. А таким образом можно подшаманить и положить всех, отсутствующих: Арантир, Вайер, Тимхан, Маахир и т.д. - пачкой в резерв руками? Добавив их *.xdb файлы в папку карты, и вероятно где-то прописав эти файлы.

Ещё только учусь =)
Аватар пользователя
types.xml не нужно трогать; в архиве карты в Maps/.../MapName/map.xdb есть список ReservedHeroes для каждого из игроков, по аналогии с тем, что там уже добавлено через редактор, добавьте новый (только inline:id поменять не забудьте — например, заменить любую цифру)
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
Discord-сервер "Герои 5: S.T.A.L.K.E.R"
Сервер по модификации "Герои 5: S.T.A.L.K.E.R"
_________________
Аватар пользователя

На вид разобрался, но немного по другому. Блокнотом открыл map.xdb, нашёл нужные куски кода, но засцал редактировать 😁 чтоб не поломать случайно что-то)
В итоге путём проб и ошибок нашёл такой путь:
- Добавлял через , как выше описал героя  через Map Properties / Player Properties / Player 2 / Reserve Heroes List / Add в резерв.
- В MapPropertiesTree / Players / [2] / ReservedHeroes появлялась новая строка с этим героев. Её редактировал, выбирая в Shared героя дальше. В том числе не из таверны проэксперементировал оба варианта
- Получив вылеты карты при вызове такого героя начал сверять поля, методом научного тыка выяснил, что добавление статов в MapPropertiesTree / Players / [2] / ReservedHeroes и указания уровня локации (земля/подземелье) достаточно. Умения героев (Тимхан попался как подопытный) отображались и работали в бою.
Но уже ночь, завтра продолжу. Пока попробовал достать так двух героев и "оно заработало". 

Ещё только учусь =)
Аватар пользователя

Спасибо) 

Дополню, проверил догадку.
Вылеты карты при вызове функции связаны с расхождением значения переменной Floor в параметрах зарезервированного героя, статы можно не редактировать и оставить 0, не влияет, DeployReserveHero отрабатывает корректно.
В итоге только проверить в MapPropertiesTree / Players / [2] / ReservedHeroes, открывая строку героя через три точки , справа в окне столбец Property,  строка Floor значение 0 или 1 должно совпадать с местом (земля/подземелье), куда вызывается герой из резерва. У некоторых героев идёт земля, у кого-то подземелье.
Чтоб консоль не ругалась красным предупреждением ещё в резерв героям не забыть прописать армии какие-то. Я добавил 1 существо. Если ничего не делать, игра сама базовые выдаёт. Но красная надпись раздражает перфекционистскую душу) 



Добавлено через 2 часа 2 минуты
И попутный вопрос возник, чтобы вручную не копировать 100500 текстов описания специализаций и самих героев, как корректно прописать в код пусть, чтобы можно было вывести во всплывающем сообщении? Вижу что есть в свойствах героев эти пути. Прописать их придётся либо в отдельный массив для каждого, либо если есть вариант на универсальное свойство/поле одну переменную, чтоб от туда тянуло. Но что-то подсказывает, что придётся усердно по каждому пройтись(

Добавлено через 1 час 28 минут

upd: в ЧаВо от Jack_of_shadows нашёл пункт "Как узнать и правильно написать пути к иконкам, эффектам, звукам и другим внутренним ресурсам игры?" там описано) попробую по аналогии сделать, беря из свойств героя. Если столкнусь с траблом, вернусь с вопросом этим😅

Ещё только учусь =)
Аватар пользователя
FataLisT, если я правильно понял, что нужно выводить некие игровые тексты по своему усмотрению, не копируя их, то как это делал я:
1. Например, мне нужно было для своего магазина артефактов выводить название и описание артефакта.
2. Я нашёл в ресурсах, что все они представляют однотипный путь /Text/Game/Artifacts/НАЗВАНИЕ_АРТЕФАКТА/Name.txt (Description.txt).
3. Вручную пришлось забить в коде таблицу артефактов, вида [ARTIFACT_SWORD_OF_RUINS] = 'SwordOfRuin', получив таким образом переход от ID артефакта к его названию в ресурсах (на деле у меня таблица содержит несколько параметров, а не только название).
4. Дальше сделал функции типа:

function GetArtefactName(id)
  return '/Text/Game/Artifacts/'..artefact_table[id]..'/Name.txt'
end

function GetArtefactDesc(id)
  return '/Text/Game/Artifacts/'..artefact_table[id]..'/Description.txt'
end

Собственно и всё. 
РПГ-сценарий для HoMM5: Путь героя
ЧаВо по созданию карт для HoMM5: ЧаВо
Аватар пользователя
Юзаю самописную програмку, которая сканирует файлы игры и генерирует скрипты на их основе.

Для существ генерирует инфу в такой форме:



Для героев:


Для артефактов:


Ну и для спеллов:


Здесь можно скачать пак с просканированной ванильной(не совсем) игрой, подключить к любым скриптам легко, получать инфу элементарно. Мб кому будет полезным.
https://drive.google.com/file/d/17Xy0NygbnXhLnj1MTFH847yO1dm0Pzjp/view?usp=sharing
Нет войне.
Аватар пользователя
Jack_of_shadows, всё верно, замысел таков, собрать в одном месте данные. Благодарю, учту ваш совет с унификацией создания пути через id. Постепенно собираю файл *.lua, получается некая БД под карту с возможностью адаптации потом под другие задумки.

Gerter,  благодарю, ваши файлы помогут многим, кто увидит)
Ещё только учусь =)
Аватар пользователя
FataLisT, координаты выброса героя указываются через DeployReserveHero, я не встречал проблемы с невозможностью поставить героя в подземелье с координатой floor. Вообще, все герои резерва — это стандартные AdvMapHero объекты, которые стоят на карте, но технически с нулевыми координатами; Deploy их перемещает. И для всех AdvMap объектов единственным критерием корректной работы является указанный валидный (даже если и незаполненный) Shared-файл. Координаты могут быть выставлены любые, если не ошибаюсь, floor, поставленный в значение 99, к вылету не приводит. Но это было давно и неправда, проведите эксперимент!
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
Discord-сервер "Герои 5: S.T.A.L.K.E.R"
Сервер по модификации "Герои 5: S.T.A.L.K.E.R"
_________________
В ответ пользователю }{0TT@6bI4
Аватар пользователя
}{0TT@6bI4
FataLisT, координаты выброса героя указываются через DeployReserveHero, я не встречал проблемы с невозможностью поставить героя в подземелье с координатой floor. Вообще, все герои резерва — это стандартные AdvMapHero объекты, которые стоят на карте, но технически с нулевыми координатами; Deploy их перемещает. И для всех AdvMap объектов единственным критерием корректной работы является указанный валидный (даже если и незаполненный) Shared-файл. Координаты могут быть выставлены любые, если не ошибаюсь, floor, поставленный в значение 99, к вылету не приводит. Но это было давно и неправда, проведите эксперимент!
Провёл эксперимент ещё один, итог как вы и описали. До этого менял только Shared на героя нужного и следом вылетало,  затем поменял именно только этот параметр floor и начинало работать. мистика) Чтож, не стыдно признать, что сделанный ранее вывод оказался ошибочным.
Ещё только учусь =)
Аватар пользователя
всем привет. подскажите как решить проблему. сделал картинку для загрузочного экрана карты. всё как положено: по размеру сходится, по формату сходится, снизу залил чёрным цветом. вставляю в редакторе картинку, захожу в игру, а там картинка скукоженная. В левой верхней части экрана видно лишь малуж часть картинки, справа картинка поплыла. и чёрного цвета на пол экрана. как быть?
В ответ пользователю Скаут
Аватар пользователя
Скаут
всем привет. подскажите как решить проблему. сделал картинку для загрузочного экрана карты. всё как положено: по размеру сходится, по формату сходится, снизу залил чёрным цветом. вставляю в редакторе картинку, захожу в игру, а там картинка скукоженная. В левой верхней части экрана видно лишь малуж часть картинки, справа картинка поплыла. и чёрного цвета на пол экрана. как быть?

Видел такое, но не приходилось править. Скинь сюда картинку, может криво сохранил, посмотрю.
В ответ пользователю Mооnst@r
Аватар пользователя

Я залил скриншот и исходник на ЯД. вот ссылка:

https://disk.yandex.ru/d/lwr_gut_fz3BxQ

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

 

В ответ пользователю Скаут
Аватар пользователя
Скаут

Я залил скриншот и исходник на ЯД. вот ссылка:

https://disk.yandex.ru/d/lwr_gut_fz3BxQ

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

 

У тебя расширение tga и картинка не сжата, возможно это сказалось.
Вложения 1
1 файл • Общий размер: 353,6 KB
В ответ пользователю Mооnst@r
Аватар пользователя
э-эх как бы не так. теперь просто чёрный экран. блин, как же тяжко разбираться в этом всём. даже не знаю, что и думать

Статистика

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