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

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

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 21.05.2009, 11:19   #1
Рыцарь
 
Аватар для mks
 
Регистрация: 21.09.2007
Сообщений: 376
Сказал Спасибо: 11
Имеет 218 спасибок в 106 сообщенях
mks пока неопределено
По умолчанию Автозаточка, просто и сердито!

Расчитано на пвп серваки и изобилие блес точек...
Использование: включаем скрипт,
включаем скрипт << СМОТРЕТЬ
забиваем ник и уровень точки, точим нужную шмотку на +1(не важно со скольки), скрипт запоминает необходимые данные, 1е соц действие включает и выключает автозаточку.
1е соц действие << СМОТРЕТЬ
Скорость заточки выставлена 500мс(+2 в секунду), можно ускорять или замедлять в зависимости от сервака...

>>>1-й скрипт от mks<<<

Переделал для тех у кого 1й скрипт работает, но не останавливается заточив до указанного уровня:

>>>2-й скрипт от mks<<<


Переделал слегка для Грации Файнал.
Холява закончилась, если выставляешь интервал заточки меньше чем 2100мс получаешь авто-бан(возможно не везде так)

>>>3-й скрипт от mks<<<

для Грации Файнал.
4-й скрипт от mks
добавлен 2й таймер

Последний раз редактировалось NLObP, 08.12.2009 в 23:07.
mks вне форума   Ответить с цитированием
Старый 17.06.2009, 23:38   #91
Новичок
 
Регистрация: 17.06.2009
Сообщений: 5
Сказал Спасибо: 3
Имеет 0 спасибок в 0 сообщенях
DrBro пока неопределено
По умолчанию

mks, Спасибо за скриптик очень полезный! тока у меня на серваке напряг с блесками, а твой скриптик новую пуху с рюкзака не берет если сломает первую серв финал
DrBro вне форума   Ответить с цитированием
Старый 18.06.2009, 12:34   #92
Рыцарь
 
Аватар для mks
 
Регистрация: 21.09.2007
Сообщений: 376
Сказал Спасибо: 11
Имеет 218 спасибок в 106 сообщенях
mks пока неопределено
По умолчанию

Цитата:
Сообщение от DrBro Посмотреть сообщение
mks, Спасибо за скриптик очень полезный! тока у меня на серваке напряг с блесками, а твой скриптик новую пуху с рюкзака не берет если сломает первую серв финал
Нет, в том-то его и простота, если дописывать что б пуху брал из рюгзака он слегка увеличится, может на досуге допишу....
mks вне форума   Ответить с цитированием
За это сообщение mks нажился спасибкой от:
Старый 18.06.2009, 13:53   #93
Пользователь
 
Аватар для HORSE
 
Регистрация: 06.06.2009
Сообщений: 92
Сказал Спасибо: 31
Имеет 9 спасибок в 8 сообщенях
HORSE пока неопределено
По умолчанию

сходи пивка попей на досуге лучше=))ты и так много сделал)))
HORSE вне форума   Ответить с цитированием
Старый 18.06.2009, 20:18   #94
Новичок
 
Регистрация: 17.06.2009
Сообщений: 5
Сказал Спасибо: 3
Имеет 0 спасибок в 0 сообщенях
DrBro пока неопределено
По умолчанию

mks, Был бы оченень признателен


HORSE, нефиГГ агитировать к пьянству ценные кадры форума!все правильно: досуг надо проводить с пользой для общества)
DrBro вне форума   Ответить с цитированием
Старый 21.06.2009, 18:17   #95
Новичок
 
Аватар для dev
 
Регистрация: 21.06.2009
Сообщений: 5
Сказал Спасибо: 7
Имеет 4 спасибок в 3 сообщенях
dev пока неопределено
По умолчанию

Ответ сервера (Megal2.ru) - 3 пакета:

1.Tип: 0x21 (InventoryUpdate): Кол-во оставшихся заточек
Код:
21 01 00 02 00 04 00 D6 4E 04 10 B2 19 00 00 0B 00 00 00 24 01 00 00 05 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF FF FF FE FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
2.Tип: 0x21 (InventoryUpdate): Информация о затачиваемом предмете, с текущим уровнем заточки
Код:
21 01 00 02 00 01 00 56 2D 0B 10 D7 24 00 00 0C 00 00 00 01 00 00 00 01 00 00 00 01 00 00 10 00 00 05 00 00 00 00 00 00 00 FF FF FF FF FE FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
3.Tип: 0x87 (EnchantResult): Текущий уровень заточки предмета
Код:
87 05 00 00 00 05 00 00 00 05 00 00 00
Вопрос:
Ранее для остановки скрипта можно было зацепиться за 0x87, проверить по 0012 d (id предмета), теперь вместо 0012 d отдаёт 000С d (id предмета).

Скрипт выдаёт ошибку:


PHP код:
const
Name='******';   
var  
timer:TTimer;  
x:byte//ii?aaaeaiea, eaeiaa aaenoaea ii n?aoo iu niaa?oaai  

procedure Init;  
begin  
timer
:=TTimer.Create(nil);  
timer.interval:=150;  
timer.OnTimer:=@fireTimer;  
timer.enabled:=true;  
x:=1;//nia?aea o=1  
end;  

procedure Free;  
begin  
timer
.Free;  
end;  

procedure fireTimer(SenderTObject);  
begin  
case x of  
1
:begin  
     buf
:=hstr('5F 48 65 BF 19 00 00 00 00 ');  
     
SendToServerEx(Name);  
     
inc(x);  
   
end;  
2:begin  
     buf
:=hstr('5F 48 65 BF 19 00 00 00 00 ');  
     
SendToServerEx(Name);  
     
x:=1;  
   
end;  
end;{case}
end;

//кусок ниже ты получается влепил в таймер, пришлось расставить еще пару end; и begin;
begin
if FromServer then  
  begin  
    
case pck[1of  
      
#$21: begin //InventoryUpdate  
        
if (ReadD(0C)=9456) and (ReadD(34)=5then timer.enabled:=false;;
      
end;  
end;
end;
end
Забавно то, что при составлении пакета id вещи показывается в 0012 d, но когда пакет приходит с сервера - пх показывает id в 000С d.

В связи с чем скрипт точит не останавливаясь, пока не заканчиваются заточки.

[+] Если установить таймер менее чем на 2500 - вещь временами ломается на +4, при том, что на сервере +4 безопасно.

Последний раз редактировалось dev, 21.06.2009 в 18:27.
dev вне форума   Ответить с цитированием
Старый 21.06.2009, 20:24   #96
Пользователь
 
Аватар для HORSE
 
Регистрация: 06.06.2009
Сообщений: 92
Сказал Спасибо: 31
Имеет 9 спасибок в 8 сообщенях
HORSE пока неопределено
По умолчанию

Цитата:
Сообщение от dev Посмотреть сообщение
Ответ сервера (Megal2.ru) - 3 пакета:

1.Tип: 0x21 (InventoryUpdate): Кол-во оставшихся заточек
Код:
21 01 00 02 00 04 00 D6 4E 04 10 B2 19 00 00 0B 00 00 00 24 01 00 00 05 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF FF FF FE FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
2.Tип: 0x21 (InventoryUpdate): Информация о затачиваемом предмете, с текущим уровнем заточки
Код:
21 01 00 02 00 01 00 56 2D 0B 10 D7 24 00 00 0C 00 00 00 01 00 00 00 01 00 00 00 01 00 00 10 00 00 05 00 00 00 00 00 00 00 FF FF FF FF FE FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
3.Tип: 0x87 (EnchantResult): Текущий уровень заточки предмета
Код:
87 05 00 00 00 05 00 00 00 05 00 00 00
Вопрос:
Ранее для остановки скрипта можно было зацепиться за 0x87, проверить по 0012 d (id предмета), теперь вместо 0012 d отдаёт 000С d (id предмета).

Скрипт выдаёт ошибку:


PHP код:
const
Name='******';   
var  
timer:TTimer;  
x:byte//ii?aaaeaiea, eaeiaa aaenoaea ii n?aoo iu niaa?oaai  

procedure Init;  
begin  
timer
:=TTimer.Create(nil);  
timer.interval:=150;  
timer.OnTimer:=@fireTimer;  
timer.enabled:=true;  
x:=1;//nia?aea o=1  
end;  

procedure Free;  
begin  
timer
.Free;  
end;  

procedure fireTimer(SenderTObject);  
begin  
case x of  
1
:begin  
     buf
:=hstr('5F 48 65 BF 19 00 00 00 00 ');  
     
SendToServerEx(Name);  
     
inc(x);  
   
end;  
2:begin  
     buf
:=hstr('5F 48 65 BF 19 00 00 00 00 ');  
     
SendToServerEx(Name);  
     
x:=1;  
   
end;  
end;{case}
end;

//кусок ниже ты получается влепил в таймер, пришлось расставить еще пару end; и begin;
begin
if FromServer then  
  begin  
    
case pck[1of  
      
#$21: begin //InventoryUpdate  
        
if (ReadD(0C)=9456) and (ReadD(34)=5then timer.enabled:=false;;
      
end;  
end;
end;
end
Забавно то, что при составлении пакета id вещи показывается в 0012 d, но когда пакет приходит с сервера - пх показывает id в 000С d.

В связи с чем скрипт точит не останавливаясь, пока не заканчиваются заточки.

[+] Если установить таймер менее чем на 2500 - вещь временами ломается на +4, при том, что на сервере +4 безопасно.
На МЕГЕ безопасная +3..это во первых...во вторых если я ставлю таймер выше 150 - скрипт не успевает ловить уровень заточик и перетачивает...в третьих - не правильно устанавливаешь ID вещи...теость ты точнул вещь - тебе должен прийти пакет от сервера где будет написано лвл точки, и вещь...там ясно написано ID вещи...скрипт пашет у меня и у моих друзей...но есть какие то немнонятный проблемки...но у меня всё отлично....
Вот выложы мой скрипт со своими данными...и я скажу в чем у тя проблема...
HORSE вне форума   Ответить с цитированием
За это сообщение HORSE нажился спасибкой от:
Старый 22.06.2009, 00:40   #97
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию

Цитата:
Сообщение от dev Посмотреть сообщение
теперь вместо 0012 d отдаёт 000С d (id предмета)
Почитай пр системы счисления: двоичная, десятичная, шестнадцатеричная.
12 в десятичной - это 0С в шестнадцатеричной системе счисления.
PS: загляни в настройки пакетхака, там есть переключатель.
__________________
| Для самых ленивый | Телепаты в отпуске |Мы работаем над этим |
Не умеешь - учись, не хочешь учиться - плати © Суровый Закон Жизни


NLObP вне форума   Ответить с цитированием
За это сообщение NLObP нажился спасибкой от:
Старый 22.06.2009, 05:24   #98
Новичок
 
Аватар для dev
 
Регистрация: 21.06.2009
Сообщений: 5
Сказал Спасибо: 7
Имеет 4 спасибок в 3 сообщенях
dev пока неопределено
По умолчанию

2 NLObP: Сори за тупняк... Ну не вышел из меня программист, учился на дизигнера

2 HORSE: Давно скрипт проверял на работоспособность?)
PHP код:
//Объявление переменных
const
    
Name='dev'//Имя чара   
var  
timer:TTimer//Инициация таймера  
x:byte//Стартовое значение как я понимаю

procedure Init//Вызывается при включении скрипта 
begin  
    timer
:=TTimer.Create(nil); //Создаётся объект таймера
    
timer.interval:=150//Присваиваем значение параметру интервала 
    
timer.OnTimer:=@fireTimer//Вызов процедуры
    
timer.enabled:=true//По умолчанию на момент начала работы скрипта таймер активен 
    
x:=1//Стартовое значение как я понимаю, вот только не пойму... (x:byte; / x:=1;) Что есть что?)
end;  

procedure Free//Вызывается при выключении скрипта 
begin  
    timer
.Free//Кукожим таймер чтоли?) 
end;  

procedure fireTimer(SenderTObject); //...  
begin  
    
case x of  
        1
:begin  
            
//buf:=hstr('5F EC 4C 0B 10 00 00 00 00 '); //Пакет юза энча на нужный предмет
            //Однако В данном случае будут приходить пакеты ошибочного действия
            
buf:=hstr('19 D6 4E 04 10 00 00 00 00 '); //Пакет юза энча
            
SendToServerEx(Name);  
            
inc(x);  
        
end;  
        
2:begin  
            buf
:=hstr('5F EC 4C 0B 10 00 00 00 00 '); //Пакет юза энча на нужный предмет 
            
SendToServerEx(Name);  
            
x:=1;  
        
end;  
end;{case} //Что значит "{case}"?
end;

// Проверка состояния предмета (я взялся точить след. предмет: Серьга Династии (ID:9455))
begin
if FromServer then  
  begin  
    
case pck[1of  
      
#$21: begin //InventoryUpdate  
        
if (ReadD(12)=9455) and (ReadD(34)=5then timer.enabled:=false;; //12 - ID, 34 - уровень энча
      
end;  
end;
end;
end.


// Скрипт не видит конца и продолжает точить, даже если условия (+5) выполнены.
// Пакетов типа 0x21 приходит 2:
// 1 - оставшиеся энчи
// 2 - состояние предмета
// Была мысль, что проблема кроется тут. 
Оффтоп


thx, NLObP, HORSE.

Последний раз редактировалось dev, 22.06.2009 в 20:01.
dev вне форума   Ответить с цитированием
Старый 22.06.2009, 14:43   #99
Пользователь
 
Аватар для HORSE
 
Регистрация: 06.06.2009
Сообщений: 92
Сказал Спасибо: 31
Имеет 9 спасибок в 8 сообщенях
HORSE пока неопределено
По умолчанию

Скриптом точил вчера...всё пашет...
Вот мой скрипт
Код HTML:
const
Name='HORSE'; //сюда свой ник    
var  
timer:TTimer;  
x:byte; 

procedure Init;  
begin  
timer:=TTimer.Create(nil);  
timer.interval:=120; //скорость точки
timer.OnTimer:=@fireTimer;  
timer.enabled:=true;  
x:=1;
end;  

procedure Free;  
begin  
timer.Free;  
end;  

procedure fireTimer(Sender: TObject);  
begin  
case x of  
1:begin  
     buf:=hstr('19 38 97 03 10 00 00 00 00'); //пакет активации точки
     SendToServerEx(Name);  
     inc(x);  
   end;  
2:begin  
     buf:=hstr('5F C7 99 01 10 00 00 00 00'); //пакет заточки вещи
     SendToServerEx(Name);  
     x:=1;  
   end;  
end;{case}
end;

begin
if FromServer then  
  begin  
    case pck[1] of  
      #$21: begin //InventoryUpdate  
        if (ReadD(12)=9426)// ID вещи
 and (ReadD(34)=9)// предел заточки 
then timer.enabled:=false;;
      end;  
end;
end;
end.
Конечно бывает хлапа зависает...но это оч редко...главное всё правильно вписать и ждать счастья...ЗЫ: не советую наймер ниже 150 ставить - опасно для вещи (может переточить)...
HORSE вне форума   Ответить с цитированием
За это сообщение HORSE нажился спасибкой от:
Старый 23.06.2009, 04:11   #100
Новичок
 
Аватар для dev
 
Регистрация: 21.06.2009
Сообщений: 5
Сказал Спасибо: 7
Имеет 4 спасибок в 3 сообщенях
dev пока неопределено
По умолчанию

Код:
const
    characterName='dev';
    itemID=9428; // InventoryUpdate
    enchant=9;
    speed=250;
    
var  
    timer:TTimer;  
    x:byte;

procedure Init;  
    begin  
        timer:=TTimer.Create(nil);  
        timer.interval:=speed;
        timer.OnTimer:=@fireTimer;  
        timer.enabled:=true;  
        x:=1;
    end;

procedure Free;  
    begin  
        timer.Free;  
    end; 

procedure fireTimer(Sender: TObject);  
    begin  
        case x of  
            1:begin  
                buf:=hstr('19 C6 64 D4 10 00 00 00 00'); // UseItem
                SendToServerEx(characterName);  
                inc(x);  
            end;  
            2:begin  
                buf:=hstr('5F FD BC 02 10 00 00 00 00'); // RequestEnchantItem
                SendToServerEx(characterName);  
                x:=1;  
            end;  
        end;{case}
    end;

begin
    if FromServer then  
        begin  
            case pck[1] of  
                #$21: begin // InventoryUpdate
                    if (ReadD(12)=itemID) and (ReadD(34)=Enchant) then timer.enabled:=false;
                end;  
            end;
        end;
end.
Ядро от mks.
Модификация ядра от HORSE.
Конечный продукт от dev.

Enjoy.

Последний раз редактировалось dev, 23.06.2009 в 04:20.
dev вне форума   Ответить с цитированием
За это сообщение dev нажился спасибкой от:
Ответ

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



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

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


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

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

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