У тебя он так сделан, что если ты в любую другую руду, кроме шедова ткнёшь, скрипт повиснет на цикле ожидания
Code:
while NOT UO.InJournal("ngot") AND NOT UO.InJournal("Shadow")
wait(500)
wend. Вот это ваще зачем, непонятно
Code:
If IngName=="Shadow" then
IngName="Shadow"
endif
типа если переменная IngName имеет значение Shadow, то опять присвоить ей значение Shadow, вдруг она сомневается

. Вместо UO.Exec('terminate all') лучше использовать Return. На ДРВ после команды UO.Moveitem надо втыкать паузу, я ставлю 1000 мс, потому что сервак проверяет, за какое время была перемещена вещь, и может выдать сообщение Can't pick up this и вещь не переместится.
Code:
UO.UseType('FullarmING',Color)
while NOT UO.InJournal("You put") AND NOT UO.InJournal("You have failed")
wend Тут пустой цикл, воткни wait(500), вообще, помоему лучше использовать
Code:
repeat
wait(500)
until uo.injournal('You put|You have failed')
Проглюки бывают разные, так хоть одна пауза будет полюбому. Теперь, когда ты устанавливаешь приёмный контейнер командой UO.SetCatchBag(Meshok) и куёшь, предмет падает сначала в пак, потом инжа пытается его перекинуть в мешок, обычно сервак ругается, что ты слишком быстро двигаешь предметы и оставляет предмет в паке, так что тож надо или паузу втыкать или ваще отказаться от UO.SetCatchBag, а использовать UO.Moveitem .