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

[Drw] Скупка

тут можно задать вопрос по скриптингу
Nearga
Novice
Novice
Posts: 58
Joined: 04.03.2012 22:03
Location: DRW
Contact:

[Drw] Скупка

Post by Nearga »

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

Code: Select all

  for i:=1 to rmax do
    begin
		UOSay(vname+' buy');
		AddToSystemJournal(inttostr(i)); 
		AutoBuy(buy[i],$0000,kolvo);
		Wait(4500);
		AutoBuy(buy[i],$0000,0);
	end;
Затестил, первые пару раз было все ок. Пока не накупил два десятка пустых спеллбуков, которые никуда деть нельзя.

Существует ли папский метод, чтоб работал наверняка? :)
Nearga
Novice
Novice
Posts: 58
Joined: 04.03.2012 22:03
Location: DRW
Contact:

Re: [Drw] Скупка

Post by Nearga »

Забодяжил

Code: Select all

GetShopList(a); SetSilentMode(True); // GetFindedList(a); 
  for i := 0 to a.Count - 1 do
    begin
     StrBreakApart(a.Strings[i],'|', str);
     AddToSyStemJournal(intTostr(i)+' '+str[4]+' '+str[14]); 
    end;
проверил айдишники у продавца - такиеже, как и у меня.
Nearga
Novice
Novice
Posts: 58
Joined: 04.03.2012 22:03
Location: DRW
Contact:

Re: [Drw] Скупка

Post by Nearga »

Еще и кляп получил - видать, сильно часто дергал продавца :)

ЗЫ: а, это фигня: с паузой и BuyDelay игрался )
Last edited by Nearga on 29.04.2012 11:31, edited 1 time in total.
CFA
Developer
Developer
Posts: 492
Joined: 20.04.2006 6:03
Contact:

Re: [Drw] Скупка

Post by CFA »

Первый метод вполне рабочий, только AutoBuy лучше делать перед UOSay(vname+' buy');
Nearga
Novice
Novice
Posts: 58
Joined: 04.03.2012 22:03
Location: DRW
Contact:

Re: [Drw] Скупка

Post by Nearga »

Оки, пасиб, попробую в обратном порядке... он вроде как и рабочий, но иногда или не все скупает, или скупает не то, что нужно.
Nearga
Novice
Novice
Posts: 58
Joined: 04.03.2012 22:03
Location: DRW
Contact:

Re: [Drw] Скупка

Post by Nearga »

Та же фигня, если у вендора уже скуплен товар. Опять барахла закупил.
Nearga
Novice
Novice
Posts: 58
Joined: 04.03.2012 22:03
Location: DRW
Contact:

Re: [Drw] Скупка

Post by Nearga »

Code: Select all

for i:=1 to rmax do
    begin		
		AddToSystemJournal(inttostr(i)); 
		AutoBuy(buy[i],$0000,kolvo);
		wait(5000);
		UOSay(vname+' buy');
		Wait(5000);
		AutoBuy(buy[i],$0000,0);
		Wait(5000);
	end;
Вообще ничего не покупает 0_0
Пишет, "Oh..You were so fast. Please repeat your order slower."
Last edited by Nearga on 29.04.2012 12:17, edited 1 time in total.
yuras
Novice
Novice
Posts: 142
Joined: 11.01.2011 10:34

Re: [Drw] Скупка

Post by yuras »

так правильней

Code: Select all

for i:=1 to rmax do
   AutoBuy(buy[i],$0000,kolvo);
UOSay(vname+' buy');
AddToSystemJournal(inttostr(i)); 
Wait(4500);
for i:=1 to rmax do
   AutoBuy(buy[i],$0000,0);
Nearga
Novice
Novice
Posts: 58
Joined: 04.03.2012 22:03
Location: DRW
Contact:

Re: [Drw] Скупка

Post by Nearga »

Пробовал так, как вы советовали - все равно пишет, "Oh..You were so fast. Please repeat your order slower."

Добавил

Code: Select all

for i:=1 to rmax do begin
   AutoBuy(buy[i],$0000,kolvo);
   wait(1000);
   end;
UOSay(vname+' buy');
AddToSystemJournal(inttostr(i)); 
Wait(4500);
for i:=1 to rmax do
   AutoBuy(buy[i],$0000,0);
та же фигня
Nearga
Novice
Novice
Posts: 58
Joined: 04.03.2012 22:03
Location: DRW
Contact:

Re: [Drw] Скупка

Post by Nearga »

В принципе, самый первый вариант вполне сносно работает... Долговато, правда, но скупает то, что нужно.
По крайней мере, пока у торговца есть товары.. если запустить скрипт еще раз - скупает абсолютно левое барахло (почему?).

Есть мысля поиграться с GetShopList(); и смотреть длинну списка, если маловато - значит товара еще нету - значит ждать.
Nearga
Novice
Novice
Posts: 58
Joined: 04.03.2012 22:03
Location: DRW
Contact:

Re: [Drw] Скупка

Post by Nearga »

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

Code: Select all

AddToSystemJournal('Подошли к ' + vname); 
	
	a := TStringList.Create;
	UOSay(vname+' buy');
	wait(500);	
	GetShopList(a);
	SetSilentMode(False);
	AddToSystemJournal('Вещей у вендора:' + inttostr(a.count));
	
	if (a.count > 8) then begin	
		for i:=1 to rmax do
		begin
		  UOSay(vname+' buy');
		  AddToSystemJournal(inttostr(i)); 
		  AutoBuy(buy[i],$0000,kolvo);
		  Wait(4500);
		  AutoBuy(buy[i],$0000,0);
	   end;   
   end
   else begin
	AddToSystemJournal('Шмота.нет');	
   end;
   a.free;
yuras
Novice
Novice
Posts: 142
Joined: 11.01.2011 10:34

Re: [Drw] Скупка

Post by yuras »

AutoBuy это установка ловушки, таймер между установками не нужен. Т.е.ты сначала указываешь что надо купить, открываешь бай лист и все ловушки срабатывают. А на что такая реакция "Oh..You were so fast. Please repeat your order slower." слишком часто говоришь buy или очень быстро выбираешь что купить? Вручную получается такое сообщение вызвать?
Nearga
Novice
Novice
Posts: 58
Joined: 04.03.2012 22:03
Location: DRW
Contact:

Re: [Drw] Скупка

Post by Nearga »

Запилил вот так

Code: Select all

SetAutoBuyDelay(15);
	AddToSystemJournal('Step 1');
	for i:=1 to rmax do
		AutoBuy(buy[i],$0000,kolvo);
	AddToSystemJournal('Step 2');
	UOSay(vname+' buy');
	Wait(15000);
	AddToSystemJournal('Step 3');
	for i:=1 to rmax do
		AutoBuy(buy[i],$0000,0);
Скупил абсолютно все, что у вендора есть :(
Зато можно точно сказать, что "Oh..You were so fast. Please repeat your order slower." - это из-за того, что быстро соглашался (раньше было SetAutoBuyDelay(5)
Nearga
Novice
Novice
Posts: 58
Joined: 04.03.2012 22:03
Location: DRW
Contact:

Re: [Drw] Скупка

Post by Nearga »

Фигня какая-то... иногда покупает то, что нужно, иногда недобирает, иногда гребет все подряд... что за хрень? ((((
yuras
Novice
Novice
Posts: 142
Joined: 11.01.2011 10:34

Re: [Drw] Скупка

Post by yuras »

Nearga wrote:Фигня какая-то... иногда покупает то, что нужно, иногда недобирает, иногда гребет все подряд... что за хрень? ((((
попробуй на более поздней версии стелса, на 4.0.3 не тестил, но на 3.9.9 все отлично работало.
Post Reply