PDA

Просмотр полной версии : [Скрипт] Скрипт сбор ресурсов/эфира


Tr0y
14.03.2011, 21:19
Скрипт для притягивания любого ресурса к себе
Привет всем!
Сегодня хочу поделится своим скриптом на интересную особенность сбора любого ресурса :ban:

Собирая долго и нудно ресурсы, мне пришло в голову, почему же я должен бегать за этим ресурсом, пусть он сам идет ко мне, ну дело осталось за малым, реализовать сию идею /problem, что и отразилось в мое скрипте ниже. Скрипт перехватывает появление нужного нам ресурса в окружении видимости и меняет его координату на текущую вашу (под ноги).
Когда скрипт притягивает ресурс, он меняет его вид на "пылающий эфир" + меняет его имя на "Папоротник", само "содержимое" остается неизменным.
Принцип работы:
Для начала нужно проверить записан ли нужный нам ид в список "притягиваемого" ресурса в скрипте он следующий:

[ // СПИСОК СОБИРАЕМЫХ РЕСУРСОВ:

400809, // Мэгрим: 265 Интердика
401022, // Пылающий эфир: 375 - Интердика
401021, // Пылающий эфир: 350 - Интердика
401020, // Пылающий эфир: 325 - Интердика
401019, // Пылающий эфир: 300 - Интердика
400810, // Щука: 290 Интердика
400720, // Беш - Ингисон
400719, // Бинан - Ингисон
400414, // Гардения - Ингисон
400619, // Гернита - Ингисон
400017, // Дайкон - Ингисон
401040, // Магический эфир: 475 - Ингисон
401039, // Магический эфир: 450 - Ингисон
400512, // Носфе - Ингисон
400018, // Ромейн - Ингисон
400812, // Тетра - Ингисон
400325, // Кельфарат - Ингисон
400906, // Фенес - Ингисон
400618, // Эоде - Ингисон
400110 // Ядовитый газ - Ингисон

];


Список ид можно легко подглядеть вот тут ([Ссылки могут видеть только зарегистрированные и активированные пользователи]). Например нам нужно добавить Рубин ([Ссылки могут видеть только зарегистрированные и активированные пользователи]рубин?id=400310), смотрим в строку адреса браузера и видим последнюю цифру, в данном случае она равна 400310. И просто полдставляем между строк 400310, получится вроде такого:

[ // СПИСОК СОБИРАЕМЫХ РЕСУРСОВ:

...
400906, // Фенес - Ингисон
400618, // Эоде - Ингисон
400110, // Ядовитый газ - Ингисон
400310 // Рубин - Интердрика

];


КОгда скрипт готов, включаем его и немного сдвинемся/пробежим, для обновления Ваших координат, чтобы скрипт их запомнил, запоминается последняя координата.
Теперь лезем в соц. действия и вытаскиваем на панельку "Приклонить колени", при нажатии на которые окружающая обстановка на миг пропадет и появится, таким образом скрипт узнает об весх окружающих его объектах. И после этого действия должны появится под ногами светящиеся сферы пылающего эфира, пробуем собрать их... (годится для игроков выше 9 лвл с профессией).

В игре достаточно сделать простой игровой макрос вида:

/выбор Папоротник
/умение Эфирокинез


Для полной автоматизации сбора использую кликер AutoHootkey ([Ссылки могут видеть только зарегистрированные и активированные пользователи]), т.к. он очень гибкий и функциональный. Пример скрипта для кликера я бросил ниже. Там кликер жмет с 3 секундным интервалом Alt+1 или она же 1 ячейку 2 панельки в Айон (смотрите help ([Ссылки могут видеть только зарегистрированные и активированные пользователи]) кликера)
ПРимер моего скрипта кликера заранее кинул в каждый из архивов.

Скрипт работает по принципу "включил и используй"

Адаптирован для 2.0 и 2.1

Тыкаем спс, так я вижу кому помог или понравилась сама идея :elefant:

svicher
15.03.2011, 12:50
Идея отличная! Насколько она безопасна от БАНА? И можно ли создать скрипт сразу со всем списком существующих ресурсов чтобы не заморачиваться (для чайников).
И я не понял как его (скрипт) в игру запихнуть?

Tr0y
15.03.2011, 13:11
Сбор идет стандартным способом, пакеты процесса сбора скриптом не модифицируются, модифицируется только расположение самого ресурса локально ТОЛЬКО у Вас в клиенте.
Анимации сбора нету, у остальных вы внешне просто стоите на месте как обычно.

Уже месяц пользуюсь бана не было, да и за что ему быть?) Сбор идет как обычно )
Траффик проверял, пакеты идут стандартные как при обычном сборе.

Должен работать на многих фри, если не на всех. С кликером можно добить полной автоматизации процесса. Скрипт кликера я кинул в архив, он жмет на Alt+1 даже в неактивное окно, т.е. можно смотреть кино, пока идет сбор или быть в афк.

Размер списка ничем не ограничивается, можно вписать все виды, но с практической точки зрения и производительности, лучше все же чтобы список не был более 10 элементов. Лишние ид ресурсов можно просто закоментировать, например нам не нужно собирать "Тетра" и "Бинан", тогда мы строку с тетерой/бинаном закомментируем вот так:

[ // СПИСОК СОБИРАЕМЫХ РЕСУРСОВ:

400809, // Мэгрим: 265 Интердика
401022, // Пылающий эфир: 375 - Интердика
401021, // Пылающий эфир: 350 - Интердика
401020, // Пылающий эфир: 325 - Интердика
401019, // Пылающий эфир: 300 - Интердика
400810, // Щука: 290 Интердика
400720, // Беш - Ингисон
// 400719, // Бинан - Ингисон
400414, // Гардения - Ингисон
400619, // Гернита - Ингисон
400017, // Дайкон - Ингисон
401040, // Магический эфир: 475 - Ингисон
401039, // Магический эфир: 450 - Ингисон
400512, // Носфе - Ингисон
400018, // Ромейн - Ингисон
// 400812, // Тетра - Ингисон
400325, // Кельфарат - Ингисон
400906, // Фенес - Ингисон
400618, // Эоде - Ингисон
400110 // Ядовитый газ - Ингисон

];

Когда они нам снова понадобятся, нужно всего навсего убрать первые // , для того чтобы скрипт увидел данную строку. ПОдробнее об синтаксисе ObjectPascal см. в рунете... Я тут обучать программе 11 класса никого не буду )

svicher
15.03.2011, 13:58
Прости за глупый вопрос я вообще зашел первый раз на подобного рода сайт и плохо ориентируюсь, может скрин кинеш куда вводить тело скрипта???

[ // СПИСОК СОБИРАЕМЫХ РЕСУРСОВ:
400325, // Кельфарат - Ингисон
400906, // Фенес - Ингисон
400618, // Эоде - Ингисон
400110 // Ядовитый газ - Ингисон
];

Да и еще я на официальном серваке.

Tr0y
15.03.2011, 14:50
куда вводить тело скрипта???

Да и еще я на официальном серваке.

Прикрепленные скрипты для программы l2px, вам сюда ([Ссылки могут видеть только зарегистрированные и активированные пользователи])

svicher
15.03.2011, 21:10
[// СПИСОК СОБИРАЕМЫХ РЕСУРСОВ:
эта строка подсвечивается красным скрипт незапускается

korit
17.03.2011, 23:09
кто то запустил етот скрипт на легенде ?

ceutap
18.03.2011, 11:28
не че не работает проверил на 3 сервах ваще не катит че то

Добавлено через 3 минуты
хотябы нафиг продробно обянил где как и че им пользоваться.... че тупо на мечте стоять или как? кликером и макросом пользуюсь....

Drelann
18.03.2011, 12:53
хы хы, отличная идея. кое где работает :pirate:
когда входишь - не видишь ни одного реса, жамкаем приседалочку - появляется наш псевдо папоротник ([Ссылки могут видеть только зарегистрированные и активированные пользователи]), начинаем сбор :pandal:
ПАРУ ВОПРОСОВ. что видят окружающие? если собираемый тобой ресурс рядом/далеко (что с персом происходит)?! и еще - какая дальность телепорта ресов?
ФИКС: Infinite (дисконектит)
PS сборка ресов происходит по списку (сверху вниз) =D

PSS на легенде ничего не происходит - в чем проблемы? (использовался скрипт 2.1)

ceutap
19.03.2011, 23:31
Теперь лезем в соц. действия и вытаскиваем на панельку "Приклонить колени", при нажатии на которые окружающая обстановка на миг пропадет и появится, таким образом скрипт узнает об весх окружающих его объектах. И после этого действия должны появится под ногами светящиеся сферы пылающего эфира, пробуем собрать их...



все сделал как тут написано и не чего не появляется... пробывал на планете, виндете, на ньюшке, на уа и даже на зарубежных че делать ваще не парю

speran
20.03.2011, 17:03
А можно так сделать.
Сейчас у нас перс стоит и всё, что попадает в зону прогрузки, переносится под ноги.
А если сделать так.
В первом окне стоит перс, во втором окне другой перс бежит по пути, где есть нужный ресурс и всё что попадает в зону прогрузки, переносится под ноги персу в первом окне, который стоит.
Так можно будит со всей карты ресы быстро перенести по ноги и стоять собирать.))))

Никита1234
21.03.2011, 10:15
народ пожалуйста разжуйте мне что к чему, есть похожая тема [Ссылки могут видеть только зарегистрированные и активированные пользователи]
кто нибудь сможет так же разжувать как там?

hand0
17.04.2011, 21:20
67 57 04 это что за пакет? как его отловить если он изменен?

Tr0y
18.04.2011, 08:41
67 57 04 это что за пакет? как его отловить если он изменен?

Его посылает клиент при телепортации, эффект: персонаж исчезает и появляется на мгновение, перезагружается окружающая обстановка (все виды объектов: НПС, игроки, ресурсы и т.д.).
Как я писал выше, этот пакет можно заменить простым релогом с включенным скриптом при заходе.
В скрипте идет считывание появляющихся ресурсов, когда вы врубаете скриптик и около вас валяется ресурс, то скрипт ессно не знает, что около вас уже есть ресрс, т.к. данные о том, что он там есть, не приходили от сервера и хлап их не видел...

Вышеописанный пример, но для "блондинок":brberbrb:: в ванной стоит стакан с зубной щеткой, вам нужно взять щетку, но в ванной темно и ничего не видно. ЧТО нужно сделать?) Правильно, включить свет ) ВОт тут также, скрипт при включении видит "темную комнату", а когда мы шлем этот пакетик мы "включаем свет" и мы уже видим, что там и там есть нужным ресурс... А кликер "берет зубную щетку" (ака собирает ресурс)

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

По моему понятно... ;)

hand0
19.04.2011, 09:32
Понятно да. непонятно было про пакет тп. там где я играю этот пакет не измененный, при пт уходит на серв, но при его отправке из л2пх ничего не происходит, поэтому и спросил. Можно релог не делать, отбежать подальше и вернуться. Спс за скрипт, оч оригинальные и идея и исполнение.

tatarich
21.04.2011, 15:38
как узнать id

Добавлено через 2 минуты
например большая частица эфира)

Добавлено через 2 часа 8 минут
{************************************************* ************************************************** ****************************
Скрипт для сбора любого типа ресурсов в Айон от TR0Y ©

Принцип действия: Меняет координату появления ресурса, заменяя ее на координату текущего месторасположения пресонажа.
Данное изменение происходить ТОЛЬКО в клиенте игрока, на сервере и остальных игроков ресурс распологается на стандартном месте
появления данного ресурса. При сборе нет анимации сбора ресурса.
Притягиваемый ресурс принимает вид из константы значения "GatherModelID" с названием значения "GatherNameID"
Если нужно временно исколючить ресурс из списка, поставьте перед его ID 2 знака деления: // - это называется
"комментарий", все что идет за ними в этой строке, является комментарием, программа их не обрабатывает, т.е. не "видит"
Для версии Aion 2.1
Версия: 1.1
Дата: 13.03.11
************************************************** ************************************************** ****************************}
const // список константа
GatherModelID=409002; // ID модели ресурса (внешний вид притягиваемого ресурса)
GatherNameID=743753; // ID названия ресурса (название ресурса) - Папоротник
FindTypeGeater= // ID СОБИРАЕМЫХ типов ресурсов

[ // СПИСОК СОБИРАЕМЫХ РЕСУРСОВ:

401011, // Большая частица эфира: 100 - Элтенен
401022, // Пылающий эфир: 375 - Интердика
401021, // Пылающий эфир: 350 - Интердика
401020, // Пылающий эфир: 325 - Интердика
401019, // Пылающий эфир: 300 - Интердика
400810, // Щука: 290 Интердика
401010, // Маленькие частицы эфира: 75 - Элтенен
400719, // Бинан - Ингисон
400414, // Гардения - Ингисон
400619, // Гернита - Ингисон
400017, // Дайкон - Ингисон
401040, // Магический эфир: 475 - Ингисон
401039, // Магический эфир: 450 - Ингисон
400512, // Носфе - Ингисон
400018, // Ромейн - Ингисон
400812, // Тетра - Ингисон
400325, // Кельфарат - Ингисон
400906, // Фенес - Ингисон
400618, // Эоде - Ингисон
400110 // Ядовитый газ - Ингисон

];

var // список переменных
myX,myY,myZ, // мои координаты
CurrentTargetID, // текущий ид таргета
TypeResID,i // тип ресурса
: integer;
values : array [0..100] of variant; // Считываем значения из пакета
tick: integer;

function Pause(Timewait: Integer):Boolean; // сквозная проверка без остановки скрипта
var t : integer;
begin
result:= false;
t:= Round(Time*86400);
if t>(tick+Timewait) then
begin
tick:= t;
result:= true;
end;
end;

procedure Init; //Вызывается при включении скрипта: инициализация переменных
begin
CurrentTargetID:=0;
myX:=0;myY:=0;myZ:=0;
tick:=0;
TypeResID:=0;
end;

procedure Free; //Вызывается при выключении скрипта: выгружаем память
begin

end;

procedure NewCoordSpawnGather;
var i: byte;
begin
// Создаем пакет с новыми координатами выделенного объекта
if (CurrentTargetID>0)AND(GatherModelID>0)AND(GatherNameID>0) then
begin
buf:=HStr('2E 54 CD');
WriteD(myX);
WriteD(myY);
WriteD(myZ);
WriteD(CurrentTargetID);
WriteD(0);
WriteD(GatherModelID);
WriteC(1);WriteH(0);
WriteD(GatherNameID);
WriteD(0);WriteH(0);WriteC(100);
SendToClient;
end;
end;

procedure CorrectCoordinatGeater(ObjID, TypeID, NameID: integer);
begin
TypeID:=GatherModelID; // Все в виде GatherModelID
NameID:=GatherNameID; // Все с именем GatherNameID
if (ObjID>0)AND(TypeID>0)AND(NameID>0) then
begin
buf:=HStr('2E 54 CD');
WriteD(myX);
WriteD(myY);
WriteD(myZ);
WriteD(ObjID);
WriteD(0);
WriteD(TypeID);
WriteC(1);WriteH(0);
WriteD(NameID);
WriteD(0);WriteH(0);WriteC(100);
SendToClient;
pck := '';
end;
end;

//основная часть скрипта
//вызывается при приходе каждого пакета если скрипт включен
BEGIN //************************************************** ************************************************** *****************

If pck='' then exit; //Не обрабатываем пустые пакеты

try

if FromClient then
case pck[1] of
// id x y z ?
#$9E: // перемещение персонажа Пример: 9E * *|30 55 3B 45|55 48 19 45|6C D9 4F 42|6E 00 для 2.1
begin
ReadMask('hddd',2,values);
myX:=values[1];
myY:=values[2];
myZ:=values[3];
end;

#$B5: // таргет, начинается на B5 57 72... (Например: B5 57 72 D5 D9 11 00 00 , где "D5 D9 11 00" - ид цели) для 2.1
begin
CurrentTargetID:= ReadD(4);
end;

#$C9: // C9 57 66 для 2.1
begin
if ((pck[4]=#$15)And(pck[5]=#$05)) then // Соц. действие "показать пальцем"
begin
NewCoordSpawnGather;
pck := '';
end;
if ((pck[4]=#$15)And(pck[5]=#$12)) then // Соц. действие приклонить колени
begin
buf:=HStr('67 57 04'); // ТПшимся, обновляем обстановку
SendToServer;
pck := '';
end;
end;

end; // case FromClient

//----------------------------------------------------------------------------------------------------------------------------

if FromServer then // от сервера
case pck[1] of

#$2E:
if ((pck[2]=#$54) and (pck[3]=#$CD)) then // Пришел пакет на спавн 2E 54 CD для 2.1
begin
TypeResID:= ReadD(24);
for i:=0 to Length(FindTypeGeater) do
if (TypeResID = FindTypeGeater[i])then
begin
ReadMask('hddddddcccd',2,values); // считываем байты по маске
CorrectCoordinatGeater(values[4],values[6],values[10]); // Вызываем процедуру коректировки координат ресурса
end;
end;

end; // case FromServer

//----------------------------------------------------------------------------------------------------------------------------

except
// тут обрабатываем возможное исключение/ошибку при выборе ид пакета
end;

end.

Добавлено через 2 часа 12 минут
я правильно поставил?

Rick7
24.04.2011, 11:16
эт конечно круто, но незя как то замутить чтоб притянуть персонажа к себе?
что то в роде призыв члена группы как у закла

blekkill
26.04.2011, 20:10
Всё сделал как написано; появлятся, появляется но собрать не могу пишит не возможно использовать предмет. Даже в 5м находится ресурс всё равно не собирает. пытался изменить папоротник с эфиром встовлял из списка ID эоде появляется вообше другая трава.

Если на сервере проверяется дистанция ресурса и вас, то собирать ничего не будет...: если по этому, то почему этот скрипт работает и с 20м: тема [Ссылки могут видеть только зарегистрированные и активированные пользователи]

народ подскажите плиз

Tr0y
27.04.2011, 08:43
blekkill, tatarich, вас должны лишь интересовать константы:
const // список констант
GatherModelID=409002; // ID модели ресурса (внешний вид притягиваемого ресурса)
GatherNameID=743753; // ID названия ресурса (название ресурса) - Папоротник
FindTypeGeater= // ID СОБИРАЕМЫХ типов ресурсов
GatherModelID - если поменять эту цифру на свою, то внешний вид "притягиваемого" ресурса изменится, эта опция "косметическая", на работу не влияет.
GatherNameID - отвечает за название притягиваемого ресурса (чтобы для каждого не писать макрос), ресурсу присваивается новое название, в моем случае "Папоротник", эта опция "косметическая", на работу не влияет.
FindTypeGeater - это массив ид собираемых ресурсов скриптом, скрипт последовательно сравниваем найденный им появление ресурса и елси оно совпадает с одним из элементов этого массива, то "притягивает" к вам, меняя его вид и название, оставляя "содержимое" неизменным. Данную опцию следует менять на свой "вкус", она как раз и отвечает за тот вид "притягиваемо" ресурса.
В виде "бонуса" в макросе вшита еще процедура притягивания, выделяете ресурс, нажимаете соц. действие "указать пальцем" и выделенный ресурс притягивается.

ЗЫ прошу не задавать глупых вопросов и читать внимательно первый пост, скрипт все еще актуален на моей фришке. Если вы не в состоянии пользоваться такими скриптами, возможно он кажется сложным на первый взляд, хотя он по работе довольно простой, прошу его не использовать и всем будет проще жить -)

Если на моем серваке поставят проверки я попытаюсь написать скрипт-обход ну или бота, мне это не так сложно сделать.

Inako
28.04.2011, 21:13
Благо читать умею но всё же встретился с проблемой. Сервер - NewAion; Ошибка - при нажатии конпки выполнения скрипта ничего не происходит. Ошибок никаких не выбивает но действий так же нету. Пользуюсь следующим пх [Ссылки могут видеть только зарегистрированные и активированные пользователи]
Так пх работает, ловил пакеты, работал с ними но почему-то Ваш скрипт не хочет выполнять

pwigra113
30.04.2011, 22:26
Скрипт рабочий, спасибо)

zeaglot
02.05.2011, 22:49
с сегодняшнего дня с этим скриптом тпшимся на месте не работает командой 67...
незнаю почему(

Inako
08.05.2011, 10:36
Нашел свою ошибку и теперь всё работает=) Для тех кто не знает, скрипт нужно открывать в разделе Автоматизация--->Скрипты дальше открываем скачаный скрипт и напротив его названия ставим галочку(в правой колонке) тем самым он активируеться. Очень таки полезный бот за что автору огромнейшая благодарность (как только наберу мессагов обязательно тыкну). Единственная проблема что после приседания персонаж продолжает мигать и при сборе эфира рука собирает пыль из воздуха что есть немножко палевным...

=CLOSED=
08.05.2011, 12:03
Как нажимаю на эмоцию тут же рвётся соединение, что нужно исправить?

warlock9
08.05.2011, 17:49
пасибо огромное-скрипт супер

Inako
08.05.2011, 19:13
Заметил даже такое что этот скрипт позволяет собирать и эфир находясь на земле. Процедура та же, главное найти нужный ID эфра, а то для каждой локации он свой. Сначало думал что он только для ресов, а сеня опробовал и всё пучком ^_^

Drelann
08.05.2011, 20:18
вы хотя бы посмотрите на пакеты - они не везде одинаковые...

Inako
08.05.2011, 22:23
Эмм... Автор это, кста, продумал и создал 2 вида скриптов, под 2.0 и 2.1. Там же в коде есть алгоритм выбора нужных пакетов, т.е. в самом скрипте нету полных пакетов его сервера, что позволяет адаптировать сию разработку под любой сервер.

pwigra113
09.05.2011, 10:43
Заметил даже такое что этот скрипт позволяет собирать и эфир находясь на земле. Процедура та же, главное найти нужный ID эфра, а то для каждой локации он свой. Сначало думал что он только для ресов, а сеня опробовал и всё пучком ^_^

ID у предметов сбора не зависит от локации, к примеру 400312 //Алмаз, вбиваешь и собираешь независимо от того, в какой локации.
P.S. Главное чтобы ресы, которые вы собираете, были в окружающей вас зоне. Тогда они будут тпшиться прямо вам под ноги)

Inako
09.05.2011, 12:25
ID у предметов сбора не зависит от локации, к примеру 400312 //Алмаз, вбиваешь и собираешь независимо от того, в какой локации.
P.S. Главное чтобы ресы, которые вы собираете, были в окружающей вас зоне. Тогда они будут тпшиться прямо вам под ноги)

Зависит, еще как зависит. Я убил минут 20 пока лазил по сайбу-бд что б найти ID Осколка эфира который паарит над Интердерикой! Оказываеться там было их несколько и поэтому пришлось перебирать... Бывает такое что в одной локе может находиться один ресурс но с несколькими ID

OsacurO
10.05.2011, 14:11
Шикарно работает. Автору большое спасибо.
Так же возникла идейка))
А что если поменять вид и ИД на какого нить моба и подтаскивать его... Ведь на сервере он так и будет где был , а у нас мы его подтянем и будем дамагать, и например оттянуть так далеко чтоб сам оригинал вообще не агрился. По идее суть та же только по нам дамаг не должен проходить.
Так же если сработает то можно будет использовать под аое боссов. Пока танк держит можно отойти подальше и подтянуть к себе и дамажить спокойненько) Пакеты будут идти на сервер - с дамагом , а с клиента в свою очередь текущее положение нас и в этом случае АОЕ от босса территориально нас не задевает.

Но я не проверял. Проверю отпишусь, если кто то проверит раньше делитесь впечатлениями или критикой где я откровенно оплошал. Осваивать пхикс начал только сегодня)

speran
04.06.2011, 15:41
Можно узнать,раньше он работал, а теперь вижу ресурс и айди его вбил, а притянуть не притягивает.Либо бывает что притянет жму собрать а от него вообще ни каких действий и сообщений.
вот та часть скрипта, хочу собрать в кельке пылающий эфир который есть рядом со входом в каспар.
const // список константа
GatherModelID=409002; // ID модели ресурса (внешний вид притягиваемого ресурса)
GatherNameID=743753; // ID названия ресурса (название ресурса) - Папоротник
FindTypeGeater= // ID СОБИРАЕМЫХ типов ресурсов

[ // СПИСОК СОБИРАЕМЫХ РЕСУРСОВ:

401078


];

var

Добавлено через 10 часов 31 минуту
Троооой спасай от задротства, в сборе ресов.

Добавлено через 20 часов 56 минут
Что никто не поможет????Или сюда уже не заходят?

Tr0y
07.06.2011, 13:31
На некоторых серверах фикс (предпроверка расстояния до ресурса и персонажа), пока мало играю, если найду модификацию, сюда выложу сразу.

Fantme
19.07.2011, 17:39
реально спс) просек фишку) уже собираю втором сервере в топе 2.5 Есть кое какие изменения но вцелом не критично. Сейчас пытаюсь переписать на авто притягивание ресурсов. В 2.5 структура самого Gather_info чуть изменилась. Автору однозначно спс. Не думали что таким способом можно окружающий мир под себя подстраивать? убирать двери, преграды? Пока только научился стоять на воздухе, правда если хоть шевельнутся перс падает =( Но вобщем этот баг это только начало ;)

MrkObE$
08.08.2011, 18:25
Может кто выложить скрипт на 2,5 желательно на легенду можно в ПМ.....

Saladina
08.08.2011, 20:55
На 2.5 есть рабочие?

Fantme
08.08.2011, 21:27
конечно)

kviki1990
08.08.2011, 22:17
на Финале этот скрип уже не пашет, но есть идея для нового скрипта. сам пробовал писать, но почему-то не пашет так, как мне хочется.
Идея следующая: шлю пакет на обновление 67 57 04 и если Гезер_инфо, то дописываю этот ресурс в массив. потом при, например, автотаргете с этого пакета беру координаты ресурса и его айди. Шлю пакеты CM_Move + Target_Select + Gather.
Проблема в том, что иногда вылетает клиент и персу сносится некоторое к-ство ХП.
var i,j:integer;
var x, y, z, id: array[1..200] of integer;

procedure Init; //Вызывается при включении скрипта
begin
i:=0;
j:=0;
end;

procedure Free; //Вызывается при выключении скрипта
begin

end;

//основная часть скрипта
//вызывается при приходе каждого пакета если скрипт включен
begin
//if GATHERABLE_INFO
if (FromServer and (pck[1]=#$2E)) then begin
i := i + 1;
x[i] := ReadD(4);
y[i] := ReadD(8);
z[i] := ReadD(12);
id[i] := ReadD(16);
end;
//if self-select(свой у каждого)
if (pck = Hstr('B5 57 72 4D 00 06 00 00'))and(i>0) then begin
//making packet CM_MOVE
buf := HStr('9E 57 5D');
WriteD(x[i]);
WriteD(y[i]);
WriteD(z[i]);
buf := buf + #$36 + #$00;
SendToServer;
buf:=HStr('67 57 04');
SendToServer;
//making packet CM_Target_SELECT
buf := HStr('B5 57 72');
WriteD(id[i]);
buf := buf + #$00;
SendToServer;
//packet CM_GATHER
buf := HStr('C1 57 7E 00 00 00 00');
SendToServer;
j:=j+1;
if(j=3)then begin
j:=0;
i:=i-1;
end;
end;
end.