Знакомство с PjOrion
Программа PjOrion — Project "ORION" — это инструмент, упрощающий разработку модификаций для игры «Мир Танков».
Наиболее полезная функция PjOrion — REPL (Read-Eval-Print Loop) для Python‑скриптов игры. Она позволяет подключиться к процессу игры и выполнять код в его контексте без перезапуска клиента.
Установка
Скачайте последнюю версию
PjOrionиз официальной темы на форуме. Нас интересует архивPjOrion_1.3.5_11.08.2019.zip (архив с DLL).Распакуйте архив в любую папку.
Распакованный архив

- Запустите
PjOrion.exe.
Окно программы

- В папке игры переименуйте
/win64/Tanki.exeв/win64/WorldOfTanks.exe. Это нужно для того, чтобыPjOrionмог найти исполняемый файл игры.
Переименованный файл

Создайте две символические ссылки (
symlink) из корня игры в папку/win64для файловpaths.xmlиversion.xml. Это нужно для того, чтобыPjOrionмог найти конфигурационные файлы игры.Что бы создать такие ссылки, запустите
cmd.exe(командную строку) от имени администратора и выполните следующие команды:cmdmklink C:\Games\Tanki\win64\paths.xml C:\Games\Tanki\paths.xml mklink C:\Games\Tanki\win64\version.xml C:\Games\Tanki\version.xmlЗамените
C:\Games\Tankiна путь до вашей папки с игрой.
Пример создания символических ссылок

- В
PjOrionнажмитеWOT-Transmission -> Options..., во всплывающем окне уберите галочку сAutomatically search a WOT, после чего выберите путь до папки с игрой и подпапкиwin64:
Окно настроек

- Запустите игру через
PjOrion, нажавWOT-Transmission -> Run WOT-Client -> WorldOfTanks. Игра запустится, а в консолиPjOrionдолжен появиться лог игры:
Консоль PjOrion

Настройка подсказок кода
В PjOrion есть функция подсказок кода непосредственно для объектов игры. Для её активации:
- Нажмите
ПКМ(правую кнопку мыши) по окну ввода скриптов - Выберите раздел
Select the attributes source - Выберите пункт
WOT
Меню выбора источника подсказок

После этого в окне ввода скриптов после символа . (точка) будут появляться подсказки с атрибутами и методами объектов игры.
Пример подсказок

Использование
Если у вас получилось запустить игру через PjOrion и лог игры успешно подхватился, вы готовы к использованию REPL — Read-Eval-Print Loop (цикл чтения‑выполнения‑вывода), который позволяет выполнять Python‑код в контексте игры.
В нижней части окна PjOrion есть поле ввода, в котором можно писать Python‑код и выполнять его внутри запущенной игры.
В консоли вы можете импортировать любые модули игры, например BigWorld, в котором находятся основные функции движка.
Для выполнения кода нажмите Shift+F5 или WOT-Transmission -> Exec script in client (for ANSI).
Пример 1: Вывод версии игры
Напечатайте в консоли следующий код и выполните его:
from helpers import getShortClientVersion
print(getShortClientVersion())Результат выполнения кода

Пример 2: Вывод никнейма игрока
Функция BigWorld.player() возвращает объект игрока, который в ангаре является экземпляром класса PlayerAccount. У этого объекта есть атрибут name, в котором хранится никнейм игрока.
import BigWorld
print(BigWorld.player().name)Результат выполнения кода

Andrei Soprachev