Проблемы с викториной v1.8 by Sergio + new addons.

Решение вопросов при работе с TCL скриптами.

Модератор: Модераторы

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Teppopucm » 09 ноя 2013 12:39

Всё вроде работает.
Есть одно но:
ошибка при выполнении !место: can't read "usr(duels)": no such element in array

Подскажите пожалуйста, где нужна поправка?
Аватара пользователя
Teppopucm
 
Сообщения: 24
Зарегистрирован: 25 фев 2010 21:29
Благодарил (а): 12 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.20

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение tvrsh » 10 ноя 2013 15:27

Teppopucm писал(а):Всё вроде работает.
Есть одно но:
ошибка при выполнении !место: can't read "usr(duels)": no such element in array

Подскажите пожалуйста, где нужна поправка?

Вот это точно сделал?
В процедуре ::tpub::users найти
                        if {![info exists data(score)]} { set data(score) 0 }

добавить после
                        if {![info exists data(duels)]} { set data(duels) 0 }

В патилайне введи команду
.tcl getuser хэндл_игрока_чье_место_смотришь XTRA
и покажи что на нее ответит.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Teppopucm » 10 ноя 2013 21:18

tvrsh писал(а):
Teppopucm писал(а):Всё вроде работает.
Есть одно но:
ошибка при выполнении !место: can't read "usr(duels)": no such element in array

Подскажите пожалуйста, где нужна поправка?

Вот это точно сделал?
В процедуре ::tpub::users найти
                        if {![info exists data(score)]} { set data(score) 0 }

добавить после
                        if {![info exists data(duels)]} { set data(duels) 0 }

В патилайне введи команду
.tcl getuser хэндл_игрока_чье_место_смотришь XTRA
и покажи что на нее ответит.


Да, в процедуре ::tpub::users точно прописал вышеуказанное.

В патилайне пишет следующее:
(21:14:55) <Яр> .tcl getuser Respekt XTRA
(21:14:55) (Teppopucm) Tcl: {quiz {anwins 31 answersmonth 0 scoremonth 0 score 1708 supergames 0 answersday 0 wins 0 scoreday 0 answers 432 augames 0 last 1365750551 cont 7 quick 1.97}} {created 1351886592} {TMPTIME 1365750551} {ATIME 5238.653999090195} {TIME 6446}
Аватара пользователя
Teppopucm
 
Сообщения: 24
Зарегистрирован: 25 фев 2010 21:29
Благодарил (а): 12 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.20

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Radiosignal » 10 ноя 2013 21:32

tvrsh, добавил все, что выше ты описал, но бот ошибку выдает.
.tcl set errorInfo
Tcl: can't read "::tpub::qcount": no such variable
Tcl: while executing
Tcl: "set ::tpub::qcount"
Tcl: (procedure "cmd_start" line 13)
Tcl: invoked from within
Tcl: "cmd_start $nick $chan $text"
Tcl: (procedure "::tpub::cmd_ЯР" line 1)
Tcl: invoked from within
Tcl: "::tpub::cmd_$cmd $nick $chan $text"

Не добавлял только
::tpub::stats_write
, так в этой версии нету ее.
А в процедурах z_quit и z_part нету вот этой строки
 set nick [nick2hand $nick]
, но я ее добавил сам, так как указано у тебя.
Radiosignal
 
Сообщения: 87
Зарегистрирован: 17 июн 2009 18:01
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение tvrsh » 10 ноя 2013 21:42

Этот человек ничего не ответил за этот месяц. Покажи активного игрока. В строке должна быть запись duels 0.
Ошибка
can't read "::tpub::qcount": no such variable
к дуэлям не имеет отношения. Мои изменения не затрагивали указанную часть кода.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Teppopucm » 10 ноя 2013 21:47

tvrsh писал(а):Этот человек ничего не ответил за этот месяц. Покажи активного игрока. В строке должна быть запись duels 0.

(21:44:18) <Яр> .tcl getuser Denalla XTRA
(21:44:19) (Teppopucm) Tcl: {TMPTIME 1382015822} {ATIME 673680.935002327} {TIME 8924121} {created 1337184244} {quiz {anwins 2339 remort 2 answersmonth 3112 scoremonth 9060 score 46964 supergames 62 answersday 0 wins 0 scoreday 0 augames 231 answers 44763 last 1382015536 cont 26 quick 2.35}}

После команды !место выводит следующее:
(21:41:30) <Яр> .tcl set errorInfo
(21:41:30) (Teppopucm) Tcl: can't read "usr(duels)": no such element in array
(21:41:30) (Teppopucm) Tcl: while executing
(21:41:30) (Teppopucm) Tcl: "list $hand $usr(duels) [format %d.%08d $usr(score) [expr 999999 - $usr(answers)]]"
(21:41:30) (Teppopucm) Tcl: (procedure "users" line 212)
(21:41:30) (Teppopucm) Tcl: invoked from within
(21:41:30) (Teppopucm) Tcl: "users list8"
(21:41:30) (Teppopucm) Tcl: (procedure "place5" line 3)
(21:41:30) (Teppopucm) Tcl: invoked from within
(21:41:30) (Teppopucm) Tcl: "place5 $hand"
(21:41:30) (Teppopucm) Tcl: (procedure "cmd_place" line 43)
(21:41:30) (Teppopucm) Tcl: invoked from within
(21:41:30) (Teppopucm) Tcl: "cmd_place $nick $chan $text"
(21:41:30) (Teppopucm) Tcl: (procedure "::tpub::cmd_место" line 1)
(21:41:30) (Teppopucm) Tcl: invoked from within
(21:41:30) (Teppopucm) Tcl: "::tpub::cmd_$cmd $nick $chan $text"
Аватара пользователя
Teppopucm
 
Сообщения: 24
Зарегистрирован: 25 фев 2010 21:29
Благодарил (а): 12 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.20

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Radiosignal » 10 ноя 2013 21:52

Может быть это из за того, что бот Windrop, пробовал на разных версиях, а у тебя Eggdrop, потому что у Teppopucma все нормально, но кроме того незначительного бага у него.
Radiosignal
 
Сообщения: 87
Зарегистрирован: 17 июн 2009 18:01
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Teppopucm » 10 ноя 2013 21:53

При команде !ок выводит следущее:
(21:49:08) (Teppopucm) [21:49:09] can't read "begduel": no such variable
(21:49:08) (Teppopucm) [21:49:09] %TRUPP% ок -- ERROR
Аватара пользователя
Teppopucm
 
Сообщения: 24
Зарегистрирован: 25 фев 2010 21:29
Благодарил (а): 12 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.20

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Radiosignal » 10 ноя 2013 21:55

Наверно из-за разных версий викторин. У Sergio она отличается.
Radiosignal
 
Сообщения: 87
Зарегистрирован: 17 июн 2009 18:01
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение tvrsh » 10 ноя 2013 22:21

Teppopucm писал(а):При команде !ок выводит следущее:
(21:49:08) (Teppopucm) [21:49:09] can't read "begduel": no such variable
(21:49:08) (Teppopucm) [21:49:09] %TRUPP% ок -- ERROR

Часть кода с переменной begduel закомментирована в приведенной мною инструкции, и работать не должна вообще. Значит ты ее как-то раскомментировал если происходит обращение к переменной.

В блоке
# коррекция возможно повреждённых записей
в XTRA quiz прописываются все переменные пользователя в которых хранятся его игровые данные. И если там прописана строка
                        if {![info exists data(duels)]} { set data(duels) 0 }
и пользователь отвечал на вопросы, то параметр duels 0 должен быть в .tcl getuser handl XTRA quiz.

Смотрим на то, что ты мне показал про деналлу. У нее last 1382015536.
<tvrsh> $$ return [clock format 1382015536 -format %d.%m.%Y]
<@bionic> Return: 17.10.2013 - 0.544 ms.

Это активный игрок? Я прошу игрока который хоть на что-то ответил после того как были внесены изменения.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Teppopucm » 10 ноя 2013 22:55

tvrsh писал(а):
Teppopucm писал(а):При команде !ок выводит следущее:
(21:49:08) (Teppopucm) [21:49:09] can't read "begduel": no such variable
(21:49:08) (Teppopucm) [21:49:09] %TRUPP% ок -- ERROR

Часть кода с переменной begduel закомментирована в приведенной мною инструкции, и работать не должна вообще. Значит ты ее как-то раскомментировал если происходит обращение к переменной.

Закомментировал - теперь в порядке.
Это активный игрок? Я прошу игрока который хоть на что-то ответил после того как были внесены изменения.

(22:45:26) <Яр> .tcl getuser TRUPP XTRA
(22:45:26) (Teppopucm) Tcl: {quiz {anwins 1659 remort 2 answersmonth 11 scoremonth 56 score 19540 supergames 65 duels 1 tremort Еврэй answersday 11 wins 0 scoreday 57 answers 18270 augames 270 cont 26 last 1384109093 quick 0.83 memo {So Fucking What?}}} {ATIME 290466.6370139122} {TMPTIME 1384109093} {TIME 3051399} {created 1337182743} {LASTMOD Яр} {LMT DELHOST}
В этом плане работает.
в процедуре ::tpub::users где "list8" еще раз скопировал и заменил там - при этом следующая картина:
при команде !место выводит:
ошибка при выполнении !место: can't read "usr(duels)": no such element in array
и вылетает бот. В партилайне пишет:
(22:48:22) (Teppopucm) [22:48:24] can't read "usr(duels)": no such element in array
(22:48:22) (Teppopucm) [22:48:24] * Last context: tclhash.c/710 [Tcl proc: ::tpub::msg_pub, param: $_pubm1 $_pubm2 $_pubm3 $_pubm4 $_pubm5]
(22:48:22) (Teppopucm) [22:48:24] * Please REPORT this BUG!
(22:48:22) (Teppopucm) [22:48:24] * Check doc/BUG-REPORT on how to do so.
(22:48:23) (Teppopucm) [22:48:24] * Wrote DEBUG
(22:48:23) (Teppopucm) [22:48:24] * SEGMENT VIOLATION -- CRASHING!

И на этом разрывается соединение.
Аватара пользователя
Teppopucm
 
Сообщения: 24
Зарегистрирован: 25 фев 2010 21:29
Благодарил (а): 12 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.20

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение tvrsh » 11 ноя 2013 20:47

Teppopucm, в конец строки
    if {$user(duels) != 0} { append msgs "; \00305Дуэли\00310: \00307$place5-е\00310 (\00303$user(duels) [lindex {. дуэль дуэли дуэлей} [numgrp $user(duels)]]\00310)"}

Допиши закрывающую фигурную скобку.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Teppopucm » 11 ноя 2013 21:21

tvrsh писал(а):Teppopucm, в конец строки
    if {$user(duels) != 0} { append msgs "; \00305Дуэли\00310: \00307$place5-е\00310 (\00303$user(duels) [lindex {. дуэль дуэли дуэлей} [numgrp $user(duels)]]\00310)"}

Допиши закрывающую фигурную скобку.

Была дописана мною ранее. Ошибка в другом месте - не могу определить где и что именно.
Что-то мне подсказывает в процедуре ::tpub::users где "list8" не так..
Аватара пользователя
Teppopucm
 
Сообщения: 24
Зарегистрирован: 25 фев 2010 21:29
Благодарил (а): 12 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.20

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение tvrsh » 11 ноя 2013 21:51

В list8 после строки
                                array set usr $xtra

Допиши
if {![info exists usr(duels)]} {continue}

Проблему не решит, но от падений избавит.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.

За это сообщение автора tvrsh поблагодарил:
Teppopucm (11 ноя 2013 22:07)
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Teppopucm » 11 ноя 2013 21:55

это в "list8"
if {[info exists usr(last)] && [expr {[clock seconds] - $usr(last)}] < 32140800 && ![info exists usr(link)]} {
lappend users [list $hand $usr(duels) [format %d.%08d $usr(score) [expr {999999 - $usr(answers)}]]]

Убрал фигурные скобки, выделенные жирными - по скольку у меня так везде в "list1" "list2" и т.д.
Бот при этом не вылетает, имея в патилайне смс:
(21:53:47) (Teppopucm) [21:53:47] can't read "usr(duels)": no such element in array
(21:53:47) (Teppopucm) [21:53:47] %Яр% место -- ERROR


Добавлено спустя 4 минуты 57 секунд:
tvrsh писал(а):В list8 после строки
                                array set usr $xtra

Допиши
if {![info exists usr(duels)]} {continue}

Проблему не решит, но от падений избавит.

Оу! Проблема решена!
Респект и уважуха!
Аватара пользователя
Teppopucm
 
Сообщения: 24
Зарегистрирован: 25 фев 2010 21:29
Благодарил (а): 12 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.20

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Radiosignal » 12 ноя 2013 14:29

Teppopucm, после какой строки ты добавлял лист восемь?
 return $sorted
после этой, когда заканчивается лист шестой или какой-то другой.
Radiosignal
 
Сообщения: 87
Зарегистрирован: 17 июн 2009 18:01
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Teppopucm » 13 ноя 2013 23:12

Radiosignal писал(а):Teppopucm, после какой строки ты добавлял лист восемь?
 return $sorted
после этой, когда заканчивается лист шестой или какой-то другой.

Да, после шестого.
 return $sorted
}

Фигурную скобку не забудь добавить. Далее лист8.
Аватара пользователя
Teppopucm
 
Сообщения: 24
Зарегистрирован: 25 фев 2010 21:29
Благодарил (а): 12 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.20

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Radiosignal » 14 ноя 2013 14:32

Ок. Скобку я добавил сразу. Teppopucm, а ты добавлял строки
putmsg $chan "$msg\00310.\003"

puts $writefile "[incr place]#[lindex $item 0]#$honor#[lindex $item 1]#$user(scoremonth)#$user(answers)#$user(answersmonth)#$user(quick)#$user(cont)#$user(remort)#$user(

set hand1 [nick2hand $targ]

ну еще некоторые, все перечислять не буду. Просто, в скрипте у Sergio их нету, а вот в Kreonовском они остались. Что ты с этим делал.
Radiosignal
 
Сообщения: 87
Зарегистрирован: 17 июн 2009 18:01
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Teppopucm » 16 ноя 2013 10:31

Radiosignal писал(а):Ок. Скобку я добавил сразу. Teppopucm, а ты добавлял строки
putmsg $chan "$msg\00310.\003"

puts $writefile "[incr place]#[lindex $item 0]#$honor#[lindex $item 1]#$user(scoremonth)#$user(answers)#$user(answersmonth)#$user(quick)#$user(cont)#$user(remort)#$user(

set hand1 [nick2hand $targ]

ну еще некоторые, все перечислять не буду. Просто, в скрипте у Sergio их нету, а вот в Kreonовском они остались. Что ты с этим делал.

Где в процедуре ::tpub::won:
        if {[info exist user(remort)] && $user(remort) > 0} {
                set msgs "\00303$hand\00310 имеет за своими плечами \00307$user(remort)\00310 реморт."
 

Дописано:
TCL: [ Скачать ] [ Скрыть ]
        if {[info exists user(duels)] && ($user(duels)!=0)} {
                append msgs " \00310Побеждено в \00306$user(duels)\00310 [lindex {. дуэли дуэлях дуэлях} [numgrp $user(duels)]]."
        }
 
Аватара пользователя
Teppopucm
 
Сообщения: 24
Зарегистрирован: 25 фев 2010 21:29
Благодарил (а): 12 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.20

Re: Проблемы с викториной v1.8 by Sergio + new addons.

Сообщение Radiosignal » 16 ноя 2013 19:59

Ок. Попробую.Teppopucm, а строки все у тебя были, которые писал tvrsh или ты брал их из другого скрипта.
Radiosignal
 
Сообщения: 87
Зарегистрирован: 17 июн 2009 18:01
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.

Пред.След.

Вернуться в TCL скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4

cron