|
Помогите разобраться с ошибкой в скрипте, коды ошибок? |
|
|
qwock |
23.3.2013, 6:40
|
Neophyte
Сообщений: 24
Регистрация: 12.1.2012 Группа: Пользователи Наличность: 0
Пользователь №: 14.480
Возраст: 30
|
Цитата(DarkMaster @ 22.3.2013, 16:20) Так же добавьте вначале: set logging commands поможет обнаружить некорректное значение.
к сожалению не знаю как тут спойлер сделать ((( Лог
7:37:12 0 (lumber.txt, 113): - if #ai > #end 7:37:12 0 (lumber.txt, 116): - set #p 0 7:37:12 0 (lumber.txt, 118): - if_not chardir = 4 7:37:12 0 (lumber.txt, 119): - send end 7:37:12 0 (lumber.txt, 120): - wait #wait 7:37:12 0 (lumber.txt, 121): - end_if 7:37:12 0 (lumber.txt, 122): - repeat #ai / 2 7:37:12 0 (lumber.txt, 123): - set #chary charposy 7:37:12 0 (lumber.txt, 124): - send end 7:37:12 0 (lumber.txt, 125): - wait #wait + 50 7:37:13 0 (lumber.txt, 126): - if_not #chary = charposy 7:37:13 0 (lumber.txt, 127): - set #step #step - 1 7:37:13 0 (lumber.txt, 128): - set #p #p - 1 7:37:13 0 (lumber.txt, 129): - else 7:37:13 0 (lumber.txt, 132): - end_repeat 7:37:13 0 (lumber.txt, 133): - end_if 7:37:13 0 (lumber.txt, 134): - set $switch 11 7:37:13 0 (lumber.txt, 135): - end_if 7:37:13 0 (lumber.txt, 136): - end_if 7:37:13 0 (lumber.txt, 138): - if ( $left = free or $right = free ) and ( $switch = 00 or $switch = 11 ) 7:37:13 0 (lumber.txt, 139): - repeat #end / 2 7:37:13 0 (lumber.txt, 140): - if $turn = right and $right = free 7:37:13 0 (lumber.txt, 141): - if_not chardir = 2 7:37:13 0 (lumber.txt, 142): - send pagedown 7:37:13 0 (lumber.txt, 143): - wait #wait 7:37:13 0 (lumber.txt, 144): - end_if 7:37:13 0 (lumber.txt, 145): - set #charx charposx 7:37:13 0 (lumber.txt, 146): - send pagedown 7:37:13 0 (lumber.txt, 147): - wait #wait 7:37:13 0 (lumber.txt, 148): - if charposx = #charx 7:37:13 0 (lumber.txt, 153): - if #charx = charposx 7:37:13 0 (lumber.txt, 161): - else 7:37:13 0 (lumber.txt, 184): - end_repeat 7:37:13 0 (lumber.txt, 140): - if $turn = right and $right = free 7:37:13 0 (lumber.txt, 141): - if_not chardir = 2 7:37:13 0 (lumber.txt, 145): - set #charx charposx 7:37:13 0 (lumber.txt, 146): - send pagedown 7:37:13 0 (lumber.txt, 147): - wait #wait 7:37:14 0 (lumber.txt, 148): - if charposx = #charx 7:37:14 0 (lumber.txt, 153): - if #charx = charposx 7:37:14 0 (lumber.txt, 161): - else 7:37:14 0 (lumber.txt, 184): - end_repeat 7:37:14 0 (lumber.txt, 186): - set $switch 01 7:37:14 0 (lumber.txt, 187): - end_if 7:37:14 0 (lumber.txt, 189): - goto 12 7:37:14 0 (lumber.txt, 40): - if_not $switch = 11 7:37:14 0 (lumber.txt, 41): - if_not chardir = 4 7:37:14 0 (lumber.txt, 42): - send end 7:37:14 0 (lumber.txt, 43): - wait #wait 7:37:14 0 (lumber.txt, 44): - end_if 7:37:14 0 (lumber.txt, 46): - set #chary charposy 7:37:14 0 (lumber.txt, 47): - send end 7:37:14 0 (lumber.txt, 48): - wait #wait 7:37:14 0 (lumber.txt, 49): - if #chary = charposy 7:37:14 0 (lumber.txt, 54): - if_not #chary = charposy 7:37:14 0 (lumber.txt, 56): - set $left free 7:37:14 0 (lumber.txt, 57): - set $right free 7:37:14 0 (lumber.txt, 58): - if #p < 0 and $switch = 00 7:37:14 0 (lumber.txt, 62): - set $switch 00 7:37:14 0 (lumber.txt, 63): - set #p #p + 1 Сообщение отредактировал Zeleax - 23.3.2013, 9:11
|
|
|
|
qwock |
23.3.2013, 12:05
|
Neophyte
Сообщений: 24
Регистрация: 12.1.2012 Группа: Пользователи Наличность: 0
Пользователь №: 14.480
Возраст: 30
|
Цитата(DarkMaster @ 23.3.2013, 11:35) Версия пилота? Не вижу эхо значений переменных и результата комманд. Скорее всего версия старая. Обновитесь до 2.32
странный он какой то ((( стоял 2,30
|
|
|
|
qwock |
23.3.2013, 17:45
|
Neophyte
Сообщений: 24
Регистрация: 12.1.2012 Группа: Пользователи Наличность: 0
Пользователь №: 14.480
Возраст: 30
|
Цитата(DarkMaster @ 23.3.2013, 13:40) Это забытые ошметки от отладки) В нем намного проще заниматься подобными ошибками благодаря логу и некоторым фишечкам.
запустили скрипт в 1,32 - сразу же новая ошибка в строке while (lastmsg what) and timer < 6000
|
|
|
|
qwock |
24.3.2013, 13:51
|
Neophyte
Сообщений: 24
Регистрация: 12.1.2012 Группа: Пользователи Наличность: 0
Пользователь №: 14.480
Возраст: 30
|
Цитата(DarkMaster @ 23.3.2013, 19:46) измените на: set $tempMsg lastmsg while $tempMsg <= what and timer < 6000 .... .... set $tempMsg lastmsg end_while
Пожалуйста, выкладывайте логи. По ним проще понимать, что произошло.
после редактирования на set $tempMsg lastmsg скрипт стабильно отработал первый рюкзак. в 2-32 пока не появлялась стартовая ошибка топика
|
|
|
|
qwock |
31.3.2013, 14:04
|
Neophyte
Сообщений: 24
Регистрация: 12.1.2012 Группа: Пользователи Наличность: 0
Пользователь №: 14.480
Возраст: 30
|
тот же скрипт появились странные новые баги какие то лог ошибки
14:47:45 0 (lumber.txt, 41): if_not $switch(0x00) = 11 14:47:45 0 (lumber.txt, 42): if_not chardir = 4 14:47:45 0 (lumber.txt, 47): set #chary(824) charposy 14:47:45 0 (lumber.txt, 47): #chary = 825 14:47:45 0 (lumber.txt, 48): send end 14:47:45 0 (lumber.txt, 49): wait #wait(300) 14:47:45 0 (lumber.txt, 50): if #chary(825) = charposy 14:47:45 0 (lumber.txt, 55): if_not #chary(825) = charposy 14:47:45 0 (lumber.txt, 57): set $left(free) free 14:47:45 0 (lumber.txt, 57): $left = free 14:47:45 0 (lumber.txt, 58): set $right(free) free 14:47:45 0 (lumber.txt, 58): $right = free 14:47:45 0 (lumber.txt, 59): if #p(133) < 0 and $switch(0x00) = 00(0x00) 14:47:45 0 (lumber.txt, 63): set $switch(0x00) 00(0x00) 14:47:45 0 (lumber.txt, 63): $switch = 00 14:47:45 0 (lumber.txt, 64): set #p(133) #p(133) + 1 14:47:45 0 (lumber.txt, 64): set - (64): Символ не распознан (pos:1)
краказябры в логе читаются на компе как "Символ не распознан" кусок скрипта
if_not $switch = 11 if_not chardir = 4 send end wait #wait end_if
set #chary charposy send end wait #wait if #chary = charposy send end wait #wait end_if
if_not #chary = charposy
set $left free set $right free if #p < 0 and $switch = 00 set #dx charposx - #startx gosub tunex2 end_if set $switch 00 set #p #p + 1 //64-я строка
=((
|
|
|
|
qwock |
31.3.2013, 16:14
|
Neophyte
Сообщений: 24
Регистрация: 12.1.2012 Группа: Пользователи Наличность: 0
Пользователь №: 14.480
Возраст: 30
|
Цитата(DarkMaster @ 31.3.2013, 16:36) Очень большая просьба к вам: постарайтесь обрезать скрипт до минимального размера с повторением ошибки. Локализуем - сможем обойти и пофиксить в следующей версии.
я постараюсь, но проблема в том, что ошибка появляется в "ходильной" части скрипта, в которой я не копался (( и кромсать его без потери хотя бы минимальной работоспособности будет не просто ( появится может почти сразу после старта скрипта, а может и через минут 40 работы краказябры = когда я копировал кусок лога с окно ввода сообщения форума вместо русского сообщения "Символ не распознан" были закорючки как при нераспознанной кодировке. сделаю скриншот в след раз
|
|
|
|
qwock |
31.3.2013, 17:40
|
Neophyte
Сообщений: 24
Регистрация: 12.1.2012 Группа: Пользователи Наличность: 0
Пользователь №: 14.480
Возраст: 30
|
18:38:52 0 (lumber.txt, 58): $right = free 18:38:52 0 (lumber.txt, 59): if #p(95) < 0 and $switch(0x00) = 00(0x00) 18:38:52 0 (lumber.txt, 63): set $switch(0x00) 00(0x00) 18:38:52 0 (lumber.txt, 63): $switch = 00 18:38:52 0 (lumber.txt, 64): set #p(95) #p(95) + 1 18:38:52 0 (lumber.txt, 64): set - (64): Ñèìâîë íå ðàñïîçíàí (pos:1)
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|