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

DarkDeman

Постоялец
  • Публикаций

    472
  • Зарегистрирован

  • Посещение

  • Победитель дней

    2
  • Отзывы

    100%

Сообщения, опубликованные DarkDeman


  1.  

    LameUpdater - апдейтер для вашего сервера Lineage 2

    Архив состоит из 2х программ LameUpdater и LamePatcher.

     

     

    LamePatcher - Инструмент для создания патчей

     

    - сравнение каталогов;

    - создание инкрементных бинарных патчей с сжатием (библиотека XDelta);

    - создание архивов с нуля (полное воссоздание файла);

    - создание, дополнение и редактирование патчлиста.

     

     

    LameUpdater - клиент для скачивания и применения соответствующих патчей

     

    - проверка файлов на стороне клиента на основе патч листа;

    - обновление клиента на основе патч листа;

    - слежение за обновлением патч листа на сервере;

    - настраиваемый период проверки файлов клиента;

    - настраиваемая принудительная проверка отдельных, наиболее критичных файлов;

    - закачка необходимых патчей с сервера по http протоколу;

    - поддержка докачки;

    - ограничение на запуск более чем одной копии;

    - самообновление;

    - загрузка новостей;

    - уникальность по внутреннему ID позволит применять одну программу для нескольких клиентов, без конфликтов настроек;

    - изменение файла hosts;

     

     

    Создание патчей

     

    1.1. Запускаем LamePatcher.exe, идем в меню File -> New

     

     

     

    1.2. Укажите два каталога, с оригинальными файлами и обновленными. В примере это две папки Lineage II Interlude.

    Note: если необходимо создать патчи, которые восстанавливают файлы с нуля, выберете в диалоге Create from scratch.

    Note2: если LameUpdater будет находится в корне клиента, то в диалогах необходимо указать именно корень, сохраняйте структуру каталогов такую же, как на стороне клиента.

     

    Если необходимо патчить/восстанавливать только определенные каталоги, то скопируйте эти каталоги из клиента в другое место, например, если нам нужен только каталог system,

    создаем к примеру папку C:\Temp_Dir и копирует туда именно папку system, а не ее содержимое. Чтобы структура каталогов стала

    C:\Temp_Dir\system, в диалоге при этом надо выбрать C:\Temp_Dir, НЕ C:\Temp_Dir\system.

     

     

     

    1.3. Далее выбираем папку с обновленными файлами.

    Note: повторюсь, если необходимо создать патчи на какое то начальное состояние, при котором LameUpdater будет закачивать не патчи а просто запакованные файлы, выбираем Create from scratch и указываем каталог.

     

     

     

    1.4. Жмем OK и ждем пока программа сравнивает каталоги

     

     

     

    1.5. Результат сравнения виден по иконкам рядом с именами файлов

     

    Новый файл, он отсутствовал в папке с оригинальными, но есть в папке с обновленными файлами.

    Файл удален, в папке с обновленными файлами его нет

    Файл был изменен

    Файлы одинаковые

     

     

     

    1.6. Чтобы создать двоичные патчи ( в нашем примере это клиент Lineage II, только что установленный и обновленный): выбираем файлы которые нам нужны, либо выбираем в всплывающем меню пункт Select Diff, будут выделены все отличающиеся файлы. Далее жмем Create patch(s).

     

     

     

    1.7. Появится диалог, где необходимо выбрать каталог, где будет хранится патчлист и патчи.

    Append to existing file – ставим галочку если мы хотим добавить патчи в существующий патчлист

    Ignore deleted files – игнорировать удаленные файлы, если галочки не стоит, то удаленные файлы буду занесены в патч лист.

     

     

     

    1.8. Жмем OK и ждем.

     

    1.9. Результатом работы будет файлы патчей: .xdelta и патчлист, patchlist.xml

     

     

     

    2.0. Проверить проделанную работу можно из LamePatcher, выбираем в меню File -> Open. Открываем созданный патчлист, выбираем патчи которые мы хотим применить и выбираем в всплывающем меню Apply Patch(s).

    Note:

    патчи с таким значком являются конфликтными, обычно это противоположные действия например патчить (Patch file) и удалять (Delete File) над одним и тем же файлом.

    Такие элементы необходимо разрешить путем удаления одного из конфликтных патчей.

    Note2: не удаленные конфликтные патчи, например создание + удаление может привести к зацикливанию при работе программы.

    Note3: при удаление патчей из списка, файлы бинарной разницы (.xdelta) также удаляются с файловой системы.

     

     

     

    Если список редактировался, результат можно сохранить в меню File -> Save

     

    2.1. Укажите каталог, для которого необходимо применить патчи

     

     

     

    2.2. По окончании процесса, каталог будет обновлен.

     

     

    Конфигурация LameUpdater

    Создаем patchlist.xml с помощью LamePatcher

    Выкладываем patchlist.xml и файлы с патчами в каталог на веб-сервер

    Подготавливаем options.xml (серверная часть) для LameUpdater.

    Эти настройки будут скачиваться каждый раз при запуске LameUpdater.

     

    Код:

     

    url – путь к файлу с настройками

     

    Код:

     

    url – путь к патчлисту и файлам патчей .xdelta.

     

    Note: в этом случае файлы .xdelta должны быть доступны по пути http://somehost.org/update/, если не будет указан другой путь в патчлисте, например: .

     

    Код:

     

    url – путь к новостям.

     

    Код:

    Где:

     

    http://somehost.org/update/options.xml путь к конфигурационному файлу на сервере

     

    Важно, чтобы запуск был в каталоге назначения, именно этот каталог будет проверятся при следующем запуске LameUpdater.

     

    Удаление настроек из реестра:

     

    Код:

    LameUpdater.exe /uninstall

     

     

    Tips & Tricks

    При дополнении существующего патчлиста указывается опцию “Append to existing file” LamePatcher заменит старые патчи, дополнит новыми. Обязательно проверьте файл на отсутствие конфликтных патчей. Созданный патчлист и .xdelta файлы можно загружать на сервер. После проверки времени изменения патчлист LameUpdater на стороне клиент скачает и применит созданные изменния.

    LameUpdater закачивает не только патчи и обновляет себя. Если на стороне клиента в папке, с которой работает LameUpdater находится «чужой» файл, который присутвует в патчлисте, то будет предпринята попытка восстановить такой файл с нуля. Если конечно патчлист содержит такие патчи (они создаются с опцией Make from scratch)

    Когда есть необходимость использовать на стороне клиента более чем один LameUpdater ( например, поддерживается обновление нескольких клиентов), чтобы не возникало конфликтов при работе, просто переименуйте исполняемый файл в L2Updater.exe к примеру.

    Скачать LameUpdater, версия 1.0.0

     

     

    оригинал http://www.mmocom.ru/showthread.php?t=1400 не реклама

×
×
  • Создать...