Вернуться   CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг
Войти через OpenID

Скриптинг Форум посвещенный созданию скриптов для L2PacketHack

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 15.11.2013, 18:20   #1
Новичок
 
Регистрация: 15.11.2013
Сообщений: 4
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
lliapk пока неопределено
По умолчанию Скрипт на определение ГМ'а в игре

Здравствуйте!!
Подскажите пожалуйста как реализовать такой скрипт: Нужно периодически (1 раз в 30 сек.) проверять есть ли ГМ в игре на сервере ИЛ. Если ГМ окажется в игре делать релог или эксит с игры.
На сервере где я играю онлайн маленький и админ может легко прилететь ко мне и спалить что я играю ботом. Но он в игру редко заходит. По этому данный скрипт был бы весьма актуален для меня.

Вот что я узнал:
Для проверки ГМ'а в игре нужно послать пакет "81"
Тип: 0x81 (RequestGMList).

В ответ от сервера приходит пакет "64 BE 02 00 00 00 00 00 00".
Тип: 0x64 (SystemMessage)
0002 d MsgID: Сейчас нет Игрового мастера. ID:702 (0x02BE)
0006 d typesCount: 0 (0x00000000)

Я так понимаю нужно теперь узнать пакет когда админ онлайн и пакет на релог, и слепить все это дело в скрипт

Ребята помогите это сделать. Или может у кого есть похожий скрипт по проверке ГМ'ов в игре?

Добавлено через 34 минуты
Подскажите кто вкурсе какой должен быть пакет от сервера, про то что ГМ в игре.

Когда отсылаю на сервер пакет 81, приходит вот такой пакет:
"64 BE 02 00 00 00 00 00 00".
Тип: 0x64 (SystemMessage)
0002 d MsgID: Сейчас нет Игрового мастера. ID:702 (0x02BE)
0006 d typesCount: 0 (0x00000000)

Нужно узнать эти данные только когда ГМ онлайн???

Сервер - Интерлюдия.

Последний раз редактировалось lliapk, 15.11.2013 в 18:20. Причина: Добавлено сообщение
lliapk вне форума   Ответить с цитированием
Старый 15.11.2013, 20:25   #2
Новичок
 
Регистрация: 13.11.2013
Сообщений: 2
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
slavez пока неопределено
По умолчанию

Узнай какой пакет приходит когда он онлайн.
Ну в моем понимании скрипт у тебя должен получиться что-то из темы:
Проверка по времени
- отправка пакета что бы узнать если гм
- если от сервера приходит пакет что гм онлайн разрыв соединения.
На форуме куча тем по таймингу, моменты которые у меня вызвали сложность я выкладывал в теме про перебор: http://coderx.ru/showthread.php?t=11087
Там внизу подписаны две темы от куда я брал информацию.
slavez вне форума   Ответить с цитированием
Старый 16.11.2013, 07:34   #3
Местный
 
Аватар для SeregaZ
 
Регистрация: 16.08.2009
Сообщений: 1,222
Сказал Спасибо: 4
Имеет 227 спасибок в 180 сообщенях
SeregaZ пока неопределено
По умолчанию

полагаю можно в файле системных сообщений найти. ID:702 это что его нет онлайн, полагаю в том же районе 701-703 лежат и прочие варианты статуса гм живности.

и вот еще - что-то это как-то слишком просто. думаю должен быть некий способ невидимости для гма, который бы не палился этой фишкой.
__________________
хочу картинку в подпись!
SeregaZ вне форума   Ответить с цитированием
Старый 16.11.2013, 17:26   #4
Местный
 
Аватар для Breadfan
 
Регистрация: 29.04.2008
Сообщений: 831
Сказал Спасибо: 80
Имеет 230 спасибок в 169 сообщенях
Breadfan пока неопределено
По умолчанию

Так команда /gmlist показывает лишь тех, кто онлайн+не в инвизе. Если гм в инвизе будет бегать рядом - клиент никаким образом этого не увидит.
__________________
На фразы в аську типа "слух карочь 1)как точить 2)как раскачаться за 5 мин" - игнор. ИМХО идиотизм
Дай голодному рыбу - он будет один день сыт. Покажи ему, как удить рыбу - он пошлёт тебя и скажет, что у него есть более интересные занятия, чем забрасывать снасти в воду
David Kastrup @ de.comp.text.tex.
"Приобретенные навыки общения с маленькими детьми - сильно упрощают взаимопонимание на форумах..."

А вы знаете, что для качественной сварки - место шва нужно протереть спиртом?
Breadfan вне форума   Ответить с цитированием
Старый 18.11.2013, 11:12   #5
Новичок
 
Регистрация: 15.11.2013
Сообщений: 4
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
lliapk пока неопределено
По умолчанию

Попробую запустить свой сервер и посмотреть пакеты через л2пх, когда гм онлайн. Чтоб точно знать - возможно ли будет реализовать такой скрипт )

Добавлено через 2 минуты
Цитата:
Сообщение от SeregaZ Посмотреть сообщение
полагаю можно в файле системных сообщений найти. ID:702 это что его нет онлайн, полагаю в том же районе 701-703 лежат и прочие варианты статуса гм живности.
Таки да, 703 - отвечает за строку: -----GM List------
а 704 - показывает ники ГМ'ов: GM: xxxxxx

Последний раз редактировалось lliapk, 18.11.2013 в 11:12. Причина: Добавлено сообщение
lliapk вне форума   Ответить с цитированием
Старый 18.11.2013, 14:06   #6
Местный
 
Аватар для Yegor
 
Регистрация: 05.04.2009
Сообщений: 1,436
Сказал Спасибо: 306
Имеет 122 спасибок в 98 сообщенях
Yegor пока неопределено
По умолчанию

Команду gmlist отключают на серверах. Точнее она обычно всегда возвращает - что гмов нет в игре.
__________________
Продажа чистых аккаунтов 4G, L2 EU, AARu, AA EU, Aion EU, Tera RU, Tera EU (ICQ 594297609)
Продажа VK авторег аккаунтов (ICQ 594297609)

Последний раз редактировалось Yegor, 21.11.2013 в 16:24.
Yegor вне форума   Ответить с цитированием
Старый 20.11.2013, 13:08   #7
Новичок
 
Регистрация: 15.11.2013
Сообщений: 4
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
lliapk пока неопределено
По умолчанию

Значит так. Поставил я свой сервак интерлюдии. Немного потестил и все стало понятно. Таки да, Yegor и другие были правы: Если на сервере в конфиге поставить:
GMStartupAutoList = True, то при прописи /gmlist пишет ники Гм которые в игре. Если "False" то будет писать в любом случае что ГМ'ов нет!!
По этому реализовать такой скрипт не получится(
Остается одна надежда на то, что эта опция на том сервере где я играю, стоит "True". Ибо по-умолчанию она включена) Если админ ее не отключил то можно будет замутить этот скрипт себе)
lliapk вне форума   Ответить с цитированием
Старый 20.11.2013, 14:08   #8
Местный
 
Аватар для SeregaZ
 
Регистрация: 16.08.2009
Сообщений: 1,222
Сказал Спасибо: 4
Имеет 227 спасибок в 180 сообщенях
SeregaZ пока неопределено
По умолчанию

а ты бомби в личные сообщения гму: привет.
если сообщение прошло, то логаут, значит гм онлайн.
если гм выключил личные сообщения, то покажет что он отключил, а значит он онлайн, значит логаут.
если данного персонажа не обнаружено - значит он не в сети, и можно играть
__________________
хочу картинку в подпись!
SeregaZ вне форума   Ответить с цитированием
Старый 20.11.2013, 14:36   #9
Новичок
 
Регистрация: 15.11.2013
Сообщений: 4
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
lliapk пока неопределено
По умолчанию

Цитата:
Сообщение от SeregaZ Посмотреть сообщение
а ты бомби в личные сообщения гму: привет.
если сообщение прошло, то логаут, значит гм онлайн.
если гм выключил личные сообщения, то покажет что он отключил, а значит он онлайн, значит логаут.
если данного персонажа не обнаружено - значит он не в сети, и можно играть
Если это действительно так то по такому принципу можно замутить бота:

Делать проверку каждые 1 минуту, о том есть ли гм онлайн -> отправляю "приват.месседж" с текстом "привет ты тут?"). Как только меседж будет доставлен либо придет сообщение что он отключил приватные сообщения - сразу офф с игры.) Админ редко заходит - может по пару дней не заходить в игру.
lliapk вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг


Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 21:50.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2023, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!