Структура папок выглядит следующим образом (это пример):
…/CPW/
info (…/CPW/info/)
pid (…CPW/info/pid) — файл содержит число из клиентского файла pid.ini
launcher (…/CPW/launcher/)
version (…/CPW/launcher/version) — содержит число — текущую версию ланчера
files.md5 (…/CPW/launcher/files.md5) — содержит список файлов и их md5-сумму папки launcher клиента
patcher (…/CPW/patcher/)
version (…CPW/patcher/version) — содержит число — текущую версию патчера
files.md5 (…/CPW/patcher/files.md5) — содержит список файлов и их md5-сумму папки patcher клиента
v-X.inc (…/CPW/patcher/v-X.inc) — например, v-3.inc, содержит список файлов, их md5-сумму и знак операции (+ — новый файл, !*— файл изменен). 3 — разница между текущей версией и версией клиента. т.е. если у клиента версия 78, а на сервере уже 85, то клиент будет качать файл v-7.inc
element (…/CPW/element/)
version (…/CPW/element/version) — содержит число — текущую версию элементов, та самая, что отображается в окне патчера
files.md5 (…/CPW/element/files.md5) — содержит список файлов и их md5-сумму папки element клиента
v-X.inc (…/CPW/element/v-X.inc) — например, v-3.inc, содержит список файлов, их md5-сумму и знак операции (+ — новый файл, ! — файл изменен). 3 — разница между текущей версией и версией клиента. т.е. если у клиента версия 78, а на сервере уже 85, то клиент будет качать файл v-7.inc
Каждый файл files.md5 и v-X.inc имеет внизу цифровую подпись (wikipedia).
Алгоритмы обновления
В клиенте ПВ два уровня обновления:
launcher/launcher.exe — та мини-программа, которая лезет на сервер обновлений только для того, чтобы узнать не нужно ли обновлять patcher и себя;
patcher/patcher.exe — основной патчер, он качает отдельные кусочки pck-файлов, карты, списки серверов, словом все, что находится в папке element.
Помимо этого, есть и два метода обновления
Полная проверка. Рекомендуется делать, когда есть какие-то проблемы с клиентом или он не синхронизирован с текущим;
Регулярное обновление. Происходит в обычном случае.
Более подробное [Ссылки могут видеть только зарегистрированные пользователи. ] CPW .
говорим спасибо gouranga.
Подготовка и установка CPW.
На Ubuntu не забываем команду “sudo”
Код:
# apt-get install apache2
# apt-get install mysql-server
# apt-get install mc
#apt-get install phpmyadmin (Если вы пользуетесь VPS услугами, то я не советую устанавливать данный пакет из за потребляемых ресурсов)
#apt-get install p7zip-full
#apt-get install java6-jdk
#apt-get install java6-jre
Настройка…
# mysql
(Установка пароля для пользователя “root”)
>SET PASSWORD FOR 'root'@'localhost' = PASSWORD('Новый_пароль');
>FLUSH PRIVILEGES
(Создание базы)
>CREATE DATABASE <имя базы>;
/q
Замечание…
Зачастую на VPS нету поддержки азиатских языков что приводит к потере названий папок и файлов с китайской символикой
Где мы видим -Xmx256m количество памяти выделяемая для Java
Если есть возможность то увеличьте значение
Рекомендуемые значения:
128
256
512
1024
2048
.. и т.д…
Это необходимо для большей производительности CPW в создании базового билда.
Подготовка и создание базового билда (точки отсчета).
Для создание билда лучше всего использовать чистый клиент.
Заменив заранее
\patcher\server\ updateserver.txt
\element\userdata\server\ serverlist.txt
Я подготавливаю клиент к билду на своем домашнем компьютере, распаковывая все *.pck архивы и удаляя их
Примечание! В базовом билде не должно быть не единого *.pck, иначе при обновление приведет к краху.
Не забываем про reportbugs/Bug.pck и help/script.pck .
После того как все pck архивы были распакованы. С помощью 7-zip запаковываем element,launcher и patcher , в архив с форматом 7z ( для того чтобы сохранить название файлов в utf32 кодировке)
Заливаем архив в директорию new и распаковываем.
#7z x arhive.7z
Ждем , ждем,ждем… - у меня длилось от часа до трех часов.
Далее переносим Launcher.exe и patcher.exe в папку рядом с ‘cpw’
Прописываем RSA Key данным exe файлам.
Код:
#./cpw x Launcher.exe
#./cpw x pathcer.exe
Переносим их обратно по папкам , и качаем их что затем закинуть в клиент и запустить с них launcher.
Настал момент запустить создание базового билда (точки опоры).
Код:
#./cpw initial
Теперь придется долго ждать… все будет зависить от кол-ва файлов в клиенте и выделяемых ресурсов для создание билда.
Re: Подробное описание установки и использование CPW.
Вопрос, я владелец ADSL+роутер (Tenda) (хз, может то играет роль) У меня обновление работает замечательно, но сторонние клиенты не могут обновиться. На сервер зайти могут, а вот обновление не работает. Скорее всего из за того, что из вне нет доступа к базе MySQL. Пробовал коннектиться к БД через внешний IP или через IP_Hamachi, но безрезультатно. В чём же проблема, и каковы пути её решения?
Re: Подробное описание установки и использование CPW.
Как положено по гайду, все сделал. Установил языки, установил патчер cpw, установил для него бд, установил права доступа, уже даже 777 на все внутри патчера, но результата нет.
Вернее в первый раз когда запускал инициализацию выбило это:
т.е. елемент по каким то причинам не обновил... я опять попробовал повторить инициализацию... Но на этот раз уже Все папки клиента не удалось иницилизровать:
Добавлено через 12 часов 23 минуты
Решение нашел, но на другом форуме, причина оказалась, что гайд приведененный в данной теме не совсем подробно показывает, как следует установить патчер CPW, оказалось, недостаточно залить файлы с патчером на сервер, требуется до этого установить средства для работы с данным патчером, которые есть в Ubunte и могут быть установлены. Потому, я дополню гайд небольшим уточнением:
Когда уже залили БД в MySQL, делаем следующее...
Код:
1. Для установки требуется запустить терминал в Ubuntu/Debian
2. Вписываете: apt-get install patcher
3. Распаковываете: patcher.tar.gz , получится папка /patcher
4. Даём права папке(и всему что внутри): chmod 777 -R /patcher
5. Переходим в папку: patcher cd /patcher
6. И только тогда пишем и вбиваем данные от БД: ./cpw install
Именно из за того, что в гайде не было уточнения apt-get install patcher, вот и пришлось потоптаться нам месте так сказать, ведь по сути делается две инсталяции, первое это сами библиотеки для работы с патчером и второе, сам патчер который вы залили с архивом.
Последний раз редактировалось wsok; 12.11.2012 в 19:57.
Причина: Добавлено сообщение