Попросили продолжить тему https://forum.antichat.ru/showthread.php?t=68974, в которой я говорил что выложу позже спам и инвайт скрипты. Скрипт рабочий, но доделать можно много чего. Потому и не хотел пока вылаживать. Но раз просят - таки запостю. Кросспост: Invite script by elimS Итак, что делает скрипт? Он собирает по сети все ники, а потом тупо начинает всех инвайтит на канал. при превышении лимита инвайтов - реконект и дальше продолжение инвайтов. канал быстро растет, так как у многих стоит автоджойн при инвайте. Собираем ники таким образом - бегает по всем каналам и берет ники которые на них сидят. Для чего можно его использовать? Вы фанат ирц и хотите быстро набрать большое количество людей на канале - этот скрипт для Вас. Только используйте скрипт осторожно. не собирайте ники с служебных каналов типа хелп и абюз. Поставьте в исключения ники иркопов, не поленитесь. И галочку не ставьте напротив опов и халфопов в блоке "на кого д действует скрипт" У Вас есть вражеский канал, на котором сидят люди, которые всю дорогу его рекламируют и тем самым мешают вам жить? Что ж и в этом случае скрипт для Вас. Помогите им с рекламой ихнего канала и не забудьте скриптом всех иркопов заинвайтить, а если вы уже всех заинвайтили, но иркопы все равно вас не заметили - начните заново. Гарантирую что скоро и канал дропнут на который шлються инвайты и опов канала накажут и проксю из под которой вы запускали скрипт - в глайн кинут. Приступим к установке скрипта: копируем код который ниже и заходим в mirc-редактор скриптов (сочетание клавиш alt+r). Code: ;----- Invite mirc script by elimS ---------------- menu nicklist { открыть инвайт скрипт: dialog -m invite_options invite_options указать файл ник-листа исключений: %invite_nick_list_iskluchenija = $file="Выберите файл со списком ников:" .txt добавить в ник-лист исключений: $iif( %invite_nick_list_iskluchenija == $null, echo $me 4укажите ник-лист исключений! , write %invite_nick_list_iskluchenija $1 ) обнулить исключения: write -c %invite_nick_list_iskluchenija проверить ник на исключение: %temp = $read(%invite_nick_list_iskluchenija, w, $1 ) | $iif( $readn == 0, echo $me 3 $1 ник не в исключениях! , echo $me 4 $1 ник в исключениях!) } alias invite_al { if ( $me ison %invite_kanal) { inc %invite_nick_list_i 1 %invite_nick = $read(%invite_nick_list,%invite_nick_list_i) %invite_prefix = $mid(%invite_nick,1,1) if ( ( ( %invite_prefix != @ ) || (%invite_op == on) ) && ( ( %invite_prefix != % ) || (%invite_hop == on) ) && ( ( %invite_prefix != + ) || (%invite_vop == on) ) ) { if ( ( %invite_prefix = @ ) || ( %invite_prefix = % ) || ( %invite_prefix = + ) ) %invite_nick = $mid(%invite_nick,2,$len(%invite_nick)) if ( %invite_nick !ison %invite_kanal ) { %invite_temp = $read(invite_list.txt, w, * $+ %invite_nick $+ * ) %invite_temp = $read(%invite_nick_list_iskluchenija, w, * $+ %invite_nick $+ * ) if ( $readn = 0 ) { write $mircdir $+ invite_list.txt %invite_nick invite %invite_nick %invite_kanal } else echo дубликат - %invite_nick } } if ( %invite_nick_list_i >= $lines( %invite_nick_list ) ) { %invite_status = off notice $me инвайт закончен, итого было позвано $lines($mircdir $+ invite_list.txt) ) людей. timer_invite off } } else cs invite %invite_kanal } menu menubar { invite script by elimS: dialog -m invite_options invite_options } dialog invite_options { title "Скрипт для мас-инвайта. Ver. 2.0" size -1 -1 140 195 option dbu tab "Основные",1, 1 1 135 190 tab "Дополнительные",100 button "указать канал",2, 10 20 50 10 , tab 1 button "частота инвайта",3, 10 35 50 10 , tab 1 edit "",4, 60 20 70 10, read autohs , tab 1 edit "",5, 60 35 70 10, read autohs , tab 1 button "Старт!",6, 10 65 120 20 , tab 1 button "Стоп!",7, 10 90 120 20 , tab 1 box "на кого будет действовать скрипт",8, 10 110 120 30 , tab 1 check "+o: опы", 9, 18 118 40 10 , tab 1 check "+h: халфопы", 10, 60 118 50 10 , tab 1 check "+v: войсопы", 11, 18 128 40 10 , tab 1 check "обычные юзеры", 12, 60 128 50 10 , tab 1 check "реконект при Message target too fast", 13, 18 140 110 10 , tab 1 button "величина канала",14, 10 50 50 10 , tab 1 edit "",15, 60 50 70 10, read autohs , tab 1 check "удерживать на канале", 16, 10 20 90 10 , tab 100 button "начать инвайт из указаного ник-листа",17, 10 40 110 10 , tab 100 edit "", 18, 10 55 110 10 ,read autohs, tab 100 box "ник-лист",19, 5 30 120 45 , tab 100 box "исключения",24, 5 80 120 45 , tab 100 edit "", 25, 10 105 110 10 ,read autohs, tab 100 button "выбрать ник-лист исключений",26, 10 90 110 10 , tab 100 text "скрипт написал elimS",35 20, 5 153 90 10 link "http://elims2.blogspot.com", 36, 5 168 90 10 } on 1:dialog:invite_options:init:0: { did -a invite_options 4 %invite_kanal did -a invite_options 5 %invite_time did -a invite_options 15 %invite_users did -a invite_options 18 %invite_nick_list did -a invite_options 25 %invite_nick_list_iskluchenija if (%invite_op == on) did -c invite_options 9 if (%invite_hop == on) did -c invite_options 10 if (%invite_vop == on) did -c invite_options 11 if (%invite_user == on) did -c invite_options 12 if (%invite_reconnect == on) did -c invite_options 13 if (%invite_yderzhivat == on) did -c invite_options 16 } on 1:dialog:invite_options:sclick,edit:*: { if ($did == 2) { set %invite_kanal $$input(введите канал (вместе с префиксом #) на который хотите инвайтить: , e ) did -r invite_options 4 did -a invite_options 4 %invite_kanal } if ($did == 3) { set %invite_time $$input(введите частоту посылки invite сообщения в милисекундах (1 секунда = 1000 милисекунд), e) did -r invite_options 5 did -a invite_options 5 %invite_time } if ($did == 14) { set %invite_users $$input(введите на каналах с каким количеством людей производить сбор ников (введите количество людей):, e) did -r invite_options 15 did -a invite_options 15 %invite_users } if ($did == 6) { %invite_status = on %invite_nick_list = $mircdir $+ chanel_nick_list.txt %invite_flag = sbor_kanalov remove $mircdir $+ chanel_list.txt notice $me сбор каналов... list } if ($did == 7) { timer_invite off %invite_status = off } if ($did == 17) { %invite_nick_list = $file="Выберите файл со списком ников:" .txt did -r invite_options 18 did -a invite_options 18 %invite_nick_list timer_invite_chan_list off %invite_flag = off %invite_lines_nick_list = $lines( %invite_nick_list ) %invite_nick_list_i = 0 %invite_status = on write -c $mircdir $+ invite_list.txt начало notice $me инвайт людей... timer_invite -m 0 %invite_time invite_al } if ($did == 26) { %invite_nick_list_iskluchenija = $file="Выберите файл со списком ников:" .txt did -r invite_options 25 did -a invite_options 25 %invite_nick_list_iskluchenija } if ($did == 9) $iif(%invite_op == on,%invite_op = off,%invite_op = on) if ($did == 10) $iif(%invite_hop == on,%invite_hop = off,%invite_hop = on) if ($did == 11) $iif(%invite_vop == on,%invite_vop = off,%invite_vop = on) if ($did == 12) $iif(%invite_user == on,%invite_user = off,%invite_user = on) if ($did == 13) $iif(%invite_reconnect == on,%invite_reconnect = off,%invite_reconnect = on) if ($did == 16) $iif(%invite_yderzhivat == on,%invite_yderzhivat = off,%invite_yderzhivat = on) if ($did == 36) run run http://elims2.blogspot.com/2009/02/invite-mirc-script-by-elims.html } ;start--- сбор сбор каналов ----------- raw 322:*: { if ( %invite_status == on ) && ( %invite_flag == sbor_kanalov ) { if ( $len($2) > 1 ) && ( $3 >= %invite_users ) { write chanel_list.txt $2 $3 } } } ;end--- сбор каналов ----------- ;start--- реконект при ошыбке ----------- raw 439:*: { if ( %invite_status == on ) { if ( %invite_reconnect == on ) && ( Message target change too fast. isin $1- ) server } } ;end---- реконект при ошибке ----------- ;start--- join каналов ----------- alias al_chan_list { if ( %invite_status == on ) && ( %invite_flag == join_kanalov ) { if ( %invite_list_i_chan > $lines($mircdir $+ chanel_list.txt) ) { timer_invite_chan_list off %invite_flag = off %invite_lines_nick_list = $lines( %invite_nick_list ) %invite_nick_list_i = 0 write -c $mircdir $+ invite_list.txt начало notice $me инвайт людей... timer_invite -m 0 %invite_time invite_al } inc %invite_list_i_chan 1 %invite_chan_list = $read($mircdir $+ chanel_list.txt,%invite_list_i_chan) if ( %invite_chan_list != $null) && ($gettok(%invite_chan_list,1,32) != %invite_kanal) { join $gettok(%invite_chan_list,1,32) part $gettok(%invite_chan_list,1,32) } } } ;end--- join каналов ----------- start--- конец листа ----------- raw 323:*: { if ( %invite_status == on ) && ( %invite_flag == sbor_kanalov ) { remove $mircdir $+ chanel_nick_list.txt %invite_list_i_chan = 0 %invite_flag = join_kanalov notice $me сбор ников по каналам... timer_chan_list 0 2 al_chan_list } } ;end--- конец листа ----------- start--- сбор ников ----------- raw 353:*: { if ( %invite_status == on ) && ( %invite_flag == join_kanalov ) { %invite_count_nicks_i = 3 while ( %invite_count_nicks_i < $0 ) { inc %invite_count_nicks_i 1 if ( $ [ $+ [ %invite_count_nicks_i ] ] != $me ) { write chanel_nick_list.txt $ [ $+ [ %invite_count_nicks_i ] ] } } } } ;end--- сбор ников ----------- on *:join:%invite_kanal: { if ( $nick == $me ) && ( %invite_reconnect == on ) && ( %invite_status == on ) timer_invite -m 0 %invite_time invite_al } on *:part:%invite_kanal: if ( %invite_yderzhivat == on ) invite $nick $chan Если окошко у Вас не пустое и в нем уже есть какой-то скрипт, тогда создавайте новый скрипт как показано ниже на рисунке. Вставляйте код и жмите "ок". Теперь жмем на меню со скриптами. У меня оно называется "Смайл Скрипт", у Вас оно будет называться по другому, в зависимости от клиента, но находится это меню всегда в одном и том же месте - между "tools" и "windows". Выбираем "invite script by elimS" Видим следуйщее: И если перейти на вкладку "дополнительные": Что какая кнопочка значит: Указать канал - указываем канал на который надо приглашать Частота инвайта - указывайте с какой частой приглашать людей на канал. Цыфра в милисекундах, где 1 секунда = 1000 милисекунд. Если вы укажите например 500 - это значит два человека в секунду. если 3000 это значит один человек за три секунды. На каждом сервере/сети есть свое ограничение на количество приглашений за отрезок времени. Если вы слишком часто приглашаете, то вам сервер будет отвечать "mesage target toofast". Есть два выхода: сделать быстро реконект и дальше продолжать приглашения с той же скоростью или же если реконект делаеться слишком долго, то просто указать цыфру больше, чтоб не так часто приглашать. Советую начинать с 1 человека за 2-3 секунды и там уже ориентируйтесь. Величина канала - канал с минимальным количеством людей с которого собирать ники. Так как в больших сетях очень много каналов где сидят по 1-10 человек, нету смысла с них собирать ники, лучше собрать с самых крупных. Стоп - остановка скрипта. На кого будет действовать скрипт - ставим галочки напротив тех, кого стоит приглашать. Советую опов и халфопов не приглашать - тогда на вас не так быстро обратят внимание. Реконект при mesage target toofast - отключаеться и подключаеться к серверу, если сервер говорит вам что вы слишком часто приглашаете. Удерживать на канале - если приглашенный человек покидает ваш канал, то он автоматом инвайтиться. Довольно часто у людей которые зашли на канал - стоит галочка автоджойн при инвайте, соответственно если они попробуют уйти с канала, они автоматом на него снова забросяться. Начать инвайт из указаного ник-листа - может у вас есть выборка людей которых надо быстро проинвайтить. Выбрать ник лист исключений - указывает файл с никами которых нельзя приглашать, например ники иркопов и админов сети. Так же добавлять ники в исключения вы можете нажав правой кнопкой мышки на нике: Пользуйтесь на здоровье, и пишите сюда или сюда все баги и пожелания.
В дополнение к статье хочу добавить. вставляем скрипт указанный ниже: on *:JOIN:#channel:/query $nick message #channel - заменяем на канал , где много народа , на нём обязательно находиться в момент работы скрипта . message - пишем любое сообщение , например : "лучший в мире канал #antichat" . И так вставляем скрипт в alt+r , получим скрипт такого вида : окей , не забываем , что нужно находиться на каналах указанных в скрипте. Теперь тот кто зайдёт на канал , получит от вашего , я надеюсь , левого аккаунта , сообщение , которое вы ввели в скрипте .
меня очень редко выкидывало . тестировал на ~ 6 каналах одновременно в среднем на канале от 200 до 600 человек , irc.quakenet.org , работать мог весь день и в самый час пик , ближе к вечеру могло выкинуть , но у меня автоматический пере заход срабатывал при разрыве соединения в мирке , так что не страшно :]
там другая версия irc сервера. другие команды. сегодня вечером гляну, может поправлю, может команды chanserver есть