|
Главная | Клиентские скрипты (greylink) - Страница 14 - Форум | Четверг, 21.11.2024, 21:59
Клиентские скрипты (greylink)
| |
hmury | Дата: Воскресенье, 05.10.2008, 10:58 | Сообщение # 1 |
Генерал-лейтенант
Сообщений: 599
Репутация: 32
Статус: Offline
| Сайт посвященный Луа http://www.lua.ru Форум с готовыми скриптами на http://mydc.ru Еще один форум на http://adrium.ipbfree.com мой знакомый, Chaser, написал скрипт "объявление на хабе" Code dcpp = {} spamtable = {} -- spamtable= { ["dc.ru"] = { 0, 10, "sample" } , ["localhost"] = { 0, 12, "hello there!" } }
function spam(hubname, timeout, text) spamtable[hubname] = { 0, timeout, text } end
function dcpp.OnTimer() for hubname, hubentry in pairs(spamtable) do if (hubentry[1] == 0) and (hubentry[3] ~= "") then hubentry[1] = hubentry[2] DC():SendPublicMessage(hubname, hubentry[3]) else hubentry[1] = hubentry[1] - 1 end end return nil end
text = "Спам-бот. Запуск спама на хабе с периодом 600 секунд:\r\n" text = text .. "/lua spam(\"dc.ufanet.ru\", 600, \" ТУТ ВАШЕ СООБЩЕНИЕ \")\r\n" text = text .. "\r\n" text = text .. "Чтобы отключить спам на хабе, наберите\r\n" text = text .. "/lua spam(\"dc.ufanet.ru\", 0, \"\")\r\n" text = text .. "\r\n" text = text .. "Адрес хаба надо писать в точности, как в столбце 'Сервер'\r\n" text = text .. "в списке 'Избранных хабов'\r\n"
DC():MessageBox(text, "spam.lua", "ok", "info") DC():RunTimer(1) это надо вставить в блокнот и сохранить в папку Scripts с именем spam.lua, обязательно в кодировке utf-8. запуск командой
Сообщение отредактировал livedc - Четверг, 19.03.2009, 20:19 |
|
|
|
vitaly3 | Дата: Понедельник, 04.07.2011, 12:12 | Сообщение # 196 |
Рядовой
Сообщений: 10
Репутация: 0
Статус: Offline
| Помогите, плиз, выполнить команду "/hub 88" при запуске greylink.
В startup.lua написал строчки -- DC():RunTimer(5) DC():SendPublicMessage("myhuburl", "/hub 88") -- - выдается мессага "/hub 88" в чат хаба, а надо чтоб выполнялась команда "/hub 88".
|
|
|
|
Setuper | Дата: Понедельник, 04.07.2011, 20:38 | Сообщение # 197 |
Майор
Сообщений: 98
Репутация: 6
Статус: Offline
| На сколько мне известно, скриптом нельзя выполнять команды клиента. Команды сразу отсылаются на хаб. По всей видимости, отчасти это связано с безопасностью: команды может выполнять только непосредственно сам пользователь из строки ввода сообщения.
lua master
|
|
|
|
vitaly3 | Дата: Вторник, 05.07.2011, 00:21 | Сообщение # 198 |
Рядовой
Сообщений: 10
Репутация: 0
Статус: Offline
| Setuper, спасибо за ответ. Тогда как по-другому можно решить простую задачу: надо создать постоянный чатрум на моем IP на 88 порту, аналогичный выполнению команды "/hub 88" в greylink (чтобы каждый раз при перезапуске не набирать руками эту команду).
|
|
|
|
SMT | Дата: Четверг, 07.07.2011, 19:21 | Сообщение # 199 |
Генерал-лейтенант
Сообщений: 514
Репутация: 28
Статус: Offline
| вместо чат-комнаты нужно установить полноценную программу-хаб. и возможностей будет побольше, и работать будет в фоне, не мешая никому
|
|
|
|
sc0rpi0n | Дата: Среда, 10.08.2011, 05:38 | Сообщение # 200 |
Рядовой
Сообщений: 1
Репутация: 0
Статус: Offline
| Скачал MoonADC 0.8.5.7,пользуюсь GreylinkDCMod.0.48-x64.ExtendedPack.v2.3.0.У меня кроме скрипта connector ни один не работает. Добавлено (10.08.2011, 05:38) --------------------------------------------- Подскажите плиз,как добавить сбда чат бот,аналогично как помощник,только чтоб в чате отвечал? Code dcpp = {}
--[[ Скрипт-комбайн, выполняющий одновременно несколько функций: ФУНКЦИЯ АВТОР Анти-флуд Setuper Анти-капс Setuper Анти-мат GreyTeam //Конвертатор корней матных слов Помошник GreyTeam //Приватные команды: качать++; команды++; когда++; //Чат команды: у кого есть; дайте скачать; почему не качается; немогу качать; немогу скачать; как качать; как скачать; Выдача слотов zangriEAX //Приватные команда: : slot++
]] --[[ /////////////////////////////////////////////////////////////// ]] -- Размер сообщения с которого начинает реагировать скрипт local iCheckSize = 3
-- Доля капса, при котором сработает скрипт local iPersents = 0.4
-- Число разрешённых подряд символов local iSymbRep = 3
os.setlocale"Russian_Russia.1251" local sBigData = DC():ToUtf8("[АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯABCDEFGHIJKLMNOPQRSTUVWXYZ]") local sPatternRep = "(.)("..("%1"):rep(iSymbRep)..")"
local function CheckRep(sData) if sData:match(sPatternRep) then local sSmb, sMsg, iC = '', '', 0 for i = 1, #sData do local s = sData:sub(i, i) if sSmb == s then iC = iC + 1 if iC <= iSymbRep then sMsg = sMsg..s end else sSmb, iC, sMsg = s, 1, sMsg..s end end return sMsg end return sData end
local function CheckCaps(sData) local sNoSpaces = sData:gsub("[%s%d%c%p]", '') local iNoSpasesLen = sNoSpaces:len() if iNoSpasesLen > 0 then local iCapsLen = 0 sNoSpaces:gsub(sBigData, function(c) iCapsLen = iCapsLen + 1 end) if (iCapsLen / iNoSpasesLen) >= iPersents then sData = sData:lower() end end return sData end
--[[ Антимат - конвертатор ]] --[[ /////////////////////////////////////////////////////////////// ]] function dcpp.PreviewPublicMessage(huburl, message)
msg, count = string.gsub(message, "(хуй)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(ХУЙ)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(хуя)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(ХУЯ)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(бля)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(БЛЯ)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(пизд)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(ПИЗД)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(пезд)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(ПЕЗД)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(еба)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(ЕБА)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(ебу)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(ЕБУ)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(оеб)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(ОЕБ)", "мат") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(почему не качается)", "Привет народ! я новичек, помогите пожалуста мне настроить ДС, а то у меня не получается качать или подскажите где почитать как настраивать ДС++. Зарание спасибо!") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(немогу качать)", "Привет народ! я новичек, помогите пожалуста мне настроить ДС, а то у меня не получается качать или подскажите где почитать как настраивать ДС++. Зарание спасибо!") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(немогу скачать)", "Привет народ! я новичек, помогите пожалуста мне настроить ДС, а то у меня не получается качать или подскажите где почитать как настраивать ДС++. Зарание спасибо!") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(как качать)", "Привет народ! я новичек, помогите пожалуста мне настроить ДС, а то у меня не получается качать или подскажите где почитать как настраивать ДС++. Зарание спасибо!") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
msg, count = string.gsub(message, "(как скачать)", "Привет народ! я новичек, помогите пожалуста мне настроить ДС, а то у меня не получается качать или подскажите где почитать как настраивать ДС++. Зарание спасибо!") if (count > 0) then DC():SendPublicMessage(huburl, msg) return 1 end
--[[ Антимат - запрет отправки в чат ]] --[[ /////////////////////////////////////////////////////////////// ]] msg, count = string.gsub(message, "(у кого есть)", "запрос") if (count > 0) then DC():MessageBox(" Воспользуйтесь меню поиска в ДС++ клиенте \r\n Главное меню - вид - Поиск \r\n Лучше всего искать в час-пик (21 час) по всем хабам сети \r\n простой запрос из одно слова + фильтр", "scripts> startup.lua", "ok", "info") return 2 end
msg, count2 = string.gsub(message, "(дайте скачать)", "запрос")
if (count2 > 0) then DC():MessageBox(" Воспользуйтесь меню поиска в ДС++ клиенте \r\n Главное меню - вид - Поиск \r\n Лучше всего искать в час-пик (21 час) по всем хабам сети \r\n простой запрос из одно слова + фильтр", "scripts> startup.lua", "ok", "info") return 2 end
--[[ Антикапс и антифлуд]] --[[ /////////////////////////////////////////////////////////////// ]] message = DC():FromUtf8(message) if message:len() >= iCheckSize then local sMsg = CheckCaps(CheckRep(message)) if sMsg ~= message then DC():SendPublicMessage(huburl, DC():ToUtf8(sMsg)) return 1 end end end
--[[ Помошник ]] --[[ /////////////////////////////////////////////////////////////// ]] BotSay = {
{ ["question"] = {"команды++"}, ["answer"] = {"Остальные команды я допишу попозже в файл: scripts\startup.lua",}, },
{ ["question"] = {"качать++"}, ["answer"] = {" Если у тебя не получается с меня скачать, сделай следующую проверку: \r\n 1. Можешь ли ты качать хоть с кого-то, если нет, то у тебя скорее всего ДС++ заблокироавнна Антивирусом/Брандмауэром/Фаирволом; \r\n 2. Проверь режим мой и свой. У одного из нас должен быть активный режим соединения. Файл-Настройки-Настройки соединения; \r\n 3. Проверь работает ли поиск в активном режиме. Если нет, то переведи свой ДС++ в пассивный режим; \r\n 4. Если ничего не помогло, попроси админов хаба разобраться."}, },
{ ["question"] = {"когда++"}, ["answer"] = {"Возле компьютера я бываю по будням с 18 до 23 и по выходным с 12 до 23."}, },
}
--[[ Выдача слотов ]] --[[ /////////////////////////////////////////////////////////////// Russian_Russia.1251 ToUtf8]] --[[------------------------------------------------------------------------------------------------------------
DC():SendPrivateMessage(uid,tostring(msg:match(DC():ToUtf8(v))))
--]]------------------------------------------------------------------------------------------------------------ local slots = {"slot++"} local slotSec = 3600 --Время выдачи слота в секундах,если поставить 0 убирается экстра-слот 0о local slotMsg = "[NI]: тебе выдан экстра-слот на [TI]" ---------------------------------------------------------------- -- Далее ничего не трогаем -- ---------------------------------------------------------------- String2Lower = function(s) for i = 192, 223 do s = s:gsub(_G.string.char(i), _G.string.char(i + 32)) end s = s:gsub(_G.string.char(168), _G.string.char(184)) return s:lower() end
function GetNormalTime(s) s=tonumber(s) or 0 local r="" if s>=31104000 then r=math.floor(s/31104000).." г. " s=math.fmod(s,31104000) end if s>=2592000 then r=r..math.floor(s/2592000).." мес. " s=math.fmod(s,2592000) end if s>=86400 then r=r..math.floor(s/86400).." д. " s=math.fmod(s,86400) end if s>=3600 then r=r..math.floor(s/3600).." ч. " s=math.fmod(s,3600) end if s>=60 then r=r..math.floor(s/60).." мин. " s=math.fmod(s,60) end return r..s.." сек." end slotMsg = slotMsg:gsub("%[TI%]",GetNormalTime(slotSec))
--[[ Помошник ]] function dcpp.OnPrivateMessage(cid, data)
--DC():SendPrivateMessage(cid,String2Lower(data)) for i,v in pairs(slots) do if data:match(DC():ToUtf8(v)) then DC():SetExtraSlot(cid,slotSec) DC():SendPrivateMessage(cid,(tostring(slotMsg:gsub("%[NI%]",DC():GetUserInfo(cid).NI)))) break end end
local userInfo = DC():GetUserInfo(cid) if (userInfo.ME ~= "1") then for _, mini_table in pairs(BotSay) do for _, trigger in pairs(mini_table["question"]) do if string.find(data, trigger) then DC():SendPrivateMessage(cid, mini_table["answer"][math.random(1,table.getn(mini_table["answer"]))]) return nil end end end end
return nil end
|
|
|
|
Tagir | Дата: Понедельник, 17.10.2011, 22:51 | Сообщение # 201 |
Рядовой
Сообщений: 5
Репутация: 0
Статус: Offline
| Есть такой вопрос . Почему когда кидаю текст с магнет ссылкой , смалики не отображаются а просто :солнце: и всё . Как заметил когда кидаю без магнет ссылки то всё норм . Как то можно это исправить и что нужно сделать . Если не трудно подскажите . Добавлено (17.10.2011, 22:51) --------------------------------------------- Спасибо за этого Чат бота огромное . Очень помог и помогает мне . Создателю могу бумагу на счёт кинуть . Только в личку номер
|
|
|
|
hmury | Дата: Понедельник, 17.10.2011, 23:46 | Сообщение # 202 |
Генерал-лейтенант
Сообщений: 599
Репутация: 32
Статус: Offline
| Quote (Tagir) Есть такой вопрос . Почему когда кидаю текст с магнет ссылкой , смалики не отображаются а просто :солнце: и всё . Как заметил когда кидаю без магнет ссылки то всё норм . Как то можно это исправить и что нужно сделать . Если не трудно подскажите . у тебя не грейлинк? в других dc смайлы и магнеты не перемешиваются. в greylink всё как и должно быть
|
|
|
|
Tagir | Дата: Среда, 26.10.2011, 23:11 | Сообщение # 203 |
Рядовой
Сообщений: 5
Репутация: 0
Статус: Offline
| в грей линке всё норм , а с флайлинка нет. В общем решить эту проблемку получится отправив два сообщения? или можно как то ещё ? Добавлено (26.10.2011, 23:11) --------------------------------------------- У меня ещё одна проблемка с хабом . после того как отправляешь в чат одно сообщение то второй раз точно такое же нельзя отправить , нужен пробел или ещё какой нибудь символ . Так как сделать чтоб Я мог и туда кидать сообщения ?
Сообщение отредактировал Tagir - Вторник, 18.10.2011, 19:15 |
|
|
|
SMT | Дата: Четверг, 27.10.2011, 12:27 | Сообщение # 204 |
Генерал-лейтенант
Сообщений: 514
Репутация: 28
Статус: Offline
| Quote (Tagir) У меня ещё одна проблемка с хабом . после того как отправляешь в чат одно сообщение то второй раз точно такое же нельзя отправить , нужен пробел или ещё какой нибудь символ . Так как сделать чтоб Я мог и туда кидать сообщения ? найти админа хаба и надавать ему по башке за такие настройки анти-флуда. клиент тут не причём, это обычная настройка хаба - сколько раз разрешено повторять одинаковое сообщение
|
|
|
|
Tagir | Дата: Пятница, 18.11.2011, 15:10 | Сообщение # 205 |
Рядовой
Сообщений: 5
Репутация: 0
Статус: Offline
| Этих прыщей труднее найти чем самых умных шпионов
|
|
|
|
Otshelnik-Fm | Дата: Среда, 06.06.2012, 18:56 | Сообщение # 206 |
Рядовой
Сообщений: 16
Репутация: 0
Статус: Offline
| Не подскажите скрипт кидающий в открытые хабы по таймеру (каждые 4 часа) сообщение о погоде? Город задавался чтоб в настройках?
http://beoff.ru - магнет ссылки для поклонников ужасов, триллеров, фантастики
|
|
|
|
Swi | Дата: Суббота, 30.05.2020, 18:49 | Сообщение # 207 |
Рядовой
Сообщений: 1
Репутация: 0
Статус: Offline
| Здравствуйте! Напишите, пожалуйста, скрипт spam.func, чтобы он посылал сообщение в определенные времена (часы:минуты), чтобы не считал секунды для отправки. Ещё нужно настроить отключалку: /lua nospam() в скрипте, который ниже (после /lua DC():RunTimer(0) скрипт приходится уже /lua DC():RunTimer(1) включать - неудобно):
Код spamtable = {} -- spamtable= { ["dc.ru"] = { 0, 10, "sample" } , ["localhost"] = { 0, 12, "hello there!" } }
file = io.open(DC():GetAppPath() .. "Scripts/reklama.txt", "r") messages = { } i = 1
function spam(timeout) spamtable[dc_huburl] = { 0, timeout } end
function nospam() spamtable[dc_huburl] = { 0, 0 } end
for line in file:lines() do messages [i]= line i=i+1 end
tMainFunc["spam"].OnTimer=function() for hubname, hubentry in pairs(spamtable) do if (hubentry[1] == 0) then hubentry[1] = hubentry[2] DC():SendPublicMessage(hubname, messages[math.random(i-1)]) else hubentry[1] = hubentry[1] - 1 end end return nil end
DC():MessageBox(text, "spam.lua", "ok", "info")[/i]
Сообщение отредактировал Swi - Пятница, 12.06.2020, 10:14 |
|
|
|
|
|
|