Ru-MaNGOS

Ru-MaNGOS (http://mangos.ytdb.ru/index.php)
-   Запросы (http://mangos.ytdb.ru/forumdisplay.php?f=54)
-   -   [QUEST=5097,5098]Сторожевые башни (http://mangos.ytdb.ru/showthread.php?t=2336)

Йоха 03.09.2010 11:32

[QUEST=5097,5098]Сторожевые башни
 
Вложений: 1
это не запрос, а сниф, в разделе "принятые патчи" обсуждался этот вопрос...
я не совсем понял нужен ли еще сниф или нет, но на всякий случай выложу, вдруг пригодится. В снифе взятие квеста, выполнение и сдача.
Формат pkt еще старый, свой снифер не переписал пока под новую версию

virusav 03.09.2010 19:09

Снифф квеста 5097 есть, но в нем не приходит шаблон го со спеллфокусом, та же картина с кешем.

Патч написан по сниффам, в данном сниффе также нет шаблонов го.

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

zergtmn 03.09.2010 19:39

Вряд ли сработает конечно, но может стоит попробовать через прокси подменить entry в CMSG_GAMEOBJECT_QUERY?

virusav 03.09.2010 19:45

Возможно.
Я в этом ни бум-бум.:)

По другим объектам шаблоны в сниффах приходят, а по этим нет.

Konctantin 03.09.2010 21:14

при отправке CMSG_GAMEOBJECT_QUERY с ентри и пустым гуидом в ответ приходит всего 4 байта ответа, и ни каких данных.

Отправка:
Код:

Packet C->S, CMSG_GAMEOBJECT_QUERY (94), len 12, Flags: Custom
|---------------------------------------------------------------------------|
| OFFSET |  0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F |0123456789ABCDEF|
|----------------------------------------------------------|----------------|
|00000000| 6B 00 00 00 00 00 00 00 00 00 00 00 -- -- -- -- |k...............|
|----------------------------------------------------------|----------------|

ответ:
Код:

Packet S->C, SMSG_GAMEOBJECT_QUERY_RESPONSE (95), len 4, Flags: Trailing
|---------------------------------------------------------------------------|
| OFFSET |  0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F |0123456789ABCDEF|
|----------------------------------------------------------|----------------|
|00000000| 6B 00 00 80 -- -- -- -- -- -- -- -- -- -- -- -- |k...............|
|----------------------------------------------------------|----------------|

Я уже и пробовал формировать гуид с каунтером 0, и копировал готовый гуид - все равно ничего, только ответ "с минусом"

Konctantin 03.09.2010 22:50

Цитата:

Вряд ли сработает конечно, но может стоит попробовать через прокси подменить entry в CMSG_GAMEOBJECT_QUERY?
можно попробовать перехватывать пакеты SMSG_SPELL_GO и поле GO Hit Target посылать в пакете CMSG_GAMEOBJECT_QUERY.
Тоесть получится мы скормим серверу его же гуид, а не пустое поле.
Но проблема с тестом всего этого...:( и все это только теория...

LordJZ 04.09.2010 05:45

Цитата:

Сообщение от Konctantin (Сообщение 13555)
при отправке CMSG_GAMEOBJECT_QUERY с ентри и пустым гуидом в ответ приходит всего 4 байта ответа, и ни каких данных.

Отправка:
Код:

Packet C->S, CMSG_GAMEOBJECT_QUERY (94), len 12, Flags: Custom
|---------------------------------------------------------------------------|
| OFFSET |  0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F |0123456789ABCDEF|
|----------------------------------------------------------|----------------|
|00000000| 6B 00 00 00 00 00 00 00 00 00 00 00 -- -- -- -- |k...............|
|----------------------------------------------------------|----------------|

ответ:
Код:

Packet S->C, SMSG_GAMEOBJECT_QUERY_RESPONSE (95), len 4, Flags: Trailing
|---------------------------------------------------------------------------|
| OFFSET |  0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F |0123456789ABCDEF|
|----------------------------------------------------------|----------------|
|00000000| 6B 00 00 80 -- -- -- -- -- -- -- -- -- -- -- -- |k...............|
|----------------------------------------------------------|----------------|

Я уже и пробовал формировать гуид с каунтером 0, и копировал готовый гуид - все равно ничего, только ответ "с минусом"

Ответ с минусом это отрицательный (внезапно!) ответ :)

virusav мне рассказывал про это дело, можно попробовать так, как сказал Konctantin. Если вы мне дадите несколько мест, где используется каст по фокусу.

Konctantin 04.09.2010 10:43

я уже сделал аддон, надо только тестонуть...

Konctantin 04.09.2010 13:05

Получилось
Перехвачен пакет:
Код:

Packet S->C, SMSG_SPELL_GO (306), len 50, Flags: Trailing
|---------------------------------------------------------------------------|
| OFFSET |  0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F |0123456789ABCDEF|
|----------------------------------------------------------|----------------|
|00000000| CF 45 D2 76 02 80 07 CF 45 D2 76 02 80 07 A0 1A |.E.v....E.v.....|
|00000010| 59 00 00 00 01 04 00 04 DF 19 DC 01 C0 9E 05 1F |Y...............|
|00000020| 52 02 10 F1 00 00 08 00 00 FF C0 9E 05 1F 52 02 |R.............R.|
|00000030| 10 F1 -- -- -- -- -- -- -- -- -- -- -- -- -- -- |................|
|----------------------------------------------------------|----------------|

Caster: (High: 1920 (0x0780), Counter: 41,341,509)
Target: (High: 1920 (0x0780), Counter: 41,341,509)
Pending Cast: 160
Spell Id: 22810
Cast Flags: 0x00040100 CAST_FLAG_09, CAST_FLAG_19
TicksCount: 3692683012
GO Hit Target 0: (High: HIGHGUID_GAMEOBJECT (0xF110), Entry: 152095, Counter: 368,320)
TargetFlags: 0x00000800 TARGET_FLAG_OBJECT
ObjectTarget: (High: HIGHGUID_GAMEOBJECT (0xF110), Entry: 152095, Counter: 368,320)

Отправлен запрос:
Код:

Packet C->S, CMSG_GAMEOBJECT_QUERY (94), len 12, Flags: Custom
|---------------------------------------------------------------------------|
| OFFSET |  0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F |0123456789ABCDEF|
|----------------------------------------------------------|----------------|
|00000000| 1F 52 02 00 C0 9E 05 1F 52 02 10 F1 -- -- -- -- |.R......R.......|
|----------------------------------------------------------|----------------|

Entry: 152095
Gameobject Causing Query: (High: HIGHGUID_GAMEOBJECT (0xF110), Entry: 152095, Counter: 368,320)

Получен ответ:
Код:

Packet S->C, SMSG_GAMEOBJECT_QUERY_RESPONSE (95), len 166, Flags: None
|---------------------------------------------------------------------------|
| OFFSET |  0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F |0123456789ABCDEF|
|----------------------------------------------------------|----------------|
|00000000| 1F 52 02 00 03 00 00 00 FD 00 00 00 D0 9B D1 83 |.R..............|
|00000010| D0 BD D0 BD D0 B0 D1 8F 20 D0 BB D0 B8 D0 BB D0 |........ .......|
|00000020| B8 D1 8F 00 00 00 00 00 00 00 03 01 00 00 85 25 |...............%|
|00000030| 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 |................|
|00000040| 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|00000050| 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|00000060| 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|00000070| 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|00000080| 00 00 00 00 00 00 00 00 00 00 00 00 40 40 91 29 |............@@.)|
|00000090| 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|000000A0| 00 00 00 00 00 00 -- -- -- -- -- -- -- -- -- -- |................|
|----------------------------------------------------------|----------------|

GO entry:  152095
GO Type:    3 (Chest)
Display ID: 253
Name:      Лунная лилия
CastBar Caption:
Data_1: 9605
Data_2: 0
Data_3: 1
Data_4: 0
Data_5: 0
Data_6: 0
Data_7: 0
Data_8: 0
Data_9: 0
Data_10: 0
Data_11: 0
Data_12: 0
Data_13: 0
Data_14: 0
Data_15: 0
Data_16: 0
Data_17: 0
Data_18: 0
Data_19: 0
Data_20: 0
Data_21: 0
Data_22: 0
Data_23: 0
Size: 3
QuestItem_1: 0
QuestItem_2: 0
QuestItem_3: 0
QuestItem_4: 0
QuestItem_5: 0

Теперь это дело надо пройти в условиях данного квеста, но я увы не могу :(

Йоха 04.09.2010 20:37

Konctantin, объясни подробнее что сделать надо что бы получить нужный ответ ? Я напишу у себя такое ... проблема только найти твинка у которого этот квест не сделан.

Konctantin 04.09.2010 20:50

да все просто,
вот участок кода, отвечающий за это дело:
Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 55 сообщение(ий)):
У вас нет прав чтобы видеть скрытый текст, содержащейся здесь.

Йоха 04.09.2010 21:27

то есть при обнаружении пакетов SMSG_SPELL_GO у которых целями являются гуиды с типами gameobject, gameobject2, dynamicobject необходимо отправить подставной пакет CMSG_GAMEOBJECT_QUERY ?

и ответ нужно получить для ГО "Сигнальный факел" ?

Konctantin 04.09.2010 21:42

да, именно так:
Код:

=== Opcode: SMSG_SPELL_GO, len: 57, ToClient, time: 16:20:45 ===
...
Spell Id: 17016
...
GO Hit Target 0: (High: HIGHGUID_GAMEOBJECT (0xF110), Entry: 176094, Counter: 6,030)
...

=== Opcode: SMSG_SPELL_GO, len: 57, ToClient, time: 16:21:05 ===
...
Spell Id: 17016
...
GO Hit Target 0: (High: HIGHGUID_GAMEOBJECT (0xF110), Entry: 176095, Counter: 6,032)
...

=== Opcode: SMSG_SPELL_GO, len: 57, ToClient, time: 16:21:26 ===
...
Spell Id: 17016
...
GO Hit Target 0: (High: HIGHGUID_GAMEOBJECT (0xF110), Entry: 176096, Counter: 6,029)
...

=== Opcode: SMSG_SPELL_GO, len: 57, ToClient, time: 16:21:52 ===
...
Spell Id: 17016
...
GO Hit Target 0: (High: HIGHGUID_GAMEOBJECT (0xF110), Entry: 176097, Counter: 6,031)
...


Йоха 04.09.2010 21:46

SMSG_GAMEOBJECT_QUERY_RESPONSE
Код:

00000000:  DD AF 02 00  05 00 00 00  FF 0F 00 00  D0 A1 D0 B8
00000010:  D0 B3 D0 BD  D0 B0 D0 BB  D1 8C D0 BD  D1 8B D0 B9
00000020:  20 D1 84 D0  B0 D0 BA D0  B5 D0 BB 00  00 00 00 00
00000030:  00 00 00 00  00 00 01 00  00 00 00 00  00 00 00 00
00000040:  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00
00000050:  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00
00000060:  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00
00000070:  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00
00000080:  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00
00000090:  00 00 33 33  33 3F 00 00  00 00 00 00  00 00 00 00
000000A0:  00 00 00 00  00 00 00 00  00 00 00 00  00 00

Сигнальный факел

это не то ?

zergtmn 04.09.2010 21:55

Это 176093, он итак попадает в кеш без всяких ухищрений.
Надо 176094 - 176097.

Йоха 04.09.2010 22:01

ок, а что за объекты 176094 - 176097 ?

zergtmn 04.09.2010 22:11

Какие-то GO, которые не попадают в кеш обычным образом.
Нужно:
1. взять квест
2. Используя факел, получить пакеты как в #13. Взять оттуда entry и гуид объекта
3. Отправить пакет CMSG_GAMEOBJECT_QUERY с этими данными

Йоха 04.09.2010 22:18

блин, это надо переписать заново снифер, у меня в текущей реализации данные между сервером и клиентом пересылаются в отдельном потоке без обработки.

Konctantin 04.09.2010 22:55

Вот они родимые:
Код:

REPLACE INTO `gameobject_template` (entry, type, displayId, name, castBarCaption, data0, data1, data2, data3, data4, data5, data6, data7, data8, data9, data10, data11, data12, data13, data14, data15, data16, data17, data18, data19, data20, data21, data22, data23, size, questitem1, questitem2, questitem3, questitem4, questitem5, questitem6) VALUES
(176094, 8, 299, 'Башня Андорала Один', '', 805, 15, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.00000, 0, 0, 0, 0, 0, 0),
(176095, 8, 299, 'Башня Андорала Два', '', 805, 15, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.00000, 0, 0, 0, 0, 0, 0),
(176096, 8, 299, 'Башня Андорала Три', '', 805, 15, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.00000, 0, 0, 0, 0, 0, 0),
(176097, 8, 299, 'Башня Андорала Четыре', '', 805, 15, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.00000, 0, 0, 0, 0, 0, 0);


KiriX 04.09.2010 23:35


zergtmn 05.09.2010 09:57

Konctantin, попробуй подменить или просто отправить CMSG_ITEM_QUERY_SINGLE с номером фейкового предмета, который близзы используют для названий сетов.
http://ytdb.ru/showthread.php?t=16 список

LordJZ 05.09.2010 10:21

Цитата:

Сообщение от zergtmn (Сообщение 13630)
Konctantin, попробуй подменить или просто отправить CMSG_ITEM_QUERY_SINGLE с номером фейкового предмета, который близзы используют для названий сетов.
http://ytdb.ru/showthread.php?t=16 список

Зачем? Проблема решается намного проще... я уже давал решение девам ytdb

Konctantin 05.09.2010 10:26

Вложений: 1
тут можно обычным аддоном линкощиком, перебором или по елементам массива
единственная проблема - так это скорость, для того чтоб не кикало - надо линковать со скоростью 1 раз в 6-8 секунд.
ЗЫ. Респонзы идут, но выложу кешем.

АДД:
Облом, пустые респонзы:

zergtmn 05.09.2010 10:30

Эти не линкуются, я пробовал.

LordJZ 05.09.2010 11:52

Вот-вот... используйте wdb+dbc и не выпендривайтесь, а то взяли моду с UDB пример брать

zergtmn 05.09.2010 12:47

Значит придется делать таблицу с названиями таких предметов, как в триньке.

LordJZ 05.09.2010 12:58

Данных хватает чтобы наполнить item_template.

zergtmn 05.09.2010 13:19


Konctantin 05.09.2010 13:27

Список квестов с подобными ГО

Konctantin 05.09.2010 13:28

далее:

YuruY 05.09.2010 13:35

Цитата:

Список квестов с подобными ГО
Жжошь. ))
Подобные ГО, это тип = 8, с некоторых пор они перестали кешироваться, (вот они все SpellFocusObject.dbc), кешируются только "общего назначения" (костры/печи/кузни ...), все которые "по квестам" - не попадают в кеш (такой эффект что они их заспавнили с "-" шансом, игрок их не видит а они работают). =)

Konctantin 05.09.2010 14:18

Цитата:

Жжошь. ))
что именно?
добавлено:
Если ты о формировании ссылок, то это не я, а запрос:

LordJZ 05.09.2010 14:39

Цитата:

Сообщение от zergtmn (Сообщение 13639)

Названия сохраняются в кеше. itemnamecache.wdb


Текущее время: 17:14. Часовой пояс GMT +3.

ru-mangos.ru - Русское сообщество MaNGOS