Делаем собственную сборку Psi Portable

Вступление.

Jabber-клиент Psi является, на мой взгляд, лучшим Jabber-клиентом из всех существующих в настоящее время, однако у него нет официальной Portable-сборки, которая бы могла запускаться с флешек, USB-HDD, iPod и других внешних устройств. В этом HOWTO я подробно опишу как сделать такую сборку самостоятельно, затрачивая на эти цели минимум времени. Отличия нашей сборки Psi Portable от оригинальной Psi:

  1. Не требуется установка. Программа работает на любом компьютере. Все личные данные, настройки и история хранятся на сменном устройстве.
  2. Добавлено шифрование GnuPG (GPG) для всех сообщений в Portable-версии. Все ключи шифрования и необходимые библиотеки хранятся на сменном устройстве вместе с Psi Portable.
  3. Добавлена поддержка русской орфографии в Portable-исполнении. Все словари (для русского и английского языков) хранятся на сменном устройстве.

Создание.

  1. Заходим на сайт http://www.psi-im.org/ и скачиваем последнюю версию программы (на момент написания этого HOWTO последней являлась версия 0.12).
  2. Качаем заготовку для создания собственной сборки (размер около 11 МБ из-за включения в состав полного словаря русского языка), включающую в себя:
    1. GnuPG (GPG) последней версии;
    2. официальные русскоязычные языковые пакеты для Psi, а также для QT4;
    3. русские словари для встроенной системы проверки орфографии (aspell) последней версии;
    4. командный сценарий для запуска Portable-версии программы.
  3. Распаковываем скачанную заготовку в нужную папку на сменном устройстве, например в ДИСК:\PsiPortable\.
  4. Устанавливаем скачанный на этапе 1 дистрибутив Psi, затем копируем из папки C:\Program Files\Psi (если программа была установлена в эту папку) всё содержимое в папку App нашей сборки (файл uninstall.exe и файлы с расширением *.url лучше не копировать (в нашей сборке они не нужны и будут только занимать место на диске)). Сразу после копирования удаляем программу Psi через Панель управления — Установка и удаление программ.
  5. Запускаем файл psi_launch.cmd из состава сборки и начинаем использовать Psi Portable. Вся конфигурация хранится в каталоге PsiData и будет создана при первом запуске. В каталоге PsiData\gpg\ хранятся открытые и закрытые ключи для системы шифрования GPG, а также их настройки.

Полезные советы и предупреждения.

  1. Запускайте Psi Portable только файлом psi_launch.cmd, т.к. этот файл задаёт нужные программе переменные. Запуск в обход этого файла приведёт к ошибкам и невозможности загрузки настоек, ростера, а также журнала сообщений.
  2. Если у Вас установлена Windows 9x (95/98/ME), то файл psi_launch.cmd нужно переименовать в psi_launch.bat для правильной работы.
  3. Если Вы уже использовали Psi ранее, то просто скопируйте содержимое папки %USERPROFILE%\PsiData\ (в Windows 9x находится обычно в папке установки Psi, например в C:\Program Files\Psi) в папку PsiData нашей сборки, где USERNAME — логин Вашей учётной записи Windows 2000/XP/2003. Psi Portable во время этих действий не должен быть запущен.
  4. Если Вы использовали GPG под любой платформой, то скопируйте свои открытые/закрытые ключи в папку PsiData\gpg\.

Подробнее →

Установка и настройка слушающего сервера TF2

Вступление.

Сегодня решил написать подробную статью об установке и настройке слушающего сервера игры Team Fortress 2. Итак, чем же отличается слушающий сервер игры от выделенного (Team Fortress 2 Dedicated Server):

  1. Слушающий сервер не требует особой настройки и установки модификаций.
  2. Слушающий сервер позволяет одновременно хостить личный сервер и играть в игру. Выделенный сервер не позволяет играть на этом же компьютере (если всё-таки запустить игру и подключиться к такому серверу, у всех появятся серьёзные лаги, т.к. создаётся дисбаланс между сервером и клиентов при обращении к CPU (процессору)).
  3. Слушающий сервер — это практически тот же Dedicated Server, но имеющий следующие недостатки (хотя достоинств больше):
    1. Администратором является только тот, кто создал сервер. Управление осуществляется через консоль управления сервером (консоль игры, вызывается клавишей «тильда»; нужно включить консоль управления в настройках клавиатуры игры).
    2. Если администратор (создатель) отключится от сервера, то все клиенты, подключившиеся к нему, будут кикнуты автоматически. Сервер будет остановлен.
    3. Включена принудительная проверка учётных записей Steam, т.е. с пираток на такой сервер  зайти не удастся.
    4. На слушающий сервер нельзя установить SourceMod и другие админ-плагины.
  4. Слушающий сервер запускается прямо из главного меню игры (там же указывается максимальное число игроков).
  5. Все настройки такого сервера хранятся в файле listenserver.cfg.

Техническая часть.

  1. Чтобы к Вам могли подключаться клиенты, Вы должны иметь «белый» IP-адрес, т.е. видимый из Интернета. Создание сервера с «серым» IP, либо с жёстким NAT’ом провайдера не имеет смысла, т.к. подключиться к такому серверу никто не сможет.
  2. Сервер запускается на порту 27015, поэтому если у Вас ADSL, вы должны пробросить этот порт по протоколу UDP в настройках своего роутера (модема).
  3. На сервере главное — скорость отдачи от Вас клиентам, а также мощность процессора Вашего компьютера. На ADSL максимальная отдача может составлять около 780 Кбит/с — 1 МБит/с (на ADSL с модуляцией AnnexM (такая разновидность встречается крайне редко) — 3 Мбит/с). Если у Вас тариф на 256 КБит/с, то к Вам могут подключиться 6 клиентов. Если 512 — 10-12 клиентов, если 1 Мбит и более (ADSL) — 18 клиентов, кабель без NAT — 23 клиента (максимум для слушающего сервера). В соотвествие с этими параметрами Вы должны настроить значение переменной «Максимальное число игроков» во время создания сервера. Если Ваш канал или процессор не будут выдерживать такое количество подключившихся игроков, у всех появятся лаги.

Настройка и подготовка к запуску.

  1. Устанавливаем Steam и игру Team Fortress 2 (если они ещё не установлены).
  2. Запускаем игру, ждём полной загрузки и выходим из неё (это нужно только если выполнялся шаг 1 для создания файлов базовой конфигурации).
  3. Открываем «Мой компьютер» и переходим в папку «C:\Program Files\Steam\SteamApps\common\team fortress 2\tf\cfg«, где C:\Program Files\Steam\ — путь куда установлен Steam. Если Steam установлен в другую папку или диск, то его нужно откорректировать. В этой папке лежат файлы настроек игры TF2, в том числе и слушающего сервера.
  4. Качаем и распаковываем архив с файлами конфигурации в эту папку с заменой существующих файлов. Архив обновляется после выхода серьёзных изменений в игре.
  5. Открываем распакованный файл listenserver.cfg в любом текстовом редакторе (например, в Блокноте Windows) и делаем нужные настройки (меняем имя сервера, настройки и т.п.). В файле я всё подробно описал какая переменная чем управляет, что включает/выключает, поэтому на этом я останавливаться не буду здесь. Внимание! Первым делом задайте пароли вместо !!PASSWORD1!! и !!PASSWORD2!!, иначе Ваш сервер могут взломать.
  6. Открываем файл config_arena.cfg в том же текстовом редакторе и меняем имя сервера для режима Арена, а также максимальное число пользователей режима Арена.
  7. Запускаем игру Team Fortress 2, выбираем в главном меню пункт «Создать сервер«. В окрывшемся окне выбираем любую установленную карту, а затем переходим на страницу «Игра» и устанавливаем «Максимальное число игроков» (должно быть целым числом от 2 до 24). Остальные параметры не будут играть никакого значения, т.к. игнорируются файлом конфигурации. Внимание! Не устанавливайте тут пароль, иначе к Вам никто не сможет подключиться. Пароль можно установить уже после запуска игры и подключения первых игроков командой в консоли sv_password «your_pass», где вместо your_pass должна идти комбинация латинских букв и цифр. Этот пароль будет запрашиваться у всех, кто захочет подключиться к серверу.
  8. После успешного запуска сервера и Вашего подключения к нему, открываем консоль разработки (вызывается клавишей «тильда») и сразу меняем карту на любую из установленных (лучше на текущую, т.к. это ускорит перезагрузку сервера) командой changelevel имя_карты (например, changelevel cp_dustbowl). Это действие применит настройки файла listenserver.cfg. Без этого шага к Вам никто не сможет подключиться (на клиентах будет выдаваться сообщение LAN servers are restricted to local clients). Этот шаг нужно повторять всегда после запуска слушающего сервера!
  9. Даём свой внешний IP-адрес всем, кто должен к Вам подключиться и они смогут это сделать, набрав у себя в консоли TF2 команду connect IP_вашего_сервера:27015 (например, connect 126.65.110.99:27015). Свой внешний адрес можно узнать тут: http://www.2ip.ru (он определится в строке «Ваш IP-адрес«).
  10. Если к Вашему серверу кто-нибудь подключился, значит он успешно установлен и настроен. Чтобы отключить сервер, достаточно войти в меню игры TF2 и выбрать пункт «Отключиться«. После этого сервер кикнет всех, кто на нём играл и закончит свою работу.

Переменные, которые можно задавать прямо во время игры.

  • sv_alltalk 1 — включение (1) или отключение (0) общего голосового чата.
  • tf_weapon_criticals 1 — включение (1) или отключение (0) критов.
  • mp_allowspectators 1 — включение (1) или выключение (0) зрителей.
  • sv_password «your_pass» — задание пароля, где вместо your_pass должен идти пароль. Кавычки обязательны. Пароль будет запрошен у всех, кто захочет подключиться к Вашему серверу.
  • sv_password «» — убирает пароль с сервера. К серверу может подключиться любой желающий.
  • mp_friendlyfire 1 — включает (1) или отключает (0) огонь по своим.
  • sv_gravity 800 — управляет гравитацией на сервере (800 — стандартное значение), может быть числом от 0 до 10000. Чем меньше значение, тем меньше гравитация.

Внимание! При смене карты все переменные, заданные во время игры, будут автоматически заменены значениями из файла конфигурации сервера!

Итак, Ваш сервер установлен и правильно настроен. Если у Вас возникнут вопросы по статье, то оставляйте комментарии к этому сообщению. Я отвечу на все вопросы. Для того, чтобы оставить свой комментарий, регистрация не требуется.

Подробнее →