All pastes #965541 Raw Edit

Untitled

public text v1 · immutable
·published 2008-04-01 01:01 UTC
rendered paste body
nfo_ip="
 This is the IP Address of the vhost (http://ww.worxtech.com/vhosts.html) that you wish to use.
 This will not allow you to enter an invalid ip into this option. You should be safe here.
";

nfo_port="
 This is the port to which the bot will listen on.
 This must be set in order to telnet the eggdrop.
";

nfo_host="
 This is the hostname of the vhost (http://ww.worxtech.com/vhosts.html).
 This option can be left empty (Hit ENTER to proceed with no hostname).
 This will not effect the outcome of the bots host.
";

nfo_owner="
 This will be YOUR irc nickname.
 Make sure this is set correctly.
";

nfo_network="
 This is the network to which the bot is connecting to (ie: Efnet).
";

nfo_chan="
 You need to add some channels to your bot so he knows where to go after he connects to the irc server.
 Foreach channel add a space (ie: #chan1 #chan2 #chan3).
";

nfo_server="
 This is the irc server which the bot will connect to (ie: irc.efnet.net:6667).
 Please include the port as shown in the example.
";

echo "Step By Step Configuring Your Eggdrop"
echo " "

printf "Bots Nickname?:";
read nick

while [ "$nick" = "info" -o "$nick" = "" ]
do
        echo "$nfo_nick"
        echo " "
        printf "Bots Nickname?:";
        read nick
done

printf "What is the IP Address?:";
read ip

while [ "$ip" = "info" -o "$ip" = "" ]
do
        echo "$nfo_ip"
        echo " "
        printf "What is the IP Address?:";
        read ip

        ipchk=`ifconfig | awk '/inet / { print $2 }' | grep "$ip"`

        while [ "$ipchk" != "$ip" -a "$ip" != "info" ]
        do
                echo "Invalid Ip"
                echo " "
                printf "What is the IP Address?:";
                read ip
                ipchk=`ifconfig | awk '/inet / { print $2 }' | grep "$ip"`
        done

done

printf "What is the hostname ([enter] for none)?:";
read host

while [ "$host" = "info" ]
do
        echo "$nfo_host"
        echo " "
        printf "What is the hostname ([enter] for none)?:";
        read host
done


printf "What Port?:";
read port

while [ "$port" = "info" -o "$port" = "" ]
do
        echo "$nfo_port"
        echo " "
        printf "What Port?:";
        read port
done

printf "What is the owners nick?:";
read owner

while [ "$owner" = "info" -o "$owner" = "" ]
do
        echo "$nfo_owner"
        echo " "
        printf "What is the owners nick?:";
        read owner
done

printf "What IRC Network (ie: Efnet)?:";
read network

while [ "$network" = "info" -o "$network" = "" ]
do
        echo "$nfo_network"
        echo " "
        printf "What IRC Network (ie: Efnet)?:";
        read network
done


echo "Specify the channels eliminated by a [SPACE] that you want the bot to join (ie: #chan1 #chan2 #chan3). Type \"info\" for more?:";
read eggchans

while [ "$eggchans" = "info" -o "$eggchans" = "" ]
do
        echo "$nfo_chan"
        echo " "
        echo "Specify the channels eliminated by a [SPACE] that you want the bot to join. Type \"info\" for more?:";
        read eggchans
done


printf "Whats the main irc server you wish to have the bot connect to (ie: irc.efnet.net:6667)?:";
read server

while [ "$server" = "info" -o "$server" = "" ]
do
        echo "$nfo_server"
        echo " "
        printf "Whats the main irc server you wish to have the bot connect to (ie: irc.efnet.net:6667)?:";
        read server
done

#################################################################
#                                                               #
# Advanced Code, Don't Edit Unless you know what you are doing  #
#                                                               #
################################################################

cat /dev/null > "tmp.conf";
cat >> "tmp.conf" << EOF
set nick "$nick"
set admin "$owner"
set owner "$owner"
set network "$network"
set botnet-nick "$nick"
set my-ip "$ip"
set hostname "$host"
set servers {
$server
}

loadmodule transfer
loadmodule share
loadmodule channels
loadmodule server
loadmodule ctcp
loadmodule irc
loadmodule notes
checkmodule blowfish
set notify-newusers "$owner"
set altnick "$nick-"
set username "$owner"
listen $port all
set net-type 0
set realname "$nick"

set userfile "$nick.user"
set chanfile "$nick.chan"
set notefile "$nick.notes"
set help-path "help/"
set hourly-updates 02
set init-server { putserv "MODE $botnick +i-ws" }
set ctcp-mode 2
set double-mode 0
set double-server 0
set double-help 0
unbind dcc n tcl *dcc:tcl
unbind dcc n set *dcc:set
unbind dcc n simul *dcc:simul

### TCL Scripts ###
source scripts/alltools.tcl
source scripts/action.fix.tcl
EOF

mv tmp.conf $nick.conf
chmod 755 $nick.conf

################################################
#
# Start Channel File

touch $nick.chan

for chan in $eggchans
do
        echo "#Dynamic Channel File for $nick (eggdrop v1.6.18)" >> $nick.chan
        echo " " >> $nick.chan
        echo "channel add $chan { chanmode +tn idle-kick 0 stopnethack-mode 0 revenge-mode 0 need-op {} need-invite {} need-key {} need-unban {} need-limit {} flood-chan 0:0 flood-ctcp 0:0 flood-join 0:0 flood-kick 0:0 flood-deop 2:10 flood-nick 0:0 aop-delay 5:30 ban-time 132 exempt-time 74 invite-time 71 -enforcebans -dynamicbans +userbans -autoop -autohalfop -bitch -greet +protectops -protecthalfops +protectfriends -dontkickops -statuslog -revenge -revengebot -autovoice -secret +shared -cycle -seen -inactive +dynamicexempts +userexempts +dynamicinvites +userinvites -nodesynch }" >> $nick.chan
done

echo "";
echo "Done making config.";
echo "Config file name is $nick.conf";
echo " ";

## crontabs ##
printf "Would you like to create a crontab for your bot [y/n]?:"
read cron

if [ "$cron" = "y" ] ; then
        export path=`pwd`
        ./scripts/autobotchk $nick.conf -dir $path -noemail
        echo " "
        echo "Your crontab has been created."
else
        echo " "
        echo "Your crontab for your bot has NOT been installed"
fi

echo "Would you like to start this bot now [y/n]?:";
read runopt

if [ $runopt = "y" ]; then
        cd $HOME/eggdrop
        ./eggdrop -m $nick.conf
else
  echo "You can start your bot by typeing this in your shell: ./eggdrop -m $nick.conf (NOTE: -m is only for the FIRST time running the bot.";
fi
echo " "
echo " "

  echo "You can create more eggdrop bots by:";
  echo "Step 1: cd eggdrop"
  echo "Step 2: ./makebot"
  echo " "
  echo "Hope this made things a bit easier for you :)"