Посиделки у Арсена
Пн, 25.09.2017, 03:48
ГлавнаяРегистрацияВход Приветствую Вас Гость | RSS

Меню сайта

Категории каталога
Квесты [10]
Мануал на тему LA2 [4]
Другое [5]

Главная » Статьи » Все по LA2 » Квесты

Инструкция по пакетам
Инструкция по пакетам Содержание

1. Общие сведения
2. Пакеты Client -> Login Server
3. Пакеты Login Server -> Client
4. Пакеты Game Server -> Client
5. Пакеты Client -> Game Server

1. Общие сведения

1) Каждый пакет состоит из размера пакета(2 байта), типа пакета(1 байт) и блока параметров(переменная длина). В пакетах логин
серверу в конце пакета добавляется контрольная сумма и дополняется нулями так, чтобы размер пакета был кратен 8-ми байтам.
2) Строки в пакетах представлены байтами ANSI разделенными нулями, признаком конца строки является два нуля подряд.
Пример: 'A', 0x00, 'B', 0x00, 'C', 0x00, 0x00, 0x00
3) Байты в словах и двойных словах высылаются в обратном порядке. Т.е. если надо отправить число 1, то его следует записать
как 01 00 00 00, а не 00 00 00 01.
4) Контрольная сумма пакета расчитывается так:

unsigned long checksum( unsigned char *packet, int count )
{
long chksum = 0L;
for( int i = 0; i < count; i += 4 ) chksum ^= *((unsigned long *)&raw[i]);

return chksum;
};

5) Процесс соединения с гейм сервером:

1. Сразу после установки соединения сервер отправляет клиенту пакет Init
2. В ответ на него клиент отправляет пакет RequestGGAuth
3. Сервер отвечает на него пакетом GGAuth
4. Если сервер ответил, что авторизация прошла успешно, то клиент высылает пакет RequestAuthLogin, содержащий логин и пароль
5. Проверка логина и пароля, в случае неудачи, сервер высылает пакет LoginFail, инатче LoginOk, содержащий session key #1.
Для явы он постоянный.
6. Далее клиент запрашивает список серверов пакетом RequestServerList
7. В ответ на этот пакет сервер высылает клиенту ServerList, в нем содержиться список серверов и их IP адреса с номерами портов.
8. После выбора game-сервера, и нажатия на ОК, клиент отсылает пакет RequestServerLogin
9. LoginServer выполняет проверки на бан, максимальное количество игроков, доступность сервера и т.п., если все проверки пройдены,
то высылает пакет PlayOk, содержащий session key #2, этот ключь генерируется из текущего времени системы в мс, номера сокета и еще всякой лабуды.
10. После этого клиент высылает пакет AuthLogin выбраному серверу, содержащий session key #1, session key #2 и логин, необходимые
для генерации ключа по которому будет шифроваться весь трафик.
11. Сервер высылает пакет PlayOk, содержащий список чаров

2. Пакеты от клиетна серверу (Login Server)

00 - RequestAuthLogin
02 - RequestServerLogin
05 - RequestServerList
07 - RequestGGAuth

RequestAuthLogin

Назначение: запрашивает авторизацию на логин сервере
Формат:
00
XX XX XX XX 00 00 // строка содержащая логин
XX XX XX XX 00 00 // строка содержащая пароль
08 // маркер конца секции логин/пароль
00 00 00 00 00 00 00 00 // не используется
XX XX XX XX // контрольная сумма
00 00 00 00 // выравнивание размера пакета

RequestServerLogin

Назначение: запрашивает подключение к гейм серверу
Формат:
02

RequestServerList

Назначение: запрашивает список game серверов
Формат:
05
??

RequestGGAuth

Назначение: запрашивает Game Guard авторизицию
Формат:
07
??

3. Пакеты от сервера клиенту (Login Server)

00 - Init
01 - LoginFail
03 - LoginOk
04 - ServerList
04 - PlayOk
0B - GGAuth

Init

Назначение: передает клиенту список серверов и их состояние
Формат:
00
XX XX XX XX // ID сессии
XX XX XX XX // Ревизия протокола 0x785a или 0xc62

// Публичный ключ
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX
XX XX XX XX

// Неизвестно
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00

LoginFail

Назначение: сообщает о неудачной попытке подключения к логин серверу
Формат:
01
XX XX XX XX // причина неудачи:
// 0x01 - системная ошибка
// 0x02 - неправельный пароль
// 0x03 - логин или пароль неверен
// 0x04 - доступ запрещен
// 0x05 - информация на аккаунте неверна(хз, наверно имеется ввиду ошибка в БД)
// 0x07 - аккаунт уже используется
// 0x09 - аккаунт забанен
// 0x10 - на сервере идут сервисные работы
// 0x12 - срок действия истек
// 0x13 - на аккаунте не осталось больше времени (видимо NCSoft собирается или собиралось заморочить и почасовую оплату

LoginOk

Назначение: высылается в подтсверждение на пакет RequestAuthLogin, в случае успешной проверки логина и пароля.
Формат:
03
XX XX XX XX // ? На яве 0x55555555
XX XX XX XX // session id. Это первая часть session id, для явы он постоянный
00 00 00 00
00 00 00 00
EA 03 00 00
00 00 00 00
00 00 00 00
02 00 00 00

XX XX XX XX // контрольная сумма
00 00 00 00 // выравнивание размера пакета
00 00 00 00
00 00 00

ServerList

Назначение: передает клиенту список серверов и их состояние
Формат:
04
XX // количество серверов в списке
00 // неиспользуется или зарезервировано

// <<<<< Следующий блок повторяется для каждлого сервера в списке
XX // ID сервера
XX XX XX XX // IP аддрес гейм сервера
XX XX XX XX // порт сервера
XX // возрастной лимит
XX // PVP сервер: 00 - нет, 01 - да
XX XX // количество игроков онлайн
XX XX // максимальное количество игроков
XX // тестовый сервер: 00 - нет, 01 - да
XX XX XX XX // контрольная сумма
00 00 00 00 // выравнивание размера пакета
00 00 00 00
00

PlayOk

Назначение: ответ на запрос авторизации на game-сервере
Формат:
07
XX XX XX XX // session id #2, вторая половина ключа сессии, генерируется случайно
?? ?? ?? ?? // непонятно, ява просто ставит тут 0x55667788
XX XX XX XX // контрольная сумма
00 00 00 00 // выравнивание размера пакета
00 00 00 00
00

GGAuth

Назначение: ответ на запрос GameGuard авторизации
Формат:
0B
XX XX XX XX // ответ:
// 0x0B - Пропустить авторизацию

4. Пакеты от сервера клиенту (Game Server)

01 - CharMoveToLocation
14 - AuthLoginFail
19 - CharCreateOk
1A - CharCreateFail
23 - CharDeleteOk
24 - CharDeleteFail
2F - ChangeWaitType
38 - TeleportToLocation
3E - ChangeMoveType
E1 - ChairSit

CharMoveToLocation

Назначение: сообщает клиенту что чар переместился
Формат:
01
XX XX XX XX // ID объекта
XX XX XX XX // Текущее положение X
XX XX XX XX // Текущее положение Y
XX XX XX XX // Текущее положение Z
XX XX XX XX // Точка назначения X
XX XX XX XX // Точка назначения Y
XX XX XX XX // Точка назначения Z

AuthLoginFail

Назначение: сообщает клиенту game-сервер отверг запрос на подключение
Формат:
14 // и/или 12 ???
XX XX XX XX // Причина:
// 0x00 - Текста нет
// 0x01 - Системная ошибка
// 0x02 - Пароль не соответствует аккаунту (причем тут тут game server ??? ему пароль даже не высылается Oo)
// 0x03 - Пароль не соответствует аккаунту (опять 25, корейцы млин)
// 0x04 - Попытка доступа неудачна, попробуйте позже.
// 0x05 - Неверный аккаунт, свяжитесь с службой поддержки
// 0x06 - Попытка доступа неудачна, попробуйте позже.(что-то у них многовато кодов на одну ошибку)
// 0x07 - Аккаунт уже используется(это вроде тоже логин сервер проверять должен)
// 0x08 - Попытка доступа неудачна, попробуйте позже.
// 0x09 - Попытка доступа неудачна, попробуйте позже.
// 0x10 - Попытка доступа неудачна, попробуйте позже.

CharCreateOk

Назначение: сообщает клиенту что создание чара успешно завершено
Формат:
19
01

CharCreateFail

Назначение: сообщает клиенту что попытка создания чара авершилась неудачей
Формат:
1A
XX XX XX XX // Причина:
// Creation Failed
// Слишком много чаров на акке
// Имя чара уже существует
// 16 eng chars. (слишком длинное имя ???)

CharDeleteOk

Назначение: сообщает клиенту что удаление чара прошло успешно
Формат:
23

CharDeleteFail

Назначение: сообщает клиенту что удаление чара завершилось неудачей
Формат:
24

ChangeWaitType

Назначение: сообщает клиенту что чар изменил wait тип(незнаю как это лучше на русский перевести :-/ Короче по параметрам понятоно что это такое)
Формат:
2F
XX XX XX XX // ID чара
XX XX XX XX // wait тип:
// 00 - сидеть
// 01 - стоять
// 02 - fake death
// 03 - отменить fake death
XX XX XX XX // X
XX XX XX XX // Y
XX XX XX XX // Z

TeleportToLocation

Назначение: сообщает клиенту что чар телепортировался

Формат:
38
XX XX XX XX // ID чара
XX XX XX XX // X
XX XX XX XX // Y
XX XX XX XX // Z

ChangeMoveType

Назначение: сообщает клиенту что чар изменил тип перемещения
Формат:
3E
XX XX XX XX // ID чара
XX XX XX XX // 00 - хотьба, 01 - бег
00 00 00 00 // C2

ChairSit

Назначение: сообщает клиенту что чар сел
Формат:
E1
XX XX XX XX // ID объекта
XX XX XX XX // Static object ID

5. Пакеты от клиетна серверу (Game Server)

00 - ProtocolVersion
01 - MoveBackwardToLocation
02 - Say
03 - EnterWorld
04 - Action
08 - AuthLogin
09 - Logout
0A - AttackRequest
0B - CharacterCreate
0C - CharacterDelete
0D - CharacterSelected
0F - RequestItemList
11 - RequestUnEquipItem
12 - RequestDropItem
14 - UseItem
15 - TradeRequest
16 - AddTradeItem
17 - TradeDone
1B - RequestSocialAction
1C - ChangeMoveType // устарел. Теперь юзается 'RequestActionUse'
1D - ChangeWaitType // устарел. Теперь юзается 'RequestActionUse'
1F - RequestBuyItem
21 - RequestBypassToServer
24 - RequestJoinPledge
25 - RequestAnswerJoinPledge
26 - RequestWithdrawalPledge
27 - RequestOustPledgeMember
29 - RequestJoinParty
2A - RequestAnswerJoinParty
2B - RequestWithDrawalParty
2C - RequestOustPartyMember
2F - RequestMagicSkillUse
30 - Appearing
33 - RequestShortCutReg
35 - RequestShortCutDel
37 - RequestTargetCanceld
38 - Say2
3С - RequestPledgeMemberList
3F - RequestSkillList
40 - AnswerTradeRequest
45 - RequestActionUse
46 - RequestRestart
48 - ValidatePosition
4A - StartRotating
4B - FinishRotating
4D - RequestStartPledgeWar
4F - RequestStopPledgeWar
55 - RequestGiveNickName
58 - RequestEnchantItem
59 - RequestDestroyItem
5E - RequestFriendInvite
5F - RequestAnswerFriendInvite
60 - RequestFriendList
61 - RequestFriendDel
62 - CharacterRestore
63 - RequestQuestList
64 - RequestQuestAbort
66 - RequestPledgeInfo
68 - RequestPledgeCrest
6A - RequestRide
6B - RequestAquireSkillInfo
6C - RequestAquireSkill
6D - RequestRestartPoint
6E - RequestGMCommand
6F - RequestPartyMatchConfig
70 - RequestPartyMatchList
71 - RequestPartyMatchDetail
72 - RequestCrystallizeItem
77 - SetPrivateStoreMsgSell
81 - RequestGmList
82 - RequestJoinAlly
83 - RequestAnswerJoinAlly
84 - AllyLeave
85 - AllyDismiss
88 - RequestAllyCrest
89 - RequestChangePetName
8A - RequestPetUseItem
8B - RequestGiveItemToPet
8C - RequestGetItemFromPet
8E - RequestAllyInfo
8F - RequestPetGetItem
94 - SetPrivateStoreMsgBuy
98 - RequestStartAllianceWar
9А - RequestStopAllianceWar
A0 - RequestBlock
A2 - RequestSiegeAttackerList
A4 - RequestJoinSiege
AС - RequestRecipeBookOpen
B9 - RequestEvaluate
BA - RequestHennaList
BB - RequestHennaItemInfo
BС - RequestHennaEquip
C1 - RequestMakeMacro
C2 - RequestDeleteMacro
CF - RequestAutoSoulShot
В0:10 - RequestExPledgeCrestLarge
В0:11 - RequestExSetPledgeCrestLarge
EE - RequestChangePartyLeader

ProtocolVersion

Назначение: передает версию протокола используемого клиентом серверу
Формат:
00
XX XX XX XX // Версия протокола

MoveBackwardToLocation

Назначение: запрос на перемещение чара
Формат:
01
XX XX XX XX // Координата X точки назначения
XX XX XX XX // Координата Y точки назначения
XX XX XX XX // Координата Z точки назначения
XX XX XX XX // Координата X текущего положения чара
XX XX XX XX // Координата Y текущего положения чара
XX XX XX XX // Координата Z текущего положения чара
XX XX XX XX // 00 - для движения используеться клавиатура, 01 - для движения используется мышь

Say

Назначение: отправляет сообщение другим игрокам
Формат:
02
XX XX XX XX 00 00 // Cтрока сообщения
XX XX XX XX // Тип сообщение
// 0x00 - ALL
// 0x01 - SHOUT ( ! )
// 0x02 - TELL ( " )
// 0x03 - PARTY ( # )
// 0x04 - CLAN ( @ )
// 0x05 - GM
// 0x06 - PETITION_PLAYER
// 0x07 - PETITION_GM
// 0x08 - TRADE ( + )
// 0x09 - ALLIANCE ( $ )
// 0x0A - ANNOUNCEMENT
// 0x0F - PARTYROOM_ALL ( желтый )
// 0x10 - PARTYROOM_COMMANDER ( синий )
// 0x11 - Голос героя
XX XX XX XX 00 00 // Для приватных сообщений. Содержит ник чара которому предназначено сообщение.

EnterWorld

Назначение: пакет, который отсылается клиентом при нажатии на кномпку "Start" в меню выбора чара
Формат:
03

Action

Назначение: пакет, который отсылается клиентом при клике мышью по НПЦ или другому чару
Формат:

04
XX XX XX XX // ID объекта
XX XX XX XX // Координата X положения чара
XX XX XX XX // Координата Y положения чара
XX XX XX XX // Координата Z положения чара
XX // 00 - просто клик, 01 - клик с зажатым шифтом

AuthLogin

Назначение: запрос авторизации на game сервере
Формат:

08
XX XX XX XX 00 00 // строка содержащая login
XX XX XX XX // session key #1(дается логин сервером)
XX XX XX XX // session key #2(дается логин сервером)

Logout

Назначение: пакет, который отсылается клиентом при выходе из игры
Формат:
09

AttackRequest

Назначение: запрос на атаку
Формат:
0A
XX XX XX XX // ID того, кого собираемся атаковать
XX XX XX XX // X координата позиции чара
XX XX XX XX // Y координата позиции чара
XX XX XX XX // Z координата позиции чара
XX XX XX XX // 0 - Ctrl не нажат, 1 - Ctrl нажат

CharacterCreate

Назначение: запрос на создание чара
Формат:
0B
XX XX XX XX 00 00 // Строка с именем чара
XX XX XX XX // Расса
XX XX XX XX // Пол
XX XX XX XX // Класс
XX XX XX XX // INT
XX XX XX XX // STR
XX XX XX XX // CON
XX XX XX XX // MEN
XX XX XX XX // DEX
XX XX XX XX // WIT
XX XX XX XX // Стиль волос
XX XX XX XX // Цвет волос
XX XX XX XX // Тип лица

CharacterDelete

Назначение: ставит чара на удаление
Формат:
0C
XX XX XX XX // Номер слота с чаром

CharacterSelected

Назначение: выбирает чара. Отсылается при клике на чара в меню выбора чара.
Формат:
0D
XX XX XX XX // Номер слота с чаром

RequestItemList

Назначение: запросить список вещей находящихся в инвентаре.(клиент открывает инвентарь, когда сервер высылает этот список)
Формат:
0F

RequestUnEquipItem

Назначение: Снимает эквип с чара
Формат:
11
XX XX XX XX // Номер слота

RequestDropItem

Назначение: запрос за дроп итема. Отправляется клиентом, при попытке выбросить из инвентаря какую-либо вещь
Формат:
12
XX XX XX XX // ID итема который хотим выбросить
XX XX XX XX // количество итемов которое мы хотим выбросить
XX XX XX XX // X кордината места в которое выбрасываем итем
XX XX XX XX // Y кордината места в которое выбрасываем итем
XX XX XX XX // Z кордината места в которое выбрасываем итем

UseItem

Назначение: запрос на использование итема
Формат:
14
XX XX XX XX // ID объекта

TradeRequest

Назначение: запрос торговлю.
Формат:
15
XX XX XX XX // ID объекта с которым хотим торговать

AddTradeItem

Назначение: добавляет итем в трейд лист.
Формат:
16
XX XX XX XX // ID трейда
XX XX XX XX // ID объекта
XX XX XX XX // количество

TradeDone

Назначение: запрос на завершение торговли.
Формат:
17
XX XX XX XX // 0 - отменить сделку, 1 - подтвердить сделку

RequestSocialAction

Назначение: вызывает анимацию социальных действий вроде смеха и т.п.
Формат:
1B
XX XX XX XX // Номер экшина
// 0x02 - Greeting
// 0x03 - Victory
// 0x04 - Advance
// 0x05 - No
// 0x06 - Yes
// 0x07 - Bow
// 0x08 - Unaware
// 0x09 - Social Waiting
// 0x0A - Laugh
// 0x0B - Applaud
// 0x0C - Dance
// 0x0D - Sorrow
// 0x0F - Анимация как при lvl-up
// 0x10 - Анимация героев

ChangeMoveType

Назначение: включает/выключает бег
Формат:
1C
XX XX XX XX // 0 - бег выключен, 1 - бег включен

ChangeWaitType

Назначение: сесть/встать
Формат:
1D
XX XX XX XX // 0 - сесть, 1 - встать

RequestTargetCanceld

Назначение: Отменяет таргет
Формат:
1D

RequestBuyItem

Назначение: Запрос на покупку вещей
Формат:
1F
XX XX XX XX // ID сиска покупок
XX XX XX XX // количество вещей которые нужно купить

// <<< Блок повторяется столько раз, сколько разных вещей нужно купить
XX XX XX XX // ID предмета который нужно купить
XX XX XX XX // количество предметов которые нужно купить
...

RequestBypassToServer

Назначение: передает "bypass"(содержаться в HTML) команду серверу.
Формат:
21
XX XX XX XX 00 00 // строка с коммандой

RequestJoinPledge

Назначение: отправляет чару предложение вступить в клан.
Формат:
24
XX XX XX XX // ID чара, которому высылается предложение

RequestAnswerJoinPledge

Назначение: ответ на предложение о вступлении в клан
Формат:
25
XX XX XX XX // ответ: 00 - нет, 01 - да

RequestWithdrawalPledge

Назначение: выйти из клана
Формат:
26

RequestOustPledgeMember

Назначение: удалить чара из клана
Формат:
27
XX XX XX XX 00 00 // строка с именем чара

RequestJoinParty

Назначение: предложить вступить в пати
Формат:
29
XX XX XX XX 00 00 // ник чара, которому отсылается предложение
XX XX XX XX // тип распределения предметов:
// 0x00 - дроп получает подобравший его чар, споил - достается спойлеру
// 0x01 - дроп распределяется случайным образом, споил - достается спойлеру
// 0x02 - дроп и споил, распределяется случайным образом
// 0x03 - дроп дается чарам по очереди, споил - достается спойлеру
// 0x04 - дроп и споил, дается чарам по очереди

RequestAnswerJoinParty

Назначение: ответ на предложение вступить в пати
Формат:
2A
XX XX XX XX // ответ: 00 - нет, 01 - да

RequestWithDrawalParty

Назначение: выйти из пати
Формат:
2B

RequestOustPartyMember

Назначение: удалить чара из пати
Формат:
2C
XX XX XX XX 00 00 // строка с именем чара которого следует удалить

RequestMagicSkillUse

Назначение: использовать магический скилл
Формат:
2F
XX XX XX XX // ID скилла
XX XX XX XX // состояние CTRL : 00 - отпущен, 01 - нажат
XX XX XX XX // состояние SHIFT: 00 - отпущен, 01 - нажат

Appearing

Назначение: Запрашивает возрождение чара после смерти. Вызывается после пакетов RequestRestartPoint и ValidatePosition
Формат:
30

RequestShortCutReg

Назначение: Регестрирует ярлык на панеле быстрого доступа.
Формат:
33
XX XX XX XX // Тип ярлыка
// 0x01 - итем
// 0x02 - скилл
// 0x03 - действие
// 0x04 - макрос
XX XX XX XX // идентификатор объекта выносимого на панель
XX XX XX XX // номер слота
XX XX XX XX // номер закладки
XX XX XX XX // неизвестно

RequestShortCutDel

Назначение: Удаляет ярлык с панели быстрого доступа.
Формат:
35
XX XX XX XX // номер слота
XX XX XX XX // номер закладки

Say2

Назначение: отправляет сообщение другим игрокам
Формат:
38
XX XX XX XX 00 00 // Cтрока сообщения
XX XX XX XX // Тип сообщение
// 0x00 - ALL
// 0x01 - SHOUT ( ! )
// 0x02 - TELL ( " )
// 0x03 - PARTY ( # )
// 0x04 - CLAN ( @ )
// 0x05 - GM
// 0x06 - PETITION_PLAYER
// 0x07 - PETITION_GM
// 0x08 - TRADE ( + )
// 0x09 - ALLIANCE ( $ )
// 0x0A - ANNOUNCEMENT
// 0x0F - PARTYROOM_ALL ( желтый )
// 0x10 - PARTYROOM_COMMANDER ( синий )
// 0x11 - Голос героя
XX XX XX XX 00 00 // Для приватных сообщений. Содержит ник чара которому предназначено сообщение.

RequestPledgeMemberList

Назначение: запросить список членов клана
Формат:
3C

RequestSkillList

Назначение: запрашивает список изученных скилов
Формат:
3F

AnswerTradeRequest

Назначение: ответ на трейд
Формат:
40
XX XX XX XX // Ответ на трейд: 00 - отклонить, 01 - подтвердить

RequestActionUse

Назначение: выполняет действие
Формат:
45
XX XX XX XX // Action ID (список не полный, экшинов там дофига)
// 0x00 - Сесть/встать
// 0x01 - Идти/бежать
// 0x19 - Ансаммонить пета
// 0x33 - General manufacture
// 0x38 - Зазезть/слезть с страйдера (вирна ???)
XX XX XX XX // 00 - CTRL не нажат, 01 - CTRL нажат
XX // 01 - SHIFT не нажат, 01 - SHIFT нажат

RequestRestart

Назначение: возвращает в меню выбора чара
Формат:
46

ValidatePosition

Назначение: вызывает перезагрузку данных, НПЦ, других игроков и прочее. Фактически вызывает телепортацию в текущие координаты игрока.
Формат:
48
XX XX XX XX // X
XX XX XX XX // Y
XX XX XX XX // Z
XX XX XX XX // Направление взгляда
XX XX XX XX // ???

StartRotating

Назначение: Включает вращение чара вокруг своей оси
Формат:
4A
XX XX XX XX // Угол (принимает значения от 0 до 65535)
XX XX XX XX // сторона ( 01 00 00 00 - вращение вправо, FF FF FF FF - вращение влево )

FinishRotating

Назначение: прекращает вращение чара вокруг своей оси
Формат:
4B
XX XX XX XX // Неизвестно
XX XX XX XX // Неизвестно

RequestStartPledgeWar

Назначение: начать кланвар
Формат:
4D
XX XX XX XX 00 00 // строка с названием клана, которому объявляется кланвар

RequestStartPledgeWar

Назначение: закончить клан вар
Формат:
4F
XX XX XX XX 00 00 // строка с названием клана

RequestGiveNickName

Назначение: устанавить титул.
Формат:
55
XX XX XX XX 00 00 // строка содержащая ник чара которому требуется установить титул
XX XX XX XX 00 00 // строка содержащая титул

RequestEnchantItem

Назначение: запрашивает энчат интема.
Формат:
58
XX XX XX XX // ID итема который хотим заэнчатить

RequestDestroyItem

Назначение: запрос на уничтожение итема
Формат:
59
XX XX XX XX // ID итема
XX XX XX XX // количество итемов?

RequestFriendInvite

Назначение: занести чара в френд лист
Формат:
5E
XX XX XX XX 00 00 // строка с именем чара, которого следует добавить

RequestAnswerFriendInvite

Назначение: ответ на предложение добавления в список друзей
Формат:
5F
XX XX XX XX // 00 - нет, 01 - да

RequestFriendList

Назначение: запрос френдлиста
Формат:
60

RequestFriendDel

Назначение: запрос на удаление чара из френд листа
Формат:
61
XX XX XX XX 00 00 // строка с именем чара, которого следует удалить

CharacterRestore

Назначение: отменяет удаление чара
Формат:
62
XX XX XX XX // номер слота с чаром

RequestQuestList

Назначение: запросить список квестов
Формат:
63

RequestQuestAbort

Назначение: прервать выполнение квеста
Формат:
64
XX XX XX XX // ID квеста

CharacterRestore

Назначение: запрос информации о клане
Формат:
66
XX XX XX XX // ID клана

RequestPledgeCrest

Назначение: устанавливает иконку клана
Формат:
68
XX XX XX XX // ID иконки

RequestRide

Назначение: залезть/слезть на страйдера/вирна
Формат:
6A
XX XX XX XX // 0 - слезть, 1 - залезть
XX XX XX XX // 1 - страйдер, 2 - вивирен

RequestAquireSkillInfo

Назначение: запрос информации о скилле
Формат:
6B
XX XX XX XX // ID скилла
XX XX XX XX // уровень скилла

RequestAquireSkill

Назначение: запрос на изучение скилла
Формат:
6C
XX XX XX XX // ID скилла
XX XX XX XX // уровень скилла

RequestRestartPoint

Назначение: запрашивает рестарт после смерти чара
Формат:
6D
XX XX XX XX // точка в которую будет возвращен игрок
// 0x00 - Город
// 0x01 - Клан холл
// 0x02 - Замок
// 0x03 - Флаг (при осаде замка)
// 0x04 - Ресс на месте на котором умер игрок, используется на фестивале

RequestGMCommand

Назначение: отсылает запрос на GM комманду
Формат:
6E
XX XX XX XX 00 00 // строка с именем чара - цели
XX XX XX XX // идентификатор комманды
// 0x01 - статус игрока
// 0x02 - клан игрока
// 0x03 - скилы игрока
// 0x04 - квесты игрока
// 0x05 - инвентарь игрока
// 0x06 - вархаус игрока
XX XX XX XX // неизвестно

RequestPartyMatchConfig

Назначение: открыть окно поиска пати
Формат:
6F
XX XX XX XX // автомтическая регистрация: 00 - нет, 01 - да
XX XX XX XX // показывать уровень: 00 - нет, 01 - да
XX XX XX XX // показывать класс: 00 - нет, 01 - да

RequestPartyMatchList

Назначение: запросить список чаров ищущих пати
Формат:
70
XX XX XX XX // статус может быть 1 и 3. Что значит наверняка, я не знаю.

RequestPartyMatchDetail

Назначение: запросить подробную информуцию о чаре ищущем пати
Формат:
71
XX XX XX XX // ID чара

RequestCrystallizeItem

Назначение: запрос на кристализацию итема
Формат:
72
XX XX XX XX // ID итема который нужно кристализовать
XX XX XX XX // количество итемов, которые нужно кристализовать

SetPrivateStoreMsgSell

Назначение: устанавливает сообщение на продажу для PrivateStore
Формат:
77
XX XX XX XX 00 00 // строка с сообщением

RequestGmList

Назначение: запрос списка GMов
Формат:
81

RequestJoinAlly

Назначение: предложить вступить в аллианс
Формат:
82
XX XX XX XX // ID лидера клана, который преглашается в алли

RequestAnswerJoinAlly

Назначение: ответ на предложение вступления в аллианс
Формат:
83
XX XX XX XX // ответ: 00 - нет, 01 - да

AllyLeave

Назначение: покинуть аллианс
Формат:
84
XX XX XX XX 00 00 // строка с названием клана

AllyDismiss

Назначение: запрос на роспуск аллианса
Формат:
85
XX XX XX XX 00 00 // строка с именем клана

RequestAllyCrest

Назначение: запрос на установку иконки аллианса
Формат:
88
XX XX XX XX // ID иконки

RequestChangePetName

Назначение: меняет имя пета
Формат:
89
XX XX XX XX 00 00 // строка с новым именем пита

RequestPetUseItem

Назначение: команда питу использовать итем
Формат:
8A
XX XX XX XX // ID объекта которых нужно использовать

RequestGiveItemToPet

Назначение: переместить итем из своего инвентаря в инвентарь пита
Формат:
8B
XX XX XX XX // ID итема
XX XX XX XX // количество

RequestGetItemFromPet

Назначение: переместить итем из инвентаря пита к себе в инвентарь
Формат:

XX XX XX XX // ID итема
XX XX XX XX // количество
XX XX XX XX // фиг его знает. В большинстве случаев - 0

RequestAllyInfo

Назначение: запрос информации об аллиансе.
Формат:
8E

RequestPetGetItem

Назначение: команда питу поднять итем.
Формат:
8F
XX XX XX XX // ID который надлежит поднять

SetPrivateStoreMsgBuy

Назначение: устанавливает сообщение на покупку для PrivateStore
Формат:
94
XX XX XX XX 00 00 // строка с сообщением

RequestStartAllianceWar

Назначение: объявить алли вар
Формат:
98
XX XX XX XX 00 00 // строка с именем аллианса

RequestStopAllianceWar

Назначение: запрос о прекращении алли вар'а
Формат:
9A
XX XX XX XX 00 00 // строка с именем аллианса

RequestBlock

Назначение: запрос операции над черным списком
Формат:
A0
XX XX XX XX // тип запроса:
// 0x00 - добавить чара в игнор
// 0x01 - удалить чара из игнора
// 0x02 - вывесли список чаров занесенных в игнор
// 0x03 - игнор всех
// 0x04 - отменить игнор всех
XX XX XX XX 00 00 // строка с именем чара которого надо занести в игнор

RequestSiegeAttackerList

Назначение: запрашивает список записаных на осаду замка атакующих кланов
Формат:
A2
XX XX XX XX // ID замка

RequestJoinSiege

Назначение: добавить/удалить клан в список осады замка
Формат:
A4
XX XX XX XX // ID замка
XX XX XX XX // 00 - присоедениться к защитникам, 01 - присоедениться к атакующим
XX XX XX XX // 00 - удалить клан из списка, 01 - добавить клан в список

RequestRecipeBookOpen

Назначение: открыть книгу рецептов
Формат:

RequestEvaluate

Назначение: запрос на рекомендацию игрока
Формат:
B9
XX XX XX XX // ID цели

RequestHennaList

Назначение: запросить список доступных татуировок
Формат:
BA
XX XX XX XX // неизвестно

RequestHennaItemInfo

Назначение: получить информацию о татуировке
Формат:
BB
XX XX XX XX // ID татуировки

RequestHennaEquip

Назначение: запрос на нанесение татуировки
Формат:

XX XX XX XX // ID татуировки которую нужно нанести

RequestMakeMacro

Назначение: запрос на создание макроса
Формат:
С1
XX XX XX XX // ID макроса
XX XX XX XX 00 00 // строка содержащая имя макроса
XX XX XX XX 00 00 // строка с описанием макроса
XX XX XX XX 00 00 // строка с текстом на иконке
XX // ID иконки
XX // количество строк

// <<<<< Следующий блок повторяется столько раз, сколько строк в макросе.
XX // строка
XX // тип
XX // ID скилла
XX // ID ярлыка на панели
XX XX XX XX 00 00 // имя комманды

RequestDeleteMacro

Назначение: запрос на удаление макроса
Формат:
C2
XX XX XX XX // ID макроса

RequestAutoSoulShot

Назначение: включает/выключает использование AutoSS
Формат:
CF
XX XX XX XX // идентификатор итема
XX XX XX XX // 1 - включить : 0 - выключить

RequestExPledgeCrestLarge

Назначение: запросить данные изображения большой иконки клана(те что размещаються на вещах клана типа щитов) клана
Формат:
D0
11
XX XX XX XX // размер данных

// <<<<< Следующий блок повторяется столько раз, сколько байт в данных изображения
XX // данные изображения

RequestChangePartyLeader

Назначение: передает лидерство в пати
Формат:
EE
XX XX XX XX 00 00 // строка с именем чара, которому передается лидерство

Категория: Квесты | Добавил: BapabaIIIka (19.01.2009)
Просмотров: 475 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа

Поиск

Друзья сайта



Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Copyright MyCorp © 2017 Создать бесплатный сайт с uCoz