Mod_Info version 1.5 by Vasiliy
-------------------------------
Утилита просмотра содержимого файлов игры Morrowind, экспорта данных и генерации
различных отчетов.

1. Назначение
2. Подсветка синтаксиса
3. Определение измененных/новых рекордов
4. Предварительное сканирование
5. Статистика
6. Отчеты
7. Экспорт
8. История версий

1. Назначение
-------------
Утилита предназначена для просмотра содержимого файлов игры Morrowind, экспорта
данных и генерации различных отчетов.

Полностью поддерживаются файлы:
 Моды: *.esp
 Мастер файлы: *.esm
 Файлы экспорта: *.esd (их создает tesame) 
Так же можно просматривать любой файл, основанный на формате TES3 (например, сэйвы),
однако их специальные рекорды не распознаются и заносятся в категорию 'UNKN'. 

Чтобы более полно понимать выводимую информацию желательно ознакомиться с форматом
Морровиндовских файлов.

Mod Info не имеет никаких редакторских функций (например, в отличие от tesame не
позволяет удалять рекорды или объединять моды).

Просматривать рекорды можно либо в полном списке, либо по каждой из категорий. 
Поддерживается сортировка по любой колонке. При выборе рекорда показывается список
его субрекордов. Содержимого каждого субрекорда можно посмотреть при двойном щелчке
(или [ENTER]) на него.

ЗЫ: все дополнительные окна закрываются с помощью клавиши [Esc].



2. Подсветка синтаксиса
-----------------------
Mod Info подсвечивает синтаксис в двух режимах:
 а) при просмотре списка рекордов
    - цветом выделяются типы рекордов для которых есть специальная обработка:
      TES3 - при двойном клике на такой рекорд открывается окошко с информацией
             о заголовке файла
      BOOK - при двойном клике открывается просмотр текста книги(свитка)
      SCPT - при двойном клике открывается просмотр текста скрипта 
      INFO - при двойном клике открывается просмотр текста ответа и встроенного
             скрипта 
    - более темным цветом выделяются рекорды с ИДом, найденным в мастер файлах
    - более красным цветом выделяются рекорды, у которых присутствует DELE 
      субрекорд (т.е. либо сам рекорд, либо один из его субрекордов помечен на 
      удаление)
  б) при детальном просмотре текстов
    - книг (свитков)
    - скриптов
    - ответов



3. Определение измененных/новых рекордов
----------------------------------------
Mod Info позволяет определять какие рекорды текущего файла также присутствуют в
мастер файлах. Для этого, после загрузки мода нужно выполнить команду "Find in
master files" [Ctrl+F]. Вам будет предложен список мастер файлов, указанных в
заголовке мода. Вы  можете отредактировать этот список. После нажатия "Ок", Mod
Info просканирует указанные файлы, составит список их ИДов и пометит символом
'©' все рекорды текущего мода, у которого ИД был найден так же и в мастер файлах.
Такие рекорды я буду называть "измененными". Рекорды, которым в мастер файлах
соответствие не найдено, я буду называть "новыми". На самом деле в качестве мастер
файлов можно указывать любые .esm и .esp файлы. Так что, с помощью этой функции
также можно определять конфликтующие рекорды.



4. Предварительное сканирование
-------------------------------
Предварительное сканирование позволяет не сканировать заново файл при его использовании.
Достаточно один раз обработать его и сохранить результаты сканирования. После
этого отсканированные результаты будут подгружаться автоматически всякий раз,
когда потребуется этот файл. Например, на моем компьютере открытие файла morrowind.esm
происходит за ~ 15 секунд. При использовании предварительного сканирования время
загрузки сокращается до 2 секунд, а при задействовании буферов виндовса до 0.5
секунд! И за это платим только дополнительным файлом в размере ~2,5 Мб. Даже,
если вы не планируете изучать .esm файлы, все равно стоит их отсканировать, т.к.
они же используются при определении измененных рекордов. Меня, например, всегда
раздражала нудная загрузка мастер файлов в TESCS...

Чтобы использовать предварительное сканирование нужно сделать следующее:
 - загрузите нужный файл в Mod Info (и кстати необязательно esm!) [Ctrl+O];
 - проведите поиск ИДов в мастер файлах, которые в нем указаны. [Ctrl+F];
 - сохраните результаты сканирования [Ctrl+F];
Результирующий файл сохраниться в директории .\work с расширением .scn

Внимание:
 - предварительное сканирование используется, только если не меняется размер и
   дата оригинального файла. Если вы, к примеру, редактировали файл, то не
   забудьте пересканировать его.
 - в результатах сканирования так же сохраняется признак "измененных" рекордов
   (на момент записи). Т.е. если вы ставили опыты по поиску ИДов в различных
   файлах, то перед сохранением результатов сканирования, принудительно еще раз
   проведите поиск ИДов, но уже в мастер файлах, указанных в заголовке мода.



5. Статистика
-------------
Mod Info так же позволяет получить различную статистическую информацию.

Информацию можно получить следующую:
  - общее кол-во рекордов, и их количество в каждой категории;

  - вывести список рекордов с дублирующими ИДами;

  - вывести список рекордов, в которых встречается субрекорд DELE (т.е. он, или
    его субрекорд помечен на удаление).

  - вывести список рекордов ответов (INFO), в которых отсутствуют метки гиперссылок,
    а в их мастер версиях они присутствуют (новое в версии 1.2)
    Внимание: ищется только символ '@'. В лог выдается строка вида: 
    INFO:1234567890=мастр текст
    (т.е. приводится для справки текст, выдернутый из мастер файла для этого ИДа)

Команды получения информации расположены в меню 'Info', а результаты выводятся в
лог (смотреть [F2]).



6. Отчеты
---------
Отчеты:
  - вывести список всех ИДов;

  - вывести список ИДов НЕ найденных в мастер файлах ("новые");

  - вывести список ИДов найденных в мастер файлах ("измененные");

  - вывести список мешей(.nif), найденных в категории BODY;

  - генерация файлов .cel, .top, .mrk для текущего плагина (новое в версии 1.4);
    Mod Info не переведет их для вас, но может автоматизировать труд по их составлению.
    Правила формирования этих файлов следующее:
      - просматривается рекорд, и если его ИД не найден в предшествующих мастер
        файлах, и он удовлетворяет условиям (подробнее о них ниже), то добавляется
        строка вида name[TAB]name.
      - чтобы избежать затирания существующих файлов, имя выходного файла формируется
        как '_'+plugin_name+'.cel' (.top, .mrk) например "_mycoolmod.cel".
    .cel - просматриваются только рекорды CELL. Условия записи - это должен быть новый
           интеръер.
    .top - просматриваются только рекорды DIAL. Условия записи - это должен быть новый
           топик (DATA=0).
    .mrk - это копия файла .top.



7. Экспорт данных
-----------------
Mod Info позволяет сохранить любую группу рекордов в отдельный файл данных .esd.
Этот файл совместим с утилитой tesame. Для этого выделите интересующие рекорды
(в любом режиме просмотра) и дайте команду "Export selected". 

В дополнение к этому вы можете экспортировать в текстовый файл:

  - вывести имена рекордов для перевода (новое в версии 1.3);
    Отчет идет в виде строк INFO:1234567890=текст для перевода. Это текст можно
    потом отредактировать и импортировать обратно в плагин с помощью утилиты MTM
    (Mod Text Merger). Список обрабатываемых рекордов и полей в них:
    ACTI FNAM
    ALCH FNAM
    APPA FNAM
    ARMO FNAM
    BOOK FNAM
    BSGN FNAM
    CLAS FNAM
    CLOT FNAM
    CONT FNAM
    CREA FNAM
    DIAL NAME
    DOOR FNAM
    FACT FNAM
    GMST STRV
    INFO NAME
    INGR FNAM
    LIGH FNAM
    LOCK FNAM
    MGEF DESC
    MISC FNAM
    NPC_ FNAM
    PROB FNAM
    RACE FNAM
    REGN FNAM
    REPA FNAM
    SPEL FNAM
    WEAP FNAM
    Видно, что сюда не входят следующие тексты:
    - описания рас, навыков, классов, знаков зодиака
    - падгриды, текстуры, музыка и т.п. (которые и не нуждаются в переводе)
    - ничего, что связано с ячейками
    - тексты книг и скриптов (они выводятся в отчетах)
    - встроенные скрипты ответов

  - тексты книг
  - тексты скриптов
  - тексты диалоговых скриптов (INFO - BNAM) (новое в версии 1.4)
  - тексты скриптов, содержащих языкозависимые функции (новое в версии 1.5)
  - тексты описаний знаков зодиака (новое в версии 1.5)
  - тексты описаний классов (новое в версии 1.5)
  - тексты описаний рас (новое в версии 1.5)
  - тексты описаний навыков (новое в версии 1.5)

с одним из методов фильтрации:
  - все записи 
  - только новые
  - только измененные

В версии 1.5 появилась функция пакетной обработки. Для текущего плагина выполняются все 
текстовые экспорты. Результирующие файлы будут записаны в тот же каталог, где находится
оригинальный плагин. Имена файлов будут вида plugin_name+.Report_type+.txt, например:
morrowind.Books.txt, morrowind.Scripts.txt и т.п.

Для определения языкозависимых функций используется текстовый поиск с ключевыми
словами:
  addtopic
  aiescortcell
  aifollowcell
  choice
  changeweather
  getpccell
  messagebox
  modregion
  placeitemcell
  positioncell
  say
  showmap
  
Обратите внимание: если даже функция закомментирована или входит в другое слово
как подстрока, то такой скрипт также будет считаться языкозависимым.

ЗЫ: разумеется, везде, где используется разделение новые/измененные рекорды,
подразумевается, что вы уже провели поиск ИДов в мастер файлах...



8. История версий
-----------------
  1.0 - первая версия

  1.1
   [FIX] - исправлено недоразумение с экспортом рекордов

  1.2
   [ADD] - обнаружение удаленных рекордов/полей
   [ADD] - обнаружение испорченных гиперссылок в диалогах

  1.3
   [ADD] - генерация отчета для перевода имен (совместно с утилитой MTM)

  1.4
   [ADD] - появился тулбар с иконками
   [ADD] - экспорт текстов диалоговых скриптов
   [ADD] - генерация файлов .cel, .top, .mrk
   [FIX] - немного почистил формат экспорта текстов книг и скриптов, для
           совместного использования с импортирующими утилитами. 
  1.5
   [MOD] - генерация отчета для перевода имен перенес в меню экспорта
   [ADD] - экспорт текстов скриптов, содержащих языкозависимые функции 
   [ADD] - экспорт описаний знаков зодиака
   [ADD] - экспорт описаний классов
   [ADD] - экспорт описаний рас
   [ADD] - экспорт описаний навыков
   [ADD] - пакетный экспорт

--------------------------------------------------------------------------------
Эээ... автор как обычно не несет ответственность за порчу любых данных или
оборудования на вашем компьютере.

Ваши предложения и замечания присылайте на vasiliy73@mail.ru
С наилучшими пожеланиями, Василий.

