Live dc++ forum
Форма входа
Логин:
Пароль:
Главная | Клиентские скрипты (greylink) - Страница 10 - Форум | Суббота, 20.04.2024, 11:22
[ Новые сообщения · Участники · Правила форума · Поиск
Форум » >> » DC++ » Клиентские скрипты (greylink)
Клиентские скрипты (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. запуск командой

Code
/luafile spam.lua


Сообщение отредактировал livedc - Четверг, 19.03.2009, 20:19
 
smollvrnДата: Воскресенье, 27.09.2009, 14:34 | Сообщение # 136
Сержант
Сообщений: 21
Репутация: 0
Статус: Offline
спасибо помогло , но в 5,97-96 перестало находить хабы
LUA Error: SendPublicMessage: huburl not connected
 
deityДата: Воскресенье, 27.09.2009, 14:46 | Сообщение # 137
Полковник
Сообщений: 238
Репутация: 4
Статус: Offline
Quote (smollvrn)
но в 5,97-96 перестало находить хабы
LUA Error: SendPublicMessage: huburl not connected

напортачили видать в новых сборках
 
zangriEAXДата: Среда, 07.10.2009, 11:29 | Сообщение # 138
Лейтенант
Сообщений: 41
Репутация: 1
Статус: Offline
Настрочил более продвинутый таймер для грея...вот он вместе с примером использования:

Code
dcpp = {}
local huburl=[[adc://127.0.0.1:1]]
-------------------------------------------------------------------------
ttbl={}

function addTimer(na,zn,tc,tz)
  rawset(ttbl,na,{zn,tc,tz})
end

function delTimer(na)
  rawset(ttbl,na,nil)
end

function setITimer(na,tc)
  local v=rawget(ttbl,na)
  rawset(ttbl,na,{rawget(v,1),tc,rawget(v,3)})
end

function setOTimer(na,tz)
  local v=rawget(ttbl,na)
  rawset(ttbl,na,{rawget(v,1),rawget(v,2),tz})
end

function setZTimer(na,zn)
  local v=rawget(ttbl,na)
  rawset(ttbl,na,{zn,rawget(v,2),rawget(v,3)})
end

function getITimer(na)
  return rawget(rawget(ttbl,na),2)
end

function getOTimer(na)
  return rawget(rawget(ttbl,na),3)
end

function getZTimer(na)
  return rawget(rawget(ttbl,na),1)
end

function dcpp.OnTimer()
  for k,v in pairs(ttbl) do
   rawset(v,3,rawget(v,3)-1)
   if rawget(v,3)<=0 then
    assert(loadstring(rawget(v,1)))()
    rawset(v,3,rawget(v,2))
   end
  end
  return nil
end

DC():RunTimer(1)

function kkk1()
  DC():SendPublicMessage(huburl,"O_o")
return nil
end

function kkk2()
  DC():SendPublicMessage(huburl,"o_O")
return nil
end

addTimer([[timer1]],[[kkk1()]],6,4)
addTimer([[timer2]],[[kkk2()]],9,0)
 
AmurskДата: Пятница, 09.10.2009, 10:58 | Сообщение # 139
Рядовой
Сообщений: 9
Репутация: 0
Статус: Offline
всем привет.
подскажите как написать простой скрипт\бот для PeLink. что бы в личке он отвечал готовыми фразами на отдельные слова.
например
<юзер> привет
<мой_ник> бла бла (с) БОТ
зы что бы при запуски программы или подключению на хаб скрипт автоматически включался


Амурск

Сообщение отредактировал Amursk - Пятница, 09.10.2009, 11:00
 
zangriEAXДата: Пятница, 09.10.2009, 12:43 | Сообщение # 140
Лейтенант
Сообщений: 41
Репутация: 1
Статус: Offline
Это стандартный скрипт inside_one.bot.lua только он довольна извращенный... сразу видно,что он писался программером СИ,который пытался написать на LUA также как на СИ smile
Для запуска скачай библиотеку LUA и сами примеры скриптов... все подробно описано...
Запускать автоматом надо так:
1 создать файл .\scripts\startup.lua
2 написать в нем строчку dofile[[.\scripts\nside_one.bot.lua]]
3 запустить клиент и наблюдать (:

Да а еще я злобно всем сую справку по LUA на русском biggrin
И еще злобно рекомендую скачать этот(LuaForWindows_v5.1.4-28.exe) пакет для разработки LUA скриптов

Прикрепления: lua-5.1rus.chm (81.9 Kb)


Сообщение отредактировал zangriEAX - Пятница, 09.10.2009, 13:06
 
AmurskДата: Пятница, 09.10.2009, 13:26 | Сообщение # 141
Рядовой
Сообщений: 9
Репутация: 0
Статус: Offline
установил BotSay довольно простой и рабочий бот smile
а можно было бы его переделать что б он отвечал в общем чате не только в личке. это реально?


Амурск
 
zangriEAXДата: Пятница, 09.10.2009, 13:50 | Сообщение # 142
Лейтенант
Сообщений: 41
Репутация: 1
Статус: Offline
хм.. будет время модифицирую бота (: (не только чат добавлю,но еще пару плюшек (: )
 
AmurskДата: Пятница, 09.10.2009, 14:01 | Сообщение # 143
Рядовой
Сообщений: 9
Репутация: 0
Статус: Offline
ок будем ждать. просто есть еще бот MoonADC там есть чатбот типа в чате отвечает на фразы или слова но у меня он не работает. может траблы в нашем хабе...
зы а можно скрипт написать. если в общем чате есть магнет ссылка на файл то он бы автоматически скачивался? smile


Амурск

Сообщение отредактировал Amursk - Пятница, 09.10.2009, 14:11
 
zangriEAXДата: Пятница, 09.10.2009, 14:12 | Сообщение # 144
Лейтенант
Сообщений: 41
Репутация: 1
Статус: Offline
да... это старый бот... а чтобы его оживить нужно прочитать тему с самого начала biggrin
 
SMTДата: Пятница, 09.10.2009, 14:42 | Сообщение # 145
Генерал-лейтенант
Сообщений: 514
Репутация: 28
Статус: Offline
Quote (Amursk)
если в общем чате есть магнет ссылка на файл то он бы автоматически скачивался?

функции для закачки магнетов есть в API ChatBot.dll, но нет в LUA.
можно пойти на хитрость - настроить авто-скачивание магнет-ссылок при клике на них и сделать, чтобы LUA-скрипт запускал магнет-ссылку через проводник. проводник обнаружит, что обработчик - greylink и отдаст её в grey, а тот автоматом скачает. криво, но через LUA только так
 
AmurskДата: Пятница, 09.10.2009, 14:54 | Сообщение # 146
Рядовой
Сообщений: 9
Репутация: 0
Статус: Offline
у меня клиент PeLink 5.xx это же мод greylink? или разные программы? меня интересует pelink. можно в нем настроить автоскачивание?
подскажите пжл BotSay запускается при подключении на хаб или /luafile LUA/BotSay/startup.lua, а как его отключить?


Амурск
 
SMTДата: Пятница, 09.10.2009, 15:38 | Сообщение # 147
Генерал-лейтенант
Сообщений: 514
Репутация: 28
Статус: Offline
Quote (Amursk)
подскажите пжл BotSay...., а как его отключить?

все скрипты вырубаются командой
/lua dcpp={}

Quote (Amursk)
меня интересует pelink. можно в нем настроить автоскачивание?

готового скрипта нет, нужно немного программировать: познакомиться с функцией LUA os.execute и выполнить вырезание магнета из сообщения
 
zangriEAXДата: Пятница, 09.10.2009, 16:32 | Сообщение # 148
Лейтенант
Сообщений: 41
Репутация: 1
Статус: Offline
os.execute - НЕ пойдет ибо грей подвисает :),надо io.popen (prog [, mode]) юзать...
 
SMTДата: Пятница, 09.10.2009, 17:11 | Сообщение # 149
Генерал-лейтенант
Сообщений: 514
Репутация: 28
Статус: Offline
Quote (zangriEAX)
os.execute - НЕ пойдет ибо грей подвисает :),

обернуть в start. уже делал - не подвисает
 
AmurskДата: Суббота, 10.10.2009, 04:35 | Сообщение # 150
Рядовой
Сообщений: 9
Репутация: 0
Статус: Offline
у меня в пользовательских сообщениях есть запуск ботов, а выключение нет. пытался добавить в CustomMessages.ini строчку /lua dcpp={} не получилось. можно как нибудь гарячие клавиши сделать чтоб нажал на shift+z включил бота, а shift+x выключил бота?
----
подскажите что не правильно сделал скопировал все файлы от бота MoonADC в папку script
добавил в хаб свой суда...
},

["dc.satdv.net.ru"]={
["Say"]=Say1,
["iTimer"]=-1,
["sMsg"]="",
},
сохранил запускаю pelink сообщение сообщило что боты запущены но внизу написано что ошибка и бот ниче не пишет в чате.

Прикрепления: 7779341.jpg (78.9 Kb)


Амурск

Сообщение отредактировал Amursk - Суббота, 10.10.2009, 09:50
 
Форум » >> » DC++ » Клиентские скрипты (greylink)
Поиск:


В движке поковырялся LiveDC :p © 2024
Сделать бесплатный сайт с uCoz