Страница 1 из 1

revenge

СообщениеДобавлено: 06 янв 2014 20:43
indjov
Hello ,
In my channel all users with @ massop for this purpose I have made ​​several tcls of the protection channel.
Only users who have add into the bot can kick / banning / deop / and puts other mods.
I know that the bot has module for revenge, but he adds each verified user base, and to me my purpose to add hosts users who have tried kicking/ banning/deoping and other mods into one username "noop".

Re: revenge

СообщениеДобавлено: 07 янв 2014 20:41
tvrsh
You need to create user "noop" and to add him masks of each user who tried to kik/ban someone from bots userlist?

Re: revenge

СообщениеДобавлено: 07 янв 2014 21:55
tvrsh
Try this beta:
TCL: [ Скачать ] [ Скрыть ]
# bind kick
bind kick - * watch_kick
proc watch_kick {nick uhost hand chan target reason} {
    global botnick

    # we willnt check bot
    if {$nick == $botnick} {
        return 0
    }

    # if kicker isnt in bots userlist
    if {![validuser $hand]} {
        # put his nick host and chan to noop proc
        to_nooplist $nick $uhost $chan
    }
}

# bind mode change
bind mode - * watch_mode
proc watch_mode {nick uhost hand chan mode {target ""}} {
    global botnick

    # we willnt check bot
    if {$nick == $botnick} {
        return 0
    }
 
    # if mode changer isnt in bots userlist
    if {![validuser $nick]} {
        # and mode was one of this
        if {$mode == "-o" || $mode == "+o" || $mode == "-b" || $mode == "+b" || $mode == "-v" || $mode == "+v"  || $mode == "-h" || $mode == "+h"} {
            # put his nick host and chan to noop proc
            to_nooplist $nick $uhost $chan
        }
    }
}

proc to_noonlist {nick uhost chan} {

    # add noop user if it didnt exist yet
    if {![validuser noop]} {
        adduser noop $uhost
        # and add him denyop flag
        chattr noop +d
    }

    # add hew host to noop user    
    setuser noop HOSTS $uhost
    # deop this user
    putserv "MODE $chan -o $nick"
    putlog "Added $uhost mask to noop user."
}

putlog "noop.tcl beta loaded..."

Re: revenge

СообщениеДобавлено: 10 янв 2014 15:28
indjov
Hello,
Many thanks for taking some of your time to write this ttsl.
I've added the script and gives me the following error
 [13:24:28] #sofia: mode change '+b lapai-v-kolata!*@*' by Ôèðìàòà!~Vasil@dinev17.pppoe.optic-com.eu
 [13:24:28] Tcl error [watch_mode]: invalid command name "tonooplist"
This person who put the module +b, is in add into Bot will check whether a user is a bot flags as an operator?

Re: revenge

СообщениеДобавлено: 10 янв 2014 18:06
tvrsh
Try again. Ive change proc name to to_nooplist.

Re: revenge

СообщениеДобавлено: 10 янв 2014 18:16
indjov
Still gives me the same error
[16:21:24] #sofia: mode change '+o test1test' by SunOS!SunOS@Sun.Microsystems
 [16:21:47] #sofia: mode change '-o aleno' by test1test!59d7bfd7@irc.html.chat
 [16:21:47] Tcl error [watch_mode]: invalid command name "to_nooplist"

Re: revenge

СообщениеДобавлено: 21 янв 2014 19:37
indjov
Hello,
What I saw last night is that after server split, and its return to the network.
IRC server puts channel mods a return to the network.
And the script detects it as an intruder and add it to noop user with host *! * @

Re: revenge

СообщениеДобавлено: 24 янв 2014 16:43
tvrsh
Change
if {$nick == $botnick} {
        return 0
    }

to
if {$nick == $botnick || ![onchan $nick $chan]} {
        return 0
    }

Re: revenge

СообщениеДобавлено: 26 окт 2014 23:59
indjov
I still have the same problem after the server split and when the server come back online makes adds host to noop *! * @