Injection 2015

General Injection issues

Moderators: Murderator+, Murderator

kobol
Posts: 119
Joined: 2012-12-15 12:03:25
Location: C-Петербург

Re: Injection 2015

Post by kobol »

Когда работаешь в редакторе FAR и нажимаешь и удерживаешь Ctrl в инжекте запускается много функций main :roll:
kobol
Posts: 119
Joined: 2012-12-15 12:03:25
Location: C-Петербург

Re: Injection 2015

Post by kobol »

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

В charprint теперь три параметра и старая функция не работает. Как это обойти? Нельзя ли как-то в парсере сделать, чтобы если два параметра - то автоматом добавлял первый параметр 'self'? :oops:

И все таки старый заголовок окна клиента смотрелся поаккуратней - текст был центрирован по высоте и между разделителем и надписью оставался пробел в пару пискселей. Хотя я ужк почти привык ))
Attachments
caption.png
caption.png (21.83 KiB) Viewed 4771 times
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Injection 2015

Post by Mirage »

Code: Select all

ITEM[0]=0x1BF2,0x03B7,1,Stone Blocks
ITEM[1]=0x1422,0x0860,1,Marbles
ITEM[2]=0x1422,0x0980,1,Plasters
ITEM[3]=0x0F3F,0x0000,1,Arrows
ITEM[4]=0x1BFB,0x0000,1,Crossbow Bolts
ITEM[5]=0x0F9D,0x0000,1,Sewing Kit

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

Про charprint - открываешь в блокноте свой файл и делаешь замену
uo.charprint(printcolour
на
uo.charprint('self', printcolour
:roll: Це начальные скиллы работы с компутером.
kobol
Posts: 119
Joined: 2012-12-15 12:03:25
Location: C-Петербург

Re: Injection 2015

Post by kobol »

Mirage wrote:[code]ITEM[0]=0x1BF2,0x03B7,1,Stone Blocks
ITEM[1]=0x1422,0x0860,1,Marbles
....
в бай листе еще и цвет требуется указывать если что.
Но по мне так стало удобнее. Название админ от балды может придумать, а тут тройная проверка получается.

Ужас какой :shock: Вот работало все, а теперь переколупливать надо :roll:
И цвета эти еще где-то надо найти.

Про charprint - открываешь в блокноте свой файл и делаешь замену
uo.charprint(printcolour
на
uo.charprint('self', printcolour
:roll: Це начальные скиллы работы с компутером.


Ну да.. ну да.. и так 10500 раз везде, где charprint встречается.
А потом захочешь запустить старую инжу и все взад возвращать. :wink:
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Injection 2015

Post by Mirage »

Торговые НПС обычно продают один набор товаров. Все равно при маркировке рун/рунбуков придется их всех обойти. Переписание всех товаров НПС происходит в течении 15 секунд если одной рукой пить чай а второй держать телефон по которому разговаривать в этот момент. Наверное переписать 100 НПС конечно сложно но ведь это и не нужно - если Вася и Петя продают яблоки то достаточно 1 раз их считать и чар купит яблоки и у Васи и у Пети. Стало быть надо обойти только 3-4 НПС торговцев.

kobol wrote:Ну да.. ну да.. и так 10500 раз везде, где charprint встречается.

Еще пользуетесь раздельными файлами скриптов? :roll: У моего автолоада (1 фаайла) в котором добыча, скупка, охота, немного ПВП скриптов, всякая дребедень процедурная типо функций движения, перемещения однотипных предметов и крафтов всех крафтопригодных предметов на сервере где я играл порядка 50-55 чарпринтов. После того как я растащил на инклюды процедуры которые не меняются годами в автолоаде осталось 21 чарпринт. Замена всего происходит 4 нажатиями кнопок - CTRL+C;CTRL+R;CTRL+V;CRTL+S. А уж если и возникает странное желание
kobol wrote:А потом захочешь запустить старую инжу и все взад возвращать. :wink:

то что мешает держать 2 папки с инжектом и 2 автолоада с новыми и старыми функциями? :mrgreen:
ИМХО Проблема на ровном месте. Пора обновляться.
kobol
Posts: 119
Joined: 2012-12-15 12:03:25
Location: C-Петербург

Re: Injection 2015

Post by kobol »

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

Насчет раздельных файлов скриптов... По хорошему надо собрать все в один. Наверное )
kobol
Posts: 119
Joined: 2012-12-15 12:03:25
Location: C-Петербург

Re: Injection 2015

Post by kobol »

Нельзя как-нибудь офтильтровывать сообщения из журнала от automenu?
Весь журнал забит :x
verbose menu отключен, но он на эти сообщения не влияет.
Attachments
menu.png
menu.png (36.57 KiB) Viewed 4735 times
kobol
Posts: 119
Joined: 2012-12-15 12:03:25
Location: C-Петербург

Re: Injection 2015

Post by kobol »

По мере поступления (
Не работает такой скрипт. Говорит, что продается слишком быстро. Под старой инжой работает, продает по 10 шт.

Code: Select all

#Если Вы попытаетесь продать НПС-вендору несколько стопок вещей (или несколько вещей, которые не складываются в стопки) за один раз при помощи инжекта, 
#то вендор скажет Вам, что Вы продаёте всё слишком быстро, а он - тормоз и поэтому не может купить весь Ваш товар сразу. Это связано с тем, что на ДРВ ввели
#задержку 0,3 секунды на продажу итемов, а инжект по умолчанию пытается продать все итемы одновременно. Выставить в инжекте задержку на продажу можно
#командой ,set buydelay X, где Х рассчитывается по формуле: X = 300*K (K - количество вещей, которое Вы продаёте).
#Но я бы посоветовала в рассчётах брать задержку немного побольше - 0,35 сек. Таким образом, если Вы хотите продать, например, 40 итемов,
#то задержка составит: X = 350*40 = 14000, и в клиенте нужно ввести: ,set buydelay 14000 (т.е. эти 40 итемов будут продаваться в течение 14ти секунд).
#При продаже Вам может пригодиться ещё одна команда, которая позволяет задать количество итемов, которые Вы хотите продать: ,set maxsell Y
#(Y - кол-во вещей для продажи)."
############################################################
sub sellvendor()
   var vendor=""
   var MyMoney
   MyMoney=UO.Gold
   uo.set('buydelay','3500')
   uo.set('maxsell','10')
   UO.DeleteJournal()
   wait(200)
   repeat
      MyMoney=UO.Gold
      PrintInColor("MyMoney="+str(MyMoney), clg)
      wait(200)
      uo.sell('gorget',vendor)
      wait (3800)
      PrintInColor("new UO.Gold="+str(UO.Gold), clw)
      wait(200)
   until  MyMoney == UO.Gold
   uo.say('bye')
endsub
dubd
Posts: 249
Joined: 2012-07-27 23:43:14

Re: Injection 2015

Post by dubd »

Мираж с днюхой прошедшей :) :D

Спасибо :)
kobol
Posts: 119
Joined: 2012-12-15 12:03:25
Location: C-Петербург

Re: Injection 2015

Post by kobol »

Псоле завершения скрипта на BlackSmithing по кнопке terminate, невозможно выковать вручную - по клику на инге меню не открывается.
Видимо что-то остается в памяти висеть.
jackblack
Posts: 12
Joined: 2013-02-09 18:55:21

Re: Injection 2015

Post by jackblack »

Zdrastvuite!

V okne, gde mozhno dobovlat servera, shto delaet opcija Enable Crypt?

Igraja na servere The Abyss, neobhodimo li kokaja-to dopolnitetlnaja nastroika Injecta, shtob nevidno bilo, shto igraju na Injecte?
Schas tolka postavlena galka na TusbbFix.
Incorrect User
Posts: 949
Joined: 2011-05-23 00:33:30

Re: Injection 2015

Post by Incorrect User »

Enable Crypt - шифрует логин и пароль, и больше ничего.
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Injection 2015

Post by Mirage »

kobol wrote:По мере поступления (
Говорит, что продается слишком быстро.


#Если Вы попытаетесь продать НПС-вендору несколько стопок вещей (или несколько вещей, которые не складываются в стопки) за один раз при помощи инжекта,
#то вендор скажет Вам, что Вы продаёте всё слишком быстро, а он - тормоз и поэтому не может купить весь Ваш товар сразу. Это связано с тем, что на ДРВ ввели
#задержку 0,3 секунды на продажу итемов, а инжект по умолчанию пытается продать все итемы одновременно. Выставить в инжекте задержку на продажу можно
#командой ,set buydelay X
, где Х рассчитывается по формуле: X = 300*K (K - количество вещей, которое Вы продаёте).
#Но я бы посоветовала в рассчётах брать задержку немного побольше - 0,35 сек. Таким образом, если Вы хотите продать, например, 40 итемов,
#то задержка составит: X = 350*40 = 14000, и в клиенте нужно ввести: ,set buydelay 14000 (т.е. эти 40 итемов будут продаваться в течение 14ти секунд).
#При продаже Вам может пригодиться ещё одна команда, которая позволяет задать количество итемов, которые Вы хотите продать: ,set maxsell Y
#(Y - кол-во вещей для продажи)."
############################################################

:roll:
kobol
Posts: 119
Joined: 2012-12-15 12:03:25
Location: C-Петербург

Re: Injection 2015

Post by kobol »

:?:
))
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Injection 2015

Post by Mirage »

_set buydelay 3000
пропиши перед запуском и проверь. Там же описан ответ на твой вопрос.
kobol
Posts: 119
Joined: 2012-12-15 12:03:25
Location: C-Петербург

Re: Injection 2015

Post by kobol »

Mirage wrote:_set buydelay 3000
пропиши перед запуском и проверь. Там же описан ответ на твой вопрос.


В старой инже это скрипт работал. В новой - не работает, поэтому и вопрос.
В скрипте есть

Code: Select all

uo.set('buydelay','3500')
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Injection 2015

Post by Mirage »

Не заметил, прочитал не до скрипта а только до описания. :mrgreen:
Вообще у меня все торговые вопросы на 2 шардах решились 3000 паузой. Попробуй секунд до 5 увеличить или больше.
kobol
Posts: 119
Joined: 2012-12-15 12:03:25
Location: C-Петербург

Re: Injection 2015

Post by kobol »

Такая информация может быть полезна для отладки или смысла нет ее постить?
Attachments
Crash1ss.png
Crash1ss.png (6.53 KiB) Viewed 4634 times
kobol
Posts: 119
Joined: 2012-12-15 12:03:25
Location: C-Петербург

Re: Injection 2015

Post by kobol »

Так не берет, ошибка парсера.

Code: Select all

EnemyHP=UO.GetHP( EnemyID )/uo.GetMaxHP(EnemyID)

только так ))

Code: Select all

   EHP=UO.GetHP( EnemyID ) 
   EMaxHP=uo.GetMaxHP(EnemyID)
   EnemyHP=EHP/EMaxHP


--------
исправлено, на самом деле не берет HP с первого запроса. Надо два раза запросить, тогда возвратит не ноль.
------

Code: Select all

   EHP=UO.GetHP( 'finditem' ) 
   EMaxHP=uo.GetMaxHP('finditem')


сервер DRW
Last edited by kobol on 2015-11-21 20:11:22, edited 1 time in total.
Incorrect User
Posts: 949
Joined: 2011-05-23 00:33:30

Re: Injection 2015

Post by Incorrect User »

Он и не должен получать ХП, сначала нужно получить статус uo.getstatus(serial)

Code: Select all

   EMaxHP=uo.GetMaxHP(EnemyID)
   EnemyHP=str(uo.gethp(EnemyID) / EMaxHP)
Post Reply