1# $Id: Readme.si,v 1.1.0 2004/04/21 17:42:23 assassin Exp $ 2____________________________________________________________________________ 3 4--------------------------------- Preberi me ----------------------------------- 5Prosim vsaj preleti ta dokument preden karkoli vpra�a�. Vkolikor se nisi nikoli prej ukvarjal/a z eggdropom ali katerikolim drugim botom, ki temelji na eggdropu, GA PREBERI v vsakem primeru. 6 7 (!) Vsebina: 8 1. Info - osnovne informacije o izdelku 9 2. Zahteve - kaj potrebuje� 10 3. Lastnosti - spisek lastnosti bota 11 4. In�talacija - kako in�talira� in konfigurira� bota 12 5. Osnovna konfiguracija - nekaj informacij o nastavitvah 13 6. Komande - spisek nekaj osnovnih komand za hub (glavnem) bota 14 7. Nastavitve kanala - spisek in opis obstoje�ih ?kanal? komand 15 8. Povezovanje (linkanje) botov - kako narediti botnet ;) 16 9. Najpogostej�a vpra�anja (FAQ) - PREBERI! 17 10. Pomo� - kraj�a informacije o tem, kje lahko vpra�ate za pomo� 18 11. Povezave - pomembnej�e povezave 19 12. O meni - kraj�e informacije 20 13. Pozdravi in zahvale - ne spra�uj...;) 21 22Pozor! Slede�a slovenska verzija Evangeline readme dokumenta je �e v fazi prevajanja, zato potencialne pravopisne napake gladko prezrite, ker bodo v prihodnosti korigirane, nasprotno temu pa je za�eljeno, da me opozorite na vsakr�no morebitno napako, ki bi v prevodu spremenila sam pomen izvirnika. 23Nekaj besed bi namenil �e samem terminolo�kem vpra�anju prevajanja. Pri prevajanju v ?stroki? uveljavljenih izrazov v na� jezik so pogosto te�ave, saj pomen nekaterih besed, ki so neposredno prevedene iz angle��ine ne ustreza njihovem pomenu v sami teoriji in praksi v sloveniji. Tako se naprimer te�ave poka�ejo �e pri ne�em, ve�ini ki boste tole brali tako preprostem, kot je ?userfile?, kar bi lahko prevedel kot ?uporabni�ka datoteka?, pa se boste gotovo strinjali z mano, da je to poimenovanje neustrezno in je s tega stali��a bolje pustiti ve�ini znan angle�ki izvirnik. Ampak, ker to ne bodo brali le tisti, ki jim je pomen ?userfile? besede znan �e iz Eggdropa, je bolje narediti korak dlje in dati uporabno sopomenko, ki bi lahko v tem primeru bila ?userlist?, kar pa je �e nekoliko la�je in ustezneje prevesti v ?listo uporabnikov? in to uporabim tudi sam. Takih besed je �e ogromno, recimo uporabnikom Eggdropa dobro znana beseda ?flag?, ki v neposrednem prevodu pomeni zastavica, zastava. Ampak kaj s tem povemo nekomu, ki se nikoli ni ukvarjal z irc boti? Ni�. Zato se mi je zdelo ustrezneje tovrstne izraze poimenovati opisno napr. ?user with flag = uporabnik z dolo�enim pooblastilom/stopnjo v botu? itd... Mogo�e se bo kak�nemu ?poznavalcu? irc botov zdelo zaradi tega na prvi pogled kaj manj razumljivo, vendar bo imel �e vseeno neprimerno manj te�av, kot bi jih ob dobesednem prevodu imeli za�etniki - ki jim ravno ti dokumenti predstavljajo osnovo delovanja Evangeline bota. 24 25---------------------------------------------------------------------------- 26 27(1) Info: 28 Evangeline je IRC (Internet Relay Chat) bot, ki temelji na eggdropu. Narejen je za IRCnet omre�je zato je ve�ina sprememb prilagojenih temu omre�ju. Kljub temu bo verjetno pravilno deloval tudi na drugih omre�jih (z izjemo kak�ne znane te�ave, kot je kickanje na Quakenetu). 29Evangeline se lahko seveda �e izpopolni z dodatki, kot so moduli (Eggdrop moduli s popravki) in Tcl skriptami. 30 31 32(2) Zahteve: 33 * Unix ra�un (account) s pribli�no 7MB prostora. 34 * Tcl 8.2+ (8.4.6 je priporo�eno) 35 * Nekaj malega znanja angle��ine ;-) 36 * Nekaj malega poznavanja IRC-a in UNIX-a. 37 38(3) Lastnosti: 39 Veliko teh lastnosti obstaja tudi v drugih botih (napr.: AversE, VoiD), toda nekatere med njimi so unikatne ali do sedaj javno neobjavljene. 40 41Encrypted userfile - lista uporabnikov je kodirana in dekodirana v spominu brez uporabe za�asnih datotek. Kju� ni shranjen v "binary" zato "strings binary" ne bo nikomur uporabno pri iskanju dekodirnega klju�a. 42 43Admin - administrator je uporabnik, kompiliran v "binary" in ima neomejen dostop do bota in njegovih komand. Lahko odstrani stalne lastnike (permowners), zamenja njihova pooblastila (flags), dodaja virtualne hoste itd... [ Originalno iz Cub3 bota] 44 45Permowers - stalni lastniki, kompilirani v "binary", ki imajo skoraj neomejen dostop do bota (ne morejo spreminjati drugih stalnih lastnikov ali administratorja) 46 47Adder - "dodajalec" - novo uporabni�ko pooblastilo (+r). Uporabniki s tem pooblastilom lahko dodajajo nove uporabnike ne da bi bili stalni lastniki bota. To pooblastilo lahko v bota doda samo stalni lastnik (permowner) ali administrator (admin). 48 49Posredovanje datotek med boti - bot posreduje spremembe in posilja user/channel listo samo s strani bota s +p pooblastilom (flagom). Torej main/slave/alt huba. 50 51Irc akcije - bot kicka (vr�e s kanala) namesto deopa. To je na IRCnetu precej bolj u�inkovito. Evangeline lahko kickne celo �est uporabnikov naenkrat (pri "defense" in otro�jih "takeover" nastavitvah) ali pa opa naenkrat do 5 uporabnikov (pri "getops" in otro�jih "takeover" nastavitvah). 52 53Kodirano posredovanje - lista uporabnikov (userfile) je poslana drugim botom v kodirani obliki, �e le ti podpirajo to mo�nost. 54 55Skr�ena uporabni�ka datoteka - uporabni�ka lista je poslana botom v skr�eni (kompresirani) obliki. Kompresija poteka preko zlib (gzip) 56 57Prenos liste kanalo na prvo povezovanje - lista kanalov (channel list) je huba (glavnega bota) poslana drugim (slave/leaf botom) takoj po prvem povezovanju (linkanju). Tako ni ve� problemov zaradi mankajo�ih pooblastil (flagov) na nekaterih kanalih ;-) 58 59Skr�ene datoteke - uporabni�ka lista, lista kanalov in "v�eraj�nji" logi so shranjeni v skr�eni obliki. 60 61Syspass - opcija za��ite nekaterih komand (masovne botnet komande in komande, kot so .die, .restart, .rehash v hubu) z dodatnim geslom (dafcijeva ideja) 62 63AddBot - lu�kana skripta, ki pomaga dodajati bote (linkanje) ne da bi se sploh povezali vanje. Vse se da narediti preko ene komande v hubu. (V originalu ta skripta iz AmenO bota) 64 65Presets - "paket" nastavitev za kanale, ki se obnovijo vsakih 60 minut ali �e se kak�en bot lo�i od botneta in vse nastavijo v pravilnem razmerju. 66 67Maxbots - s komando lahko nastavite maksimalno �tevilo botov na kanalu, ki se preverja in po potebi ponastavi vsakih deset minut ali v primeru kak�nih problemov na kanalu (napr. masovni "obisk" kanala) 68 69Kompatibilnost - bot se lahko pove�e z veliko drugimi Eggdrop modifikacijami. Lahko si deli userlisto z: AmenO, aCo, AversE, Bear, BloW, cNs, Cub3, 70 Detox, DiVERSE, Eggdrop v1.4+, GTT, LeppeR, RaviS, RulF, Suid, VoiD, 71VoLron, vOlRoN, X-Men. Ne more pa je deliti z: VoiD4, NnO, Shark2. 72 73BotNetOP - dodana skripta za opanje je precej hitra, tako da ni potrebe za +autoop nastavitev ali +a pooblastilo uporabniku. S pomo�jo tega je opanje bolj varno in zmanj�uje tveganje opanja napa�nih, nepoobla��enih oseb. 74 75Flood - bot ima veliko �tevilo otro�jih mo�nosti "smetenja" drugih uporabnikov, napr: msg, ctcp, invite itd... (le �emu je to sploh �e notri?) 76 77Servers randomiser - vsak bot naklju�no poljubno izbira iz konfiguracijske liste IRC stre�nik na katerega se bo priklju�il, s �imer je deloma prepre�ena izguba kanala, ker bi bili vsi boti na enem in istem IRC stre�niku. 78 79Mainserver - bot posku�a obdr�ati �eleni IRC stre�nik. V primeru, da izbrani IRC stre�nik pade, se bot priklju�i na drugega, po dolo�enem �asu pa se ponovno posku�a priklju�iti na prvega (vendar le v primeru, da je na kanalu ve� kot 6 botov z opom in da to opcijo nastavite). 80 81Autolimit - nova nastavitev za kanal. V primeru, da imate omogo�en '+alimit' bo bot avtomastko urejal limit kanala, ki je v tem primeru odvisen od �tevila uporabnikov na kanalu. Bot bo preverjal ta limit vsako minuto. Alimit nastavitev lahko urejate preko '.chanset' komande (napr. .chanset #chan limits 10:7:1). [ Vklju�eno naj bi bilo le v ENEM botu na kanalu. ] 82 83 84(4) In�talacija: 85 * Odpakiraj datoteko (tar zxf filename.tar.gz) 86 87 * Opomba: Naslednji korak je lahko narejen tudi preko konfiguracijske skripte. Preprosto nadaljuj in pritisni 'enter' ali 'y' ko te bo konfiguracijska skripta vpra�ala 'add admin/permwoner(s)' in odgovori na naslednji dve vpra�anji (vnesi svoj vzdevek...). 88 89 * Odpri 'src/main.c' in poi��i: 90 'char admin[121]' - vpi�i sem *ENO* ime uporabnika ki bo imel popoln dostop do vseh komand bota 91 'char owner[121]' - vpi�i sem ve� imen lastnikov bota (permowners). 92 93 * V botovem root direktoriju odtipkaj './configure' (lahko da ti bo postavljeno par vpra�anj). Ko bo konfiguracijska skripta zaklju�ila svoje delo odtipkaj komando 'make' ali 94 'make static' in �akaj... 95 96 INFO: Za omogo�itev IPv6 podpore mora� dodati --enable-ipv6 v 'configure' 97 (napr.: ./configure --enable-ipv6) 98 99 INFO: lahko onemogo�i� kodiranje uporabni�ke liste. Odtipkaj le --disable-crypt v 100 'configure' (napr.: ./configure --disable-crypt) 101 102 INFO: Lahko uporabi� tudi svoj lasten kodirni klju�. Odtipkaj le --custom-key 103 v 'configure' in vnesi klju�, ko te bo skripta vpra�ala zanj. 104 (napr.: ./configure --custom-key, ter po�akaj nekaj trenutkov... , 105 'Enter your encryption key: tvoj_kodirni') 106 Priporo�ena je uporaba te funkcije saj olaj�a nadgradnjo (update) bota.. 107 108 * Naredi konfiguracijsko datoteko bota: 109 110 *UPORABA �ARODEJA (wizzard)* 111 112 Ena od mo�nosti je, da za konfig. datoteko bota uporabi� �arovnika. 113 NOTE: Vkolikor uporablja� Putty (mogo�e pa tudi katerega drugega klienta) za dostop do shell ra�una pazi, kaj vtipkava� (backspace tipka je lahko prepoznana kot '' kar je potem vne�eno tudi v samo konfig. datoteko bota) 114 115 *OBI�AJNI (leaf bot)* 116 117 -IPv4: 118 Za�ni s: ./starter --new ime-bota 119 Vpi�i 'y' ko te skripta vpra�a , �e �eli� narediti novo datoteko, potem vtipkaj 120 'ipv4' in odgovori na druga vpra�anja. Ne pozabi, da je ime bota (botnet-nick) hkrati tudi ime konfig. datoteke bota. 121 122 -IPv6: 123 Vpi�i 'y' ko te skripta vpra�a , �e �eli� narediti novo datoteko, potem vtipkaj 124 'ipv6' in odgovori na druga vpra�anja. Ne pozabi, da je ime bota (botnet-nick) hkrati tudi ime konfig. datoteke bota. 125 126 -BNC: 127 Za�ni s: ./starter --new ime-bota 128 Vpi�i 'y' ko te skripta vpra�a , �e �eli� narediti novo datoteko, potem vtipkaj 129 'ipv6' in odgovori na druga vpra�anja. Ne pozabi, da je ime bota (botnet-nick) hkrati tudi ime konfig. datoteke bota. 130 131 *HUBS (glavni boti)* 132 133 -Main: 134 Za�ni s: ./starter --new ime-bota 135 Vpi�i 'y' ko te skripta vpra�a , �e �eli� narediti novo datoteko, potem vtipkaj 136 'main' in odgovori na druga vpra�anja. Ne pozabi, da je ime bota (botnet-nick) hkrati tudi ime konfig. datoteke bota. 137 138 -Slave: 139 Vpi�i 'y' ko te skripta vpra�a , �e �eli� narediti novo datoteko, potem vtipkaj 140 'slave' in odgovori na druga vpra�anja. Ne pozabi, da je ime bota (botnet-nick) hkrati tudi ime konfig. datoteke bota. 141 142 -Alt: 143 Za�ni s: ./starter --new ime-bota 144 Vpi�i 'y' ko te skripta vpra�a , �e �eli� narediti novo datoteko, potem vtipkaj 145 'alt' in odgovori na druga vpra�anja. Ne pozabi, da je ime bota (botnet-nick) hkrati tudi ime konfig. datoteke bota. 146 147 148 *RO�NO (Uporabi dodan primerek!)* 149 150 *HUBS* 151 152 - Main/Slave/Alt 153 nick "vzdevek bota" 154 botnet-nick "vzdevek, ki ga bo imel v botnetu" 155 bots-listenport "port za povezave botov" 156 users-listenport "port za povezave uporabnikov" 157 party(plpass) "Vpi�i kodirano geslo. �e pusti� prazno, bo dodatno party-line geslo onemogo�eno". Pozneje lahko geslo nastavi� tudi s komando '.bpass' v samem hubu. 158 party(syspass) "Vpi�i kodirano geslo. �e pusti� prazno bo dodatno 159 geslo za 'mass' comande onemogo�eno". 160 Pozneje lahko geslo nastavi� tudi s komando '.bpass' v samem hubu. 161 OPOMBA : Obe dodatni gesli (party-line and syspass) sta lahko tudi pozneje nastavljeni s 162 '.bpass' komando v samem botu. 163 164 - Main: 165 mainip "vnesi IP naslove tvojega streznika" 166 167 - Alt: 168 ismalt 'nastavi tu 1 �e �eli� da alternativni hub deluje kot main hub' 169 issalt 'nastavi tu 1 �e �eli� da alternativni hub deluje kot slave hub' 170 171 *OBI�AJNI* 172 173 - IPv4/IPv6/BNC: 174 nick "vzdevek bota na ircu" 175 altnick "alternativno vzdevek (�e je prvotni �e zaseden)" 176 botnet-nick "�e uporablja� $nick s �udnimi znaki: 177 '[', '|', vnesi sem ime brez teh znakov (la�je upravljanje z botom)" 178 realname "realname na ircu, karkoli �eli�..." 179 username "bot ident (koristno kadar ni oident na stre�niku ali kadar bota povezuje� preko psyBNC-ja)" 180 listenport 9999 'zamenjaj 9999 s tvojim izbranim portom' 181 ircserver { sem vnesi irc serverje } 182 my-ip "izpolni to �e uporablja� vhoste" 183 my-hostname "izpolni to �e uporablja� vhoste" 184 firewall "vnesi hostnaslov:port proxsy-ja �e si za firewalom/proxy-jem" 185 Nastavi "Chostname:port" za HTTP CONNECT proxy ali 186 "Phostname:port" za HTTP POST proxy. 187 nat-ip "external ip �e uporablja�... " 188 use-gseen 'nastavi to na 1 �e in�talira� bota z gseen modulom 189 in �eli� uporabljati to funkcijo' 190 use-stats 'nastavi to na 1 �e in�talira� bota s stats modulom 191 in �eli� uporabljati to funkcijo' 192 193 - IPv6: 194 use-ipv6 1 '�e �eli� uporabljati ipv6 nastavi to na 1' 195 my-ip "vstavi sem IP naslov v formatu: 127.0.0.1 (to je zgolj primer)" 196 my-ip6 "vstavi sem IP naslov v formatu: 3ffe:80ee:419:0:0:0:0:1 (to je zgolj primer)" 197 my-hostname6 "vstavi sem IP naslov v formatu: 3ffe:80ee:419:0:0:0:0:1 198 (to je zgolj primer)" 199 200 - BNC: 201 use-bnc 1 'nastavi to na 1 �e �eli� uporabljati obi�ajni BNC' 202 use-psyBNC 0 'nastavi to na 1 �e �eli� uporabljati psyBNC. Ostalo mora biti nastavljeno na 0' 203 use-ezBOUNCE 0 'nastavi to na 1 �e �eli� uporabljat ezBOUNCE. Ostalo mora biti nastavljeno na 0' 204 servers "nastavi bnc naslov v formatu: host/ip:port" 205 bnc-pass "geslo za bnc" 206 bnc-host "vhost ki ga bo imel bot, ko se bo povezal na irc �ez bnc" 207 ircservers "spisek irc streznikov" 208 iserv-port "port irc streznika, ki ga bot uporablja, napr 6667" 209 210 - SETTINGS (file in cfg/ directory): 211 use-mainserver 0 'nastavi to na 1 �e �eli� uporabljati opcijo povezave na to�no dolo�eni irc stre�nik' 212 ms(mserver) { vpi�i to�no dolo�en preferiran irc stre�nik} 213 ms(chktime) 120 'v minutah dolo�eno, kdaj se bo bot spet posku�al povezati na preferiran irc stre�nik, �e je trenutno na katerem drugem' 214 ms(tryagain) 360 'v minutah dolo�eno, kdaj se bo bot spet posku�al povezati na preferiran irc stre�nik, �e je bil prej�nji poizkus neuspe�en' 215 eva(ctcp) '0' - izklju�i, '1' - naklju�no izbran', 2 - dolo�en, 9 - Evangeline ;) 216 eva(rlist) { } 'pusti prazno' 217 lappend eva(rlist) "--=\[Evangeline\]==--" '�e �eli� uporbiti ve� razlogov za dejanja tcl skript (napr. Kick messages) dodaj ve� vrstic -enako kot v originalni datoteki' 218 reason(alimit) "vzrok, ki bo izpisan �e bo uporabnik brez pravih pooblastil (flagov) posku�al spremeniti ali odstraniti limit kanala" 219 220 * Ok, zdaj ko ima� konfiguriranega bota, ga za�eni s komando: 221 ./starter --new botnet-nick (samo �e za konfiguracijo uporablja� 222 *�ARODEJA) 223 ali pa klasi�no 224 ./evangeline -m cfg/config (-m parameter je potreben le ob PRVEM zagonu bota) 225 226 * Logiraj se vanj: 227 telnet localhost usersport (uporabi to, kar ja nastavljeno v config, napr.: 'users-listenport 9999' 228 ali 'listenport 9999') 229 230 *NOTE:* �e tvoj bot uporablja virtualni host (vhost), potem ne pozabi uporabiti ip/hostname za ta vhost, ko se povezuje� v bota (npr. z uporabo Putty-ja). Ravno tako se spomni na to ob linkanju botov. 231 232 Odtipkaj: 'averse-' ali '-eva-' 233 Kot te bot vpra�a za "nickname", vpi�i svojega (tega, ki si ga vpisal v 'main.c') 234 zatem si nastavi geslo. �e te bot ne vpra�a �e za party-line 235 geslo (le v main/slave/alt), si �e v botu, sicer vpi�i �e party-line geslo (main/slave/alt). 236 Sedaj lahko za�ne� u�ivati v botu ;-) Prva komanda, ki jo priporo�am, je: '.save' 237 238(5) Osnovna konfiguracija: 239 240 * Crontab: 241 242 �e pri kreiranju konf. datoteke bota uporabite �arodeja odtipkajte preprosto: 243 ./starter --cron botnet-nick 244 in va� bot bo dodan crontabu (za to na stre�niku potrebujete ustrezne privilegije) 245 246 * Presets: 247 248 Presets je paket prednastavljenih nastavitev botneta, ki se ponovno nastavijo vsakih 60 minut ali pa ko se kak�en bot izklju�i iz botneta. Trenutno so vam na voljo 3 vrste prednastavitev: 249 250 * defense: 251 +defense v vseh botih na kanalu. 252 +dkopper v 1/3 botov na kanalu (6kick v defense mode). 253 +fastop v '2/3 botov'. 254 +enforcebans v 1/2 +fastops botih. 255 +alimit v *ENEM* botu (�e je omogo�eno preko huba). 256 257 * freeop: 258 -defense v vseh botih za dolo�en kanal. 259 +enforcebans v 1/2 botov na kanalu. 260 +alimit v *ENEM* botu (�e je omogo�eno preko huba). 261 262 * off: 263 prednastavitve so izklju�ene. channel settings can be set via 264 .enforce or .rchanset setting. Only +alimit is set 265 on *ONE* bot (if enabled on hub). 266 267 Prednastavitve lahko spremenite s .preset komando (dostopno botnet adminu). 268 Primer: .preset #test freeop 269 270 * Maxbots: 271 272 Naslednja 'prednastavitev' lahko dolo�i, koliko botov �elite na kanalu. 273 Botnet preverja koliko botov je na kanalu vsakih 10 minut in v primeru join 274 flooda. 275 Primer: .preset #test maxbots 5 - po dolo�enem �asu lahko vidi� le 5 botov na kanalu #test. �e kateri od teh pade dol, pride na kanal #test avtomatsko novi bot (vkolikor ga imate na razpolago). 276 277 * Autolimit: 278 279 Autolimit ('+alimit' nastavitev kanala) prisili bote, da obdr�ijo ali spremenijo limit kanala glede na to koliko obiskovalcev je na kanalu. Autolimit se nastavi s komando .enforce ali .chanset, naprimer: .enforce #test limits 10:5:0 280 10 - dolo�en �as na koliko minut naj bot preverja in spreminja limit. 281 5 - razlika med dejanskim �tevilom obiskovalcev kanala in trenutno dovoljenim �tevilom 282 0 - spremeba limita ob vsakem prihodu/odhodu na kanal (0 - onemogo�eno, 1 - omogo�eno). 283 284 * Syspass and hubpass: 285 286 Syspass is a system password, which protect all *mass* commands and 287 '.die', '.restart', '.rehash' (and few others) for non-authorized 288 users. If you see a message like this: 'Evangeline: No authorization', 289 it means that syspass is set and users have to authorize to user that 290 commands. To authorize you must use '.syspass' command. 291 292 Hubpass is a password required to enter party-line. If you see a message 293 like: 'Welcome, please enter the partyline password:' it means that 294 hubpass is set and you must enter those password to join party-line. 295 296 Both passwords can be set and disabled on party-line by bot admin via 297 '.bpass' command. 298 Example: .bpass -syspass set encore - will set word 'encore' as syspass. 299 .bpass -hubpass set encore - will set word 'encore' as hubpass. 300 .bpass -syspass off - will disable syspass. 301 .bpass -hubpass off - will disable hubpass. 302 303 304 * Hub notices: 305 306 Other bots can inform hub about important (in my oppinion) events. 307 deops, kicks, mode changes (by non-owner), netsplits, limit or ban 308 override, diverse-flood, reop mode changes, channel without opped 309 bots.... 310 It can also send info when connected, disconnected, k-lined or 311 non-authorized on server, and many many more. 312 To see all those messages you have to add +m (msg) flag to your 313 console: .console +m 314 315 * Proxy support: 316 317 Evangeline can connect to irc through anonymous CONNECT and POST proxies. 318 To force bot using such proxy add 'firewall' setting to its config file. 319 320 If you want bot to connect through POST proxy add: 321 firewall "Pproxy_address:proxy_port" 322 323 If you want bot to connect through CONNECT proxy (more popular) add: 324 firewall "Cproxy_address:proxy_port" 325 326(6) Commands: 327 328 *HUBS* 329 330 -Main/Alt main: (some of them work also on Slave and Alt slave) 331 332 (+m) .+channel <channel> - add new <channel> (only on that bot) 333 Example: .+channel #test 334 (+m) .+mhost <user> <host1> [host2] [...] - add multiple hosts to 335 <handle>. 336 Example: .+mhost KrzychuG *!blah@blah.net *!bubu@a.com *!wrr@z.net 337 (+m) .-channel <channel> - remove a <channel> (only on that bot) 338 Example: .-channel #test 339 (+m) .-mhost <user> <host1> [host2] [...] - remove multiple hosts to 340 <handle>. 341 Example: .-mhost KrzychuG *!blah@blah.net *!bubu@a.com *!wrr@z.net 342 (+n) .aa <name> <ip/host> <bots port> <users port> [hubpass] - add alt 343 hub with <name> on <ip/hostname>, <bots port> and <users port> 344 and [hubpass] if set on alt. 345 Example: .aa alt1 192.168.0.1 34010 34011 346 (+n) .ab <name> <ircname> <ident> <hostname> <ip/host> <port> [-slave <nick>] 347 [ipv6hosts] - add new leaf, where <name> is nick in botnet, <ircname> is 348 nick on irc, <ident> is ident on irc, <hostname> is hostname on irc, 349 <ip/host> is ip address needed to link to botnet, <port> is bot listenport, 350 [-slave <nick>] is slave nickname if you want to link bot to slave, 351 [ipv6host] is an addidional IPv6 hostname. 352 Example: .ab blah blah krzychug blah.net 192.168.0.1 9999 -slave slave1 353 (+n) .abstop - clear addbot variables if something went bad (some errors like 354 'invalid idx' and such things) 355 Example: .abstop 356 (+n) .addeggdrop <name> <ircname> <ident> <hostname> <ip/host> <port> 357 [-slave <nick>] [ipv6hosts] - add new eggdrop leaf, where <name> is nick 358 in botnet, <ircname> is nick on irc, <ident> is ident on irc, <hostname> 359 is hostname on irc, <ip/host> is ip address needed to link to botnet, 360 <port> is bot listenport, [-slave <nick>] is slave nickname if you want 361 to link bot to slave, [ipv6host] is an addidional IPv6 hostname. 362 Example: .addeggdrop blah blah krzychug blah.net 192.168.0.1 9999 -slave 363 slave1 364 (+n) .addstop - clear addbot variables if something went bad (some errors like 365 'invalid idx' and such things) 366 Example: .addstop 367 (-) .alias <-/alias> - show, add or remove aliases. 368 To add an alias: .alias .name=".cmd $1 $s", ex.: .alias .wii=".whois $1" 369 To remove an alias: .alias .name= 370 To list aliases: .alias 371 (+n) .as <name> <ip/host> <bots port> <users port> [hubpass] - add slave hub with 372 <name> on <ip/hostname>, <bots port> and <users port> and [hubpass] if 373 set on slave. 374 Example: .aa slave1 192.168.0.1 44010 44011 375 (+m) .autoop <on/off> [channel] - turn on/off autoop for all bots(+a flag) global 376 or on [channel] 377 Example: .autoop on #test 378 (+m) .bncjump <bot> <server> [port] [password] - force <bot> connected through bnc 379 to change irc server. 380 .bncjump bot1 krakow.irc.pl 6667 381 (+n) .bpass <-hubpass/-syspass> <set/off> <password> - set or unset hubpass or syspass. 382 To set: .bpass -hubpass set something or .bpass -syspass set something 383 To unset: .bpass -hubpass off or .bpass -syspass off 384 (+m) .channels [channel] - show list of channels along with description and some data 385 (like preset, op count, voice count etc). 386 (+m) .closechan <bot> <channel> - force <bot> to close <channel> (MODE #channel +i). 387 Example: .closechan bot1 #test 388 (+m) .downbots - show unlinked bots. 389 (+m) .eflag <flag(s)> [channel] - add or remove global (or channel) userflag for all 390 bots in botnet. 391 Example: .eflag +K #test 392 (-) .encrypt <password> - encrypt string, which can be later used for hubpass or syspass. 393 .encrypt text 394 (+m) .enforce [-slave <nick>] <channel> [+/-]<setting(s)> - change channel settings in 395 botnet. 396 Example: .enforce -slave slave1 <channel> -enforcebans - will remove enforcebans from 397 #channel on all bots linked to slave1. 398 Example: .enforce * -enforcebans - will remove enforcebans from all hub channels and 399 all bots in botnet. 400 (+m) .enforceflag <flag(s)> [channel] - add or remove global (or channel) userflag for all 401 bots in botnet. 402 Example: .enforceflag +K #test 403 (-) .help [command] - very usefull command :) 404 Example: .help enforce 405 (+m) .list <c/i/n/d/p/s/u/v> [bot] - show some info about bots: 406 c - channels on which bots are opped 407 i - inactive channels 408 n - channels on which bots are not opped 409 d - disconnected bots 410 p - ping between bots 411 s - bot's server 412 u - bot's uptime 413 v - bots binary and tcl version 414 (+m) .mclear [-slave <nick>] <mode/server/help/all> - clean specific type of queue. 415 .mclear server 416 (+m) .mcycle [-slave <nick>] <time> <channel> - force bots to leave channel for 417 some <time> in seconds 418 Example: .mcycle 60 #test 419 (+n) .mdie [-slave <nick>] - botnet die ;) 420 (+n) .mdump [-slave <nick>] <data> - botnet dump. 421 Example: .mdump PRIVMSG #test :blah 422 (+n) .mexport [-slave <nick>] - mass userfile export. 423 (+n) .mflood [-slave <nick>] <user> <type> - flood <user> on IRC with choosen flood <type>. 424 Example: .mflood blah version 425 (+m) .mjoin [-ajf <time>/-slave <nick>] <channel> [server] [key] - add channel to botnet. 426 To join with anty-join-flood: .mjoin -ajf 15 #test - will join bot every 15 seconds. 427 (+n) .mjump <server> [port] [password] - botnet jump (really needed?). 428 Example: .mjump krakow.irc.pl 429 (+n) .mkick <all/ops> <channel> [6kick] - kick <all> or <ops> from <channel>. [6kick] is 430 dangerous option. 431 Example: .mkick all #test 432 (+m) .mmsg [-slave <nick>] <user/channel> <msg> - send message from all bots to <user> 433 or <channel>. 434 Example: .mmsg #test blah blah 435 (+m) .modenforce [-slave <nick>] <channel> [+/-]<chanmode(s)> - set chanmodes which 436 have to be kept on <channel>. 437 Example: .modenforce #test +nt-k 438 (+m) .mpart [-slave <nick>] <channel> [server] - botnet part 439 Example: .mpart #test 440 (+n) .mrehash [-slave <nick>] - botnet rehash 441 (+n) .mrestart [-slave <nick>] - botnet restart 442 (+n) .mupdate [-m <mirror number>] [-force] - botnet tcl update. 443 (+m) .netchanmode [-slave <nick>] <channel> [+/-]<chanmode(s)> - set chanmodes which 444 have to be kept on <channel>. 445 Example: .netchanmode #test +nt-k 446 (+m) .netchanset [-slave <nick>] <channel> [+/-]<setting(s)> - change channel settings in 447 botnet. 448 Example: .netchanset -slave slave1 <channel> -enforcebans - will remove enforcebans from 449 #channel on all bots linked to slave1. 450 Example: .netchanset * -enforcebans - will remove enforcebans from all hub channels 451 and all bots in botnet. 452 (+m) .netclear [-slave <nick>] <mode/server/help/all> - clean specific type of queue. 453 .netclear mode 454 (+m) .netcycle [-slave <nick>] <time> <channel> - force bots to leave channel for 455 some <time> in seconds 456 Example: .netcycle 60 #test 457 (+n) .netdie [-slave <nick>] - botnet die ;) 458 (+n) .netdump [-slave <nick>] <data> - botnet dump. 459 Example: .netdump PRIVMSG #test :blah 460 (+n) .netexport [-slave <nick>] - mass userfile export. 461 (+m) .netflag <flag(s)> [channel] - add or remove global (or channel) userflag for all 462 bots in botnet. 463 Example: .netflag +K #test 464 (+n) .netflood [-slave <nick>] <user> <type> - flood <user> on IRC with choosen 465 flood <type>. 466 Example: .netflood blah version 467 (+n) .netsend (more data on .netsend) - send file to bot/group of bots. 468 Example: .netsend bot1 cfg/settings 469 (+m) .nnick <-all/bot> - force bot or all bots to switch to normal nicks. 470 (+m) .openchan <bot> <channel> - open channel (MODE #channel -i). 471 Example: .openchan bot1 #test 472 (+n) .optimize [channel] - optimize channel settings for channel or all channels in 473 botnet. 474 Example: .optimize #test 475 (+n) .preset <channel> <preset/off> - set or disable presets. 476 Example: .preset #channel defense or .preset #channel maxbots 10 477 (+n) .rbotattr <bot> <target bot> [+/-]<botflag(s)> - set/remove botflag from <target bot> on 478 <bot> 479 Example: .rbotattr bot1 hub +p 480 (+n) .rchaddr <bot> <target bot> <address> <bots port> [users port] - change <target bot> 481 address on <bot>. 482 Example: .rchaddr bot1 hub 192.168.0.1 24010 24011 483 (+m) .rchanmode <bot> <channel> [+/-]<chanmode(s)> - change chanmode for <channel> on <bot>. 484 Export: .rchanmode bot1 #test +nt-i 485 (+m) .rchanset <bot> <channel> [+/-]<settings> - change channel setting for <channel> on 486 <bot>. 487 Example: .rchanset bot1 #test -enforcebans 488 (+n) .rchattr <bot/*> <handle> [+/-]<flags> - change userflags for <handle> on <bot> or 489 all bots. 490 Example: .rchattr bot1 main +H or .rchattr * main +H 491 (+m) .rclear <bot> <mode/server/help/all> - clear queue on <bot>. 492 Example: .rclear bot1 mode 493 (+n) .rdeop <-all/bot> <nick> [channel] - deop <nick> on [channel] or all channels by 494 all bots or one <bot>. 495 Example: .rdeop bot1 KrzychuG #test 496 (+n) .rdie <bot> - kill bot ;) 497 Example: .rdie bot1 498 (+n) .rdop <-all/bot> <nick> [channel] - deop <nick> on [channel] or all channels by all 499 bots or one <bot>. 500 Example: .rdop bot1 KrzychuG #test 501 (+n) .rdump <bot> <data> - bot dump. 502 Example: .rdump bot1 MODE #test +o bot2 503 (+n) .rexport <bot> - force <bot> to export userfile. 504 Export: .rexport bot1 505 (+m) .rmode <-all/bot> <channel> <data> - force <bot> or all bots to enforce mode (<data>) on 506 <channel>. 507 Example: .rmode bot1 #test +o blah 508 (+m) .rmsg <-all/bot> <user/channel> <msg> - <bot> or all bots say <msg> to <user> or <channel>. 509 Example: .rmsg -all #test blah blah 510 (+n) .rnick <-all/bot> - force <bot> or all bots to change their nick(s) to random generated. 511 (+m) .rop <-all/bot> <nick> [channel] - force <bot> or all bots to op <nick> on <channel> or 512 on all channels. 513 Example: .rop bot1 KrzychuG #test 514 (+n) .rpart <bot> <channel> - force <bot> to part from <channel>. 515 Example: .rpart bot1 #test 516 (+n) .rrehash <bot> - force <bot> to rehash. 517 (+n) .rrestart <bot> - force <bot> to restart. 518 (+n) .rupdate <bot> [-m <mirror number>] [-force] - force bot update tcl. 519 (+m) .savenet - save chanlist and userlist on all bots. 520 (+m) .syspass <password> - authorize. 521 (+m) .tkm <channel> [6kick] - takeover <channel> (kick opped users without + userflag). 522 Example: .tkm #test 523 (+n) .tkmjoin [-slave <nick>/-auto] <channel> [6kick] [server] [key] - force botnet to join 524 channel and prepare to takeover (-auto option will set proper channel settings on proper 525 bots). 526 Example: .tkmjoin -auto #test 527 (-) .unalias <alias> - remove an alias. 528 Example: .unalias .blah 529 (+n) .update [-m <mirror number>] [-force] - update current bot tcl script. 530 (+m) .users - show some info about users. 531 (+m) .verify - show all handles without password. 532 533(7) Channel settings: 534 535 All of those setting can be changed via '.chanset' command or '.enforce' 536 and '.rchanset' from hub. 537 538 *FLAGS?* 539 idle-kick 0 540 This setting will make the bot check every minute for idle users. Set 541 this to 0 to disable idle check. 542 543 stopnethack-mode 0 544 This setting will make the bot kick anyone who enters the channel 545 with serverops. There are seven different modes for this settings: 546 547 0 turn off 548 1 isoptest (allow serverop if registered op) 549 2 wasoptest (allow serverop if user had op before split) 550 3 allow serverop if isop or wasop 551 4 allow serverop if isop and wasop. 552 5 If the channel is -defense, see stopnethack-mode 3 553 If the channel is +defense, see stopnethack-mode 1 554 6 If the channel is -defense, see stopnethack-mode 2 555 If the channel is +defense, see stopnethack-mode 4 556 557 revenge-mode 0 558 This settings defines how the bot should punish bad users when 559 revenging. There are four possible settings: 560 0 Deop the user. 561 1 Deop the user and give them the +d flag for the channel. 562 2 Deop the user, give them the +d flag for the channel, and 563 kick them. 564 3 Deop the user, give them the +d flag for the channel, kick, 565 and ban them. 566 567 ban-time 120 568 Set here how long temporary bans will last (in minutes). If you 569 set this setting to 0, the bot will never remove them. 570 571 exempt-time 60 572 Set here how long temporary exempts will last (in minutes). If 573 you set this setting to 0, the bot will never remove them. The bot will 574 check the exempts every X minutes, but will not remove the exempt if a 575 ban is set on the channel that matches that exempt. Once the ban is 576 removed, then the exempt will be removed the next time the bot checks. 577 578 invite-time 60 579 Set here how long temporary invites will last (in minutes). If you set 580 this setting to 0, the bot will never remove them. The bot will check 581 the invites every X minutes, but will not remove the invite if a 582 channel is set to +i. Once the channel is -i then the invite will be 583 removed the next time the bot checks. 584 585 aop-delay (minimum:maximum) 586 This is used for autoop, autohalfop, autovoice. If an op or voice joins 587 a channel while another op or voice is pending, the bot will attempt to 588 put both modes on one line. 589 590 aop-delay 0 No delay is used. 591 aop-delay X An X second delay is used. 592 aop-delay X:Y A random delay between X and Y is used. 593 594 595 flood-chan 10:60 596 Set here how many channel messages in how many seconds from one 597 host constitutes a flood. Setting this to 0 or 0:0 disables text 598 flood protection for the channel. 599 600 flood-deop 3:10 601 Set here how many deops in how many seconds from one host constitutes 602 a flood. Setting this to 0 or 0:0 disables deop flood protection for 603 the channel. 604 605 flood-kick 3:10 606 Set here how many kicks in how many seconds from one host constitutes 607 a flood. Setting this to 0 or 0:0 disables kick flood protection for 608 the channel. 609 610 flood-join 5:60 611 Set here how many joins in how many seconds from one host constitutes 612 a flood. Setting this to 0 or 0:0 disables join flood protection for 613 the channel. 614 615 flood-ctcp 3:60 616 Set here how many channel ctcps in how many seconds from one host 617 constitutes a flood. Setting this to 0 or 0:0 disables ctcp flood 618 protection for the channel. 619 620 flood-nick 5:60 621 Set here how many nick changes in how many seconds from one host 622 constitutes a flood. Setting this to 0 or 0:0 disables nick flood 623 protection for the channel. 624 625 *CHANSETS* 626 627 enforcebans 628 When a ban is set, kick people who are on the channel and match 629 the ban? (Should be set only on 1/3 of all channel bots) 630 631 dynamicbans 632 Only activate bans on the channel when necessary? This keeps the 633 channel's ban list from getting excessively long. The bot still 634 remembers every ban, but it only activates a ban on the channel 635 when it sees someone join who matches that ban. 636 637 userbans 638 Allow bans to be made by users directly? If turned off, the bot will 639 require all bans to be made through the bot's console. 640 641 dynamicexempts 642 Only activate exempts on the channel when necessary? This keeps the 643 channel's exempt list from getting excessively long. The bot still 644 remembers every exempt, but it only activates a exempt on the channel 645 when it sees a ban set that matches the exempt. The exempt remains 646 active on the channel for as long as the ban is still active. 647 648 userexempts 649 Allow exempts to be made by users directly? If turned off, the bot will 650 require all exempts to be made through the bot's console. 651 652 dynamicinvites 653 Only activate invites on the channel when necessary? This keeps the 654 channel's invite list from getting excessively long. The bot still 655 remembers every invite, but the invites are only activated when the 656 channel is set to invite only and a user joins after requesting an 657 invite. Once set, the invite remains until the channel goes to -i. 658 659 userinvites 660 Allow invites to be made by users directly? If turned off, the bot 661 will require all invites to be made through the bot's console. 662 663 autoop 664 Op users with the +o flag as soon as they join the channel? 665 This is insecure and not recommended. 666 667 defense 668 Only let users with the proper flagf to op people on channel. 669 670 greet 671 Say a user's info line when they join the channel? 672 673 protectops 674 Reop a user with the +o flag if they get deopped? 675 676 protectfriends 677 Reop a user with the +f flag if they get deopped? 678 679 revenge 680 Remember people who deop/kick/ban the bot, valid ops, or friends 681 and punish them? Users with the +f flag are exempt from revenge. 682 683 revengebot 684 This is similar to to the 'revenge' option, but it only triggers 685 if a bot gets deopped, kicked or banned. 686 687 autovoice 688 Voice users with the +v flag when they join the channel? 689 690 secret 691 Prevent this channel from being listed on the botnet by 692 non-owners. 693 694 shared 695 Share channel-related user info for this channel? 696 697 cycle 698 Cycle the channel when it has no ops? 699 700 dontkickops 701 Do you want the bot not to be able to kick users who have the +o 702 flag, letting them kick-flood for instance to protect the channel 703 against clone attacks? 704 705 inactive 706 This prevents the bot from joining the channel (or makes it leave the 707 channel if it is already there). It can be useful to make the bot 708 leave a channel without losing its settings, channel-specific user 709 flags, channel bans, and without affecting sharing. 710 711 nodesynch 712 Allow non-ops to perform channel modes? This can stop the bot from 713 fighting with services such as ChanServ, or from kicking IRCops when 714 setting channel modes without having ops. 715 716 dkopper 717 Special version of +defense mode, which react on 4op or 5op. 718 Should be set on 1/3 of all channel bots (bot with +dkopper 719 won't react on 1op, 2op or 3op). 720 721 takeover 722 Lame takeover mode ;) When bot got op, it tries to op rest 723 of bots and take channel. 724 725 fastkick 726 6kick for +takeover mode. 727 728 fastop 729 5op for +takeover mode and for BotnetOP (should be turned on 730 on 1/3 of all channel bots). 731 732(8) Linking bots: 733 734 *MANUALLY* 735 736 *HUBS* 737 738 - Main alt: ( h - on main hub, a - on alt, r - on bots linked to main ) 739 h) .+bot alt_nick alt_ip:bots_port/users_port 740 h) .botattr alt_nick +gs 741 a) .+bot main_nick main_ip:bots_port/users_port 742 a) .botattr main_nick +ghp 743 a) .chattr main_nick +H 744 a) .link main_nick 745 for every bot linked to main hub: 746 a) .botattr bot +gs 747 r) .botattr alt_nick +agp 748 749 - Slave alt: (h - on main hub, on alt, r - on bots linked to slave hub) 750 h) .+bot alt_nick alt_ip:bots_port/users_port 751 h) .botattr alt_nick +gs 752 a) .+bot main_nick main_ip:bots_port/users_port 753 a) .botattr main_nick +ghp 754 a) .chattr main_nick +H 755 a) .link main_nick 756 for every bot linked to slave hub: 757 a) .botattr bot +gs 758 r) .botattr alt_nick +agp 759 760 - Slave (h - on main hub, s - on slave hub) 761 h) .+bot slave_nick slave_ip:bots_port/users_port 762 h) .botattr slave_nick +gs 763 s) .+bot main_nick main_ip:bots_port/users_port 764 s) .botattr main_nick +ghp 765 s) .chattr main_nick +H 766 s) .link main_nick 767 768 *LEAFS* 769 770 - To Main Hub: (h - on main hub, l - on leaf) 771 h) .+bot leaf_nick leaf_ip:port 772 h) .botattr leaf_nick +gs 773 h) .chattr leaf_nick +foK 774 h) .+host leaf_hostname 775 l) .+bot main_nick main_ip:bots_port/users_port 776 l) .botattr main_nick +ghp 777 l) .chattr main_nick +H 778 l) .link main_nick 779 If you want to add alt, type: (a - on alt) 780 a) .botattr leaf_nick +gs 781 l) .botattr alt_nick +agp 782 783 - To Slave Hub: (h - on main hub, s - on slave hub, l - on leaf) 784 h) .+bot leaf_nick leaf_Ip:port 785 h) .chattr leaf_nick +foK 786 h) .+host leaf_nick leaf_hostname 787 s) .botattr leaf_nick +gs 788 l) .+bot slave_nick slave_ip:bots_port/users_port 789 l) .botattr slave_nick +ghp 790 l) .link slave_nick 791 Wait for userfile from slave_nick 792 l) .botattr main_nick +gp 793 l) .chattr main_nick +H 794 If you want to add alt, type: (a - on alt) 795 a) .botattr leaf_nick +gs 796 l) .botattr alt_nick +agp 797 798 *ADDBOT* 799 800 *HUBS* 801 802 - Alt hub: 803 .aa <name> <ip/host> <port bots> <port users> [hubpass] 804 <name> - alt hub's botnet-nick 805 <ip/host> - alt hub's address 806 <port bots> - alt hub's bots-listenport 807 <port users> - alt hub's users-listenport 808 [hubpass] - if you set hubpass on althub, type it here 809 Rest must be done manually :( 810 811 - Slave hub: 812 .as <name> <ip/host> <port bots> <port users> [hubpass] 813 <name> - alt hub's botnet-nick 814 <ip/host> - alt hub's address 815 <port bots> - alt hub's bots-listenport 816 <port users> - alt hub's users-listenport 817 [hubpass] - if you set hubpass on althub, type it here 818 819 - Leaf (IPv4/BNC) to main hub: 820 .ab <name> <ircname> <ident> <hostname> <ip/host> <port> 821 <name> - leaf's botnet-nick 822 <ircname> - leaf's nick on irc 823 <ident> - leaf's ident (string between ! and @ in hostname) 824 <hostname> - hostname on irc (for example evangeline.b3ta.org) 825 <ip/host> - leaf's address 826 <port> - leaf's port 827 Example: .ab blah blah krzychug evangeline.b3ta.org 192.168.0.1 9999 828 829 - Leaf (IPv6) to main hub: 830 .ab <name> <ircname> <ident> <hostname> <ip/host> <port> [ipv6host] 831 <name> - leaf's botnet-nick 832 <ircname> - leaf's nick on irc 833 <ident> - leaf's ident (string between ! and @ in hostname) 834 <hostname> - hostname on irc (for example evangeline.b3ta.org) 835 <ip/host> - leaf's IPv4 address 836 <port> - leaf's port 837 [ipv6host] - leaf's IPv6 IP address 838 Example: .ab blah blah krzychug evangeline.b3ta.org 192.168.0.1 839 9999 2009:888:1524:10:0:0:0:0 840 841 - Leaf (IPv4/BNC) to slave hub: 842 .ab <name> <ircname> <ident> <hostname> <ip/host> <port> 843 [-slave <nick>] 844 <name> - leaf's botnet-nick 845 <ircname> - leaf's nick on irc 846 <ident> - leaf's ident (string between ! and @ in hostname) 847 <hostname> - hostname on irc (for example evangeline.b3ta.org) 848 <ip/host> - leaf's address 849 <port> - leaf's port 850 [-slave <nick>] - slave's botnet-nick 851 Example: .ab blah blah krzychug evangeline.b3ta.org 852 192.168.0.1 9999 -slave slave1 853 854 - Leaf (IPv6) to main hub: 855 .ab <name> <ircname> <ident> <hostname> <ip/host> <port> [ipv6host] 856 <name> - leaf's botnet-nick 857 <ircname> - leaf's nick on irc 858 <ident> - leaf's ident (string between ! and @ in hostname) 859 <hostname> - hostname on irc (for example evangeline.b3ta.org) 860 <ip/host> - leaf's IPv4 address 861 <port> - leaf's port 862 [-slave <nick>] - slave's botnet-nick 863 [ipv6host] - leaf's IPv6 IP address 864 Example: .ab blah blah krzychug evangeline.b3ta.org 192.168.0.1 865 9999 -slave slave1 2009:888:1524:10:0:0:0:0 866 867(10) Frequently asked questions (FAQ): 868 869 * I get 'ld-elf.so.1: Shared object 'libtcl84.so.1' not found or 870 'error in loading shared libraries libtcl8.4.so: cannot open shared 871 object file: No such file or directory' while starting the bot (or 872 similiar error): 873 874 It looks that bot was compiled with one Tcl version and tries to load 875 another. Maybe administrator upgraded Tcl and didn't tell you. You need 876 to recompile bot. 877 878 Maybe while administator upgrading Tcl, he/she didn't clean the old 879 version of Tcl or installed it into another directory. Tell your admin 880 about that :) 881 882 You might also try: 883 ./configure --with-tcllib=<path_to_tcl_lib> 884 --with-tclinc=<path_to_tcl.h> 885 886 For example: 887 ./configure --with-tcllib=/usr/local/tcl8.4.6/lib/libtcl.so 888 --with-tclinc=/usr/local/tcl8.4.6/include/tcl.h 889 890 This will tell configure where to look for the Tcl files. 891 892 Try looking for libtcl by: 893 ls /usr/lib/libtcl* 894 ls /usr/local/lib/libtcl* 895 896 Try looking for tcl.h by: 897 ls /usr/include/tcl.h 898 ls /usr/local/include/tcl.h 899 900 If everything else fails, try to install Tcl to your home dir ;) 901 902 * Installing Tcl in home directory: 903 904 Download newest version of tcl (check links section), then unpack 905 and go to unix/ directory. Configure, compile and install Tcl in 906 your home directory in tcl directory (if you're using bash you can 907 use $HOME variable): 908 ./configure --prefix=$HOME/tcl 909 make 910 make install 911 912 Now you should have Tcl libraries and tclsh in $HOME/tcl directory. 913 Add $HOME/tcl/bin to your PATH variable (in bash: 914 export PATH="$PATH:$HOME/tcl/bin") and LD_LIBRARY_PATH to $HOME/tcl/lib 915 (in bash: export LD_LIBRARY_PATH="$HOME/tcl/lib"). 916 917 NOTE: You should add your new PATH and LD_LIBRARY_PATH in shell 918 startup files (~/.bashrc in bash), so it should work next time too. 919 920 Bot should now compile and start without problems. 921 922 NOTE: If you installed Tcl in diffrent directory than: $HOME/tcl add 923 --with-tclinc=/path/to/tcl.h --with-tcllib=/path/to/libtcl.so 924 (or similiar), For example: 925 --with-tclinc=$HOME/tcl8.4/include/tcl.h 926 --with-tcllib=$HOME/tcl8.4/lib/libtcl.so 927 928 * +user - i can't add new user(s) 929 You have to be admin, permowner or adder. First two have to be set 930 before compilation in src/main.c ('char admin[121]' and 931 'char owner[121]'), third is an user with +r flag. Flag can only be 932 added by admin or permowner. 933 934 * Kick reasons - how to change? 935 It's preety simple. Before compilation open modules/irc.mod/chaos.c in 936 editor and find 'static const char *kreasons[]'. Below you've got all 937 my reasons, which you can change or remove (enter one: '"",'). 938 If you also want to change 'Evangeline' string added before kick reason, 939 find and change it 'char outputr[120]' 940 941 * How can i load my tcl scripts? 942 There are 2 methods to load user tcl scripts. Both can be enabled 943 before compilatio in src/main.c: 944 945 - open src/main.c and find 'char Tcl2Load[512]' and add path to 946 your tcl script, for example: 947 char Tcl2Load[512] = "scripts/mc.limit.tcl scripts/blah.tcl" 948 (scripts/ directory must be created by user). 949 You cannot change (add or remove) loaded scripts after compilation. 950 Every bot started from that directory will load same tcl scripts. 951 952 - open src/main.c and find 'char Tcl2Load[512] = "";'. Put '//' at 953 the same beggining of that line, then find '//char Tcl2Load[121]' 954 and remove '//' from that line. This will enable loader. loader.tcl 955 is available in .data/.scripts/ directory. This file is very easy to 956 edit: 957 958 array set Tcl2Load { 959 ipv4 "scripts/tcl1.tcl scripts/tcl2.tcl" 960 ipv6 "scripts/tcl2.tcl" 961 bnc "scripts/tcl3.tcl .data/.scripts/tcl55.tcl" 962 } ;# Tcl2Load 963 964 For example, if you want bot with 'mybot' as botnet-nick to 965 load 'scripts/mc.limit.tcl' just add: 966 967 array set Tcl2Load { 968 ipv4 "scripts/tcl1.tcl scripts/tcl2.tcl" 969 ipv6 "scripts/tcl2.tcl" 970 bnc "scripts/tcl3.tcl .data/.scripts/tcl55.tcl" 971 mybot "scripts/mc.limit.tcl" 972 } ;# Tcl2Load 973 974 * Problems with start fresh bot, segmentation fault. 975 If you see a message like: 976 977 * Last context: tclhash.c/215 [] 978 * Please REPORT this BUG! 979 * Check doc/BUG-REPORT on how to do so. 980 * Wrote DEBUG 981 * SEGMENT VIOLATION -- CRASHING! 982 Segmentation fault (core dumped) 983 984 You can try to replace binary/tbcload.so file with 1.4 version 985 (or 1.3 version if it won't help). If you still have that error 986 you can try to compile tbcload 1.4 on that account. 987 988 Precompiled tbcload libraries can be found here: 989 http://www.averse.piasta.pl/list/ in libs/tbcload directory 990 Tbcload 1.4 source code can be found here: 991 http://www.averse.piasta.pl/_data/tcl-sources/tbcload.tar.gz 992 993 * My bot QUIT irc with reason: 'Segmentation fault!': 994 Probably you found a bug. Make sure your bot dumped core file 995 (file should be named core, code.PIDNUMBER or evangeline-VERSION.core). 996 Load core file using gdb debugger (gdb ./evangeline core) and type 997 'bt'. Post whole info at forum (www.averse.piasta.pl/forums). Logs 998 and/r some explanation what happend before bot crashed is also welcome. 999 1000 * Non-working botnet - Linked bots doesn't respond as "botnet" 1001 To use commands like .mjoin, .enforce (.netchanset) etc you have to 1002 compile 2 packages: msa (main/slave/alt hubs) and normal (v4/v6/bnc). 1003 Bots from msa package doesn't connect to irc (there is no need to) but 1004 contains all useful commands and options to manage whole botnet. 1005 Bots from normal package work as normal bots connectiong to irc and 1006 operating there. They have to be linked to bot from msa package. 1007 1008 * Failed connection; aborted userfile transfer 1009 This anoying problem depends on server. If you've got something like 1010 this, add to you hub config file 'my-ip "ip_address"' and eventually 1011 'my-hostname "hostname_for_above_ip"'. This should help. 1012 1013 * Upgrade from previous versions: 1014 1015 - AversE: 1016 1017 *NOTE:* If you've got AversE v1.7 or earlier, you have to add 1018 '-telnet!*@*' mask to one of your users (should be you). 1019 *NOTE:* If you've got AversE v1.8-1.8.2 you can't do an upgrade. 1020 *NOTE:* If you've got AversE v1.8.6 you don't have to modify 1021 userfile. Just move/copy userfile and chanfile to 1022 .data/.bdata and start Evangeline with '-u' param 1023 (only v4/v6/bnc). If you want to import userfile on hub 1024 copy AversE userfile to evangeline-msa/ and type 1025 '.import filename.uf'. 1026 1027 - Evangeline: 1028 *OPOMBA:* �e nadgrajuje� Evangeline 0.9 ali 1.0... skratka starej�ega od 1029 RC3, posku�aj izvoziti listo uporabnikov (userfile) s komando '.export' 1030 (ali .mexport). In�taliraj novega bota in uporabi v njem '.import' komando. 1031 *OPOMBA:* �e nadgrajuje� Evangeline 1.0 RC3 ali novej�ega in si ob in�talaciji uporabil '--custom-key' samo odpakiraj novo verzijo v isti direktorij in rein�taliraj (./configure --custom-key;make) z istim kodirnim kju�em. �e si uporabil avtomatsko generiran kodirni klju�, mora� izvoziti listo uporabnikov (.export/.mexport) in jo potem ponovno uvoziti v novega bota (.import). 1032 1033(10) Pomo�: 1034 Pomo� lahko poi��ete na AversE/Evangeline spletni strani (glej povezave!). 1035 �e ne najdete odgovora na va�e vpra�anje/te�avo lahko poskusite na #evangeline@IRCnet kanalu. 1036 1037 1038(11) Povezave: 1039 Evangeline website: http://www.averse.piasta.pl 1040 Eggdrop website: http://www.eggheads.org 1041 Eggdrop help: http://www.egghelp.org 1042 Tcl download: ftp://tcl.activestate.com/pub/tcl and 1043 ftp://ftp.eggheads.org/pub/tcl 1044 1045((12) O meni: 1046 Moj e-mail: arcain@evangeline.x86.cl 1047 Moj vzdevek (nickname): KrzychuG, dosegljiv na IRC-u (#evangeline@IRCnet). 1048 1049 1050(13) Pozdravi in zahvale (po abecednem vrstnem redu): 1051 assassin: zaradi dobrih idej, bug poro�il, pomo�i/podpore (na kanalu in forumu) in posoja botneta za par mesecev ;) 1052 Bogas: zaradi dobrih idej, testiranja, bug poro�il in pomo�i (na kanalu in forumu) 1053 Dafcio: zaradi nekaterih zanimivih idej, testiranja, bug poro�il in pomo�i (na kanalu) 1054 Jorhn: zaradi shell accounta, testiranja, bug poro�il in nekaj pomo�i (na kanalu) 1055 1056 Ostala #evangeline ekipa in vsi, ki uporabljajo AversE/Evangeline bote. 1057 1058---------------------------------- OPOMBA ------------------------------------- 1059 Deli tega dokumenta so uporabljeni iz Eggdrop's Readme. 1060---------------------------------------------------------------------------- 1061____________________________________________________________________________ 1062# Copyright (C) 1999 - 2005 Eggheads Development Team 1063# Copyright (C) 2001 - 2005 Arcain/[Xp-AvR] 1064 1065 1066