This commit is contained in:
.[d]. 2021-07-11 07:49:45 +00:00
parent b530cc88de
commit d645a7f5cb
14 changed files with 0 additions and 1749 deletions

4
.gitignore vendored
View File

@ -1,4 +0,0 @@
__pycache__
.env
*krylon_config*
*krylon_database*

View File

@ -1,82 +0,0 @@
# krylon - art spam micro botnet logic
```
.oydddhhyo+/-.
`hddddhhddddddddhso/.
.dddh. ``..-:+ohdh-
__ .__ -ddddds/-` -sd/`
| | _________ ___.__.| | ____ ____ :dd//sdddhys+/:-` sdy-.
| |/ /\_ __ < | || | / _ \ / \ ody `yhdhddddddhhs/:+ddd/
| < | | \/\___ || |_( <_> ) | \ yd/ .hdh.hdhshddddddddddy
|__|_ \ |__| / ____||____/\____/|___| / `dh. `yddo:dd: ``-/+odddddo
\/ \/ \/ :hy +dddyhddhyo:. .sddddy:
+hy hddhdddhsyhdhohdddy:`
hdd` hdd/+hdhs//hddddy/`
.dddo`odd` .+yddddddh/`
`.--:://+-ydddyyds `+ddddh+`
.oso+. `:oyhhhddddddy.-odddd+ `:ydddh+.
:hddddh+`+ddddhyso++//+../ohddhyydddds.
+hdddds::..sdd/.` -hso+oosyyhyo+-
`odddhshy` `ody+-` -hdddy- ````+dh+
`sdddy- -ys. /hddhs/-` .:+s/ -dddo
`yddh. `oy/` .+hddddhso/-..```````.:ydddd+`++.
`/hy+.` :yy+.` `/shdddddddhyyyssyyhddddddd-+dh/`
`/yhs-` `/yhs/.` ./shddyyyyyhdddddddddddo`oddds
`++-/yhy+-` -ohdy+:`` `-:+oyyysddddddddho-.odddds
.sddhs:-+hdhs/.`.:shdhyo:.`` `..-/+osso/:.-ohddddd:
`/hddddy- -/shdhs/--/ohdddhys+/:--..--:+shdddddddy
.sddddh/ `-+yhddyo+osyddddddddddddddddddddddd:
/hddddo` `-/oyhdddhddddddddddddddddddddds
.sddddy- `-/+shdddddddddddddddddddh.
/hdddh/ `.:/+osyhhhhhhys+/.
.:+syyy` .sddddo` /o.
.+ydddddddho- `-+ddddy- sdd+
-sddddddhsoydddhhdddddh: .----. hddy
-sddddds/.`ohdddddddddd+` .:oyddddddddy/` .ddd+
`odddddo. .ydddddhddddh- -+ydddddddhhhddddh/ +ddd-
/hddddh: .yhddo-.``odd/ .+hddddho/-.` `:ohhho` `hddh
-ydddddd- `yddd: od. -sddddh+-` `/yho oddd:
`+ddddddd+ +ddd: .d` .sdddds:` -ddodddy
-ydddh/hdd. `hddo h- `/hdddy- yddddh.
ydddo` hhy -ddh` so .` `sdddh/` .ddddd:
ddd+ shy :ddo -h/.``:/ `ydddy. sdddd/
hdd: /dh :dd/ :hhyhs` oddds` odddd/
odd/ `dd` .dd/ `/o/` `ddds` `sdddh:
.hdo od/ sdo .ddd- -ydddh-
+dh` `hy -dh` `hdd- `+hddds.
`yd+ /d/ od+ +dd/ `/hdddh/`
.hd/ oh- `yh- `sdh. ./ydddds-
-hd/ `yh- .yh. `odh+. `-ohddddy:`
.yd/ `yh- .yh: :yhhs+:----/oydddddy/`
.sdo` .yh: `sdo` `/ydddddddddddddy/`
`ody. `oy/` `+hy:` `-ohddddddddy/`
/hs-` `+sy- -yds- `` `./shdddddho-
-yy+. :hdo` `/hds:` -:.`` ``./sddddddho:`
`odh/` -ydh/` .+hdy+-` .syysyhddddddyo:`
:hdy- `+hdy/` .+hddhs+:---yddddddy+sd/
`ohds- .ohdy/. `:shddddddddddddd:.ydh`
.shds:`-sdddo:` `:oyhhdddddddd+hddd-
-sddho::shddho:` `.-://///ohddh-
.+hdddsoydddddyo/-.` `odddy.
-ohddddddddddddddhhyhhddd+
-+sdddddddddddddddddh-
.:+osyhdddddhys+`
```
# INSTALL:
## NOTES:
```
- install python3
- install python3-pip
- install python3-venv
```
## COMMANDS:
```
- `git clone --recursive https://git.tcp.direct/decoded/krylon`
- `cd krylon`
- `python3 -m venv .env`
- `. .env/bin/activate`
- `python3 -m pip install --upgrade pip -r requirements.txt`
- `bash run.sh` or `bash debug.sh` or `irc3 .krylon_config`
.

BIN
acid.txt

Binary file not shown.

View File

@ -1,5 +0,0 @@
#infile.ans
ANSI=$1
#outfile.txt
ASCII=$2
piconv -f CP437 -t UTF-8 < $1 > $2

View File

@ -1 +0,0 @@
( o Y o )

View File

@ -1,214 +0,0 @@
import ipdb
import subprocess
cp437 = {
0:'\u0000',1:'\u263A',2:'\u263B',3:'\u2665',4:'\u2666',5:'\u2663',6:'\u2660',7:'\u2022',
8:'\u25D8',9:'\u25CB',10:'\u25D9',11:'\u2642',12:'\u2640',13:'\u266A',14:'\u266B',15:'\u263C',
16:'\u25BA',17:'\u25C4',18:'\u2195',19:'\u203C',20:'\u00B6',21:'\u00A7',22:'\u25AC',23:'\u21A8',
24:'\u2191',25:'\u2193',26:'\u2192',27:'\u2190',28:'\u221F',29:'\u2194',30:'\u25B2',31:'\u25BC',
32:'\u0020',33:'\u0021',34:'\u0022',35:'\u0023',36:'\u0024',37:'\u0025',38:'\u0026',39:'\u0027',
40:'\u0028',41:'\u0029',42:'\u002A',43:'\u002B',44:'\u002C',45:'\u002D',46:'\u002E',47:'\u002F',
48:'\u0030',49:'\u0031',50:'\u0032',51:'\u0033',52:'\u0034',53:'\u0035',54:'\u0036',55:'\u0037',
56:'\u0038',57:'\u0039',58:'\u003A',59:'\u003B',60:'\u003C',61:'\u003D',62:'\u003E',63:'\u003F',
64:'\u0040',65:'\u0041',66:'\u0042',67:'\u0043',68:'\u0044',69:'\u0045',70:'\u0046',71:'\u0047',
72:'\u0048',73:'\u0049',74:'\u004A',75:'\u004B',76:'\u004C',77:'\u004D',78:'\u004E',79:'\u004F',
80:'\u0050',81:'\u0051',82:'\u0052',83:'\u0053',84:'\u0054',85:'\u0055',86:'\u0056',87:'\u0057',
88:'\u0058',89:'\u0059',90:'\u005A',91:'\u005B',92:'\u005C',93:'\u005D',94:'\u005E',95:'\u005F',
96:'\u0060',97:'\u0061',98:'\u0062',99:'\u0063',100:'\u0064',101:'\u0065',102:'\u0066',103:'\u0067',
104:'\u0068',105:'\u0069',106:'\u006A',107:'\u006B',108:'\u006C',109:'\u006D',110:'\u006E',111:'\u006F',
112:'\u0070',113:'\u0071',114:'\u0072',115:'\u0073',116:'\u0074',117:'\u0075',118:'\u0076',119:'\u0077',
120:'\u0078',121:'\u0079',122:'\u007A',123:'\u007B',124:'\u007C',125:'\u007D',126:'\u007E',127:'\u2302',
128:'\u00C7',129:'\u00FC',130:'\u00E9',131:'\u00E2',132:'\u00E4',133:'\u00E0',134:'\u00E5',135:'\u00E7',
136:'\u00EA',137:'\u00EB',138:'\u00E8',139:'\u00EF',140:'\u00EE',141:'\u00EC',142:'\u00C4',143:'\u00C5',
144:'\u00C9',145:'\u00E6',146:'\u00C6',147:'\u00F4',148:'\u00F6',149:'\u00F2',150:'\u00FB',151:'\u00F9',
152:'\u00FF',153:'\u00D6',154:'\u00DC',155:'\u00A2',156:'\u00A3',157:'\u00A5',158:'\u20A7',159:'\u0192',
160:'\u00E1',161:'\u00ED',162:'\u00F3',163:'\u00FA',164:'\u00F1',165:'\u00D1',166:'\u00AA',167:'\u00BA',
168:'\u00BF',169:'\u2310',170:'\u00AC',171:'\u00BD',172:'\u00BC',173:'\u00A1',174:'\u00AB',175:'\u00BB',
176:'\u2591',177:'\u2592',178:'\u2593',179:'\u2502',180:'\u2524',181:'\u2561',182:'\u2562',183:'\u2556',
184:'\u2555',185:'\u2563',186:'\u2551',187:'\u2557',188:'\u255D',189:'\u255C',190:'\u255B',191:'\u2510',
192:'\u2514',193:'\u2534',194:'\u252C',195:'\u251C',196:'\u2500',197:'\u253C',198:'\u255E',199:'\u255F',
200:'\u255A',201:'\u2554',202:'\u2569',203:'\u2566',204:'\u2560',205:'\u2550',206:'\u256C',207:'\u2567',
208:'\u2568',209:'\u2564',210:'\u2565',211:'\u2559',212:'\u2558',213:'\u2552',214:'\u2553',215:'\u256B',
216:'\u256A',217:'\u2518',218:'\u250C',219:'\u2588',220:'\u2584',221:'\u258C',222:'\u2590',223:'\u2580',
224:'\u03B1',225:'\u00DF',226:'\u0393',227:'\u03C0',228:'\u03A3',229:'\u03C3',230:'\u00B5',231:'\u03C4',
232:'\u03A6',233:'\u0398',234:'\u03A9',235:'\u03B4',236:'\u221E',237:'\u03C6',238:'\u03B5',239:'\u2229',
240:'\u2261',241:'\u00B1',242:'\u2265',243:'\u2264',244:'\u2320',245:'\u2321',246:'\u00F7',247:'\u2248',
248:'\u00B0',249:'\u2219',250:'\u00B7',251:'\u221A',252:'\u207F',253:'\u00B2',254:'\u25A0',255:'\u00A0',
}
def q(s):
f = open('/home/dr1p/.weechat/weechat_fifo','w')
f.write('*{}\x0a'.format(s))
f.close()
class D():
def __init__(self):
self.MODE_BOLD=0
return
def c(self,n):
n = int(n)
cc = {
99:'\x03',
1:'\x02', #bold
3:'\x1d', #italics
4:'\x1f', #underline
9:'\x1e', #strikethrough
0:'\x01',
40:'1',
30:'14',
31:'04',
32:'09',
33:'08',
34:'12',
35:'13',
36:'11',
37:'15',
41:'04',
42:'09',
43:'08',
44:'12',
45:'13',
46:'11',
47:'15'
}
cb = {
99:'\x03',
1:'\x02', #bold
3:'\x1d', #italics
4:'\x1f', #underline
9:'\x1e', #strikethrough
0:'\x01',
40:'1',
30:'14',
31:'28',
32:'09',
33:'54',
34:'72',
35:'13',
36:'11',
37:'15',
41:'04',
42:'09',
43:'08',
44:'12',
45:'13',
46:'11',
47:'15'
}
#ipdb.set_trace()
if self.MODE_BOLD==1:
if n >= 30 and n <= 47:
return int(cc[n])
else:
return cb[n]
else:
return cb[n]
def w(s,index):
d=D()
s = s.replace('\x1b','')
ss = s
codes=[]
ogcodes=[]
newcodes=[]
while True:
sa = ss.find('[')
sb = ss.find('m')
if sa == -1 and sb == -1:
break
x = ss[sa:sb+1]
ogcodes.append(x)
codes.append(x.replace('m','').replace('[','').split(';'))
ss=ss[sb+1:]
count = len(codes[-1])
if count == 1:
ca = codes[-1][0]
if ca == '1' or ca == '3' or ca == '4' or ca == '9':
if ca == '1':
code = "{}".format(d.c(99))
else:
code = "{}".format(d.c(ca))
elif ca == '0':
code = "{}".format(d.c(1))
elif ca == '31':
# d.MODE_BOLD=0
code = "{}{}".format(d.c(99),d.c(31))
else:
try:
code = "{}{}".format(d.c(99),d.c(ca))
#code = "{},{}".format(c[99],c[int(ca)])
except:
if ca == '7C1':
codes[-1]=1
newcodes.append(code)
elif count == 2:
ca = codes[-1][0]
cb = codes[-1][1]
# ipdb.set_trace()
if ca == '0':
d.MODE_BOLD=0
code = "{}{}".format(d.c(99),d.c(cb))
elif ca == '1':
d.MODE_BOLD=1
code = "{}{}".format(d.c(99),d.c(cb))
else:
code = "{}{}{}{}".format(d.c(99),d.c(ca),d.c(99),d.c(cb))
newcodes.append(code)
elif count == 3:
ca = codes[-1][0]
cb = codes[-1][1]
cc = codes[-1][1]
if ca == '0':
code = "{}{},{}".format(d.c(99),d.c(cb),d.c(cc))
elif ca == '1':
d.MODE_BOLD=1
code = "{}{}{}{}".format(d.c(99),d.c(cb),d.c(99),d.c(cc))
newcodes.append(code)
elif count == 4:
ca = codes[-1][0]
cb = codes[-1][1]
cc = codes[-1][2]
cd = codes[-1][3]
code = "{}{}{},{}".format(d.c(1),d.c(99),d.c(cd),d.c(cc))
newcodes.append(code)
buffer = s
for i,_ in enumerate(ogcodes):
z = buffer.find(_)
if z == 0:
b=buffer[len(_):]
a=newcodes[i]
buffer = "{}{}".format(a,b)
else:
try:
a=buffer[:buffer.find(_)]
b=newcodes[i]
c=buffer[buffer.find(_)+len(ogcodes[i]):]
buffer = "{}{}{}".format(a,b,c)
except:
print('hi')
ipdb.set_trace()
print('hi')
print('hi')
q(buffer)
if __name__=="__main__":
f = open('/home/dr1p/Documents/python/acid.txt','r')
l = f.read().splitlines()
f.close()
for i,_ in enumerate(l):
if _.find('\x1aSAUCE') == -1:
w(_,i)
else:
pass

View File

@ -1 +0,0 @@
hupper -m irc3 .krylon_config

View File

@ -1,19 +0,0 @@
# -*- coding: utf-8 -*-
from irc3.plugins.command import command
import irc3
@irc3.plugin
class Plugin:
def __init__(self, bot):
self.bot = bot
@command(permission='view')
def b33p(self, mask, target, args):
"""b33p an irc b0t, it should b00p back
%%b33p <dubstep>...
"""
robostep='{}: b00p'.format(mask.nick)
roooboot = ''.join(args['<dubstep>'])
if roooboot == self.bot.nick:
self.bot.privmsg(target,robostep)

View File

@ -1,426 +0,0 @@
¢‿¢
©¿© o
ª{•̃̾_•̃̾}ª
¬_¬
¯\(º_o)/¯
¯\(º o)/¯
¯\_(⊙︿⊙)_/¯
¯\_(ツ)_/¯
°ω°
°Д°
°‿‿°
°ﺑ°
´ ▽ ` )ノ
¿ⓧ_ⓧﮌ
Ò,ó
ó‿ó
ô⌐ô
ôヮô
ŎםŎ
ŏﺡó
ʕ•̫͡•ʔ
ʕ•ᴥ•ʔ
ʘ‿ʘ
˚•_•˚
˚⌇˚
˚▱˚
̿ ̿̿'̿'\̵͇̿̿\=(•̪●)=/̵͇̿̿/'̿̿ ̿ ̿ ̿
͡° ͜ʖ ͡°
Σ ◕ ◡ ◕
Σ (゚Д゚;
Σ(゚Д゚;≡;゚д゚)
Σ(゚Д゚ )
Σ(||゚Д゚)
Φ,Φ
δﺡό
σ_σ
д_д
ф_ф
щ(゚Д゚щ)
щ(ಠ益ಠщ)
щ(ಥДಥщ)
Ծ_Ծ
أ‿أ
ب_ب
ح˚௰˚づ
ح˚ᆺ˚ว
حᇂﮌᇂ)
٩๏̯͡๏۶
٩๏̯͡๏)۶
٩◔̯◔۶
٩(×̯×)۶
٩(̾●̮̮̃̾•̃̾)۶
٩(͡๏̯͡๏)۶
٩(͡๏̯ ͡๏)۶
٩(ಥ_ಥ)۶
٩(•̮̮̃•̃)۶
٩(●̮̮̃•̃)۶
٩(●̮̮̃●̃)۶
٩(。͡•‿•。)۶
٩(-̮̮̃•̃)۶
٩(-̮̮̃-̃)۶
۞_۞
۞_۟۞
۹ↁﮌↁ
۹⌤_⌤۹
॓_॔
१✌◡✌५
१|˚–˚|५
ਉ_ਉ
ଘ_ଘ
இ_இ
ఠ_ఠ
రృర
ಠ¿ಠi
ಠ‿ಠ
ಠ⌣ಠ
ಠ╭╮ಠ
ಠ▃ಠ
ಠ◡ಠ
ಠ益ಠ
ಠ益ಠ
ಠ︵ಠ凸
ಠ , ಥ
ಠ.ಠ
ಠoಠ
ಠ_ృ
ಠ_ಠ
ಠ_๏
ಠ~ಠ
ಡ_ಡ
ತಎತ
ತ_ತ
ಥдಥ
ಥ‿ಥ
ಥ⌣ಥ
ಥ◡ಥ
ಥ﹏ಥ
ಥ_ಥ
ಭ_ಭ
ರ_ರ
ಸ , ໖
ಸ_ಸ
ക_ക
อ้_อ้
อ_อ
โ๏௰๏ใ ื
๏̯͡๏﴿
๏̯͡๏
๏̯͡๏﴿
๏[-ิิ_•ิ]๏
๏_๏
໖_໖
ლ(´ڡ`ლ)
ლ(́◉◞౪◟◉‵ლ)
ლ(ಠ益ಠლ)
ლ(╹◡╹ლ)
ლ(◉◞౪◟◉‵ლ)
ლ,ᔑ•ﺪ͟͠•ᔐ.ლ
ᄽὁȍ ̪ őὀᄿ
ᕕ( ᐛ )ᕗ
ᕙ(⇀‸↼‶)ᕗ
ᕦ(ò_óˇ)ᕤ
ᶘ ᵒᴥᵒᶅ
‘︿’
•▱•
•✞_✞•
•ﺑ•
•(⌚_⌚)•
•_•)
‷̗ↂ凸ↂ‴̖
‹•.•›
(•¿•)
(ᵒᴥᵒ­­­­­)
(•¿•)
ↁ_ↁ
⇎_⇎
∩(︶▽︶)∩
∩( ・ω・)∩
≖‿≖
≧ヮ≦
⊂•⊃_⊂•⊃
⊂⌒~⊃。Д。)⊃
⊂(◉‿◉)つ
⊂(゚Д゚,,⊂⌒`つ
⊙ω⊙
⊙▂⊙
⊙▃⊙
⊙△⊙
⊙︿⊙
⊙﹏⊙
⊙0⊙
⊛ठ̯⊛
⋋ō_ō`
━━━ヽ(ヽ(゚ヽ(゚ヽ(゚゚ヽ(゚゚)ノ゚゚)ノ゚)ノ゚)ノ)ノ━━━
┌∩┐(◕_◕)┌∩┐
┌( ಠ_ಠ)┘
┌( ಥ_ಥ)┘
╚(•⌂•)╝
╭╮╭╮☜{•̃̾_•̃̾}☞╭╮╭╮
╭✬⌢✬╮
╮(▽)╭
╯‵Д′)╯彡┻━┻
╰☆╮
□_□
►_◄
◃┆◉◡◉┆▷
◉△◉
◉︵◉
◉_◉
○_○
●¿●\ ~
●_●
◔̯◔
◔ᴗ◔
◔ ⌣ ◔
◔_◔
◕ω◕
◕‿◕
◕◡◕
◕ ◡ ◕
◖♪_♪|◗
◖|◔◡◉|◗
◘_◘
◙‿◙
◜㍕◝
◪_◪
◮_◮
☁ ☝ˆ~ˆ☂
☆¸☆
☉‿⊙
☉_☉
☐_☐
☜ق❂Ⴢ❂ق☞
☜(⌒▽⌒)☞
☜(゚ヮ゚☜)
☜-(ΘLΘ)-☞
☝☞✌
☮▁▂▃▄☾ ♛ ◡ ♛ ☽▄▃▂▁☮
☹_☹
☻_☻
☼.☼
☾˙❀‿❀˙☽
♀ح♀ヾ
♥‿♥
♥╣[-_-]╠♥
♥╭╮♥
♥◡♥
✌♫♪˙❤‿❤˙♫♪✌
✌.ʕʘ‿ʘʔ.✌
✌.|•͡˘‿•͡˘|.✌
✖‿✖
✖_✖
❐‿❑
_
_Ꙩ
⨂_⨂
〆(・・@)
《〠_〠》
【•】_【•】
〠_〠
〴⋋_⋌〵
<EFBFBD> <20>
ニガー? ━━━━━━(゚゚)━━━━━━ ニガー?
ペ㍕˚\
ヽ(´ー` )ノ
ヽ(๏๏ )ノ
ヽ(`Д´)ノ
ヽ(`皿′o)ノ
ヽ(`Д´)ノ
ㅎ_ㅎ
乂◜◬◝乂
凸ಠ益ಠ)凸
句_句
Ꙩ⌵Ꙩ
Ꙩ_Ꙩ
ꙩ_ꙩ
Ꙫ_Ꙫ
ꙫ_ꙫ
ꙮ_ꙮ
흫_흫
句_句
﴾͡๏̯͡๏﴿ O'RLY?
¯\(ºдಠ)/¯
(·×·)
(⌒Д⌒)
(╹ェ╹)
(♯・・)⊃
( ´`)☆
 ´
(゜Д゜)
(・・)
(・A・)
(゚゚)
( ̄へ ̄)
´☣///_ゝ///☣`)
つ Д
_☆( ´_⊃_
。◕‿‿◕。
。◕ ‿ ◕。
!⑈ˆ~ˆ!⑈
!(`・ω・。)
(¬‿¬)
(¬▂¬)
(¬_¬)
(°ℇ °)
(°°)
(´ω`)
(´◉◞౪◟◉)
(´ヘ`;)
(´・ω・`)
(´ー`)
(ʘ‿ʘ)
(ʘ_ʘ)
(˚இ˚)
(͡๏̯͡๏)
(ΘεΘ;)
(ι´Д`)ノ
(Ծ‸ Ծ)
(॓_॔)
( ्०)
(ு८ு_ .:)
(ಠ‾ಠ)
(ಠ‿ʘ)
(ಠ‿ಠ)
(ಠ⌣ಠ)
(ಠ益ಠ ╬)
(ಠ益ಠ)
(ಠ_ృ)
(ಠ_ಠ)
(ಥ﹏ಥ)
(ಥ_ಥ)
(๏̯͡๏ )
(ღ˘⌣˘ღ) ♫・*:.。. .。.:*・
(ღ˘⌣˘ღ)
(ᵔᴥᵔ)
(•ω•)
(•‿•)
(•⊙ω⊙•)
(• ε •)
(∩▂∩)
(∩︵∩)
()
(≧ω≦)
(≧◡≦)
(≧ロ≦)
(⊙ヮ⊙)
(⊙_◎)
(⋋▂⋌)
(⌐■_■)
(‿‿)
(┛◉Д◉)┛┻━┻
(╥_╥)
(╬ಠ益ಠ)
(╬◣д◢)
(╬ ಠ益ಠ)
(╯°□°)╯︵ ┻━┻
(╯ಊ╰)
(╯◕_◕)╯
(╯︵╰,)
(╯3╰)
(╯_╰)
(╹◡╹)凸
(▰˘◡˘▰)
(●´ω`●)
(●´`●)
(◑‿◐)
(◑◡◑)
(◕‿◕✿)
(◕‿◕)
(◕‿-)
(◕︵◕)
(◕ ^ ◕)
(◕_◕)
(◜௰◝)
(◡‿◡✿)
(◣_◢)
(☞゚゚)☞
(☞゚ヮ゚)☞
(☞゚ ゚ )☞
(☼◡☼)
(☼_☼)
(✌゚゚)☞
(✖╭╮✖)
(✪㉨✪)
(✿◠‿◠)
(✿ ♥‿♥)
( ・・)
( ・ัω・ั)
( ゚゚)o彡゜えーりんえーりん!!
(。・_・。)
(つд`)
(づ。◕‿‿◕。)づ
(ノಠ益ಠ)ノ彡┻━┻
( ◑‿◑)
(_・。)
(・・ )
(屮゚Д゚)屮
(︶ω︶)
(︶︹︺)
(ﺧ益ﺨ)
(一_一)
(`・ω・´)”
(。◕‿‿◕。)
(。◕‿◕。)
(。◕ ‿ ◕。)
(。♥‿♥。)
(。・ω..・)っ
(・ェ-)
(ノ◕ヮ◕)ノ*:・゚✧
(゚Д゚)
(゚Д゚)y┛~~
(゚゚)
(゚ヮ゚)
( ̄□ ̄)
( ̄。 ̄)
( ̄ー ̄)
( ̄(エ) ̄)
( °٢° )
( ´_ゝ)
( ͡° ͜ʖ ͡°)
( ͡~ ͜ʖ ͡°)
( ಠ◡ಠ )
( •_•)>⌐■-■
(  ゚,_ゝ゚)
( ・ิз・ิ)
( ゚д゚)、
( ^▽^)σ)~O~)
((((゜д゜;))))
(*´д`*)
(*..Д`)
(*..д`*)
(*~▽~)
(-๏_๏-)
(-_- )
(/◔ ◡ ◔)/
(///_ಥ)
(;´Д`)
(=ω=;)
(=゜ω゜)
(>'o')> ♥ <('o'<)
(n˘v˘•)¬
(o´ωo)
(V)(°,,°)(V)
(\/) (°,,°) (\/)
(^▽^)
(`・ω・´)
(~ ̄▽ ̄)~
/╲/\╭ºoꍘoº╮/\\
<【☯】‿【☯】>
= (゚д゚)ウ
@_@
d(*⌒▽⌒*)b
o(≧≦)o
o(≧o≦)o
q(❂‿❂)p
y=ー( ゚д゚)・∵.
\˚ㄥ˚\
\ᇂ_ᇂ\
\(ಠ ὡ ಠ )/
\(◕ ◡ ◕\)
^̮^
^ㅂ^
_(͡๏̯͡๏)_
{´◕ ◡ ◕`}
{ಠ_ಠ}__,,|,
{◕ ◡ ◕}

View File

@ -1,106 +0,0 @@
Hallo
Mirë dita
مرحبا
Салам
سلام
Kaixo
Zdravo
Olá
Oi
Demat
Здравейте
Hola
Moni
Bonghjornu
Bok
Ahoj
Hej
Hallo
Hello
Saluton
Tere
سلام
درود بر تو
درود بر شما
Bula
Kamusta
Hei
Terve
Bonjour
მიესალმები
miesalmebi
Hallo
Χαίρε
Hello
Aloha
שלום
नमस्ते
Sziasztok
Halo
Hai
Dia dhuit
Ciao
こんにちは
Kon'nichiwa
ನಮಸ್ಕಾರ
Namaskār
ជំរាបសួរ
안녕
Annyeong
ສະບາຍດີ
sabaidi
Salve
Sveiki
Hallau
Sveiki
Добар ден
Selamat tengahari
Ħelow
你好
Nǐ hǎo
Kia ora
नमस्ते
Namaste
Hei
ନମସ୍କାର
Namaskār
سلام
salam
Cześć
Hej
Olá
Oi
Buna
Привет
Preevyet
Talofa
Haló
Здраво
Zdravo
侬好
Noŋ hɔ
Mhoro
Ahoj
Zdravo
Hola
Grüss Gott
Hodi
Hej
Hallá
வனக்கம்
Vanakkam
Xin chào
Womenjeka
שלום
Sholem
வணக்கம்
Vanakaam
నమస్కారం
Namaskāram
สวัสดีค่ะ
Sawatdeekha
Merhaba
Chào bạn
Helo
העלא
Sawubona

View File

@ -1,752 +0,0 @@
# -*- coding: utf-8 -*-
from irc3.plugins.command import command
import irc3
import os
import random
import ipdb
from random import randint
from re import compile
from irc3 import rfc
import subprocess
#ipdb.set_trace()
dir_path = os.path.dirname(os.path.realpath(__file__))
KRYPTR = []
BOTNAMES = []
BOTNICKS = []
TOTAL_BOTS = 0
READY_BOTS = []
LOCK_KRYLON = 1 # 1
INTERRUPTED = 0
global FIRST_EXEC
cp437 = {
0:'\u0000',1:'\u263A',2:'\u263B',3:'\u2665',4:'\u2666',5:'\u2663',6:'\u2660',7:'\u2022',
8:'\u25D8',9:'\u25CB',10:'\u25D9',11:'\u2642',12:'\u2640',13:'\u266A',14:'\u266B',15:'\u263C',
16:'\u25BA',17:'\u25C4',18:'\u2195',19:'\u203C',20:'\u00B6',21:'\u00A7',22:'\u25AC',23:'\u21A8',
24:'\u2191',25:'\u2193',26:'\u2192',27:'\u2190',28:'\u221F',29:'\u2194',30:'\u25B2',31:'\u25BC',
32:'\u0020',33:'\u0021',34:'\u0022',35:'\u0023',36:'\u0024',37:'\u0025',38:'\u0026',39:'\u0027',
40:'\u0028',41:'\u0029',42:'\u002A',43:'\u002B',44:'\u002C',45:'\u002D',46:'\u002E',47:'\u002F',
48:'\u0030',49:'\u0031',50:'\u0032',51:'\u0033',52:'\u0034',53:'\u0035',54:'\u0036',55:'\u0037',
56:'\u0038',57:'\u0039',58:'\u003A',59:'\u003B',60:'\u003C',61:'\u003D',62:'\u003E',63:'\u003F',
64:'\u0040',65:'\u0041',66:'\u0042',67:'\u0043',68:'\u0044',69:'\u0045',70:'\u0046',71:'\u0047',
72:'\u0048',73:'\u0049',74:'\u004A',75:'\u004B',76:'\u004C',77:'\u004D',78:'\u004E',79:'\u004F',
80:'\u0050',81:'\u0051',82:'\u0052',83:'\u0053',84:'\u0054',85:'\u0055',86:'\u0056',87:'\u0057',
88:'\u0058',89:'\u0059',90:'\u005A',91:'\u005B',92:'\u005C',93:'\u005D',94:'\u005E',95:'\u005F',
96:'\u0060',97:'\u0061',98:'\u0062',99:'\u0063',100:'\u0064',101:'\u0065',102:'\u0066',103:'\u0067',
104:'\u0068',105:'\u0069',106:'\u006A',107:'\u006B',108:'\u006C',109:'\u006D',110:'\u006E',111:'\u006F',
112:'\u0070',113:'\u0071',114:'\u0072',115:'\u0073',116:'\u0074',117:'\u0075',118:'\u0076',119:'\u0077',
120:'\u0078',121:'\u0079',122:'\u007A',123:'\u007B',124:'\u007C',125:'\u007D',126:'\u007E',127:'\u2302',
128:'\u00C7',129:'\u00FC',130:'\u00E9',131:'\u00E2',132:'\u00E4',133:'\u00E0',134:'\u00E5',135:'\u00E7',
136:'\u00EA',137:'\u00EB',138:'\u00E8',139:'\u00EF',140:'\u00EE',141:'\u00EC',142:'\u00C4',143:'\u00C5',
144:'\u00C9',145:'\u00E6',146:'\u00C6',147:'\u00F4',148:'\u00F6',149:'\u00F2',150:'\u00FB',151:'\u00F9',
152:'\u00FF',153:'\u00D6',154:'\u00DC',155:'\u00A2',156:'\u00A3',157:'\u00A5',158:'\u20A7',159:'\u0192',
160:'\u00E1',161:'\u00ED',162:'\u00F3',163:'\u00FA',164:'\u00F1',165:'\u00D1',166:'\u00AA',167:'\u00BA',
168:'\u00BF',169:'\u2310',170:'\u00AC',171:'\u00BD',172:'\u00BC',173:'\u00A1',174:'\u00AB',175:'\u00BB',
176:'\u2591',177:'\u2592',178:'\u2593',179:'\u2502',180:'\u2524',181:'\u2561',182:'\u2562',183:'\u2556',
184:'\u2555',185:'\u2563',186:'\u2551',187:'\u2557',188:'\u255D',189:'\u255C',190:'\u255B',191:'\u2510',
192:'\u2514',193:'\u2534',194:'\u252C',195:'\u251C',196:'\u2500',197:'\u253C',198:'\u255E',199:'\u255F',
200:'\u255A',201:'\u2554',202:'\u2569',203:'\u2566',204:'\u2560',205:'\u2550',206:'\u256C',207:'\u2567',
208:'\u2568',209:'\u2564',210:'\u2565',211:'\u2559',212:'\u2558',213:'\u2552',214:'\u2553',215:'\u256B',
216:'\u256A',217:'\u2518',218:'\u250C',219:'\u2588',220:'\u2584',221:'\u258C',222:'\u2590',223:'\u2580',
224:'\u03B1',225:'\u00DF',226:'\u0393',227:'\u03C0',228:'\u03A3',229:'\u03C3',230:'\u00B5',231:'\u03C4',
232:'\u03A6',233:'\u0398',234:'\u03A9',235:'\u03B4',236:'\u221E',237:'\u03C6',238:'\u03B5',239:'\u2229',
240:'\u2261',241:'\u00B1',242:'\u2265',243:'\u2264',244:'\u2320',245:'\u2321',246:'\u00F7',247:'\u2248',
248:'\u00B0',249:'\u2219',250:'\u00B7',251:'\u221A',252:'\u207F',253:'\u00B2',254:'\u25A0',255:'\u00A0',
}
class D():
def __init__(self):
self.MODE_BOLD=0
return
def c(self,n):
n = int(n)
cc = {
99:'\x03',
1:'\x02', #bold
3:'\x1d', #italics
4:'\x1f', #underline
9:'\x1e', #strikethrough
0:'\x01',
40:'1',
30:'14',
31:'04',
32:'09',
33:'08',
34:'12',
35:'13',
36:'11',
37:'15',
41:'04',
42:'09',
43:'08',
44:'12',
45:'13',
46:'11',
47:'15'
}
cb = {
99:'\x03',
1:'\x02', #bold
3:'\x1d', #italics
4:'\x1f', #underline
9:'\x1e', #strikethrough
0:'\x01',
40:'1',
30:'14',
31:'28',
32:'09',
33:'54',
34:'72',
35:'13',
36:'11',
37:'15',
41:'04',
42:'09',
43:'08',
44:'12',
45:'13',
46:'11',
47:'15'
}
#ipdb.set_trace()
if self.MODE_BOLD==1:
if n >= 30 and n <= 47:
return int(cc[n])
else:
return cb[n]
else:
return cb[n]
class KRYLON():
def __init__(self,bot,channel):
self.KRYLON_FILE = []
self.bot = bot
self.channel = channel
#self.KRYLON_FILE = ['a'*40,'b'*40,'c'*40,'d'*40,'e'*40,'f'*40,'g'*40,'h'*40,'1'*40,'2'*40,'3'*40,'4'*40,'5'*40,'6'*40,'7'*40,'8'*40]
#ipdb.set_trace()
self.__run__()
def q(self,s):
#f = open('/home/dr1p/.weechat/weechat_fifo','w')
#f.write('*{}\x0a'.format(s))
#f.close()
#f = open('/home/dr1p/Documents/code/python/krylon/test.txt','a')
#f.write('*{}\x0a'.format(s))
#f.close()
self.KRYLON_FILE.append(s)
def w(self,s,index):
d=D()
s = s.replace('\x1b','')
ss = s
codes=[]
ogcodes=[]
newcodes=[]
while True:
sa = ss.find('[')
sb = ss.find('m')
if sa == -1 and sb == -1:
break
x = ss[sa:sb+1]
ogcodes.append(x)
codes.append(x.replace('m','').replace('[','').split(';'))
ss=ss[sb+1:]
count = len(codes[-1])
if count == 1:
ca = codes[-1][0]
if ca == '1' or ca == '3' or ca == '4' or ca == '9':
if ca == '1':
code = "{}".format(d.c(99))
else:
code = "{}".format(d.c(ca))
elif ca == '0':
code = "{}".format(d.c(1))
elif ca == '31':
# d.MODE_BOLD=0
code = "{}{}".format(d.c(99),d.c(31))
else:
try:
code = "{}{}".format(d.c(99),d.c(ca))
#code = "{},{}".format(c[99],c[int(ca)])
except:
if ca == '7C1':
codes[-1]=1
newcodes.append(code)
elif count == 2:
ca = codes[-1][0]
cb = codes[-1][1]
# ipdb.set_trace()
if ca == '0':
d.MODE_BOLD=0
code = "{}{}".format(d.c(99),d.c(cb))
elif ca == '1':
d.MODE_BOLD=1
code = "{}{}".format(d.c(99),d.c(cb))
else:
code = "{}{}{}{}".format(d.c(99),d.c(ca),d.c(99),d.c(cb))
newcodes.append(code)
elif count == 3:
ca = codes[-1][0]
cb = codes[-1][1]
cc = codes[-1][1]
if ca == '0':
code = "{}{},{}".format(d.c(99),d.c(cb),d.c(cc))
elif ca == '1':
d.MODE_BOLD=1
code = "{}{}{}{}".format(d.c(99),d.c(cb),d.c(99),d.c(cc))
newcodes.append(code)
elif count == 4:
ca = codes[-1][0]
cb = codes[-1][1]
cc = codes[-1][2]
cd = codes[-1][3]
code = "{}{}{},{}".format(d.c(1),d.c(99),d.c(cd),d.c(cc))
newcodes.append(code)
buffer = s
for i,_ in enumerate(ogcodes):
z = buffer.find(_)
if z == 0:
b=buffer[len(_):]
a=newcodes[i]
buffer = "{}{}".format(a,b)
else:
try:
a=buffer[:buffer.find(_)]
b=newcodes[i]
c=buffer[buffer.find(_)+len(ogcodes[i]):]
buffer = "{}{}{}".format(a,b,c)
except:
print('hi')
ipdb.set_trace()
print('hi')
print('hi')
self.q(buffer)
def __run__(self):
try:
if int(FIRST_EXEC) == 0:
print('yolo')
except:
#ipdb.set_trace()
FIRST_EXEC = 1
self.__f = open('/home/dr1p/Documents/code/python/krylon/acid.txt','r')
self.__l = self.__f.read().splitlines()
self.__f.close()
for i,_ in enumerate(self.__l):
if _.find('\x1aSAUCE') == -1:
self.w(_,i)
else:
pass
self.KRYLON_FILE.reverse()
self.FILE_BUFFER=[]
for _ in self.KRYLON_FILE:
self.FILE_BUFFER.append(_)
self.FILE_LINES = len(self.KRYLON_FILE)
self.INIT = 0
self.STARTED = 0
self.FINISHED = 0
self.FILE_INDEX = 0
# BITWISE FILE LOCK SET
self.KRYLON_FILE_LOCK = []
for _ in range(len(self.KRYLON_FILE)):
self.KRYLON_FILE_LOCK.append(1)
# BITWISE R/W BOT LOCK SET
self.BOTS_MODE_LOCK = []
for _ in range(len(READY_BOTS)):
self.BOTS_MODE_LOCK.append(zip('1','1'))
# BITWISE R/W BOT LOCK UNSET
R=[]; W=[]; _X=-1; _Y=-1;
for _ in range(len(READY_BOTS)):
_X,_Y=list(self.BOTS_MODE_LOCK[_])[0]
R.append(int(_X))
W.append(int(_Y))
self.BOTS_MODE_READ=R
self.BOTS_MODE_WRIT=W
@irc3.plugin
class Plugin(object):
def __init__(self, context):
self.log = context.log
self.context = context
self.channel = context.config.channel
self._ST8 = 0
def __emoj(self,s):
emote_db = '%s/emote.db' % dir_path
emoj = random.choice(list(open(emote_db)))
random.randint(0,1)
if random.randint(0,1) == 0:
emoj = "\x0304{}\x0F".format(emoj)
else:
emoj = "\x0303{}\x0F".format(emoj)
s = s + '' + emoj
return s
def __greet(self):
greet_db = '%s/greet.db' % dir_path
greet = random.choice(list(open(greet_db)))
return greet
def __symbol(self):
symbol_db = '%s/symbol.db' % dir_path
symbol = random.choice(list(open(symbol_db)))
return symbol
def rotate(self):
self.b1n+=1
if self.b1n == len(BOTNICKS):
self.b1n=0
ipdb.set_trace()
def spraying(self, mask, channel, **kw):
PTR = KRYPTR[0]
PTR.kbr = []; PTR.kbw = []; PTR.kbl = [];
PTR.chn = channel
for index in range(len(PTR.BOTS_MODE_READ)):
PTR.kbr.append(PTR.BOTS_MODE_READ[index])
PTR.kbw.append(PTR.BOTS_MODE_WRIT[index])
PTR.kbl.append(PTR.KRYLON_FILE_LOCK[index])
PTR.fbu = PTR.FILE_BUFFER
PTR.fli = PTR.FILE_LINES
PTR.fin = PTR.FILE_INDEX
BOTNAMES=','.join(self.context.config.botnet.keys()).split(',')
PTR.bna = BOTNAMES
BOTNICKS=[]
for _ in BOTNAMES:
BOTNICKS.append(self.context.config.botnet[_].nick)
PTR.bni = BOTNICKS
PTR.b1n = BOTNICKS.index(self.context.nick)
PTR.int = 0
if PTR.INIT == 0:
PTR._ST8 = 0
PTR.INIT = 1
print('<<<<<<> JUST INIT <>>>>>>') # test if initialized for first pass, fails on purpose
PTR.STARTED = 1
PTR.FINISHED = 0
PTR.exe = 1 # set to recognize execution
PTR.cyc = 0 # how many cycles within this operation, e.g. amount of bots pass through this function
PTR.ops = 0 # how many completed operations, cycles reset, ops continue to count
#ipdb.set_trace()
for y in range(len(PTR.bni)):
if not y == PTR.b1n:
PTR.kbr[y] = 0
else:
PTR.kbw[y] = 1
PTR.who = self.context.nick
MSG=PTR.fbu.pop()
PTR.what = MSG
PTR.fin+=1
NEWBOT=','.join(list(self.context.config.botnet.keys())).split(',')[PTR.b1n]
print(PTR.bni)
print(PTR.bna)
print(PTR.b1n)
print(PTR.bni[PTR.b1n])
print(PTR.bna[PTR.b1n])
print("WHO:{} NEWBOT:{}".format(PTR.who,NEWBOT))
self.context.privmsg(PTR.chn,MSG)
if PTR._ST8 <= 5 and PTR.FINISHED == 1:
PTR.int = INTERRUPTED
INTERRUPTED = 0
PTR._ST8 = 3
@irc3.event(irc3.rfc.JOIN)
def welcome(self, mask, channel, **kw):
if LOCK_KRYLON == 1:
B0T = self.context
B0TNAMES=','.join(self.context.config.botnet.keys()).split(',')
B0TN1CKS=[]
for _ in B0TNAMES:
B0TN1CKS.append(self.context.config.botnet[_].nick)
for i,B0T.nick in enumerate(B0TN1CKS):
if B0TN1CKS[i] == B0T.nick:
NFLAG=1
for _ in READY_BOTS:
if B0T.nick == _:
NFLAG=0
if NFLAG==1:
READY_BOTS.append(self.context.nick)
BOTCNT = len(self.context.config.botnet)
if len(READY_BOTS) == BOTCNT:
BOTNICKS=B0TN1CKS
BOTNAMES=B0TNAMES
TOTAL_BOTS = BOTCNT;
BOT=self.context
CHN=channel
k=KRYLON(BOT,CHN)
KRYPTR.append(k)
self.spraying(mask,channel,**kw)
@irc3.event(irc3.rfc.CONNECTED)
def connected(self, **kw):
if LOCK_KRYLON == 1:
self.context.join(self.channel)
@irc3.event(rfc.PRIVMSG, iotype="out")
def krylon_event(bot, mask=None, event=None, target=None, data=None):
NICK=bot.context.nick
CHANNEL=bot.channel
MSG="CHANNEL: {} event out: {}".format(CHANNEL,NICK)
print(MSG)
# ipdb.set_trace()
PTR = KRYPTR[0]
B0T=bot.context
B1N = PTR.bni.index(B0T.nick)
print("OUTPUT:{}".format(bot.context.nick))
# if PTR.who == bot.context.nick and PTR.STARTED == 1 and PTR.FINISHED == 0 and PTR.what == data and PTR.fin < PTR.fli:
# PTR.fin+=1
# PTR.b1n+=1
# if PTR.b1n == len(PTR.bni):
# PTR.b1n=0
# PTR.who = PTR.bni[PTR.b1n]
# MSG=PTR.fbu.pop()
# PTR.what = MSG
# NEWBOT=','.join(list(bot.context.config.botnet.keys())).split(',')[PTR.b1n]
# print(NEWBOT)
# ipdb.set_trace()
# bot.context.privmsg(CHANNEL,MSG)
# bot.context.config.botnet[NEWBOT].privmsg(CHANNEL,MSG)
# ipdb.set_trace()
# ipdb.set_trace()
# for i,B0T.nick in enumerate(BOTNICKS):
# if BOTNICKS[i] == B0T.nick:
# # ipdb.set_trace()
# MSG+=" (BOT)NICK/NAME:{}/{} <> ".format(BOTNICKS[i],BOTNAMES[i])
# MSG+="LOCK:{} READ:{} WRITE:{} ".format(bot.kbl[B1N],bot.kbr[B1N],bot.kbw[B1N])
# MSG+="LINES:{} INDEX:{} INTERRUPTED:{}".format(bot.fli,bot.fin,bot.int)
# bot.context.privmsg(CHANNEL,MSG)
#bot.context.privmsg(CHANNEL,"{} event out".format(NICK))
@irc3.event(irc3.rfc.PRIVMSG, iotype="in")
def on_privmsg(self, mask=None, data=None, **kw):
# B0T=self.context
# print(data)
bot = self
NICK=bot.context.nick
CHANNEL=bot.channel
MSG="CHANNEL: {} event out: {}".format(CHANNEL,NICK)
print(MSG)
# ipdb.set_trace()
PTR = KRYPTR[0]
B0T=bot.context
B1N = PTR.bni.index(B0T.nick)
print("INPUT:{}".format(bot.context.nick))
WTF=0
if mask.nick == 'd' and PTR.int == 0:
self.context.privmsg('#sh0rtbus','dont interrupt me mofo')
PTR.int = 1
PTR.FILE_BUFFER=[]
for _ in PTR.KRYLON_FILE:
PTR.FILE_BUFFER.append(_)
PTR.fbu = PTR.FILE_BUFFER
PTR.INIT = 0
PTR.fin=0
PTR.b1n=0
self.spraying(mask,channel,**kw)
return
if PTR.who == mask.nick and PTR.STARTED == 1 and PTR.FINISHED == 0 and PTR.what == data and PTR.fin < PTR.fli:
PTR.fin+=1
PTR.b1n+=1
if PTR.b1n == len(PTR.bni):
PTR.b1n=0
PTR.who = PTR.bni[PTR.b1n]
MSG=PTR.fbu.pop()
PTR.what = MSG
NEWBOT=','.join(list(bot.context.config.botnet.keys())).split(',')[PTR.b1n]
print(NEWBOT)
bot.context.config.botnet[NEWBOT].privmsg(CHANNEL,MSG)
# self.BYPASSING=0
# if mask.nick == 'd': self.BYPASSING=1
# if self._ST8 == 2:
# for i,B0T.nick in enumerate(BOTNICKS):
# if BOTNICKS[i] == B0T.nick:
# MSG="<< initial complications getting into the areas to do art ops, a server/channel/max-limit/key or invite only type issue >>"
# #redundant code//change later
# MSG+="(BOT)NICK/NAME:{}/{} <>".format(BOTNICKS[i],BOTNAMES[i])
# MSG+="LOCK:{} READ:{} WRITE:{}".format(self._kbl[B1N],self._kbr[B1N],self._kbw[B1N])
# MSG+="LINES:{} INDEX:{} INTERRUPTED:{}".format(self._fli,self._fin,self._int)
# self.context.privmsg(CHN,MSG)
# if self._ST8 >= 3 or self.BYPASSING == 1:
# NOTBOT=0
# B0T = self.context
# CHN = B0T.config.channel
# try:
# B1N = BOTNICKS.index(B0T.nick)
# except:
# pass
# if not mask.nick == B0T.nick:
# NOTBOT=1
# if KRYPTR[0].STARTED == 1 and KRYPTR[0].FINISHED == 0:
# if not self._fli <=0:
# self.INTERRUPTED+=1
# rando = random.randint(1,5)
# MSG=''
# if rando == 1:
# MSG+='no cellphones plz'
# elif rando == 2:
# MSG+='mind being quiet?'
# elif rando == 3:
# MSG+='trying to do something here...'
# elif rando == 4:
# MSG+='have you seen this before?'
# elif rando == 5:
# MSG+='there could be a secret message'
# self.context.privmsg(CHN,MSG)
# KRYPTR[0].FILE_BUFFER=KRYPTR[0].KRYLON_FILE
# KRYPTR[0].FILE_LINES = len(KRYPTR[0].KRYLON_FILE)
# KRYPTR[0].FILE_INDEX = 0
# self.spraying(mask,self.channel,**kw)
# self._ST8 = 5
# else:
# NOTBOT=0
# if self._ST8 == 3:
# for i,B0T.nick in enumerate(BOTNICKS):
# if BOTNICKS[i] == B0T.nick:
# MSG="<< ART OP SIMULATION >>"
# #redundant code//change later
# MSG+="(BOT)NICK/NAME:{}/{} <>".format(BOTNICKS[i],BOTNAMES[i])
# MSG+="LOCK:{} READ:{} WRITE:{}".format(self._kbl[B1N],self._kbr[B1N],self._kbw[B1N])
# MSG+="LINES:{} INDEX:{} INTERRUPTED:{}".format(self._fli,self._fin,self._int)
# self.context.privmsg(CHN,MSG)
# if self._ST8 == 4:
# for i,B0T.nick in enumerate(BOTNICKS):
# if BOTNICKS[i] == B0T.nick:
# MSG="<< done with no interruptions >>"
# #redundant code//change later
# MSG+="(BOT)NICK/NAME:{}/{} <>".format(BOTNICKS[i],BOTNAMES[i])
# MSG+="LOCK:{} READ:{} WRITE:{}".format(self._kbl[B1N],self._kbr[B1N],self._kbw[B1N])
# MSG+="LINES:{} INDEX:{} INTERRUPTED:{}".format(self._fli,self._fin,self._int)
# self.context.privmsg(CHN,MSG)
# if self._ST8 == 5:
# for i,B0T.nick in enumerate(BOTNICKS):
# if BOTNICKS[i] == B0T.nick:
# MENTALITY=self.INTERRUPTED
# DIAGNOSIS=''
# if MENTALITY < 3:
# DIAGNOSIS='mild'
# elif MENTALITY > 5 and mentality < 10:
# DIAGNOSIS='notice me notice me type,'
# elif MENTALITY > 10 and MENTALITY <= 20:
# DIAGNOSIS='jack hoffish and almost k00nt like'
# elif MENTALITY > 35 and MENTALITY < 50:
# DIAGNOSIS='almost twitter/facbook/google type censorship'
# elif MENTALITY >= 50:
# DIAGNOSIS='semi-stalkerish, you know... probably have not even received their actual valentine card yet. definitely got lost in the mail im sure but hey, show on this teddy bear where this artwork hurts you kind of'
# MSG="<< done with some {} interruptions >>".format(DIAGNOSIS)
# #redundant code//change later
# MSG+="(BOT)NICK/NAME:{}/{} <>".format(BOTNICKS[i],BOTNAMES[i])
# MSG+="LOCK:{} READ:{} WRITE:{}".format(self._kbl[B1N],self._kbr[B1N],self._kbw[B1N])
# MSG+="LINES:{} INDEX:{} INTERRUPTED:{}".format(self._fli,self._fin,self._int)
# self.context.privmsg(CHN,MSG)
# if self._ST8 == 6:
# for i,B0T.nick in enumerate(BOTNICKS):
# if BOTNICKS[i] == B0T.nick:
# MSG="<< someone or something is inihibiting the operations, we may not finish the op >>"
# #redundant code//change later
# MSG+="(BOT)NICK/NAME:{}/{} <>".format(BOTNICKS[i],BOTNAMES[i])
# MSG+="LOCK:{} READ:{} WRITE:{}".format(self._kbl[B1N],self._kbr[B1N],self._kbw[B1N])
# MSG+="LINES:{} INDEX:{} INTERRUPTED:{}".format(self._fli,self._fin,self._int)
# self.context.privmsg(CHN,MSG)
# if self._ST8 == 7:
# for i,B0T.nick in enumerate(BOTNICKS):
# if BOTNICKS[i] == B0T.nick:
# MSG="<< im now offended and attacking the source of the problems, probably not gonna go well >>"
# #redundant code//change later
# MSG+="(BOT)NICK/NAME:{}/{} <>".format(BOTNICKS[i],BOTNAMES[i])
# MSG+="LOCK:{} READ:{} WRITE:{}".format(self._kbl[B1N],self._kbr[B1N],self._kbw[B1N])
# MSG+="LINES:{} INDEX:{} INTERRUPTED:{}".format(self._fli,self._fin,self._int)
# self.context.privmsg(CHN,MSG)
# if self._ST8 == 8:
# for i,B0T.nick in enumerate(BOTNICKS):
# if BOTNICKS[i] == B0T.nick:
# MSG="<< finshed the op but people are definitely gonna be pissed >>"
# #redundant code//change later
# MSG+="(BOT)NICK/NAME:{}/{} <>".format(BOTNICKS[i],BOTNAMES[i])
# MSG+="LOCK:{} READ:{} WRITE:{}".format(self._kbl[B1N],self._kbr[B1N],self._kbw[B1N])
# MSG+="LINES:{} INDEX:{} INTERRUPTED:{}".format(self._fli,self._fin,self._int)
# self.context.privmsg(CHN,MSG)
# if self._ST8 == 9:
# for i,B0T.nick in enumerate(BOTNICKS):
# if BOTNICKS[i] == B0T.nick:
# MSG="<< being shunted by forces of an administration access. failsafed and self-shutting down >>"
# #redundant code//change later
# MSG+="(BOT)NICK/NAME:{}/{} <>".format(BOTNICKS[i],BOTNAMES[i])
# MSG+="LOCK:{} READ:{} WRITE:{}".format(self._kbl[B1N],self._kbr[B1N],self._kbw[B1N])
# MSG+="LINES:{} INDEX:{} INTERRUPTED:{}".format(self._fli,self._fin,self._int)
# self.context.privmsg(CHN,MSG)
# """
# @irc3.event(rfc.ERR_BADCHANNELKEY)
# def myevent(bot, srv=None, me=None, channel=None, data=None):
# # do something
# @irc3.event(rfc.ERR_BANNEDFROMCHAN)
# def myevent(bot, srv=None, me=None, channel=None, data=None):
# # do something
# @irc3.event(rfc.ERR_CANNOTSENDTOCHAN)
# def myevent(bot, srv=None, me=None, channel=None, data=None):
# # do something
# @irc3.event(rfc.ERR_CHANNELISFULL)
# def myevent(bot, srv=None, me=None, channel=None, data=None):
# # do something
# @irc3.event(rfc.ERR_NOPRIVILEGES)
# def myevent(bot, srv=None, me=None, data=None):
# # do something
# @irc3.event(rfc.ERR_NOSUCHCHANNEL)
# def myevent(bot, srv=None, me=None, channel=None, data=None):
# # do something
# @irc3.event(rfc.ERR_NOSUCHCHANNEL)
# def myevent(bot, srv=None, me=None, channel=None, data=None):
# # do something
# @irc3.event(rfc.ERR_NOTONCHANNEL)
# def myevent(bot, srv=None, me=None, channel=None, data=None):
# # do something
# @irc3.event(rfc.CTCP, iotype="out")
# def myevent(bot, event=None, target=None, ctcp=None):
# @irc3.event(rfc.INVITE)
# def myevent(bot, mask=None, channel=None, tags=None):
# # do something
# @irc3.event(rfc.JOIN)
# def myevent(bot, mask=None, channel=None, tags=None):
# # do something
# @irc3.event(rfc.JOIN_PART_QUIT, iotype="out")
# def myevent(bot, event=None, channel=None, data=None):
# # do something
# @irc3.event(rfc.KICK)
# def myevent(bot, mask=None, event=None, channel=None, target=None, data=None, tags=None):
# # do something
# @irc3.event(rfc.MODE)
# def myevent(bot, mask=None, event=None, target=None, modes=None, data=None, tags=None):
# # do something
# @irc3.event(rfc.MY_PRIVMSG)
# def myevent(bot, mask=None, event=None, target=None, data=None, tags=None):
# # do something
# @irc3.event(rfc.NEW_NICK, iotype="out")
# def myevent(bot, new_nick=None):
# # do something
# @irc3.event(rfc.PING)
# def myevent(bot, data=None):
# # do something
# @irc3.event(rfc.PONG)
# def myevent(bot, server=None, data=None, tags=None):
# # do something
# @irc3.event(rfc.PRIVMSG)
# def myevent(bot, mask=None, event=None, target=None, data=None, tags=None):
# # do something
# @irc3.event(rfc.QUIT, iotype="out")
# def myevent(bot, data=None):
# # do something
# @irc3.event(rfc.TOPIC)
# def myevent(bot, mask=None, channel=None, data=None, tags=None):
# # do something
# @irc3.event(rfc.ERR_ALREADYREGISTRED)
# def myevent(bot, srv=None, me=None, data=None):
# # do something
# @irc3.event(rfc.ERR_NOTREGISTERED)
# def myevent(bot, srv=None, me=None, data=None):
# # do something
# @irc3.event(rfc.ERR_ERRONEUSNICKNAME)
# def myevent(bot, srv=None, me=None, nick=None, data=None):
# # do something
# @irc3.event(rfc.ERR_NOLOGIN)
# def myevent(bot, srv=None, me=None, nick=None, data=None):
# # do something
# @irc3.event(rfc.ERR_PASSWDMISMATCH)
# def myevent(bot, srv=None, me=None, data=None):
# # do something
# """sohttps://www.amazon.com/Bedsure-Sweatshirt-Wearable-Families-Standard/

View File

@ -1,4 +0,0 @@
ψ

View File

@ -1,5 +0,0 @@
hupper
irc3
aiocron
asyncio
ipdb

130
run.sh
View File

@ -1,130 +0,0 @@
INIT=0
CONFIG=".krylon_config"; #[ -f $CONFIG ] && rm $CONFIG
[ -f $CONFIG ] && INIT=1
MEMORY=""
kset() {
if [[ -z $1 ]] || [[ -z $2 ]]; then echo "error: no variable or value to kset()"; exit; fi
echo "$1 = $2" >> $CONFIG
}
kwrite() {
if [[ -z $1 ]]; then echo "error: no value to kwrite()"; exit; fi
echo "$1" >> $CONFIG
}
kblank() {
echo "" >> $CONFIG
}
kprompt() {
if [[ -z $1 ]] || [[ -z $2 ]] || [[ -z $3 ]] || [[ -z $4 ]] || [[ -z $5 ]] || [[ -z $6 ]]; then echo "error: no variable, prompt, help, enforcement, type or memory passed to kprompt()"; exit; fi
local INIVAR=$1; local PROMPT=$2; local HALPLZ=$3; local ENFORCE=$4; local TYPE=$5; local MEMORIZE=$6; unset REPLY;
while [[ -z "${REPLY}" ]] || [[ $ENFORCE -eq 1 ]]; do
echo -en "$HALPLZ\n$PROMPT"; [ $ENFORCE -eq 0 ] && echo -n ": " || echo -n "[y/n]: "
read;
if [[ $ENFORCE -eq 1 ]] && [[ $TYPE -eq 0 ]]; then
while ! [[ -z $ENFORCE ]]; do
if ([ ${REPLY} == "y" ] || [ ${REPLY} == "Y" ]); then
return 0
elif ([ ${REPLY} == "n" ] || [ ${REPLY} == "N" ]); then
return 9
else
echo -n "$HALPLZ\n$PROMPT"; [ $ENFORCE -eq 0 ] && echo -n ": " || echo -n "[y/n]: "
read;
fi;
done;
elif [[ $TYPE -eq 1 ]]; then
while true; do
[[ ${REPLY} =~ ^-?[0-9]+$ ]]
if ! [ $? -eq 0 ]; then
echo -n "$HALPLZ\n$PROMPT"; [ $ENFORCE -eq 0 ] && echo -n ": " || echo -n "[y/n]: "
read;
else
return ${REPLY}
fi
done;
fi;
done;
if [ $MEMORIZE -eq 1 ]; then
MEMORY=${REPLY}
fi;
[ $TYPE -eq 1 ] && return ${REPLY} || kset "$INIVAR" "${REPLY}"
return 0;
}
if [ $INIT -eq 0 ]; then
kwrite "[bot]"
kprompt "nick" "bot ircnick" "bot's nickname to use on the network. e.g. here!*@*" 0 0 1
BOTNICK=$(python -c "import random; print(''.join(random.sample('$MEMORY',len('$MEMORY'))))");
kprompt "username" "bot username" "bot's username to use on the network. e.g. *!here@*" 0 0 1
USERNAME=$(python -c "import random; print(''.join(random.sample('$MEMORY',len('$MEMORY'))))");
kprompt "realname" "bot realname" "bot's realname that shows if someone. /whois bot." 0 0 0
kprompt "host" "irc address" "the ip/hostname of the irc server this bot will connect to." 0 0 0
kprompt "port" "irc port" "the port number of the irc server this bot will connect to." 0 0 0
kprompt "channel" "irc channel" "the channel the bot(s) will join upon connection." 0 0 1
CHANNEL=$MEMORY;
kwrite "version=1"
kprompt "ssl" "use ssl?" "is the connect to this irc server using secure socket layers?" 1 0 0
[ $? -eq 0 ] && (kset "ssl" "true"; kset "ssl_verify" "cert_none") || (kset "ssl" "false")
kprompt "bots" "how many helper bots?[0-255]" "how many bots will connect to the ircserver?" 0 1 0
BOTCOUNT=$?;
kblank
kwrite "includes ="
kwrite " irc3.plugins.command"
kwrite " irc3.plugins.asynchronious"
kwrite " irc3.plugins.storage"
kwrite " irc3.plugins.uptime"
kwrite " irc3.plugins.ctcp"
kwrite " irc3.plugins.cron"
kwrite " irc3.plugins.logger"
kwrite " irc3.plugins.userlist"
kwrite " plugins.b33p"
kwrite " plugins.krylon"
kblank
kwrite "flood_burst = 0"
kwrite "flood_rate = 1"
kwrite "flood_rate_delay = 1"
kwrite "storage = json://.krylon_database"
kblank
kwrite "[irc3.plugins.command]"
kwrite "cmd = ?"
kwrite "guard = irc3.plugins.command.mask_based_policy"
kblank
kwrite "[irc3.plugins.command.masks]"
kwrite "d"'!'"*dr1p@* = all_permissions"
kwrite "* = view"
kblank
kwrite "ignore_list ="
kwrite " g1mp_"'!'"*@*"
kwrite " g1mp"'!'"*@*"
kwrite " ken_"'!'"*@*"
kwrite " ken"'!'"*@*"
kblank
for i in $(seq 1 $BOTCOUNT); do
kwrite "[bot_$i]"
RANDOM=$((1 + $RANDOM % 255))
SALT=$(printf '%x\n' $RANDOM)
THIS=$SALT"_krylon_$(printf '%x\n' $i)"
THAT=$(python -c "import random; print(''.join(random.sample('$THIS',len('$THIS'))))");
kwrite "nick = $THAT"
RANDOM=$((1 + $RANDOM % 255))
SALT=$(printf '%x\n' $RANDOM)
THIS=$SALT"$USERNAME"
THAT=$(python -c "import random; print(''.join(random.sample('$THIS',len('$THIS'))))");
kwrite "username = $THAT"
kwrite "channel = $CHANNEL"
kblank
done;
fi;
echo -e "\n-\n"
[ -f $CONFIG ] && cat $CONFIG
echo -e "\n-\nEXECUTING"
irc3 $CONFIG
exit