Последняя версия Скрипта Лумбер(проверено командой тестеров)

Anything and all.

Moderators: Murderator+, Murderator

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

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Mirage »

Code: Select all

   var Text1=uo.GetName()+': You hack at the tree for a while, but fail to produce any useable wood.'
   var Text2='There are no logs here to chop.'
   var Text3= 'You can't reach this. '
   var Text4='That is too far away.'
   var Text5= 'You can't do much in your current state. '
   var Text6= 'OOPS !!!'
   var Text7='Ent'

Text1 - uo.GetName() не нужно. Оно в журнале не отображается и не используется.
Text2 - точка не нужна - ее может быть а может и не быть.
Text3 - двойные кавычки => фраза ограничена "You can" а все что дальше порожняк
Text4 - см Text2
Text5 - см Text2
Text6 - вот прямо так и написано? OOPS пробел !!! ?
Text7 - дух называется Ent а не ent?
мораль 1 - потенциально правильно прописана только последняя строка.
мораль 2

Code: Select all

   var Text1='but fail to produce any useable'
   var Text2='no logs here to chop'
   var Text3= "ou can't reach this"
   var Text4='is too far away'
   var Text5= 'much in your current state'
   var Text6= 'OOPS'
   var Text7='Ent'


в скрипте который использую я сообщения сделаны как у Дестракшена
msg1 = все возможные сообщения
msg2 = все сообщения с филзами

Code: Select all

var msg1= '0xA20D|0xA2DE|0xA2E7|0xA308|0xA309|0xA30D|0xA311|0xA312|Вы положили|You put|nothing|Вы ударили по дереву|You hack at the tree|Тут нечего рубить|no logs|Вы не можете до этого достать|You can|reach this|Дерево слишком далеко|That is too far away|do much|Это кажется свободным для вашего удара|It appears immune to your blow|атакует'
var msg2 = '0xA20D|0xA2DE|0xA2E7|0xA308|0xA309|0xA30D|Тут нечего рубить|nothing|no logs|You can|Вы не можете до этого достать|Дерево слишком далеко|too far away|свободным для вашего удара'

и все.
Gromiz
Posts: 444
Joined: 2005-02-08 18:39:50
Location: Moscow

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Gromiz »

пробовал, менял :(

кстати, вот такой вариант не работает

Code: Select all

 var Text2='no logs here to chop'


а работает стандартный код

Code: Select all

   var Text2= 'There are no logs here to chop.'



блиин, он сообщение с журнала не считывает все равно
http://clip2net.com/s/1gyyI


может вообще не в этот раздел интегрируем? как только не переписывал


-----

upd.
хмм, видимо считывает только полностью строчку с журнала, ибо сейчас вырубил просто Ent и скрипт сработал, буду тестить
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Mirage »

Code: Select all

sub WaitForChange() 
   var msg1='no logs here|reach this|too far away|OOPS|Ent|!!'
   var msg2='but fail|to produce|any useable wood|ou put'
   for var i=0 to 200
      if UO.InJournal(msg1) then
         return 1
      end if
      if UO.InJournal(msg2) then
         return 0
      end if
      wait(50)
   next
   return 0
end sub


Попробуй вот этим заменить свой WaitForChange()
Gromiz
Posts: 444
Joined: 2005-02-08 18:39:50
Location: Moscow

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Gromiz »

рубит, однако
"те же яйца, только в профиль" - :lol:
ппц, что ему в тех проверках не нравилось))

правда не среагировал на энта все равно.
---
теперь тестирую, твой вариант, но с дополнением еще одной проверки на мессадж, но туда я добавил полностью название ентов (гемор- надо знать названия точные ентов, которые появляются)
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Mirage »

я сколько раз пытался понять зачем и каким образом тут работает

Code: Select all

      if mess[0]=='Y' and mess[1]=='o' and mess[2]=='u' and mess[4]=='p' and mess[5]=='u' and mess[6]=='t' then
         return 0
      end if

так и не осилил :(
ну и фиг с ней...
Gromiz
Posts: 444
Joined: 2005-02-08 18:39:50
Location: Moscow

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Gromiz »

сам не понял, менял, добавлял, сокращал эту строчку, а результата так и не заметил

п.с.
вроде скрипт встал на паузу после появления одного энта, сейчас пробую настроить паузу из одноименного топика

там где с поиском элема вокруг
Gromiz
Posts: 444
Joined: 2005-02-08 18:39:50
Location: Moscow

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Gromiz »

ну я короче ппц. запарился

меняю, меняю, а результата ноль, на сегодня все будь оно не ладно
Последний вариант

так и не реагирует на появление энтов, н у писец, в общм.
You see: Blood Tree Ent
- вот надпись из журнала, перед этим еще длинное предложение, которое начинается с "OOPS"

и какого оно не нравиться?

Code: Select all

sub WaitForChange()
   var msg1='no logs here|reach this|too far away'
   var msg2='but fail|to produce|any useable wood|ou put'
   var msg3='Ent|Tree Ent|Leaf Ent|OOPS'
   for var i=0 to 200
      if UO.InJournal(msg1) then
         return 1
      end if
      if UO.InJournal(msg2) then
         return 0
      end if
      if UO.InJournal(msg3) then
         uo.DeleteJournal()
         uo.PlayWav(DisturbingSound)
         wait(900000) #15 мин ожидания
         return 0
      end if
      wait(50)
   next
   return 0
end sub
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Mirage »

Разгадка бывает проста и страннА.
Рубишь руками до появления энта.
После как он вылезет набираешь в игре
,showjournal 200
и копируешь фразу в проверку в скрипт. Удаляешь лишнее.
Тестируешь.
Gromiz
Posts: 444
Joined: 2005-02-08 18:39:50
Location: Moscow

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Gromiz »

ну это ппц, хрен что вышло, не видит и все тут, разные варианты перепробовал ппц.
времениубилшоппцпросто

вот выдержка

Code: Select all

You put the Ent's body part at your feet. It is too heavy..
BotoLesoRub: OOPS !!! It isn't a tree, it's an Ent!!!
Dark Tree Ent

от
,showjournal 200

отключил нафиг, раздражает одно: все же правильно делаем, а болт.
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Mirage »

ну уж добивать так добивать.
Задача:
выложить скрин энта
лог сообщений (не выдержку а именно лог ПЕРЕД вырубкой, после вырубки, и ткнув в него)
описание алгоритма что ТРЕБУЕТСЯ.
сдается мне делов на 5 копеек. Но визуально не видя протелепатить сложновато :)

PS После того как выложишь что я просил я сделаю минитестовый скрипт - надо будет проверить и отписаться.
Gromiz
Posts: 444
Joined: 2005-02-08 18:39:50
Location: Moscow

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Gromiz »

если правильно понял, вот:

скрин:
http://clip2net.com/s/1gMnn
выглядят одинаково, отличаются цветом и названиями, но у всех название оканчивается на Ent
ID=0x000A2005 Type=0x002F ZRTLB Name=Elven Ent
Quantity: 0 Colour: 0x0487 Layer: 0 Has: 0
X=3311 Y=276 Z=0 C=0xFFFFFFFF F=0x00


лог, последние 3 строчки относятся к энту:

Code: Select all

You put the logs in your pack.
What do you want to use this on?
You put the logs in your pack.
What do you want to use this on?
BotoLesoRub: You hack at the tree for a while, but fail to produce any useable wood.
What do you want to use this on?
You have been revealed
BotoLesoRub: You hack at the tree for a while, but fail to produce any useable wood.
BotoLesoRub: You have hidden yourself well
What do you want to use this on?
You put the Perit logs in your pack.
You have been revealed
BotoLesoRub: You have hidden yourself well
What do you want to use this on?
You put the Ent's body part at your feet. It is too heavy..
BotoLesoRub: OOPS !!! It isn't a tree, it's an Ent!!!
Elven Ent
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Mirage »

а ну вот теперь понятно где прылся Энт :))

Code: Select all

sub WaitForChange()
   var msg1='no logs here|reach this|too far away'
   var msg2='but fail|to produce|any useable wood|ou put'
   var msg1='Ent|OOPS'
   for var i=0 to 200
      if UO.InJournal(msg1 + "|" + msg3) then
         if UO.InJournal(msg3) then
            uo.PlayWav(DisturbingSound)
            wait(900000) #15 мин ожидания
         end if
         return 1
      end if
      if UO.InJournal(msg2) then
         return 0
      end if
      wait(50)
   next
   return 0
end sub

При вырубке энта скрипт встанет на паузу и будет стоять 15 минут. После этого перейдет к следующему дереву. Проверяй.
Gromiz
Posts: 444
Joined: 2005-02-08 18:39:50
Location: Moscow

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Gromiz »

целый день тестировал, все работает.
ппц, это надо было "проверку в проверку поставить"?


как эту строчку понять и какую роль играет "+"?

Code: Select all

UO.InJournal(msg1 + "|" + msg3)


если в журнале сообщение 1 или 3, то ...
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Mirage »

You put the Ent's body part at your feet. It is too heavy..

вот тут проблема была.
Изза этого сообщения (вырубался Энт) срабатывала msg2 строка проверки и чар продолжал рубить не обращая внимание на Энта. Проверка в проверке это убрала :) Можно было проверку Энта поставить вперед но получилось бы не очень красиво по отношению к рубке.
+ просто связка, правило языка
UO.InJournal(msg1|msg3) так записывать нельзя в данном примере.

UO.InJournal(элемент1 + элемент2 + элемент3 +... +элементN)

UO.InJournal(msg1 + "|" + msg3) = UO.InJournal( 'no logs here|reach this|too far away|Ent|OOPS')
Gromiz
Posts: 444
Joined: 2005-02-08 18:39:50
Location: Moscow

Re: Последняя версия Скрипта Лумбер(проверено командой тесте

Post by Gromiz »

в общем, да! все оказалось просто :(
Post Reply