Vadzra 
Хмм, сделал все переименования:

1. Переименовал анимации существующего юнита G000uu6112 -> G000uu8151 в свой юнит - свой юнит на арене не появился (старый естественно исчез с арены).
2. Переименовал анимации, которые я раньше вставил для своего юнита, в старый юнит G000uu6112 <- G000uu8151 (не те же самые, что выше, а у меня были анимации, которые я специально для нового юнита вставил). Старый юнит на арене не появился.

О чем это нам говорит - какая-то фигня с организацией файла BatUnits.ff. Где-то что-то не прописано. То ли в MQDB не вся информация об анимациях, то ли где-то еще... Информация об индексах в MQDB не совпадает с тем, что есть в IndexMap?

Либо есть две ошибки (что вряд ли), одна с тем, что для моего юнита где-то не стоит нужный флаг, плюс я не так вставил анимации. Этот вариант гораздо менее вероятен.
HSerg
Ok. Смотрю в чём может быть проблема.
Vadzra 
Сергей, в Events.ff и BatUnits.ff тоже зашиты бинарные файлы: Images.opt и Index.opt и еще парочка типа .unk файлов. Их не нужно ли править по аналогии со звуком? Что-то уз очень подозрительно: ISOUnit.ff и Face.ff
прицепились к новому юниту, а эти два нехотят. При этом у меня прописано все в точности также, как у существующего юнита, настройки которого я скопировал. Даже если я переименовываю запись в Events.ff под новый юнит - все равно картинка в игре не появляется. Хотя там она гарантировано правильно вставлена.
HSerg
Нет, править images/index нужды нет - именно их правит D2ResExplorer.
Попробуй для существующего юнита анимацию сменить. Если не сработает, то что-то упускаем.
Vadzra 
To Dreher: А ты не пробовал переименовать любую запись в IndexMap в Events.ff в имя своего юнита? Если после этого портрет будет виден в игре, значит есть проблемы с твоей картинкой, если же портрет виден не будет, то возможно это не потому, что твоя картинка неправильная, а что-то не настроено в учетной записи юнита.
Dreher 
Опять полный ступор. 8 бит то я могу в Paint.NET сохранить (причем D2ResExplorer.RC9 уже пакует эту картинку). Но, что мне указывать в "уровень размывания" и "порог прозрачности"? По умолчанию там стоит "уровень размывания: 7", "порог прозрачности: 37"(у меня так стоит). НО, во первых в D2ResExplorer.RC9 у меня показует что картинка непрозрасная (на самом деле она прозрачная). И во вторых: в игре это изображение не отображается.
HSerg
Лучше таки взять редактор работающий с палитрами напрямую. В D2 прозрачен только первый цвет палитры.

P.S. Посмотри Curtis'' Plugin Pack - там есть редактор палитры, но не факт, что при сохранении она не пересортировывается.
KDS 
Disciples 2 Восстание Эльфов v 3.01 Руссобит-М (пробовал и на акеловской, и на английской).
Нашел такие ошибки:
1. У Сквайра и ему подобных людей звук HIT_A из Battle.wdb выдает ошибку «Argument out of range».
2. Медуза: та же ошибка на все три звука HIT из Battle. wdb.
3. Рух: выдает ошибку анимация атаки сверху.
4. Лакхаан, Темный Лакхаан, Граф Фламел Краули: выдают ошибку, и оказывается, в игре вообще нет никаких звуков у них (или это только у меня?).
5. Злой дух (Wraith): нет HIT-анимации вообще (только тень) и в игре тоже при попадание по нему стоит на месте и все (опять только у меня?).

Очень жду возможность вытаскивать ресурсы с помощью этой программы желательно не по одному, а группой с помощью выделения мышкой, или сразу всех ресурсов одного юнита.
HSerg
1. Да, ссылка на звук есть, но самого файла звука нет. Из текста ошибки это непонятно - исправлю.
2. См. выше.
3. Пока не знаю - надо смотреть подробнее.
4. Аналогично.
5. Аналогично.

Ok, добавлю.
Vadzra 
Сделал все согласно тому, что писал ниже. Теперь вижу новый юнит на глобальной карте. Т.е. ИСОУнит файл прицеплен нормально.

Проблемы: 1. По прежнему не вижу юнит на экране боя (симптом Drehera). Все вроде бы нормально прицеплено, но игра не видит файл из Events.ff и BatUnits.ff. При этом в D2ResExplorer все нормально отображается.
2. Звук так и не подцепился к юниту. Непонимаю, каким образом осуществляется линк между звуковыми файлами и юнитом? Точно не по имени файла. D2ResExplorer говорит о загадочном SNDINFO.dat, этот файл я в установленной игре не вижу.
HSerg
Для звука нужно править бинарные файлы LSTIDS.DAT и SNDINFO.DAT в Battle.wdt.

LSTIDS.DAT - регистрация записи с id юнита
SNDINFO.DAT - ссылки на *.lst файлы и какая-то критичная доп. информация (?) на аудио-файлы (пробовал с ней экспериментировать - меняются параметры воспроизведения в игре)

Сегодня-завтра добавлю в D2ResExplorer возможность редактирования этих файлов - сможешь попробовать.
Vadzra 
Все, кажется я понял как это все работает! :) Завтра попробую сделать как следует:

Не все юниты могут действовать на глобальной карте. Например, Владыка небес неможет. Для таких юнитов существует только одна запись в GUnits.dbf и анимация для них прописана только в BatUnit.ff.
Для тех, кто может действовать на глобальной карте существует 2 записи в GUnits.dbf, а также две анимации в ISOUnit и BatUnit.ff.

Все еще непонятно, откуда игра знает, какие звуковые файлы принадлежат какому юниту. Может это прописано в загадочном SNDINFO.dat? ;)
Vadzra 
Поюзал D2StatsEditor - очень полезная вещь. Спасибо. Несколько вопросов возникло в процессе - о некоторых юнитах, например темный эльф потрошитель, D2StatsEditor говорит, что информация о нем отсутствует в SNDINFO.dat. Где этот файл находится, я не вижу его в директориях с игрой? С тем юнитом, который я пытаюсь вставить та же история. Но судя по тому, что эльф потрошитель в игре присутствует, а мой юнит - нет, дело не в этом. Кстати, сейчас посмотрю чем .дат файлы редактировать (просто по Фрейду получается - буду редактировать файлы точка дат :)). В игре в корне есть единственный .дат файл, который я нашел: gameinfo.dat.

D2StatsEditor не показывает все звуковые файлы относящиеся к юниту. Показывает только Midgard, но не Battle.

Для некоторых юнитов, типа Стражник (эльфийский) и охотник g000uu8119(наверное еще есть я не проверял) Events file не отобразается в превью. Появляется сообщение: List Index out of bounds (-1)

А, дошло - для многих юнитов в таблице есть две записи, то что я говорил верно для одной из них, но для второй - все нормально. Кстати, было бы очень полезно узнать как эти две записи между собой связаны, так как здесь мне кажется и зарыта проблема с невидимыми картинками из файла Events.
KDS 
Здравствуй, HSerg. Спасибо тебе за твои программы. Без них ничего бы мы не вытащили из игры. На счет D2UnitsViewer v.0.1b, так намного удобнее искать изображения и звуки определенных юнитов. Был бы очень признателен, если бы ты ее доработал до конца. Слишком много косяков: не все рамки юнитов отображаются, некоторые звуки перепутаны. Очень не хватает возможности D2ResExplorer по вытаскиванию ресурсов. Так же не помешал бы поиск по названию юнита в левом меню. С удовольствием буду тестировать новые версии этой программы, если необходимо.
В общем, постоянно слежу за обновлением софта на твоем ресурсе. Еще раз спасибо.
HSerg
Рамки юнитов - это которые FACE*? Если речь о них, то там действительно какой-то косяк библиотеки декодирования png - разбираюсь.

Звуки взяты из ресурсов игры, если где-то не совпадают, то нужна более детальная информация - версия D2, юнит, имена неправильно найденных файлов. У себя несовпадений пока не встречал (но детально не сверял, так что мог и не заметить).
Vadzra 
Вставил все картинки в BatUnits.ff, ISOUnit.ff, Face.ff и Events.ff. Пофиксил, чтобы игра запускалась. Я умудрился испортить GUnits.dbf, пока ковырялся. Новый юнит по-прежнему невидно на поле боя. Симптомы такие же, как и у Drehera. Только у меня все картинки вставлены. Непонятно, как игра распознает звуки для каждого юнита, т.к. в .wdb, .wdt файлах нет никакого общего правила наименования записей. Некоторые записи поименованы Unit5012Effect, а другие WDRAGONHITA. Это никак не связано на первый взгляд с таблицей существующих юнитов, где имена использованы такие: G000uu8151...
HSerg
Со звуками всё запутаней, так что подожди до среды - вернусь из ком-ки и выложу софтинку для просмотра ресурсов по юнитам.

UPD: См. в файлах D2UnitsViewer v.0.1b
Dreher 
To Vadzra
в них стоит g0000000.
Vadzra 
Как у тебя получилось, что вместо юнита на арене пустое место? Что у тебя стоит в GUnits.dbf в колонках Prev_ID и Base_Unit?
Dreher 
Сергей а какой программой ты сохраняешь "256-цветный png"? Вообще такого не нашел.... Нашел только 256 bmp - в Paint и то с ужастным искажением. В википедии в "цветное индексированное изображение" про палитра 8 бит для цвета глубиной 24 бит. И вообще там нет ничего понятного.(
HSerg
В Paint.NET можно сохранить как PNG с глубиной цвета 8 бит.
Dreher 
и еще: Сергей не мог-бы ты к следующей версии программы добавить в нее небольшой справочник (хоть мало-мальский). Для начинающих мододелов.
Dreher 
вот вам скриншоты моих работ, что-бы понятнее было что уменя не получается (там все мною подписано):
http://ccgames.ucoz.net/dnm/1.gif
http://ccgames.ucoz.net/dnm/2.gif
http://ccgames.ucoz.net/dnm/3.gif
А вот, непосредственно сам портрет который я пытался вставить в игру:
http://ccgames.ucoz.net/dnm/G000UU8114.gif

p.s. картинки в плохом качестве что-бы весили поменьше (у меня то безлимит, а у вас не знаю).
Dreher 
я могу поставить старые картинки на нового юнита (т.е. просто выгрузить старого переименовать и вставить для моего) но мне-то нужен абсолютно новый - а для этого нужно (как я понял) загрузить новые картинки в BatUnits.ff, ISOUnit.ff, Face.ff и Events.ff. последнее это непосредственно их портреты. я начал с Face.ff - там все ок (всего две маленькие картинки нарисовал и вставил) - а главное что все работает (в игре они корректно отображаются). затем я принятся за Events.ff (а то нехорошо как-то крестоносцу без портрета), картинки то я нарисовал быстро. только, вот проблема - там где в игре прозрачно - оно должнобыть розовым (как в d2resexplorer и paint) или прозрачным как в paint.net? попробывал и так и так, пишет "invalid png image" - и ни вкакую не пакует...(
я так понимаю там что-то не так с палитрой (или с форматом сохранение, например нужно меньше цветов как вариант). обьясните пожалуйста как мне сохранить портрет чтобы он не писал "invalid..."? может я не теми программами пользуюсь (думал фотошоп не обязательно качать).
вот-бы конвертор такой чтобы конвертировал в нужный формат с нужными аттенками. Очень жду ответа (и мой новый юнит крестоносец также ждет :) ).
HSerg
Посмотри на http://ru.wikipedia.org/wiki/Png про "цветное индексированное изображение". Этот формат поддерживается большинством редакторов изображений (иногда он встречается под именем "256-цветный png").

Про прозрачность написано в info.rus.txt - это первый цвет палитры изображения.
Vadzra 
Да, я в IDA и пробую. Просто, когда игра выходит на exception, когда проверяет графические данные я так подозреваю, то все зависает, так как этот exception не передает управление IDA.

To Dreher

Да, я это уже тоже проходил, когда в игре появляется юнит с новым названием и графикой от старого юнита, но, чтобы появился юнит со своей графикой, то соответственно ее нужно вставить. Я нашел три места, где это нужно сделать: BatUnits.ff, ISOUnit.ff и Face.ff. Последний - необязательно, так как если он отсутствует, то игра вставит дефолтовый. Пока все равно игра не запускается. Где я что-то невставил, пока не знаю. Наткнешься на что-то, пиши.
HSerg
Заигнорь их при первом возникновении. Они проскочат и игра запустится.
Dreher 
я могу создать нового юнита в глобалс - у меня все работает, все ок. кроме одного но: мой юнит невидим(нет он есть он бьет или колдует умирает и тп) или имеет внешний вид друго-го юнита (это по моему желанию если я укажу это в базеюнит). но мне-то надо что-бы мой юнит был новым не только по имени описанию и статам (характеристикам) но чтобы еще он и выглядел по другому.
HSerg
Это всё делается с помощью IndexMap в D2ResExplorer. Выгрузи картинки/анимацию от какого-нибудь стандартного юнита, поправь и загрузи в IndexMap для своего.
Vadzra 
Спасибо за новую версию Explorer. Еще пока не пробовал работать с .gif в ней, но должно быть интересно :). Пока застрял на инициализации игры. Я уже примерно знаю, какие процедуры используются для инициализации графики, но нормально запустить игру под дебагером пока не получается. Она запускается, потом виснет. Что-то не так с настройкой exceptions. Просто глазами пока не вижу, где я графику ненастроил, так что пробую дебагером.

To Dreher:
Как создавать изображения новых юнитов и вставлять их потом в игру никто кроме девелоперов пока незнает. Я последний месяц только это и пытаюсь сделать. Почитай ниже мою переписку с HSerg. Вкратце - нужно вставить новую анимацию в файлы ISOUnit.ff и BattleUnits.ff, в Faces.ff вставляется соответственно иконка юнита. Еще новый юнит должен быть прописан в ресурсах из папки Globals. Я все это сделал, но что-то упустил и теперь игра с этим новым юнитом незагружается, ибо неинициализируется графика...
HSerg
Попробуй IDA - у меня под ней всё работает.
Dreher 
Недавно стал заниматься графическим модингом Disciples 2. Сразу возник вопрос, почему я не все изображения могу изменить? Изменяя изображения в архиве Events.ff у меня выходит какае то ерунда, а в Faces.ff все прекрасно изменяется... А, как создать изображения нового юнита вообще не знаю. Зачем нужны MQDB-контейнеры так и не понял... Кто сведущ в редактировании графики в Д2 пожалуйста помогите (mark_t@i.ua). Обьясните что - к чему. Очень прошу!