Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7
Проблема с тайлами
-
- Novice
- Posts: 130
- Joined: 06.05.2008 18:03
Проблема с тайлами
Хоть убейте, не могу грязные бинты в воде (луже/море) помыть с помощью стелса.
Перепробовал WaitTargetTile, WaitTargetXYZ, TargetToTile, TargetToXYZ.
Выскакивает таргет и ничего не происходит.
Пробую с работающим клиентом.
Перепробовал WaitTargetTile, WaitTargetXYZ, TargetToTile, TargetToXYZ.
Выскакивает таргет и ничего не происходит.
Пробую с работающим клиентом.
Проще научить человека ловить рыбу, чем постоянно ею его кормить. (с) Destruction
-
- Novice
- Posts: 130
- Joined: 06.05.2008 18:03
Вот для примера метод добычи в указанных координатах:Этот метод великолептно работал на версии 3.0, а вместе с ним и TargetToTile.
Code: Select all
procedure Mine(X, Y: Integer);
var
StaticData: TStaticCell;
Tile: Word;
Z: ShortInt;
Finded: Boolean;
Counter: Byte;
StartTime: TDateTime;
i: Integer;
begin
Finded := False;
StaticData := ReadStaticsXY(X, Y, WorldNum);
for i := 0 to StaticData.StaticCount - 1 do begin
if i >= StaticData.StaticCount then Break;
if (GetTileFlags(2, StaticData.Statics[i].Tile) and $200) = $200 then begin
Tile := StaticData.Statics[i].Tile;
Z := StaticData.Statics[i].Z;
Finded := True;
Break;
end;
end;
CheckState();
while Finded do begin
if Dead or not Connected then Exit;
if TargetPresent then CancelTarget;
while not CheckMiningTool do begin
if Dead or not Connected then Exit;
CreateMiningTools;
end;
CheckLag(LagWait);
Wait(WaitTime);
UseObject(MiningTool);
CheckLag(LagWait);
WaitForTarget(WaitTime);
if TargetPresent then begin
StartTime := Now;
TargetToTile(Tile, X, Y, Z);
Counter := WaitCycles;
Finded := False;
while (not Finded) and (Counter > 0) do begin
CheckLag(LagWait);
if InJournalBetweenTimes('t mine there|is too far away|cannot be seen|is no metal here to mine', StartTime, Now) > 0 then Exit;
if InJournalBetweenTimes('put it in your backpack|loosen some rocks but fail to find any useable ore|have worn out your tool', StartTime, Now) > 0 then Finded := True;
if Not Finded then Wait(200);
Dec(Counter);
end;
CheckState();
end;
end;
end;
Помните – ничто так не защищает ваши зубы 12 часов днем и 12 часов ночью как уважительное отношение к окружающим.
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
-
- Novice
- Posts: 130
- Joined: 06.05.2008 18:03
Да, я перепробовал множество вариаций клика по тайлу из многих скриптов, от мининга, фишинга, ламбера, суммона и пр. но не помогло.Fenix wrote:Вот для примера метод добычи в указанных координатах:Этот метод великолептно работал на версии 3.0, а вместе с ним и TargetToTile.Code: Select all
procedure Mine(X, Y: Integer); var StaticData: TStaticCell; Tile: Word; Z: ShortInt; Finded: Boolean; Counter: Byte; StartTime: TDateTime; i: Integer; begin Finded := False; StaticData := ReadStaticsXY(X, Y, WorldNum); for i := 0 to StaticData.StaticCount - 1 do begin if i >= StaticData.StaticCount then Break; if (GetTileFlags(2, StaticData.Statics[i].Tile) and $200) = $200 then begin Tile := StaticData.Statics[i].Tile; Z := StaticData.Statics[i].Z; Finded := True; Break; end; end; CheckState(); while Finded do begin if Dead or not Connected then Exit; if TargetPresent then CancelTarget; while not CheckMiningTool do begin if Dead or not Connected then Exit; CreateMiningTools; end; CheckLag(LagWait); Wait(WaitTime); UseObject(MiningTool); CheckLag(LagWait); WaitForTarget(WaitTime); if TargetPresent then begin StartTime := Now; TargetToTile(Tile, X, Y, Z); Counter := WaitCycles; Finded := False; while (not Finded) and (Counter > 0) do begin CheckLag(LagWait); if InJournalBetweenTimes('t mine there|is too far away|cannot be seen|is no metal here to mine', StartTime, Now) > 0 then Exit; if InJournalBetweenTimes('put it in your backpack|loosen some rocks but fail to find any useable ore|have worn out your tool', StartTime, Now) > 0 then Finded := True; if Not Finded then Wait(200); Dec(Counter); end; CheckState(); end; end; end;
Вопрос не в том, как у Вас это работает в Ваших скриптах, а как с открытым клиентом помыть бинты в воде- только проверенные собственными руками варианты, т.к. в теории всё на самом деле прекрасно работает, а на практике.
Проще научить человека ловить рыбу, чем постоянно ею его кормить. (с) Destruction
Ну так для практики неплохо было бы получить, как минимум, информацию по серверу, на котором пытаетесь такое реализовать (а как максимум - аккаунт для тестирования).
Кстати, не вижу особой разницы между мойкой бинтов с открытым клиентом и с закрытым.
К тому же вы утверждаете, что скрипты которые вы просматривали, якобы, не работают на практике. А вот конкретно ваш скрипт я так и не увидел.
Кстати, не вижу особой разницы между мойкой бинтов с открытым клиентом и с закрытым.
К тому же вы утверждаете, что скрипты которые вы просматривали, якобы, не работают на практике. А вот конкретно ваш скрипт я так и не увидел.
Помните – ничто так не защищает ваши зубы 12 часов днем и 12 часов ночью как уважительное отношение к окружающим.
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
пакеты бы хорошо увидеть, иначе это все гадание на кофе.
подключиться клиентом к стелсу.
удалить пакетный лог стелса.
сделать операцию клиентом (правильные пакеты), в свежесозданном логе найти пакет 0x6С, скинуть его сюда.
сказать, какие параметры пихал в WaitTargetTile.
подключиться клиентом к стелсу.
удалить пакетный лог стелса.
сделать операцию клиентом (правильные пакеты), в свежесозданном логе найти пакет 0x6С, скинуть его сюда.
сказать, какие параметры пихал в WaitTargetTile.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
-
- Novice
- Posts: 130
- Joined: 06.05.2008 18:03
Code: Select all
21:24:25:591: GLHF, Server -> Client: 0x6C, len: 19
0000: 6C 00 00 00 01 ED 00 00 00 00 00 00 00 00 00 00 l...............
0010: 00 00 00 ...
21:24:25:591: GLHF, Client -> Server: 0x6C, len: 19
0000: 6C 00 00 00 01 ED 00 40 05 29 7C 14 A1 0B DB 00 l......@.)|.....
0010: 00 0B 44
Code: Select all
21:24:25:733: GLHF, Server -> Client: 0x6C, len: 19
0000: 6C 00 00 00 01 ED 00 00 00 00 00 00 00 00 00 00 l...............
0010: 00 00 00 ...
Code: Select all
21:24:26:866: GLHF, Client -> Server: 0x6C, len: 19
0000: 6C 00 00 00 01 ED 00 00 04 79 9F 14 AE 0B D1 00 l........y......
0010: 00 01 90 ...
Code: Select all
21:24:30:426: GLHF, Server -> Client: 0x6C, len: 19
0000: 6C 00 00 00 01 ED 00 00 00 00 00 00 00 00 00 00 l...............
0010: 00 00 00 ...
Code: Select all
21:24:30:854: GLHF, Client -> Server: 0x6C, len: 19
0000: 6C 00 00 00 01 ED 00 00 04 79 9F 14 AE 0B D1 00 l........y......
0010: 00 01 90 ...
Code: Select all
21:24:37:033: GLHF, Server -> Client: 0x6C, len: 19
0000: 6C 00 00 00 01 ED 00 00 00 00 00 00 00 00 00 00 l...............
0010: 00 00 00 ...
21:24:38:172: GLHF, Client -> Server: 0x6C, len: 19
0000: 6C 00 00 00 01 ED 00 40 02 5C 8E 14 B0 0B D1 00 l......@.\......
0010: 00 17 97 ...
Проще научить человека ловить рыбу, чем постоянно ею его кормить. (с) Destruction
вот я подозревал такую фигню. еще хотел спросить, но подумать что это совсем уж явно, не будет человек такое делать.
с каких пор лоханка с водой (water through) стала ВОДОЙ? ты ж не с берега в море моешь свои бинты.тайлы тут вообще ни при чем , это самый что ни на есть обьект.
все элементарно просто - WaitTargetObject($00400529) если я правильно разглядел айди корыта с водой.
с каких пор лоханка с водой (water through) стала ВОДОЙ? ты ж не с берега в море моешь свои бинты.тайлы тут вообще ни при чем , это самый что ни на есть обьект.
все элементарно просто - WaitTargetObject($00400529) если я правильно разглядел айди корыта с водой.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
-
- Novice
- Posts: 130
- Joined: 06.05.2008 18:03
Вполне возможно, что вода в некоторых случаях может выступать либо как объект, либо как статика, либо как тайл карты.
Помните – ничто так не защищает ваши зубы 12 часов днем и 12 часов ночью как уважительное отношение к окружающим.
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
оригинальное оформление. в таком виде да, фиг поймешь.
у меня на шарде (в далекие времена, когда я еще играл) эти "куски воды" можно было сделать и поставить в доме - мыть бинты, и прочее.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".