Более правильный вариант "шапки".
Враг видит героя в шапке, только когда тот попадает в радиус зрения врага. Просто на открытой территории герой не виден.
[center]
Быстрый бэкап изменений в лодах.[/center]
Идея основана на том, что при установке в ЛОД-файлы файлы записываются в конец. Я так полагаю. Если это не так, то дальше можно не читать.
Итак. При установке инсталлятор ищет в заглавии ЛОДа указатель на добавляемый файл и, если файл новый, то добавляет в конец ЛОДа этот файл, а в конец заглавия дописывает новый указатель для нового файла. Если добавляемый файл уже существует, то дописывает новый файл в конец ЛОДа, а в заглавии исправляет старый указатель на новый.
Я предлагаю исправить (переписать) инсталлятор так, чтобы он в отдельном логе фиксировал все изменения.
Например, есть некий устанавливаемый файл MutnoMod.wog

, в котором есть h3bitmap.txt и h3sprite.txt, содержащие добавляемые файлы для каждого из ЛОДов. При установке инсталлятор должен писать лог-файл MutnoMod.wlg (или wun), в котором в текстовом или бинарном виде содержатся все изменения для всех изменённых ЛОДов, типа:
Code:
[h3bitmap.lod]
GSelPop1.bmp xxxxxxxx
ZLoadGam.bmp yyyyyyyy
ZNewGam.bmp zzzzzzzz
[h3sprite.lod]
ZTCAMPN.def aaaaaaaa
ZMENUNG.def bbbbbbbb
ZMENULG.def cccccccc
ZMENUHS.def dddddddd
ZMENUCR.def eeeeeeee
ZTTUTOR.def ffffffff
ZTSINGL.def gggggggg
где повторяющимися буквами я обозначил старые адреса прежних файлов.
По такому логу инсталлятор легко может сделать откат после установки.
Собственно, идея возникла сразу после возмущений Берсеркера, впечатлённого величием Польской Рощи.
SimpleLod от GrayFace'a добавляет согласно алфавита
Эх, ладно, если подскажете структуру ЛОДов, то может сам напишу что-нибудь.

Полагаю, вы либо не поняли, либо я не понял, либо всем пофиг; в порядке понижения вероятности.
Я понял. Имхо, просто нужен новый инсталлер. Текущий дорабатывать мутно.
(26.03.2010 00:29)Berserker Wrote: [ -> ]нужен новый инсталлер
Я это и имел в виду. Но не совсем про инсталлятор, а simplelod.exe (или как там его) с новыми командами, поддерживающими восстановление ЛОДа по логам.
А вог-архивы не под simple-lod заточены.
Модуль для работами с лодами один только, если не ошибаюсь.
в общем ясно одно: нужно расшифровывать лод и писать свой установщик пакетов
Структура лода открыта. У сержа модуль для Делфи.
(26.03.2010 01:37)Berserker Wrote: [ -> ]Структура лода открыта. У сержа модуль для Делфи.
Эта структура где-нибудь описана?
Серж - GrayFace?
type
archinfo = record
Len: Integer;
RealLen: integer;
end;
Lodhead = packed record // заголовок LoD'а
Header: longint; // Шапка "LOD"
Unk: longint; // версия лода. Игнорируется
HowMachFiles: longint; // сколько файлов в Lod'e
end;
PLodhead = ^Lodhead;
TLodStruct = packed record // тип для чтения информации о файле
NameFile: array[1..16] of char; // Имя файла. 0 в конце обязателен.
StartSingleFile: Longint; // начало файла в лоде.
LenSingleFile: Longint; // длина файла вне архива
Unk1: Longint; // Тип файла
RealSize: Longint; // размер запакованного файла, 0 если файл не запакован.
end;
Блин, файлы в ЛОДе ещё и упакованы. Совсем забыл про это. А это значит, что ещё нужно разбираться с упаковщиком.
Добавлено:
zlib?