(26.05.2021 11:42)Panda Wrote: [ -> ]значит у меня всё работает...
А мой тестовый архив пробовал, там тоже не работает? А если поставить режим в HD-моде Stretchable 32-bit GDI (или какой другой), или вовсе без HD-мода пробовать? 
Нет. То же самое, что и на моей сборке - ZVSLib1.dll вместе с ERA 3.8 упорно пытается искать графику в папке maps. И не находит её, о чём пишет в лог. А вот с ERA 2.9.14 графика свободно читается из любой папки с ERA+. Кажись, что дело опять в многострадальной файловой системе ERA, которая у меня по неизвестным причинам не хочет работать так же как у других, с 2.8.4, если скляроз не изменяет, начала требовать пустую папку EraPlugins в корне с игрой, без которой феаноровские плагины не грузятся, а сейчас похоже всю графику придётся переместить в папку maps, чтобы ZVSLib1.dll её увидела и у меня вместе с ERA 3.8, как видит её у тебя. В общем, пересаживаюсь постепенно на ERA 3.8. Страшно представить, удастся ли перейти на ERA 4, уже вошло в правило, что обновил ERA - получи боль и танцы с бубном... Этот мазахизм мне нравится всё меньше и меньше.

XEPOMAHT,
- На главную страницу сборки повесил это (забыл поменять):
Code:
Совместимость:
- ERA 2.9.14, WoG Scripts (частично), ERA Scripts RUS (частично), HD Mod 5.2 RC21 и выше.
- ERA 3.8 (тестовый режим), WoG Scripts (частично, скоро будет тестовый режим), ERA Scripts RUS (не совместимо), HD Mod 5.2 RC21-36.
- С ZVSLib1.dll от Эра 3.8 тоже не канает?
- Скинь мне плз хотя бы один плагин (и желательно рассказать, что он делает, чтобы я смог проверить

), который не работает без пустой папки "EraPlugins" в корне с игрой

(26.05.2021 11:57)igrik Wrote: [ -> ]Давай ещё раз: диалоги в WND ЗАМЕНЯЮТ! аналогичные диалоги в zvslib.dll. Вызываются так-же, как и раньше - через IF:G IF:D IF:E.
Как это сделано: я ставлю хук на показ диалога из zvslib.dll и рисую диалог сам (через родные воговские функции создания диалога и элементов диалога, которые существуют в SOD секции игры).
Теперь понятно? Если нет - задай вопрос(ы), я тебе разжую, чтобы ты понял как это сделано раз и на всегда, и мы больше не поднимали тему DL 
Теперь понятно. НО метод тыка показал, что конкретно у меня ERA 3.8 сломала первый слот картинки этого диалога. Проверил слоты 2, 3 и 4 - они показывают gif без проблем. Первый НЕ ПОКАЗЫВАЕТ. В общем картинку буду показывать вторым слотом, а в первый придётся запитать картинку-пустышку. Увы, опять костыли, когда ж уже ERA от них избавиться то...
(26.05.2021 12:11)Panda Wrote: [ -> ]- С ZVSLib1.dll от Эра 3.8 тоже не канает?
Нет конечно. ZVSLib1.dll с 2004 года никто не пересобирал - исходники утеряны. Адресное пространство и там и там одинаковое.
(26.05.2021 12:11)Panda Wrote: [ -> ]- Скинь мне плз хотя бы один плагин (и желательно рассказать, что он делает, чтобы я смог проверить
), который не работает без пустой папки "EraPlugins" в корне с игрой 
Это плагины на отрицательную удачу и новые артефакты. Присутствуют внутри ERA+. Они скомпелированы под ERA 1.8 если что. Почему для них нужна пустая папка "EraPlugins" при чём только у меня - не знает никто.
Потому что gif - это пережиток, который так и ползёт из ZVSLib1.dll.
Почему ты не можешь перейти на png или bmp для статичных картинок?
Ешё раз говорю - ставь правильные слеши "/", а не обратные:
Правильно так: ^../data/zvs/lib1.res/wogoption.bmp^
(26.05.2021 12:34)igrik Wrote: [ -> ]Потому что gif - это пережиток, который так и ползёт из ZVSLib1.dll.
Почему ты не можешь перейти на png или bmp для статичных картинок?
В обычном bmp нет прозрачности (32-битный bmp и весит к тому же очень много), а поддержка png в ZVSLib1.dll полностью отсутствует. Тамошний LoadImageA обрабатывает только 4 расширения:
Code:
.BMP..GIF..JPG..JPEG
Как видишь, png среди них нет.
(26.05.2021 12:34)igrik Wrote: [ -> ]Ешё раз говорю - ставь правильные слеши "/", а не обратные:
Правильно так: ^../data/zvs/lib1.res/wogoption.bmp^
ОК, заменил, но ситуация не изменилась.

1. С прозрачностью сегодня решим. Хорошо? Берс появится - и решим (для png).
2. Для теста (забъем пока на прозрачность) попробуй переименовать из gif скажем на png (опять же для теста). Посмотри разницу - первая картинка будет отображаться? Посмотри разницу. Потести в общем.
Для справки: аналогичный диалог в WND поддерживает jpg, jpeg, bmp, pcx, png.
Так, у меня при переименовывании "obj8.gif" в любое другое расширение: jpg, jpeg, bmp, pcx, png, приводит к тому, что картинка не отображается вовсе.

Panda, потому что нужно в файле ert ещё поменять расширение.
Там есть строка "..\Mods\ERA+\anim\obj%X2.gif"
Нужно сделать "../Mods/ERA+/anim/obj%X2.png"
B дополнение файл obj8.gif нужно не перименовать, а переконвертировать!
igrik, спасибо, потом проверю. Сейчас идти надо уже.
Да, я и переконвертировал, и расширение менял, результата нет.
(26.05.2021 12:55)igrik Wrote: [ -> ]1. С прозрачностью сегодня решим. Хорошо? Берс появится - и решим (для png).
Буду надеяться. Наиболее желательный вариант - полноценный png с полноценным альфа-каналом в диалогах.
(26.05.2021 12:55)igrik Wrote: [ -> ]2. Для теста (забъем пока на прозрачность) попробуй переименовать из gif скажем на png (опять же для теста). Посмотри разницу - первая картинка будет отображаться? Посмотри разницу. Потести в общем.
Для справки: аналогичный диалог в WND поддерживает jpg, jpeg, bmp, pcx, png.
Не, такое впечатление, что WND там вообще не работает (а возможно, что оно как раз на первом слоте диалога спотыкается и дальше не идёт, при том, что в других воговских диалогах работает без косяков). В общем, пока сделаю вывод gif из второго слота, когда WND будет исправлено, скрипт с диалогом снова придётся переделать, т.е. убрать от туда заветный кастыль.
(26.05.2021 13:10)Panda Wrote: [ -> ]Да, я и переконвертировал, и расширение менял, результата нет.
У меня так же, png туда ни в какую не хочет. В общем, остаётся только ждать и надеяться поддержки png в самой ЭРЕ для данного диалога.
PS: ещё один прикол с этим воговским диалогом из zvslib1.dll вместе с ERA 3.8:
При попытке читать gif из папки maps первый слот вдруг неожиданно оживает, при этом... ломая остальные 3 слота, для которых графика начинает искаться... из текстовых переменных, задающих описание окон выборов диалога, в итоге лог выдаёт весёлые значения типа:
Code:
:::>>> Wed May 26 11:37:37 2021 2004.9.23.810 <Utils.cpp; LoadImageA; line 681> File ".\MAPS\Снести это сооружение (250 золото)?" not found.
:::>>> Wed May 26 11:41:31 2021 2004.9.23.810 <Utils.cpp; LoadImageA; line 681> File ".\MAPS\ооружение (250 золото)?" not found.
После чего сами z-переменные становятся испорченными, выдавая обрезанный текст.
В общем, очень надеемся и ждём, что в будущих версиях ERA 3 функционал глючного zvslib1.dll будет полностью заменён, чтобы уже уйти от этой библиотеки раз и навсегда.
Да вы прикалываетесь наверное. Я сегодня с утра проверял на png на объекте алтарь в ERA+ на 3.8 и всё работало. Да, не было прозрачности.
Покажи код скрипта.
(26.05.2021 13:45)igrik Wrote: [ -> ]Покажи код скрипта.
Вот кусок, с костылём из папки maps (скопировал туда тот же gif):
Code:
!!IF:D99/z100040/0/z100041/^obj%X2.gif^/z100056/0/0/zx3/zx3/0/0/z100042/z100043/z100044/z100045; íàñòðîéêè äèàëîãà
!!IF:F99/z100042/z100043/z100044/z100045/1 E1/99; äîïíàñòðîéêè äèàëîãà, v1 - ðåçóëüòàò
Тексты:
Code:
100040 Хотите перестроить это сооружение? <> <>
100041 Вот расценки строителей: <> <>
100042 Перестроить под жилище существ (10 дерево, 10 руда, 5000 золото) <> <>
100043 Перестроить под мельницу (20 дерево, 5 кристаллы, 5 самоцветы) <> <>
100044 Перестроить под дозорную башню (20 руда, 5 ртуть, 5 сера) <> <>
100045 Снести это сооружение (250 золото)? <> <>
100046 У вас недостаточно ресурсов для этого <> <>
100056 ../Mods/ERA+/anim/obj%X2.gif <> <>
Может быть глючит только у меня? Почему ж тогда с ERA 2.9.14 было всё нормально???
От zvslib1.dll на данный момент нельзя уйти по ряду причин:
1. Мной ещё так и не переписан диалог загрузки/сохранения WOG опций
2. Китайские ребята "заставляют Берса" использовать IF:D/E для ввода китайских символов. Стандартные SOD диалоги (и как следствие переписанный в WND IF:D/E) не поддерживают ввода китайских символов.
3. В старых скриптах очень часто используются gif файлы в диалоге IF:D/E. Я бы забил на обратную совместимость, но Берс не хочет этого делать.
В WND gif не введена, потому что её очень, очень геморойно ввести в SOD'овский код игры © Berserker.
Но я настоятельно не рекомендую использовать gif файлы! И прошу этого не делать!
С прозрачностью для png сегодня с Берсом разберёмся.
Итак: в ert файле заменил строку как сказал на "../Mods/ERA+/anim/obj%X2.png", переконвертировал obj8.gif в obj8.png, вот что у меня получилось:

Ну вот же - работает!
Только да - без прозрачности.