Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

MyDC.ru _ Готовые скрипты для PtokaX _ Sharecheck

Автор: Sephiroth_Lukaw 7.12.2008, 16:00

Название: ShareCheck(Old Share to VIP)
Версия API: API1, API2
Автор Оригинально скрипта: Неизвестен
Описание: Повышает/Понижает профиль пользователя, в зависимости от размера расшаренных им файлов(не забывайте про возможность некоторых клиентов, подменять размер шары)

Код
tShareProfile = {
[3] = 3, -- Юзер с профилем 3(Рег), поднимется до юзера с профилем 2(ВИП), если у него шара >= 3 гб
[2] = 10, -- Юзер с профилем 2(ВИП), поднимется до юзера с профилем 1(Оп), если у него шара >= 10 гб
}
Возможно добавлять юзеров, на которых скрипт реагировать не будет. Дать права, на возможность добавлять в исключения:
Код
tProfile = {
[0] = true, -- Разрешает Master'у добавлять в исключения.
}

Комментарий: Т.к. в теме из запросов больше нареканий не было, выкладываю в готовые(так же, выложен оригинальный скрипт(т.е. с Reg до VIP) с дописанными исключениями - API1).

 ShareCheckAPI1.rar ( 1.58 килобайт ) : 35
 ShareToVip.rar ( 1.51 килобайт ) : 62
 ShareCheckAPI2.rar ( 1.8 килобайт ) : 152
 

Автор: Артём 7.12.2008, 17:47

beat_brick.gif что-то я не как не могу понять вот это

Код
local tShareProfile = {
[3] = 3, -- Юзер с профилем 3, поднимется до юзера с профилем 2, если у него шара 3 гб
[2] = 10, -- Юзер с профилем 2, поднимется до юзера с профилем 1, если у него шара 10 гб
}

это какие на какие профили?

Перевёл скрипт на API 2,всё работает,только я ещё не совсем понял как с этим скриптом работать,во время теста
пишет мне <Админ> Размер Вашей шары достиг уровня Operator, Ваш профиль был обновлен, пожалуйста перезайдите на хаб...Перезахожу,меняет профиль с REG не на VIP как написано выше,а на Operator,может просто профили не совпадают,помогите разоюратся с профилями big_smile.gif

 ShareCheck_newapi.rar ( 1.8 килобайт ) : 38
 

Автор: Sephiroth_Lukaw 7.12.2008, 17:48

2 по идее - VIP, должен поднятся до Оператора, 3 - Рег, поднимется до ВИПа.

Автор: Артём 7.12.2008, 18:44

Цитата(Sephiroth_Lukaw @ 7.12.2008, 18:48) *
2 по идее - VIP, должен поднятся до Оператора, 3 - Рег, поднимется до ВИПа.

хорошо... это понятно,это получается вот тут нада прописовать кол-во шары нужной для роста профиля
Код
local tShareProfile = {
[3] = 3, -- Юзер с профилем 3, поднимется до юзера с профилем 2, если у него шара 3 гб
[2] = 10, -- Юзер с профилем 2, поднимется до юзера с профилем 1, если у него шара 10 гб
}

P.S. Тестил скрипт который я перевёл?

Автор: Sephiroth_Lukaw 7.12.2008, 19:42

Убрал лишнюю висящую переменную, перезалил.
Артём Да. Глюков на поверхности не видно) В архив положил твой под API2, с маленьким изменением.

Автор: Артём 7.12.2008, 19:56

Цитата(Sephiroth_Lukaw @ 7.12.2008, 20:42) *
Убрал лишнюю висящую переменную, перезалил.
Артём Да. Глюков на поверхности не видно) В архив положил твой под API2, с маленьким изменением.

Если не секрет,какие изменения :P

Автор: Sephiroth_Lukaw 7.12.2008, 20:00

sShare = 200 --// Размер шары в Gb
удалил, что бы не висело
И RegMan.AddReg(sNick,sPass, iShareProfile - 1)
Заменил на RegMan.AddReg(sNick,sPass, iShareProfile)
Вроде стабильнее стал. Мне сложно скрипт тестировать. %-)

Автор: Артём 7.12.2008, 20:06

Было бы не плохо если бы добавить профили
[1] = 400Gb, -- ОПер
[2] = 300GB, -- VIP
[3] = 20, -- REG
что-то типа такого,что бы попроще было, :P надеюсь понял что я хотел написать

Автор: Strannik 9.12.2008, 23:39

ShareCheck для API2
Повышает/Понижает профиль пользователя, в зависимости от размера расшаренных им файлов(не забывайте про возможность некоторых клиентов, подменять размер шары)
немножко переделал поднимает с Reg до VIP

 ShareCheck.rar ( 1.64 килобайт ) : 34
 

Автор: Артём 10.12.2008, 0:18

Цитата(Strannik @ 9.12.2008, 23:39) *
ShareCheck для API2
Повышает/Понижает профиль пользователя, в зависимости от размера расшаренных им файлов(не забывайте про возможность некоторых клиентов, подменять размер шары)
немножко переделал поднимает с Reg до VIP


:P и что ты тут добавил?вообщето этот скрипт уже давненько лежит в первом и втором посте... big_smile1.gif

Автор: mariner 10.12.2008, 2:46

можно добавлю, думаю опа стоит давать за 1Тб =)

Автор: Артём 10.12.2008, 8:56

Цитата(mariner @ 10.12.2008, 2:46) *
можно добавлю, думаю опа стоит давать за 1Тб =)


:P допишишь профели?А то я не пойму как их втулить...

Автор: Strannik 19.12.2008, 17:45

Цитата(Артём @ 10.12.2008, 1:18) *
:P и что ты тут добавил?вообщето этот скрипт уже давненько лежит в первом и втором посте... big_smile1.gif


Зато он работает без проблем
тот не хочит нормально работать переводит сразу в ОР и понежать не хочит confident.gif

Автор: Berkut 22.12.2008, 20:50

Есть одна сборочка GL (про всякие та экзотические StealthDC я вообще молчу), которая позволяет не только прописать большой объём шары, но и сделать её имитацию. Вопрос, почему ОПом становится человек с реальной шарой в 1Б? Проверить шару можно только вручную, т.к. "ТТН" левака меняется каждый раз.

Автор: sphinx 22.12.2008, 21:08

Согласен, бессмысленный скрипт. Проверить шару можно только вручную, а значит и профиль поменять тоже вручную. И даже нужно вручную это делать, если не хотите поиметь кучу левого народа в Випах и Опах.

Автор: Berkut 22.12.2008, 22:05

Цитата(sphinx @ 22.12.2008, 21:08) *
Согласен, бессмысленный скрипт. Проверить шару можно только вручную, а значит и профиль поменять тоже вручную. И даже нужно вручную это делать, если не хотите поиметь кучу левого народа в Випах и Опах.

Да идея-то понятна. Только с учётом наличия фейк-клиентов и довольно продвинутых способов защиты от детектирования, реализовать нормально её практически невозможно.

Автор: Parad0x 19.1.2009, 13:40

Выпадает ошибка при добавлении юзера в исключения - Синтаксис ShareCheck_newapi.lua:54: attempt to concatenate global 'sNick' (a nil value)
И еще скрипт запущен, юзер расшаривает выше порога, но в VIP не преходит. в токе в зарегистрированых юзерах, у этого юзера статус пользователь. Или может что-то не так зделано?

Автор: Sephiroth_Lukaw 19.1.2009, 17:57

Цитата
ShareCheck_newapi.lua:54: attempt to concatenate global 'sNick' (a nil value)
Исправил. Конвертер, зачем то имя переменной изменил. http://mydc.ru/ipb.html?act=attach&type=post&id=1477

Цитата
юзер расшаривает выше порога, но в VIP не преходит
Выложите сюда настройки(tShareProfile), какие у вас профили(если стандартные, то не нужно) и ваш размер шары, попробуйте ввести в чате команду /away(перейти в режим "отсутствую", это для повторной отправке информации о кол-во расшаренных данных, хотя, скорее всего не из-за этого)..

Я тестировал следующим образом:
Цитата("Настройки")
tShareProfile = {
[3] = 5, -- Юзер с профилем 3(Reg), поднимется до юзера с профилем 2(VIP), если у него шара 5 гб
[2] = 500, -- Юзер с профилем 2(VIP), поднимется до юзера с профилем 1(OP), если у него шара 500 гб
}
Захожу под Мастером(шара 400гб), ничего не происходит.
Перезахожу под Reg(шара 0гб) ничего не происходит.
Перезаходу под Reg(шара 400гб) делает VIP'ом.
Перезахожу под VIP'ом(шара 400гб) ничего не происходит.
Перезахожу под VIP'ом(шара 0гб), делает Reg'ом.
Перезахожу под VIP'ом(шара 700гб), делает Op'ом.
Перезахожу под Op'ом(шара 0гб), делает VIP'ом, затем, сразу же Reg'ом.
Больше я никак не тестировал..

Если у юзера меняется профиль вы сразу узнаете т.к. его выкидывает и бот сообщает ему в личку о случившемся.

Автор: Parad0x 19.1.2009, 19:09

в tShareProfile я убирал перевод из випа в оп, может в этом затык.
И еще путь к tCheck.txt пришлось прописать абсолютный, не захотел с относительным загружаться:
Синтаксис cannot open scripts/table/tCheck.txt: No such file or directory
Add: Sephiroth_Lukaw, спасибо скрипт работает

Странно, но пропало меню, но повышения юзерам выдаются

Автор: Sephiroth_Lukaw 19.1.2009, 19:13

Цитата
Странно, но пропало меню
Его только Master видит..
Вас не понизило?

Автор: Parad0x 19.1.2009, 19:17

Цитата(Sephiroth_Lukaw @ 19.1.2009, 21:13) *
Его только Master видит..
Вас не понизило?

Нет Master и остался и еще команда !addickl Parad0x к примеру, идет просто как обычное сообщение в чат...

Автор: Sephiroth_Lukaw 19.1.2009, 19:53

Ошибки не выдаёт?
Прописал все пути - http://mydc.ru/ipb.html?act=attach&type=post&id=1480(попытка записи в фаил, а путь не верный, бъётся ошибка, и пропускает команду в чат)
Если не будет работать, то, всё-равно найдём, почему у вас не работает. (=

В общем, если не будет всё-равно работать меню и команду пропускает в чат.
Замените(28 строка):

Код
function ChatArrival(tUser,sData)
на
Код
function ChatArrival(tUser,sData)
    local _,_,sTestCmd,sTestNick  = string.find(sData, "%b<>%s+[!,+](.-) (.*)|")
    if tProfile[tUser.iProfile] == true then
    Core.SendToAll(tUser.iProfile.." - разрешено добавлять исключения т.е. с профилями всё нормально. Проверяем регулярку:")
    Core.SendToAll("sTestCmd: "..sTestCmd)
    Core.SendToAll("sTestNick: "..sTestNick)
    else
    Core.SendToAll(tUser.iProfile.." - не разрешено добавлять исключения")
    end

Отправьте в главный чат сообщение "!addickl Parad0x"(без кавычек)
И кидайте сюда, что выдаст скрипт.

Автор: Parad0x 19.1.2009, 22:33

Меню нет, но комманды работают, в частности:

Код
!delickl

и
Код
!addickl

Но что касается
Код
!listl
скрипт выдаёт:
Код
Синтаксис ShareCheck_newapi.lua:33: attempt to concatenate local 'sTestCmd' (a nil value)

И еще, что странно ругается на скрипт Actions_newapi.lua (но это уже драгая темаbig_smile.gif):
Код
Синтаксис Actions_newapi.lua:321: bad argument #1 to 'len' (string expected, got nil)


и еще если кто-либо шлет сообщение в главный чат, то в чат идет это:
2 - не разрешено добавлять исключения (от випа)
0 - разрешено добавлять исключения т.е. с профилями всё нормально. Проверяем регулярку (от мастеров)
А скрипт выдает:
Код
Синтаксис ShareCheck_newapi.lua:33: attempt to concatenate local 'sTestCmd' (a nil value)

Автор: Sephiroth_Lukaw 20.1.2009, 6:10

Цитата
и еще если кто-либо шлет сообщение в главный чат, то в чат идет это:
Я попросил заменить 28 строку для проверки.
Цитата
Отправьте в главный чат сообщение "!addickl Parad0x"(без кавычек)
И кидайте сюда, что выдаст скрипт.
, но т.к. !addickl работает, это делать не нужно т.е. уберите, то, что заменили или перекачайте скрипт, тогда и !listl должен работать.

Насчёт меню...ммм...для проверки(тогда узнаем, почему у вас не работает) можно сделать так:
найти
Цитата
function UserConnected(tUser)
if tProfile[tUser.iProfile] == true then
Core.SendToNick(tUser.sNick, "$UserCommand 1 3 Шара\\Добавить в исключения $<%[mynick]> !addickl %[line: Nick]||")
Core.SendToNick(tUser.sNick, "$UserCommand 1 3 Шара\\Удалить из исключений $<%[mynick]> !delickl %[line: Nick]||")
Core.SendToNick(tUser.sNick, "$UserCommand 1 3 Шара\\Кто в исключениях $<%[mynick]> !listl nil||")
end
end
и заменить на
Цитата
function UserConnected(tUser)
if tProfile[tUser.iProfile] == true then
Core.SendToNick(tUser.sNick, "<Bot> Отправка меню.")
Core.SendToNick(tUser.sNick, "$UserCommand 1 3 Шара\\Добавить в исключения $<%[mynick]> !addickl %[line: Nick]||")
Core.SendToNick(tUser.sNick, "$UserCommand 1 3 Шара\\Удалить из исключений $<%[mynick]> !delickl %[line: Nick]||")
Core.SendToNick(tUser.sNick, "$UserCommand 1 3 Шара\\Кто в исключениях $<%[mynick]> !listl nil||")
Core.SendToNick(tUser.sNick, "<Bot> Меню было отправлено.")
else
Core.SendToNick(tUser.sNick, "<Bot> Не хватает прав..")
Core.SendToNick(tUser.sNick, "<Bot> Профиль: "..tUser.iProfile)
end
end
и зайти на хаб(под Мастером), и отправить сюда, что выдаст скрипт (=

Автор: Parad0x 20.1.2009, 11:58

Скрипт ни на что не паругался, в чате

Код
<Bot> Отправка меню.
<Bot> Меню было отправлено.

Но я его не вижу. Чот не чего не понимаюbig_smile.gif

Автор: White_Power 10.11.2009, 6:42

Цитата(Sephiroth_Lukaw @ 7.12.2008, 16:00) *
(не забывайте про возможность некоторых клиентов, подменять размер шары)


По поводу клиентов знаю.У самого фейк.А вот подскажите как в ручную изменять шару?У нас один тип на моём хабе ставил в 20 ТБ и выше.Как он это зделал не подскажите мне детально?Дело в том,что я на этом хабе ОПератор и хотелось бы разобраться

Автор: Nickolya 10.11.2009, 9:50

Залезаешь значит ты в базу дц где хранятся все записи о файлах шары и в конце каждого значения ставишь еще нолик, будет тебе счастье. А если серьезно, то тебе это никто не расскажет не будь он дураком. Да и как модер хочу спросить, зачем ты отдельную тему создал если написал сюда такое же сообщение???

Автор: alcorp 18.5.2011, 20:56

Где-то тут иногда лишнее майинфо проскакивает... Никто не замечал?