Просмотр полной версии : заточка шмота.
SyMaSvoD
11.07.2009, 14:11
видел тут у вас на сайте скприпт на заточку шмота. Так то скприпт пашет,, но есть одно "НО". Что делать если ID точек постоянно разные?? что делать? может кто подскажет? или уже есть подобный скрипт. тут искал не нашел... Если что не так приношу свои извинения:)
Что делать если ID точек постоянно разные
конкретнее
SyMaSvoD
11.07.2009, 19:33
ну когда точки покупаешь в ГМ шопе. и смотрим через пакет какой ID у точки, то у каждой точки свой ID. как будто они постоянно рандомно меняються...
боже мой.... какой идиот... это не тот ID
Открой файд itemname-e.dat и там найди по названию свой скрол, рядом с ним будет его ID
SyMaSvoD
12.07.2009, 01:06
ну вот в скрипте используеться пакет для активации точки... ну почему то этот пакет..постоянно менеятьяся...и если что я смотрел там пишеться ИД постоянно разный..и не надо меня обвинять что я тупой.. я так думаю просто на серве защита стоит от автозаточки
ItemID и ObjectID разные вещи.
Вот подробное описание:
by Sauron
Все о пакетах lineage2. Только о них.
Любой предмет находится на сервере и только на нем.
Клиент только отображает то, что происходит на сервере, а так же передает ваши желания, что вы хотите сделать (идти, атаковать, выбросить предмет) а сервер уже принимает решение на основании информации находящейся ТОЛЬКО на сервере.
ItemID предмета - это грубо говоря номер предмета из списка, с описанием его характеристик. Это не 'физический' предмет, это только описание вида предмета.
ObjectID предмета - это некий назначенный номер 'физически' присутствующего предмета на сервере, клиент потом оперирует этим предметом с сервером посредством этого ObjectID.
Этот ObjectID клиент получает от сервера по спискам (отдельными пакетами, либо списком - не важно) где проходит информация о предмете и его назначенный ObjectID.
ObjectID назначается сервером, и меняется от сессии к сессии , а иногда и в процессе сессии (изменения/улучшения предмета).
ObjectID игровых, либо не игровых персонажей (PC, NPC) -
это тоже самое, назначенный сервером некий ObjectID по которому в последствии клиент и оперирует персонажем с сервером.
Все остальное действительно как и с ObjectID предметов.
SyMaSvoD
12.07.2009, 14:58
боже мой.... какой идиот... это не тот ID
Открой файд itemname-e.dat и там найди по названию свой скрол, рядом с ним будет его ID
Фаил про который ты говоришь, я нашел. но он зашифрован. как открыть и просмотреть IDпредмета.
Добавлено через 1 час 17 минут
Все я разобрался где ID предмета. но вот скприпте используеться пакет на юзанье энчата и пакет юзанье энчата на предмет. но ведь эти пакеты всегда разные....что делать??
скприпт вот:
// Ядро от mks.
// Модификация ядра от HORSE.
// Конечный продукт от dev.
// http://coderx.ru/showthread.php?t=1684
// Настройики
const
characterName='SyMaSvoD'; // Имя персоонажа
useEnchant=hstr('14 C6 E5 15 10 00 00 00 00'); // [0x19 (UseItem)]
requestEnchant=hstr('58 D1 59 27 10'); // [0x5F (RequestEnchantItem)]
itemID=889; // ID предмета [0x21 (InventoryUpdate)]
enchant=11; // До сколько скрипт должен заточить указанный предмет
speed=150; // Скорость заточки
start=2; // Соц. действие hello, запускает скрипт
stop=3; // Соц. действие victory, остонавливает скрипт
// Ниже ничего можно не трогать
var
timer:TTimer;
x:byte;
procedure Init;
begin
timer:=TTimer.Create(nil);
timer.interval:=speed;
timer.OnTimer:=@fireTimer;
timer.enabled:=false;
x:=1;
end;
procedure Free;
begin
timer.Free;
end;
procedure fireTimer(Sender: TObject);
begin
case x of
1:begin
buf:=useEnchant;
SendToServerEx(characterName);
inc(x);
end;
2:begin
buf:=requestEnchant;
SendToServerEx(characterName);
x:=1;
end;
end;{case}
end;
begin
if FromClient then
begin
case pck[1] of
#$34: begin
if (ReadD(2)=start) then timer.enabled:=true;
if (ReadD(2)=stop) then timer.enabled:=false;
end;
end;
end;
if FromServer then
begin
case pck[1] of
#$21: begin
if (ReadD(12)=itemID) and (ReadD(34)=Enchant) then timer.enabled:=false;
end;
end;
end;
end.
Global File Editor (http://depositfiles.com/files/teh9u1xz3)
Под все хроники подходит...
SyMaSvoD
12.07.2009, 14:58
и вот еще один скрипт тоже где используються пакеты.
const
Name='SyMaSvoD'; //сюда свой ник
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('14 5F E5 15 10 00 00 00 00'); //пакет активации точки
SendToServerEx(Name);
inc(x);
end;
2:begin
buf:=hstr('58 D1 59 27 10'); //пакет заточки вещи
SendToServerEx(Name);
x:=1;
end;
end;{case}
end;
begin
if FromServer then
begin
case pck[1] of
#$21: begin //InventoryUpdate
if (ReadD(12)=889)// ID вещи
and (ReadD(34)=10)// предел заточки
then timer.enabled:=false;;
end;
end;
end;
end.
Первый от части работает, а вот второй скрипт вообще не пашет. Если что сервер Интерлюдия
Меняется только пакет на использывание точек, поскольку у каждой следующей точки будет разный ID в рюкзаке, а пакет на использывание точки на предмет не меняется поскольку предмет не исчезает и не появляется и его никто не перемещает по сумке, следовательно его ID в рюкзаке не меняется
SyMaSvoD
12.07.2009, 15:04
ты скажу толком что нужно сделать:) а то я чтото не догоняю(((
учится, это точно)
а лучше возьми скрипт от NLObPa) он проще в управлении и дырок меньше
SyMaSvoD
12.07.2009, 15:08
я понимаю что пакет на юзанье энчата на предмет не меняться. а вот пакет юзанье эначата меняться..как тут быть? кстати ошибся там наооборот второй скрипт пашет а первый нет
Добавлено через 1 минуту
учится, это точно)
а лучше возьми скрипт от NLObPa) он проще в управлении и дырок меньше
этот скрипт вообще не пашет... все делал как в инструкции написано
SyMaSvoD, значит остается только вариант "Учится" потому что у всех все пашит
SyMaSvoD
12.07.2009, 15:12
кстати ну можешь что нибудь преложить на счет тех 2-х скриптов? как решить там проблему? с пакетом юзанья энчата?
я без понятия, если чесно, как автор вообще предпологал что оно будет пахать))) так что идей 0)
SyMaSvoD
12.07.2009, 15:26
я уже весь мозг вынес себе(( пост" Автозаточка быстро и сердито" брал вот от туда скрипт. и не фига па пашет. делал соц. действие и нечего. он головой машет, а нечего не происходит((
еще раз говорю бери скрипт от NLObP v.2
SyMaSvoD
12.07.2009, 15:34
если можно скинь пожалуйста ссылку..а то я скачал старая вермя 0.7
убейте его кто то!
Зайди в файловый раздел форума и там все скачай!ппц! Или иди гуугли
SyMaSvoD
12.07.2009, 15:39
ыыы))) я же сумасвод))))
SyMaSvoD
12.07.2009, 15:50
блин нету там!! посмотрю сам... ток версия 0.7, версии 2. нету. если так дай ссылку что она там есть
bakazaka
13.07.2009, 21:36
подскажите плиз,у меня в списке соединений не пишется ник чара что мне делать? сильно не ругайтесь прогой пользуюсь первый раз....(((
Так, все, надоело, bakazaka, бан неделя. ПОдумай над своим поведением.
QaK, спасибо! спаситель ты мой!)))) он мне надоел уже))))
vBulletin® v3.6.11, Copyright ©2000-2024, Jelsoft Enterprises Ltd. Перевод: zCarot