Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7

Stealth Version 3.0

User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

итак, передаваемые параметры функций для каждого ивента:

Code: Select all

'Item Info Coming' : [ID]
'Item deleted' : [ID]
'Speech Incoming' : [Text,SenderName,SenderID]
'Draw Game Player' : [ID]
'Move Rejection' : еще не придумал.
'Draw Container' : [ID, ModelGump]
'Add Item To Container' : [ObjID, ContainerID]
'Add multiple Items In Cont' : [ContainerID] 
'Reject Move Item' :[Reason] (1 byte)
'Update Char' : [ID]
'Draw Object' : [ID]
'Menu incoming' : [DialogID,MenuID] (DialogID : Cardinal;MenuID : Word;)
'Map Message' : [ID,centerx,centery]
'Allow/Refuse Attack' [ID,Attack_OK] Attack_OK: Boolean(ID = 0,если Attack_OK = False)
'Cliloc Message' : [SenderID,SenderName,ClilocID,Text] (ClilocID : Cardinal;)
'Cliloc Message Affix' : [SenderID,SenderName,ClilocID,Affix,ClilocText] (Affix : String, ClilocID : Cardinal)
'Unicode Speech message' : [Text,SenderName,SenderID]
'Buff/Debuff System' : [ID,Attribute_ID,IsEnabled] (Attribute_ID : Word;IsEnabled : Boolean;)
'CLIENT send resync' : [] (нет параметров, голый вызов функции)
'Char Animation' : [ID,Action] (Action : Word;)
'ICQ Disconnect' : []
'ICQ Connect' : []
'ICQ Incoming text' : [UIN, Text] (Text : String; UIN : Cardinal)
'ICQ Error' : [Text]
ID, SenderID, ContainerID и прочие ID - все Cardinal.


размышляю над ивентом гампа, наверное тоже сделаю
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

Code: Select all

'Incoming Gump' : [Serial,GumpID,X,Y] (все Cardinal)
'TimerEvent' : еще не придумал :)
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

"для чего этот бред ваще нужен?" (цы)

простой пример - шард с антимакрос-гампами. крафт стоит на макросе (неважно каком). Ему прилетает гамп. Сейчас чар должен постоянно проверять (через каждое действие) наличие гампа, а так он себе возится неспеша, а тем временем ивент на приход гампа сработал, и процедура в скрипте моментально обработает этот гамп и отправит ответ, а основной скрипт ничего и не заметит.

еще один пример - ивент на дисконнект(или ошибку) аси - чтобы отдельно от основного скрипта отслеживать состояние аси, дабы постоянно держать ее в рабочем состоянии.


И так далее, и тому подобное.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

образец скрипта примитивного

Code: Select all

Program Test;

procedure Unicode_Speech(text,SenderName : String; SenderID : Cardinal);
begin
AddToSystemJournal('Event! Unicode Speech: SenderID = $'+ IntToHex(SenderID,8) + ' ; SenderName =  ' + SenderName + '; SenderText : ' + text);
end;

procedure Char_Animation(ID : Cardinal; Action : Word);
begin
AddToSystemJournal('Event! Char Animation: ID = $'+ IntToHex(ID,8) + ' ; Action =  ' + IntToStr(Action));
end;

procedure multiple_Items(ContainerID : Cardinal);
begin
AddToSystemJournal('Event! Add multiple Items In Cont: ContID = $'+ IntToHex(ContainerID,8));
end;

begin
SetEventProc('Unicode Speech message','Unicode_Speech');
SetEventProc('Char Animation','Char_Animation');
SetEventProc('Add multiple Items In Cont','multiple_Items');

while True do
wait(50);
end.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

Code: Select all

'Move Rejection' : [Xorig, Yorig, Dir, XDest, YDest] (все Word)
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
1hp
Neophyte
Neophyte
Posts: 22
Joined: 08.07.2009 13:05

Post by 1hp »

Утечки памяти связаны с меню скилов, тинкера например.
Берем чара с тинкер тулз и запускаем скрипт

Code: Select all

program test;
  begin
  FindType($1EBC, backpack);
  while true do
    begin
    UseObject(findItem);
    end;
  end.
Стелс растет в размере вне зависимости от срабатывания меню, от наличия CloseMenu;, от задержек.

2) При вызове SetAutoBuyMode(false); ругается Compiler: [Error] (palevo.sc at 10:5): Unknown identifier 'SetAutoBuyMode'

3) Почему-то сообщения начинающиеся с "\" UoSay(chr(92)+'hello'); или UoSay(chr(92)+'w Nickname: privet'); не проходят.
CFA
Developer
Developer
Posts: 492
Joined: 20.04.2006 6:03
Contact:

Post by CFA »

Get/SetAutoBuy/SellMode были ликвидированы.
1hp
Neophyte
Neophyte
Posts: 22
Joined: 08.07.2009 13:05

Post by 1hp »

GetShopList(); теперь перемешивает цены, типы, имена, цвета, количество таким образом, что понять логику невозможно. Раньше хоть только реверс надо было сделать, а теперь вообще не понятно как использовать эти данные.
1hp
Neophyte
Neophyte
Posts: 22
Joined: 08.07.2009 13:05

Post by 1hp »

При дисконнекте из скрипта одного из профилей с подсоединенным клиентом, зависают все клиенты подсоедененные к стелсу.

Например на стелсе 2 профиля, к обоим подключены клиенты, в первом работает скрипт, на втором просто бегаешь, в первом происходит вызов disconnect, второй делает несколько шагов и зависает как при сэйве, но уже никогда не отвисает.

Если будет 3 чара с подсоединенными клиентами то зависнут все 3 клиента.
Savage
Neophyte
Neophyte
Posts: 18
Joined: 27.09.2010 5:57
Contact:

Post by Savage »

Почему при использовании клиентмакро, скажем крикнуть бай, селл, гвардов, происходит дисконект стэлса?
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

давно исправлено, где-то в районе версий 3.0.1 - 3.0.3

а баг в том, что в виду особенностей коннекта клиента к стелс_серверу он при клиентских макросах say - отсылал неправильные пакеты.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Savage
Neophyte
Neophyte
Posts: 18
Joined: 27.09.2010 5:57
Contact:

Post by Savage »

3.0.5 и стоит. Клиент 2.0.3. Где покрутить то? Фильтр пакетов что ли?
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

нигде не крутить.

раз еще в силе - стучись в асю, буду пытаться повторить.

на ДРВ 2.0.3 клиент такого бага не имеет.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Wan
Neophyte
Neophyte
Posts: 10
Joined: 25.09.2010 12:21

Post by Wan »

планируется в будущем реализовать запуск скриптов по хоткею? ну что бы совсем от инжи отказаться.
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

в последней версии еще не реализовано и десятой доли возможностей инжекта.

пока я перепиливаю скриптовый модуль, для правильной и безглючной обработки ивентов, как закончу - возьмусь за клиент.

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

нету только времени.
(цы) я

кстати, в перепилке скриптового модуля сильно помогает Fenix
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Post Reply