Advertisement
Guest User

Untitled

a guest
May 15th, 2015
440
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 44.91 KB | None | 0 0
  1. import binascii
  2. import os
  3. from array import array
  4. print "___________________________________________________________"
  5. print " Slot-End slot: export from slot A to B"
  6. print " Directory: Your ram.raw directory, you can drag it in"
  7. print " Box: your box name case sensitive, EX: BOX 1 "
  8. print "___________________________________________________________"
  9. print " "
  10. #d = raw_input('All? y/n ') #Export all 6 pokemon?
  11. j = int(raw_input('slot: ')) #slot to start at
  12. b = int(raw_input('end slot: '))
  13. direct = raw_input('Directory? ') #input directory
  14. Box = raw_input('Box Name: ')
  15. os.getcwd()
  16. os.chdir(os.getcwd()+"\Desktop") #set working directory to desktop
  17. print os.getcwd()
  18. In1 = Box[:1] #Decode the Box into Hex
  19. In2 = Box[1:2]
  20. In3 = Box[2:3]
  21. In4 = Box[3:4]
  22. In5 = Box[4:5]
  23.  
  24. In1 = binascii.hexlify(In1)
  25. In2 = binascii.hexlify(In2)
  26. In3 = binascii.hexlify(In3)
  27. In4 = binascii.hexlify(In4)
  28. In5 = binascii.hexlify(In5)
  29.  
  30. Boxhex = str('00' + In1 + '00' + In2 + '00' + In3 + '00' + In4 + '00' + In5 ) #rebuild hex of box
  31. print "Searching for: " + str(Boxhex)
  32. f = open(direct, 'rb') #open the ram.raw
  33. box1 = f.read()
  34. box1 = binascii.hexlify(box1)
  35. i = 8500000 #approximate offset of the Box
  36. box = 0
  37. if any(j in box1 for j in Boxhex):
  38. while box == 0: #search for the OT to locate party
  39. check = box1[i:i+len(Boxhex)]
  40. if check == Boxhex:
  41. box = box1[i:i+12280]
  42. print "Box 1 located at: " + hex(i)
  43. if i == 12000000:
  44. print "ERROR: no Box located, check input it is case sensitive"
  45. quit()
  46. i = i+1
  47.  
  48. i = 42 #inital offset for slot 1 box X
  49. for o in range(0,j-2):
  50. i = 392 + i
  51. party = box
  52.  
  53. def pokemonconvert(party,j,i): #conversion program
  54. k = j
  55. if j == b+1: #if j == end slot end.
  56. quit()
  57. pokemonwritefile = "pokemon" + str(k) + ".pkm"
  58. print "_____________________________"
  59. print "pokemon " + str(k)
  60. print "_____________________________"
  61.  
  62.  
  63. if j == 1: #offsets for each pokemon
  64. i = 42
  65. if j != 1:
  66. i = 392 + i #advance offsets
  67.  
  68. print "_____________________________"
  69.  
  70. species = party[i-2:i+2]
  71. if species == "0000":
  72. print "**Empty slot**"
  73. j = j+1
  74. pokemonconvert(party,j,i)
  75. print "species: " + species
  76.  
  77. #pokemon data grabber
  78. metlocation = party[i+16:i+18]
  79. print "met location: " + metlocation
  80. happiness = party[i+12:i+14]
  81. print "happiness: " + str(int(happiness, 16))
  82. metlevel = party[i+26:i+28]
  83. print "met level: " + str(int(metlevel,16))
  84. ball = party[i+28:i+30] #identify pokeball
  85. if int(ball,16) == 1:
  86. pokeball = 'masterball'
  87. if int(ball,16) == 2:
  88. pokeball = 'ultraball'
  89. if int(ball,16) == 3:
  90. pokeball = 'greatball'
  91. if int(ball,16) == 4:
  92. pokeball = 'pokeball'
  93. if int(ball,16) == 5:
  94. pokeball = 'safariball'
  95. if int(ball,16) == 6:
  96. pokeball = 'netball'
  97. if int(ball,16) == 7:
  98. pokeball = 'diveball'
  99. if int(ball,16) == 8:
  100. pokeball = 'nestball'
  101. if int(ball,16) == 9:
  102. pokeball = 'repeatball'
  103. if int(ball,16) == 10:
  104. pokeball = 'timerball'
  105. if int(ball,16) == 11:
  106. pokeball = 'luxball'
  107. if int(ball,16) == 12:
  108. pokeball = 'premeirball'
  109. print "ball: " + pokeball
  110. exp = party[i+62:i+70] #Grab EXP, SID, ID, PID, and pokemon OT
  111. SID = party[i+70:i+74]
  112. TID = party[i+74:i+78]
  113. PID = party[i+78:i+86]
  114. pOT1 = party[i+112:i+114]
  115. pOT2 = party[i+116:i+118]
  116. pOT3 = party[i+120:i+122]
  117. pOT4 = party[i+124:i+126]
  118. pOT5 = party[i+128:i+130]
  119. pOT6 = party[i+132:i+134]
  120. pOT7 = party[i+136:i+138]
  121. pOT = " " + pOT1.decode("hex") + pOT2.decode("hex") + pOT3.decode("hex") + pOT4.decode("hex") + pOT5.decode("hex") + pOT6.decode("hex")+ pOT7.decode("hex")
  122. print 'OT: ' + pOT
  123. print "SID: " + str(int(SID,16))
  124. print "TID: " + str(int(TID,16))
  125. print "PID: " + PID
  126. print "Exp: " + str(int(exp,16))
  127. nickname1 = party[i+154:i+158] #Grab nickname
  128. nickname2 = party[i+158:i+162]
  129. nickname3 = party[i+162:i+166]
  130. nickname4 = party[i+166:i+170]
  131. nickname5 = party[i+170:i+174]
  132. nickname6 = party[i+174:i+178]
  133. nickname7 = party[i+178:i+182]
  134. nickname8 = party[i+182:i+186]
  135. nickname9 = party[i+186:i+190]
  136. nickname10 = party[i+190:i+194]
  137. tempnick1 = nickname1[2:]
  138. if tempnick1 != "00":
  139. nn = tempnick1.decode("hex")
  140. tempnick2 = nickname2[2:]
  141. if tempnick2 != "00":
  142. nn = nn + tempnick2.decode("hex")
  143. tempnick3 = nickname3[2:]
  144. if tempnick3 != "00":
  145. nn = nn + tempnick3.decode("hex")
  146. tempnick4 = nickname4[2:]
  147. if tempnick4 != "00":
  148. nn = nn + tempnick4.decode("hex")
  149. tempnick5 = nickname5[2:]
  150. if tempnick5 != "00":
  151. nn = nn + tempnick5.decode("hex")
  152. tempnick6 = nickname6[2:]
  153. if tempnick6 != "00":
  154. nn = nn + tempnick6.decode("hex")
  155. tempnick7 = nickname7[2:]
  156.  
  157. if tempnick7 != "00":
  158. nn = nn + tempnick7.decode("hex")
  159. tempnick8 = nickname8[2:]
  160. if tempnick8 != "00":
  161. nn = nn + tempnick8.decode("hex")
  162. tempnick9 = nickname9[2:]
  163. if tempnick9 != "00":
  164. nn = nn + tempnick9.decode("hex")
  165. tempnick10 = nickname10[2:]
  166. if tempnick10 != "00":
  167. nn = nn + tempnick10.decode("hex")
  168.  
  169. #nn = tempnick1.decode("hex") + tempnick2.decode("hex") + tempnick3.decode("hex") + tempnick4.decode("hex") + tempnick5.decode("hex") + tempnick6.decode("hex")+ tempnick7.decode("hex") + tempnick8.decode("hex") + tempnick9.decode("hex") + tempnick10.decode("hex")
  170.  
  171.  
  172. print "Nickname: " + nn
  173. pokemonwritefile = nn + "-XD.pkm"
  174. ribbons = party[i+246:i+249]
  175. Splist = ["0098","009A","009B","009C","009D","009E","009F","00A0","0085","0086","0087","0088","00C4","00C5","00BB","00BC","00BD","00E7","00E8","0137","0138","0029","0030","00A9","017E","017F","0180","00C2","00C3","001B","001C","00CF","014C","014D","014E","0164","0165","00D5","00F6","00F7","00F8"] #all possible species that would not have the ribbon.
  176. if int(ribbons,16) == 004:
  177. rb = "Ribbons: national ribbon"
  178. if int(ribbons,16) == 006:
  179. rb = "Ribbons: national ribbon + earth ribbon"
  180. if int(ribbons,16) == 000:
  181. rb = "Ribbons: none"
  182. if ribbons == "000":
  183. if species not in Splist: #Detect if the pokemon is not purified
  184. print "This pokemon is not purified, please purify before conversion"
  185. j = j+1
  186. pokemonconvert(party,j,i)
  187. print rb
  188. move1 = party[i+254:i+258] #Grab Moves and PP
  189. move1pp = party[i+258:i+260]
  190. move2 = party[i+262:i+266]
  191. move2pp = party[i+266:i+268]
  192. move3 = party[i+270:i+274]
  193. move3pp = party[i+274:i+276]
  194. move4 = party[i+278:i+282]
  195. move4pp = party[i+282:i+284]
  196. print " " + move1 + " PP: " + str(int(move1pp,16))
  197. print " " +move2 + " PP: " + str(int(move2pp,16))
  198. print " " +move3 + " PP: " + str(int(move3pp,16))
  199. print " " +move4 + " PP: " + str(int(move4pp,16))
  200. HPev = party[i+312:i+314] #Grab EVs and IVs
  201. ATKev = party[i+316:i+318]
  202. DEFev = party[i+320:i+322]
  203. SPATKev = party[i+324:i+326]
  204. SPDEFev = party[i+328:i+330]
  205. SPEEDev = party[i+332:i+334]
  206. print "EVs: " + str(int(HPev,16)) + " " + str(int(ATKev,16)) + " " +str(int(DEFev,16)) +" " + str(int(SPATKev,16)) + " "+ str(int(SPDEFev,16)) +" "+ str(int(SPEEDev,16))
  207. HPiv = party[i+334:i+336]
  208. ATKiv = party[i+336:i+338]
  209. DEFiv = party[i+338:i+340]
  210. SPATKiv = party[i+340:i+342]
  211. SPDEFiv = party[i+342:i+344]
  212. SPEEDiv = party[i+344:i+346]
  213. print "IVs: " + str(int(HPiv,16)) + "/" + str(int(ATKiv,16)) + "/" +str(int(DEFiv,16)) +"/" + str(int(SPATKiv,16)) + "/"+ str(int(SPDEFiv,16)) +"/"+ str(int(SPEEDiv,16))
  214. binhp = bin(int(HPiv,16)) #Convert the ivs to condensed binary
  215. binhp = binhp[2:]
  216. while len(binhp) < 5:
  217. binhp = "0"+binhp
  218. binatk = bin(int(ATKiv,16))
  219. binatk = binatk[2:]
  220. while len(binatk) < 5:
  221. binatk = "0"+binatk
  222. bindef = bin(int(DEFiv,16))
  223. bindef = bindef[2:]
  224. while len(bindef) < 5:
  225. bindef = "0"+bindef
  226. binspa = bin(int(SPATKiv,16))
  227. binspa = binspa[2:]
  228. while len(binspa) < 5:
  229. binspa = "0"+binspa
  230. binspd = bin(int(SPDEFiv,16))
  231. binspd = binspd[2:]
  232. while len(binspd) < 5:
  233. binspd = "0"+binspd
  234. binspe = bin(int(SPEEDiv,16))
  235. binspe = binspe[2:]
  236. while len(binspe) < 5:
  237. binspe = "0"+binspe
  238. IVtotal = "00"+binspd+binspa+binspe+bindef+binatk+binhp
  239. IVtotal = hex(int(IVtotal,2))
  240. print "IVs condensed: " + IVtotal
  241.  
  242.  
  243.  
  244. #build gen3 filestring
  245. Gen3pid = PID[6:8] + PID[4:6] +PID[2:4] + PID[0:2]
  246. Gen3sid = SID[2:4] + SID[0:2]
  247. Gen3tid = TID[2:4] + TID[0:2]
  248. Gen3exp = exp[6:8] + exp[4:6] +exp[2:4] + exp[0:2]
  249. Gen3spec = species[2:4] + species[0:2]
  250.  
  251. #Nickname converter
  252. if int(nickname1,16) < 90 and int(nickname1,16) > 64:
  253. o = 122
  254. if int(nickname1,16) < 123 and int(nickname1,16) > 96:
  255. o = 116
  256. if int(nickname1,16) < 58 and int(nickname1,16) > 47:
  257. o = 113
  258. if int(nickname1,16) < 8222 and int(nickname1,16) > 8219:
  259. o = -8043
  260. if int(nickname1,16) == 33:
  261. o = 138
  262. if int(nickname1,16) == 32:
  263. o = -32
  264. if int(nickname1,16) == 63:
  265. o = 109
  266. if int(nickname1,16) == 45:
  267. o = 129
  268. if int(nickname1,16) == 47:
  269. o = 139
  270. if int(nickname1,16) == 39:
  271. o = 140
  272. if int(nickname1,16) == 46:
  273. o = 129
  274. if int(nickname1,16) == 44:
  275. o = 140
  276. if int(nickname1,16) == 9794:
  277. o = -9613
  278. if int(nickname1,16) == 9792:
  279. o = -9610
  280. if int(nickname1,16) == 8240:
  281. o = -8064
  282. if int(nickname1,16) == 8216:
  283. o = -8037
  284. Gen3nick1 = hex(int(nickname1,16) + o)
  285. if o == 122 and int(Gen3nick1,16) == 0x7a:
  286. Gen3nick1 = "0xFF"
  287. if o == 116 and int(Gen3nick1,16) == 0x74:
  288. Gen3nick1 = "0xFF"
  289. if o == 113 and int(Gen3nick1,16) == 0x71:
  290. Gen3nick1 = "0xFF"
  291. if o == 138 and int(Gen3nick1,16) == 0x8a:
  292. Gen3nick1 = "0xFF"
  293. if o == 109 and int(Gen3nick1,16) == 0x6d:
  294. Gen3nick1 = "0xFF"
  295. if o == 129 and int(Gen3nick1,16) == 0x81:
  296. Gen3nick1 = "0xFF"
  297. if o == 139 and int(Gen3nick1,16) == 0x8B:
  298. Gen3nick1 = "0xFF"
  299. if o == 140 and int(Gen3nick1,16) == 0x8c:
  300. Gen3nick1 = "0xFF"
  301. if o == 129 and int(Gen3nick1,16) == 0x81:
  302. Gen3nick1 = "0xFF"
  303. if o == 140 and int(Gen3nick1,16) == 0x8c:
  304. Gen3nick1 = "0xFF"
  305. if o == -8043 and int(Gen3nick1,16) == -8043:
  306. Gen3nick1 = "0xFF"
  307. if o == 9610 and int(Gen3nick1,16) == 0x258a:
  308. Gen3nick1 = "0xFF"
  309. if o == 9613 and int(Gen3nick1,16) == 0x258d:
  310. Gen3nick1 = "0xFF"
  311. if o == 8064 and int(Gen3nick1,16) == 0x1f80:
  312. Gen3nick1 = "0xFF"
  313. if o == 8037 and int(Gen3nick1,16) == 0x1f65:
  314. Gen3nick1 = "0xFF"
  315. if o == -32 and int(Gen3nick1,16) == -32:
  316. Gen3nick1 = "0xFF"
  317.  
  318. if int(nickname2,16) < 90 and int(nickname2,16) > 64:
  319. o = 122
  320. if int(nickname2,16) < 123 and int(nickname2,16) > 96:
  321. o = 116
  322. if int(nickname2,16) < 58 and int(nickname2,16) > 47:
  323. o = 113
  324. if int(nickname2,16) < 8222 and int(nickname2,16) > 8219:
  325. o = -8043
  326. if int(nickname2,16) == 33:
  327. o = 138
  328. if int(nickname2,16) == 63:
  329. o = 109
  330. if int(nickname2,16) == 45:
  331. o = 129
  332. if int(nickname2,16) == 47:
  333. o = 139
  334. if int(nickname2,16) == 39:
  335. o = 140
  336. if int(nickname2,16) == 46:
  337. o = 129
  338. if int(nickname2,16) == 44:
  339. o = 140
  340. if int(nickname2,16) == 9794:
  341. o = -9613
  342. if int(nickname2,16) == 9792:
  343. o = -9610
  344. if int(nickname2,16) == 8240:
  345. o = -8064
  346. if int(nickname2,16) == 8216:
  347. o = -8037
  348. if int(nickname2,16) == 32:
  349. o = -32
  350. Gen3nick2 = hex(int(nickname2,16) + o)
  351. if o == 122 and int(Gen3nick2,16) == 0x7a:
  352. Gen3nick2 = "0xFF"
  353. if o == 116 and int(Gen3nick2,16) == 0x74:
  354. Gen3nick2 = "0xFF"
  355. if o == 113 and int(Gen3nick2,16) == 0x71:
  356. Gen3nick2 = "0xFF"
  357. if o == 138 and int(Gen3nick2,16) == 0x8a:
  358. Gen3nick2 = "0xFF"
  359. if o == 109 and int(Gen3nick2,16) == 0x6d:
  360. Gen3nick2 = "0xFF"
  361. if o == 129 and int(Gen3nick2,16) == 0x81:
  362. Gen3nick2 = "0xFF"
  363. if o == 139 and int(Gen3nick2,16) == 0x8B:
  364. Gen3nick2 = "0xFF"
  365. if o == 140 and int(Gen3nick2,16) == 0x8c:
  366. Gen3nick2 = "0xFF"
  367. if o == 129 and int(Gen3nick2,16) == 0x81:
  368. Gen3nick2 = "0xFF"
  369. if o == 140 and int(Gen3nick2,16) == 0x8c:
  370. Gen3nick2 = "0xFF"
  371. if o == -8043 and int(Gen3nick2,16) == -8043:
  372. Gen3nick2 = "0xFF"
  373. if o == -9610 and int(Gen3nick2,16) == -9610:
  374. Gen3nick2 = "0xFF"
  375. if o == -9613 and int(Gen3nick2,16) == -9613:
  376. Gen3nick2 = "0xFF"
  377. if o == -8064 and int(Gen3nick2,16) == -8064:
  378. Gen3nick2 = "0xFF"
  379. if o == -8037 and int(Gen3nick2,16) == -8037:
  380. Gen3nick2 = "0xFF"
  381. if o == -32 and int(Gen3nick2,16) == -32:
  382. Gen3nick2 = "0xFF"
  383. if Gen3nick1 == '0xFF' or Gen3nick1 == '0x00':
  384. Gen3nick2 = "0x00"
  385.  
  386.  
  387. if int(nickname3,16) < 90 and int(nickname3,16) > 64:
  388. o = 122
  389. if int(nickname3,16) < 123 and int(nickname3,16) > 96:
  390. o = 116
  391. if int(nickname3,16) < 58 and int(nickname3,16) > 47:
  392. o = 113
  393. if int(nickname3,16) < 8222 and int(nickname3,16) > 8219:
  394. o = -8043
  395. if int(nickname3,16) == 33:
  396. o = 138
  397. if int(nickname3,16) == 63:
  398. o = 109
  399. if int(nickname3,16) == 45:
  400. o = 129
  401. if int(nickname3,16) == 47:
  402. o = 139
  403. if int(nickname3,16) == 39:
  404. o = 140
  405. if int(nickname3,16) == 46:
  406. o = 129
  407. if int(nickname3,16) == 44:
  408. o = 140
  409. if int(nickname3,16) == 9794:
  410. o = -9613
  411. if int(nickname3,16) == 9792:
  412. o = -9610
  413. if int(nickname3,16) == 8240:
  414. o = -8064
  415. if int(nickname3,16) == 8216:
  416. o = -8037
  417. if int(nickname3,16) == 32:
  418. o = -32
  419. Gen3nick3 = hex(int(nickname3,16) + o)
  420. if o == 122 and int(Gen3nick3,16) == 0x7a:
  421. Gen3nick3 = "0xFF"
  422. if o == 116 and int(Gen3nick3,16) == 0x74:
  423. Gen3nick3 = "0xFF"
  424. if o == 113 and int(Gen3nick3,16) == 0x71:
  425. Gen3nick3 = "0xFF"
  426. if o == 138 and int(Gen3nick3,16) == 0x8a:
  427. Gen3nick3 = "0xFF"
  428. if o == 109 and int(Gen3nick3,16) == 0x6d:
  429. Gen3nick3 = "0xFF"
  430. if o == 129 and int(Gen3nick3,16) == 0x81:
  431. Gen3nick3 = "0xFF"
  432. if o == 139 and int(Gen3nick3,16) == 0x8B:
  433. Gen3nick3 = "0xFF"
  434. if o == 140 and int(Gen3nick3,16) == 0x8c:
  435. Gen3nick3 = "0xFF"
  436. if o == 129 and int(Gen3nick3,16) == 0x81:
  437. Gen3nick3 = "0xFF"
  438. if o == 140 and int(Gen3nick3,16) == 0x8c:
  439. Gen3nick3 = "0xFF"
  440. if o == -8043 and int(Gen3nick3,16) == -8043:
  441. Gen3nick3 = "0xFF"
  442. if o == -9610 and int(Gen3nick3,16) == o:
  443. Gen3nick3 = "0xFF"
  444. if o == -9613 and int(Gen3nick3,16) == o:
  445. Gen3nick3 = "0xFF"
  446. if o == -8064 and int(Gen3nick3,16) == o:
  447. Gen3nick3 = "0xFF"
  448. if o == -8037 and int(Gen3nick3,16) == o:
  449. Gen3nick3 = "0xFF"
  450. if o == -32 and int(Gen3nick3,16) == -32:
  451. Gen3nick3 = "0xFF"
  452. if Gen3nick2 == '0xFF' or Gen3nick2 == '0x00':
  453. Gen3nick3 = "0x00"
  454.  
  455.  
  456. if int(nickname4,16) < 90 and int(nickname4,16) > 64:
  457. o = 122
  458. if int(nickname4,16) < 123 and int(nickname4,16) > 96:
  459. o = 116
  460. if int(nickname4,16) < 58 and int(nickname4,16) > 47:
  461. o = 113
  462. if int(nickname4,16) < 8222 and int(nickname4,16) > 8219:
  463. o = -8043
  464. if int(nickname4,16) == 33:
  465. o = 138
  466. if int(nickname4,16) == 63:
  467. o = 109
  468. if int(nickname4,16) == 45:
  469. o = 129
  470. if int(nickname4,16) == 47:
  471. o = 139
  472. if int(nickname4,16) == 39:
  473. o = 140
  474. if int(nickname4,16) == 46:
  475. o = 129
  476. if int(nickname4,16) == 44:
  477. o = 140
  478. if int(nickname4,16) == 9794:
  479. o = -9613
  480. if int(nickname4,16) == 9792:
  481. o = -9610
  482. if int(nickname4,16) == 8240:
  483. o = -8064
  484. if int(nickname4,16) == 8216:
  485. o = -8037
  486. if int(nickname4,16) == 32:
  487. o = -32
  488. Gen3nick4 = hex(int(nickname4,16) + o)
  489. if o == 122 and int(Gen3nick4,16) == 0x7a:
  490. Gen3nick4 = "0xFF"
  491. if o == 116 and int(Gen3nick4,16) == 0x74:
  492. Gen3nick4 = "0xFF"
  493. if o == 113 and int(Gen3nick4,16) == 0x71:
  494. Gen3nick4 = "0xFF"
  495. if o == 138 and int(Gen3nick4,16) == 0x8a:
  496. Gen3nick4 = "0xFF"
  497. if o == 109 and int(Gen3nick4,16) == 0x6d:
  498. Gen3nick4 = "0xFF"
  499. if o == 129 and int(Gen3nick4,16) == 0x81:
  500. Gen3nick4 = "0xFF"
  501. if o == 139 and int(Gen3nick4,16) == 0x8B:
  502. Gen3nick4 = "0xFF"
  503. if o == 140 and int(Gen3nick4,16) == 0x8c:
  504. Gen3nick4 = "0xFF"
  505. if o == 129 and int(Gen3nick4,16) == 0x81:
  506. Gen3nick4 = "0xFF"
  507. if o == 140 and int(Gen3nick4,16) == 0x8c:
  508. Gen3nick4 = "0xFF"
  509. if o == -8043 and int(Gen3nick4,16) == -8043:
  510. Gen3nick4 = "0xFF"
  511. if o == -9610 and int(Gen3nick4,16) == o:
  512. Gen3nick4 = "0xFF"
  513. if o == -9613 and int(Gen3nick4,16) == o:
  514. Gen3nick4 = "0xFF"
  515. if o == -8064 and int(Gen3nick4,16) == o:
  516. Gen3nick4 = "0xFF"
  517. if o == -8037 and int(Gen3nick4,16) == o:
  518. Gen3nick4 = "0xFF"
  519. if o == -32 and int(Gen3nick3,16) == -32:
  520. Gen3nick3 = "0xFF"
  521. if Gen3nick3 == '0xFF' or Gen3nick3 == '0x00':
  522. Gen3nick4 = "0x00"
  523.  
  524.  
  525.  
  526. if int(nickname5,16) < 90 and int(nickname5,16) > 64:
  527. o = 122
  528. if int(nickname5,16) < 123 and int(nickname5,16) > 96:
  529. o = 116
  530. if int(nickname5,16) < 58 and int(nickname5,16) > 47:
  531. o = 113
  532. if int(nickname5,16) < 8222 and int(nickname5,16) > 8219:
  533. o = -8043
  534. if int(nickname5,16) == 33:
  535. o = 138
  536. if int(nickname5,16) == 63:
  537. o = 109
  538. if int(nickname5,16) == 45:
  539. o = 129
  540. if int(nickname5,16) == 47:
  541. o = 139
  542. if int(nickname5,16) == 39:
  543. o = 140
  544. if int(nickname5,16) == 46:
  545. o = 129
  546. if int(nickname5,16) == 44:
  547. o = 140
  548. if int(nickname5,16) == 9794:
  549. o = -9613
  550. if int(nickname5,16) == 9792:
  551. o = -9610
  552. if int(nickname5,16) == 8240:
  553. o = -8064
  554. if int(nickname5,16) == 8216:
  555. o = -8037
  556. if int(nickname5,16) == 32:
  557. o = -32
  558. Gen3nick5 = hex(int(nickname5,16) + o)
  559.  
  560. if o == 122 and int(Gen3nick5,16) == 0x7a:
  561. Gen3nick5 = "0xFF"
  562. if o == 116 and int(Gen3nick5,16) == 0x74:
  563. Gen3nick5 = "0xFF"
  564. if o == 113 and int(Gen3nick5,16) == 0x71:
  565. Gen3nick5 = "0xFF"
  566. if o == 138 and int(Gen3nick5,16) == 0x8a:
  567. Gen3nick5 = "0xFF"
  568. if o == 109 and int(Gen3nick5,16) == 0x6d:
  569. Gen3nick5 = "0xFF"
  570. if o == 129 and int(Gen3nick5,16) == 0x81:
  571. Gen3nick5 = "0xFF"
  572. if o == 139 and int(Gen3nick5,16) == 0x8B:
  573. Gen3nick5 = "0xFF"
  574. if o == 140 and int(Gen3nick5,16) == 0x8c:
  575. Gen3nick5 = "0xFF"
  576. if o == 129 and int(Gen3nick5,16) == 0x81:
  577. Gen3nick5 = "0xFF"
  578. if o == 140 and int(Gen3nick5,16) == 0x8c:
  579. Gen3nick5 = "0xFF"
  580. if o == -8043 and int(Gen3nick5,16) == o:
  581. Gen3nick5 = "0xFF"
  582. if o == -9610 and int(Gen3nick5,16) == o:
  583. Gen3nick5 = "0xFF"
  584. if o == -9613 and int(Gen3nick5,16) == o:
  585. Gen3nick5 = "0xFF"
  586. if o == -8064 and int(Gen3nick5,16) == o:
  587. Gen3nick5 = "0xFF"
  588. if o == -8037 and int(Gen3nick5,16) == o:
  589. Gen3nick5 = "0xFF"
  590. if o == -32 and int(Gen3nick5,16) == -32:
  591. Gen3nick5 = "0xFF"
  592. if Gen3nick4 == '0xFF' or Gen3nick4 == '0x00':
  593. Gen3nick5 = "0x00"
  594.  
  595.  
  596.  
  597. if int(nickname6,16) < 90 and int(nickname6,16) > 64:
  598. o = 122
  599. if int(nickname6,16) < 123 and int(nickname6,16) > 96:
  600. o = 116
  601. if int(nickname6,16) < 58 and int(nickname6,16) > 47:
  602. o = 113
  603. if int(nickname6,16) < 8222 and int(nickname6,16) > 8219:
  604. o = -8043
  605. if int(nickname6,16) == 33:
  606. o = 138
  607. if int(nickname6,16) == 63:
  608. o = 109
  609. if int(nickname6,16) == 45:
  610. o = 129
  611. if int(nickname6,16) == 47:
  612. o = 139
  613. if int(nickname6,16) == 39:
  614. o = 140
  615. if int(nickname6,16) == 46:
  616. o = 129
  617. if int(nickname6,16) == 44:
  618. o = 140
  619. if int(nickname6,16) == 9794:
  620. o = -9613
  621. if int(nickname6,16) == 9792:
  622. o = -9610
  623. if int(nickname6,16) == 8240:
  624. o = -8064
  625. if int(nickname6,16) == 8216:
  626. o = -8037
  627. if int(nickname6,16) == 32:
  628. o = -32
  629. Gen3nick6 = hex(int(nickname6,16) + o)
  630. if o == 122 and int(Gen3nick6,16) == 0x7a:
  631. Gen3nick6 = "0xFF"
  632. if o == 116 and int(Gen3nick6,16) == 0x74:
  633. Gen3nick6 = "0xFF"
  634. if o == 113 and int(Gen3nick6,16) == 0x71:
  635. Gen3nick6 = "0xFF"
  636. if o == 138 and int(Gen3nick6,16) == 0x8a:
  637. Gen3nick6 = "0xFF"
  638. if o == 109 and int(Gen3nick6,16) == 0x6d:
  639. Gen3nick6 = "0xFF"
  640. if o == 129 and int(Gen3nick6,16) == 0x81:
  641. Gen3nick6 = "0xFF"
  642. if o == 139 and int(Gen3nick6,16) == 0x8B:
  643. Gen3nick6 = "0xFF"
  644. if o == 140 and int(Gen3nick6,16) == 0x8c:
  645. Gen3nick6 = "0xFF"
  646. if o == 129 and int(Gen3nick6,16) == 0x81:
  647. Gen3nick6 = "0xFF"
  648. if o == 140 and int(Gen3nick6,16) == 0x8c:
  649. Gen3nick6 = "0xFF"
  650. if o == -8043 and int(Gen3nick6,16) == -8043:
  651. Gen3nick6 = "0xFF"
  652. if o == -9610 and int(Gen3nick6,16) == o:
  653. Gen3nick6 = "0xFF"
  654. if o == -9613 and int(Gen3nick6,16) == o:
  655. Gen3nick6 = "0xFF"
  656. if o == -8064 and int(Gen3nick6,16) == o:
  657. Gen3nick6 = "0xFF"
  658. if o == -8037 and int(Gen3nick6,16) == o:
  659. Gen3nick6 = "0xFF"
  660. if o == -32 and int(Gen3nick6,16) == -32:
  661. Gen3nick6 = "0xFF"
  662. if Gen3nick5 == '0xFF' or Gen3nick5 == '0x00':
  663. Gen3nick6 = "0x00"
  664.  
  665.  
  666. if int(nickname7,16) < 90 and int(nickname7,16) > 64:
  667. o = 122
  668. if int(nickname7,16) < 123 and int(nickname7,16) > 96:
  669. o = 116
  670. if int(nickname7,16) < 58 and int(nickname7,16) > 47:
  671. o = 113
  672. if int(nickname7,16) < 8222 and int(nickname7,16) > 8219:
  673. o = -8043
  674. if int(nickname7,16) == 33:
  675. o = 138
  676. if int(nickname7,16) == 63:
  677. o = 109
  678. if int(nickname7,16) == 45:
  679. o = 129
  680. if int(nickname7,16) == 47:
  681. o = 139
  682. if int(nickname7,16) == 39:
  683. o = 140
  684. if int(nickname7,16) == 46:
  685. o = 129
  686. if int(nickname7,16) == 44:
  687. o = 140
  688. if int(nickname7,16) == 9794:
  689. o = -9613
  690. if int(nickname7,16) == 9792:
  691. o = -9610
  692. if int(nickname7,16) == 8240:
  693. o = -8064
  694. if int(nickname7,16) == 8216:
  695. o = -8037
  696. if int(nickname7,16) == 32:
  697. o = -32
  698. Gen3nick7 = hex(int(nickname7,16) + o)
  699. if o == 122 and int(Gen3nick7,16) == 0x7a:
  700. Gen3nick7 = "0xFF"
  701. if o == 116 and int(Gen3nick7,16) == 0x74:
  702. Gen3nick7 = "0xFF"
  703. if o == 113 and int(Gen3nick7,16) == 0x71:
  704. Gen3nick7 = "0xFF"
  705. if o == 138 and int(Gen3nick7,16) == 0x8a:
  706. Gen3nick7 = "0xFF"
  707. if o == 109 and int(Gen3nick7,16) == 0x6d:
  708. Gen3nick7 = "0xFF"
  709. if o == 129 and int(Gen3nick7,16) == 0x81:
  710. Gen3nick7 = "0xFF"
  711. if o == 139 and int(Gen3nick7,16) == 0x8B:
  712. Gen3nick7 = "0xFF"
  713. if o == 140 and int(Gen3nick7,16) == 0x8c:
  714. Gen3nick7 = "0xFF"
  715. if o == 129 and int(Gen3nick7,16) == 0x81:
  716. Gen3nick7 = "0xFF"
  717. if o == 140 and int(Gen3nick7,16) == 0x8c:
  718. Gen3nick7 = "0xFF"
  719. if o == -8043 and int(Gen3nick7,16) == -8043:
  720. Gen3nick7 = "0xFF"
  721. if o == -9610 and int(Gen3nick7,16) == o:
  722. Gen3nick7 = "0xFF"
  723. if o == -9613 and int(Gen3nick7,16) == o:
  724. Gen3nick7 = "0xFF"
  725. if o == -8064 and int(Gen3nick7,16) == o:
  726. Gen3nick7 = "0xFF"
  727. if o == -8037 and int(Gen3nick7,16) == o:
  728. Gen3nick7 = "0xFF"
  729. if o == -32 and int(Gen3nick7,16) == -32:
  730. Gen3nick7 = "0xFF"
  731. if Gen3nick6 == '0xFF' or Gen3nick6 == '0x00':
  732. Gen3nick7 = "0x00"
  733.  
  734. if int(nickname8,16) < 90 and hex(int(nickname8,16)) > 64:
  735. o = 122
  736. if int(nickname8,16) < 123 and int(nickname8,16) > 96:
  737. o = 116
  738. if int(nickname8,16) < 58 and int(nickname8,16) > 47:
  739. o = 113
  740. if int(nickname8,16) < 8222 and int(nickname8,16) > 8219:
  741. o = -8043
  742. if int(nickname8,16) == 33:
  743. o = 138
  744. if int(nickname8,16) == 63:
  745. o = 109
  746. if int(nickname8,16) == 45:
  747. o = 129
  748. if int(nickname8,16) == 47:
  749. o = 139
  750. if int(nickname8,16) == 39:
  751. o = 140
  752. if int(nickname8,16) == 46:
  753. o = 129
  754. if int(nickname8,16) == 44:
  755. o = 140
  756. if int(nickname8,16) == 9794:
  757. o = -9613
  758. if int(nickname8,16) == 9792:
  759. o = -9610
  760. if int(nickname8,16) == 8240:
  761. o = -8064
  762. if int(nickname8,16) == 8216:
  763. o = -8037
  764. if int(nickname8,16) == 32:
  765. o = -32
  766. Gen3nick8 = hex(int(nickname8,16) + o)
  767. if o == 122 and int(Gen3nick8,16) == 0x7a:
  768. Gen3nick8 = "0xFF"
  769. if o == 116 and int(Gen3nick8,16) == 0x74:
  770. Gen3nick8 = "0xFF"
  771. if o == 113 and int(Gen3nick8,16) == 0x71:
  772. Gen3nick8 = "0xFF"
  773. if o == 138 and int(Gen3nick8,16) == 0x8a:
  774. Gen3nick8 = "0xFF"
  775. if o == 109 and int(Gen3nick8,16) == 0x6d:
  776. Gen3nick8 = "0xFF"
  777. if o == 129 and int(Gen3nick8,16) == 0x81:
  778. Gen3nick8 = "0xFF"
  779. if o == 139 and int(Gen3nick8,16) == 0x8B:
  780. Gen3nick8 = "0xFF"
  781. if o == 140 and int(Gen3nick8,16) == 0x8c:
  782. Gen3nick8 = "0xFF"
  783. if o == 129 and int(Gen3nick8,16) == 0x81:
  784. Gen3nick8 = "0xFF"
  785. if o == 140 and int(Gen3nick8,16) == 0x8c:
  786. Gen3nick8 = "0xFF"
  787. if o == -8043 and int(Gen3nick8,16) == -8043:
  788. Gen3nick8 = "0xFF"
  789. if o == -9610 and int(Gen3nick8,16) == o:
  790. Gen3nick8 = "0xFF"
  791. if o == -9613 and int(Gen3nick8,16) == o:
  792. Gen3nick8 = "0xFF"
  793. if o == -8064 and int(Gen3nick8,16) == o:
  794. Gen3nick8 = "0xFF"
  795. if o == -8037 and int(Gen3nick8,16) == o:
  796. Gen3nick8 = "0xFF"
  797. if o == -32 and int(Gen3nick8,16) == -32:
  798. Gen3nick8 = "0xFF"
  799. if Gen3nick7 == '0xFF' or Gen3nick7 == '0x00':
  800. Gen3nick8 = "0x00"
  801.  
  802.  
  803. if int(nickname9,16) < 90 and int(nickname9,16) > 64:
  804. o = 122
  805. if int(nickname9,16) < 123 and int(nickname9,16) > 96:
  806. o = 116
  807. if int(nickname9,16) < 58 and int(nickname9,16) > 47:
  808. o = 113
  809. if int(nickname9,16) < 8222 and int(nickname9,16) > 8219:
  810. o = -8043
  811. if int(nickname9,16) == 33:
  812. o = 138
  813. if int(nickname9,16) == 63:
  814. o = 109
  815. if int(nickname9,16) == 45:
  816. o = 129
  817. if int(nickname9,16) == 47:
  818. o = 139
  819. if int(nickname9,16) == 39:
  820. o = 140
  821. if int(nickname9,16) == 46:
  822. o = 129
  823. if int(nickname9,16) == 44:
  824. o = 140
  825. if int(nickname9,16) == 9794:
  826. o = -9613
  827. if int(nickname9,16) == 9792:
  828. o = -9610
  829. if int(nickname9,16) == 8240:
  830. o = -8064
  831. if int(nickname9,16) == 8216:
  832. o = -8037
  833. if int(nickname9,16) == 32:
  834. o = -32
  835. Gen3nick9 = hex(int(nickname9,16) + o)
  836.  
  837. if o == 122 and int(Gen3nick9,16) == 0x7a:
  838. Gen3nick9 = "0xFF"
  839. if o == 116 and int(Gen3nick9,16) == 0x74:
  840. Gen3nick9 = "0xFF"
  841. if o == 113 and int(Gen3nick9,16) == 0x71:
  842. Gen3nick9 = "0xFF"
  843. if o == 138 and int(Gen3nick9,16) == 0x8a:
  844. Gen3nick9 = "0xFF"
  845. if o == 109 and int(Gen3nick9,16) == 0x6d:
  846. Gen3nick9 = "0xFF"
  847. if o == 129 and int(Gen3nick9,16) == 0x81:
  848. Gen3nick9 = "0xFF"
  849. if o == 139 and int(Gen3nick9,16) == 0x8B:
  850. Gen3nick9 = "0xFF"
  851. if o == 140 and int(Gen3nick9,16) == 0x8c:
  852. Gen3nick9 = "0xFF"
  853. if o == 129 and int(Gen3nick9,16) == 0x81:
  854. Gen3nick9 = "0xFF"
  855. if o == 140 and int(Gen3nick9,16) == 0x8c:
  856. Gen3nick9 = "0xFF"
  857. if o == -8043 and int(Gen3nick9,16) == -8043:
  858. Gen3nick9 = "0xFF"
  859. if o == -9610 and int(Gen3nick9,16) == o:
  860. Gen3nick9 = "0xFF"
  861. if o == -9613 and int(Gen3nick9,16) == o:
  862. Gen3nick9 = "0xFF"
  863. if o == -8064 and int(Gen3nick9,16) == o:
  864. Gen3nick9 = "0xFF"
  865. if o == -8037 and int(Gen3nick9,16) == o:
  866. Gen3nick9 = "0xFF"
  867. if o == -32 and int(Gen3nick9,16) == -32:
  868. Gen3nick9 = "0xFF"
  869. if Gen3nick8 == '0xFF' or Gen3nick8 == "0x00":
  870. Gen3nick9 = "0x00"
  871.  
  872.  
  873. if int(nickname10,16) < 90 and int(nickname10,16) > 64:
  874. o = 122
  875. if int(nickname10,16) < 123 and int(nickname10,16) > 96:
  876. o = 116
  877. if int(nickname10,16) < 58 and int(nickname10,16) > 47:
  878. o = 113
  879. if int(nickname10,16) < 8222 and int(nickname10,16) > 8219:
  880. o = -8043
  881. if int(nickname10,16) == 33:
  882. o = 138
  883. if int(nickname10,16) == 63:
  884. o = 109
  885. if int(nickname10,16) == 45:
  886. o = 129
  887. if int(nickname10,16) == 47:
  888. o = 139
  889. if int(nickname10,16) == 39:
  890. o = 140
  891. if int(nickname10,16) == 46:
  892. o = 129
  893. if int(nickname10,16) == 44:
  894. o = 140
  895. if int(nickname10,16) == 9794:
  896. o = -9613
  897. if int(nickname10,16) == 9792:
  898. o = -9610
  899. if int(nickname10,16) == 8240:
  900. o = -8064
  901. if int(nickname10,16) == 8216:
  902. o = -8037
  903. if int(nickname10,16) == 32:
  904. o = -32
  905. Gen3nick10 = hex(int(nickname10,16) + o)
  906. if o == 122 and int(Gen3nick10,16) == 0x7a:
  907. Gen3nick10 = "0xFF"
  908. if o == 116 and int(Gen3nick10,16) == 0x74:
  909. Gen3nick10 = "0xFF"
  910. if o == 113 and int(Gen3nick10,16) == 0x71:
  911. Gen3nick10 = "0xFF"
  912. if o == 138 and int(Gen3nick10,16) == 0x8a:
  913. Gen3nick10 = "0xFF"
  914. if o == 109 and int(Gen3nick10,16) == 0x6d:
  915. Gen3nick10 = "0xFF"
  916. if o == 129 and int(Gen3nick10,16) == 0x81:
  917. Gen3nick10 = "0xFF"
  918. if o == 139 and int(Gen3nick10,16) == 0x8B:
  919. Gen3nick10 = "0xFF"
  920. if o == 140 and int(Gen3nick10,16) == 0x8c:
  921. Gen3nick10 = "0xFF"
  922. if o == 129 and int(Gen3nick10,16) == 0x81:
  923. Gen3nick10 = "0xFF"
  924. if o == 140 and int(Gen3nick10,16) == 0x8c:
  925. Gen3nick10 = "0xFF"
  926. if o == -8043 and int(Gen3nick10,16) == -8043:
  927. Gen3nick10 = "0xFF"
  928. if o == -9610 and int(Gen3nick10,16) == o:
  929. Gen3nick10 = "0xFF"
  930. if o == -9613 and int(Gen3nick10,16) == o:
  931. Gen3nick10 = "0xFF"
  932. if o == -8064 and int(Gen3nick10,16) == o:
  933. Gen3nick10 = "0xFF"
  934. if o == -8037 and int(Gen3nick10,16) == o:
  935. Gen3nick10 = "0xFF"
  936. if o == -32 and int(Gen3nick10,16) == -32:
  937. Gen3nick10 = "0xFF"
  938. if Gen3nick9 == '0xFF' or Gen3nick9 == '0x00':
  939. Gen3nick10 = "0x00"
  940. if int(Gen3nick1,16) == 0:
  941. Gen3nick1 = "0x00"
  942. if int(Gen3nick2,16) == 0:
  943. Gen3nick2 = "0x00"
  944. if int(Gen3nick3,16) == 0:
  945. Gen3nick3 = "0x00"
  946. if int(Gen3nick4,16) == 0:
  947. Gen3nick4 = "0x00"
  948. if int(Gen3nick5,16) == 0:
  949. Gen3nick5 = "0x00"
  950. if int(Gen3nick6,16) == 0:
  951. Gen3nick6 = "0x00"
  952. if int(Gen3nick7,16) == 0:
  953. Gen3nick7 = "0x00"
  954. if int(Gen3nick8,16) == 0:
  955. Gen3nick8 = "0x00"
  956. if int(Gen3nick9,16) == 0:
  957. Gen3nick9 = "0x00"
  958. if int(Gen3nick10,16) == 0:
  959. Gen3nick10 = "0x00"
  960. Gen3nick = str(Gen3nick1)[2:] + str(Gen3nick2)[2:] +str(Gen3nick3)[2:] +str(Gen3nick4)[2:] +str(Gen3nick5)[2:] +str(Gen3nick6)[2:] +str(Gen3nick7)[2:] +str(Gen3nick8)[2:] +str(Gen3nick9)[2:] +str(Gen3nick10)[2:]
  961.  
  962.  
  963. if int(pOT1,16) < 90 and int(pOT1,16) > 64:
  964. o = 122
  965. if int(pOT1,16) < 123 and int(pOT1,16) > 96:
  966. o = 116
  967. if int(pOT1,16) < 58 and int(pOT1,16) > 47:
  968. o = 113
  969. if int(pOT1,16) == 33:
  970. o = 138
  971. if int(pOT1,16) == 63:
  972. o = 109
  973. if int(pOT1,16) == 45:
  974. o = 129
  975. if int(pOT1,16) == 47:
  976. o = 139
  977. if int(pOT1,16) == 39:
  978. o = 140
  979. if int(pOT1,16) == 46:
  980. o = 129
  981. if int(pOT1,16) == 44:
  982. o = 140
  983. Gen3OT1 = hex(int(pOT1,16) + o)
  984.  
  985. if o == 122 and int(Gen3OT1,16) == 0x7a:
  986. Gen3OT1 = "0xFF"
  987. if o == 116 and int(Gen3OT1,16) == 0x74:
  988. Gen3OT1 = "0xFF"
  989. if o == 113 and int(Gen3OT1,16) == 0x71:
  990. Gen3OT1 = "0xFF"
  991. if o == 138 and int(Gen3OT1,16) == 0x8a:
  992. Gen3OT1 = "0xFF"
  993. if o == 109 and int(Gen3OT1,16) == 0x6d:
  994. Gen3OT1 = "0xFF"
  995. if o == 129 and int(Gen3OT1,16) == 0x81:
  996. Gen3OT1 = "0xFF"
  997. if o == 139 and int(Gen3OT1,16) == 0x8B:
  998. Gen3OT1 = "0xFF"
  999. if o == 140 and int(Gen3OT1,16) == 0x8c:
  1000. Gen3OT1 = "0xFF"
  1001. if o == 129 and int(Gen3OT1,16) == 0x81:
  1002. Gen3OT1 = "0xFF"
  1003. if o == 140 and int(Gen3OT1,16) == 0x8c:
  1004. Gen3OT1 = "0xFF"
  1005.  
  1006. if int(pOT2,16) < 90 and int(pOT2,16) > 64:
  1007. o = 122
  1008. if int(pOT2,16) < 123 and int(pOT2,16) > 96:
  1009. o = 116
  1010. if int(pOT2,16) < 58 and int(pOT2,16) > 47:
  1011. o = 113
  1012. if int(pOT2,16) == 33:
  1013. o = 138
  1014. if int(pOT2,16) == 63:
  1015. o = 109
  1016. if int(pOT2,16) == 45:
  1017. o = 129
  1018. if int(pOT2,16) == 47:
  1019. o = 139
  1020. if int(pOT2,16) == 39:
  1021. o = 140
  1022. if int(pOT2,16) == 46:
  1023. o = 129
  1024. if int(pOT2,16) == 44:
  1025. o = 140
  1026. Gen3OT2 = hex(int(pOT2,16) + o)
  1027.  
  1028. if o == 122 and int(Gen3OT2,16) == 0x7a:
  1029. Gen3OT2 = "0xFF"
  1030. if o == 116 and int(Gen3OT2,16) == 0x74:
  1031. Gen3OT2 = "0xFF"
  1032. if o == 113 and int(Gen3OT2,16) == 0x71:
  1033. Gen3OT2 = "0xFF"
  1034. if o == 138 and int(Gen3OT2,16) == 0x8a:
  1035. Gen3OT2 = "0xFF"
  1036. if o == 109 and int(Gen3OT2,16) == 0x6d:
  1037. Gen3OT2 = "0xFF"
  1038. if o == 129 and int(Gen3OT2,16) == 0x81:
  1039. Gen3OT2 = "0xFF"
  1040. if o == 139 and int(Gen3OT2,16) == 0x8B:
  1041. Gen3OT2 = "0xFF"
  1042. if o == 140 and int(Gen3OT2,16) == 0x8c:
  1043. Gen3OT2 = "0xFF"
  1044. if o == 129 and int(Gen3OT2,16) == 0x81:
  1045. Gen3OT2 = "0xFF"
  1046. if o == 140 and int(Gen3OT2,16) == 0x8c:
  1047. Gen3OT2 = "0xFF"
  1048. if Gen3OT1 == '0xFF' or Gen3OT1 == '0x00':
  1049. Gen3OT2 = "0x00"
  1050.  
  1051. if int(pOT3,16) < 90 and int(pOT3,16) > 64:
  1052. o = 122
  1053. if int(pOT3,16) < 123 and int(pOT3,16) > 96:
  1054. o = 116
  1055. if int(pOT3,16) < 58 and int(pOT3,16) > 47:
  1056. o = 113
  1057. if int(pOT3,16) == 33:
  1058. o = 138
  1059. if int(pOT3,16) == 63:
  1060. o = 109
  1061. if int(pOT3,16) == 45:
  1062. o = 129
  1063. if int(pOT3,16) == 47:
  1064. o = 139
  1065. if int(pOT3,16) == 39:
  1066. o = 140
  1067. if int(pOT3,16) == 46:
  1068. o = 129
  1069. if int(pOT3,16) == 44:
  1070. o = 140
  1071. Gen3OT3 = hex(int(pOT3,16) + o)
  1072.  
  1073. if o == 122 and int(Gen3OT3,16) == 0x7a:
  1074. Gen3OT3 = "0xFF"
  1075. if o == 116 and int(Gen3OT3,16) == 0x74:
  1076. Gen3OT3 = "0xFF"
  1077. if o == 113 and int(Gen3OT3,16) == 0x71:
  1078. Gen3OT3 = "0xFF"
  1079. if o == 138 and int(Gen3OT3,16) == 0x8a:
  1080. Gen3OT3 = "0xFF"
  1081. if o == 109 and int(Gen3OT3,16) == 0x6d:
  1082. Gen3OT3 = "0xFF"
  1083. if o == 129 and int(Gen3OT3,16) == 0x81:
  1084. Gen3OT3 = "0xFF"
  1085. if o == 139 and int(Gen3OT3,16) == 0x8B:
  1086. Gen3OT3 = "0xFF"
  1087. if o == 140 and int(Gen3OT3,16) == 0x8c:
  1088. Gen3OT3 = "0xFF"
  1089. if o == 129 and int(Gen3OT3,16) == 0x81:
  1090. Gen3OT3 = "0xFF"
  1091. if o == 140 and int(Gen3OT3,16) == 0x8c:
  1092. Gen3OT3 = "0xFF"
  1093. if Gen3OT2 == '0xFF' or Gen3OT2 == '0x00':
  1094. Gen3OT3 = "0x00"
  1095.  
  1096. if int(pOT4,16) < 90 and int(pOT4,16) > 64:
  1097. o = 122
  1098. if int(pOT4,16) < 123 and int(pOT4,16) > 96:
  1099. o = 116
  1100. if int(pOT4,16) < 58 and int(pOT4,16) > 47:
  1101. o = 113
  1102. if int(pOT4,16) == 33:
  1103. o = 138
  1104. if int(pOT4,16) == 63:
  1105. o = 109
  1106. if int(pOT4,16) == 45:
  1107. o = 129
  1108. if int(pOT4,16) == 47:
  1109. o = 139
  1110. if int(pOT4,16) == 39:
  1111. o = 140
  1112. if int(pOT4,16) == 46:
  1113. o = 129
  1114. if int(pOT4,16) == 44:
  1115. o = 140
  1116. Gen3OT4 = hex(int(pOT4,16) + o)
  1117.  
  1118. if o == 122 and int(Gen3OT4,16) == 0x7a:
  1119. Gen3OT4 = "0xFF"
  1120. if o == 116 and int(Gen3OT4,16) == 0x74:
  1121. Gen3OT4 = "0xFF"
  1122. if o == 113 and int(Gen3OT4,16) == 0x71:
  1123. Gen3OT4 = "0xFF"
  1124. if o == 138 and int(Gen3OT4,16) == 0x8a:
  1125. Gen3OT4 = "0xFF"
  1126. if o == 109 and int(Gen3OT4,16) == 0x6d:
  1127. Gen3OT4 = "0xFF"
  1128. if o == 129 and int(Gen3OT4,16) == 0x81:
  1129. Gen3OT4 = "0xFF"
  1130. if o == 139 and int(Gen3OT4,16) == 0x8B:
  1131. Gen3OT4 = "0xFF"
  1132. if o == 140 and int(Gen3OT4,16) == 0x8c:
  1133. Gen3OT4 = "0xFF"
  1134. if o == 129 and int(Gen3OT4,16) == 0x81:
  1135. Gen3OT4 = "0xFF"
  1136. if o == 140 and int(Gen3OT4,16) == 0x8c:
  1137. Gen3OT4 = "0xFF"
  1138. if Gen3OT3 == '0xFF' or Gen3OT3 == '0x00':
  1139. Gen3OT4 = "0x00"
  1140.  
  1141. if int(pOT5,16) < 90 and int(pOT5,16) > 64:
  1142. o = 122
  1143. if int(pOT5,16) < 123 and int(pOT5,16) > 96:
  1144. o = 116
  1145. if int(pOT5,16) < 58 and int(pOT5,16) > 47:
  1146. o = 113
  1147. if int(pOT5,16) == 33:
  1148. o = 138
  1149. if int(pOT5,16) == 63:
  1150. o = 109
  1151. if int(pOT5,16) == 45:
  1152. o = 129
  1153. if int(pOT5,16) == 47:
  1154. o = 139
  1155. if int(pOT5,16) == 39:
  1156. o = 140
  1157. if int(pOT5,16) == 46:
  1158. o = 129
  1159. if int(pOT5,16) == 44:
  1160. o = 140
  1161. Gen3OT5 = hex(int(pOT5,16) + o)
  1162. if o == 122 and int(Gen3OT5,16) == 0x7a:
  1163. Gen3OT5 = "0xFF"
  1164. if o == 116 and int(Gen3OT5,16) == 0x74:
  1165. Gen3OT5 = "0xFF"
  1166. if o == 113 and int(Gen3OT5,16) == 0x71:
  1167. Gen3OT5 = "0xFF"
  1168. if o == 138 and int(Gen3OT5,16) == 0x8a:
  1169. Gen3OT5 = "0xFF"
  1170. if o == 109 and int(Gen3OT5,16) == 0x6d:
  1171. Gen3OT5 = "0xFF"
  1172. if o == 129 and int(Gen3OT5,16) == 0x81:
  1173. Gen3OT5 = "0xFF"
  1174. if o == 139 and int(Gen3OT5,16) == 0x8B:
  1175. Gen3OT5 = "0xFF"
  1176. if o == 140 and int(Gen3OT5,16) == 0x8c:
  1177. Gen3OT5 = "0xFF"
  1178. if o == 129 and int(Gen3OT5,16) == 0x81:
  1179. Gen3OT5 = "0xFF"
  1180. if o == 140 and int(Gen3OT5,16) == 0x8c:
  1181. Gen3OT5 = "0xFF"
  1182. if Gen3OT4 == '0xFF' or Gen3OT4 == '0x00':
  1183. Gen3OT5 = "0x00"
  1184.  
  1185. if int(pOT6,16) < 90 and int(pOT6,16) > 64:
  1186. o = 122
  1187. if int(pOT6,16) < 123 and int(pOT6,16) > 96:
  1188. o = 116
  1189. if int(pOT6,16) < 58 and int(pOT6,16) > 47:
  1190. o = 113
  1191. if int(pOT6,16) == 33:
  1192. o = 138
  1193. if int(pOT6,16) == 63:
  1194. o = 109
  1195. if int(pOT6,16) == 45:
  1196. o = 129
  1197. if int(pOT6,16) == 47:
  1198. o = 139
  1199. if int(pOT6,16) == 39:
  1200. o = 140
  1201. if int(pOT6,16) == 46:
  1202. o = 129
  1203. if int(pOT6,16) == 44:
  1204. o = 140
  1205. Gen3OT6 = hex(int(pOT6,16) + o)
  1206. if o == 122 and int(Gen3OT6,16) == 0x7a:
  1207. Gen3OT6 = "0xFF"
  1208. if o == 116 and int(Gen3OT6,16) == 0x74:
  1209. Gen3OT5 = "0xFF"
  1210. if o == 113 and int(Gen3OT6,16) == 0x71:
  1211. Gen3OT6 = "0xFF"
  1212. if o == 138 and int(Gen3OT6,16) == 0x8a:
  1213. Gen3OT6 = "0xFF"
  1214. if o == 109 and int(Gen3OT6,16) == 0x6d:
  1215. Gen3OT6 = "0xFF"
  1216. if o == 129 and int(Gen3OT6,16) == 0x81:
  1217. Gen3OT6 = "0xFF"
  1218. if o == 139 and int(Gen3OT6,16) == 0x8B:
  1219. Gen3OT6 = "0xFF"
  1220. if o == 140 and int(Gen3OT6,16) == 0x8c:
  1221. Gen3OT6 = "0xFF"
  1222. if o == 129 and int(Gen3OT6,16) == 0x81:
  1223. Gen3OT6 = "0xFF"
  1224. if o == 140 and int(Gen3OT6,16) == 0x8c:
  1225. Gen3OT6 = "0xFF"
  1226. if Gen3OT5 == '0xFF' or Gen3OT5 == '0x00':
  1227. Gen3OT6 = "0x00"
  1228.  
  1229. if int(pOT7,16) < 90 and int(pOT7,16) > 64:
  1230. o = 122
  1231. if int(pOT7,16) < 123 and int(pOT7,16) > 96:
  1232. o = 116
  1233. if int(pOT7,16) < 58 and int(pOT7,16) > 47:
  1234. o = 113
  1235. if int(pOT7,16) == 33:
  1236. o = 138
  1237. if int(pOT7,16) == 63:
  1238. o = 109
  1239. if int(pOT7,16) == 45:
  1240. o = 129
  1241. if int(pOT7,16) == 47:
  1242. o = 139
  1243. if int(pOT7,16) == 39:
  1244. o = 140
  1245. if int(pOT7,16) == 46:
  1246. o = 129
  1247. if int(pOT7,16) == 44:
  1248. o = 140
  1249. Gen3OT7 = hex(int(pOT7,16) + o)
  1250. if o == 122 and int(Gen3OT7,16) == 0x7a:
  1251. Gen3OT7 = "0xFF"
  1252. if o == 116 and int(Gen3OT7,16) == 0x74:
  1253. Gen3OT7 = "0xFF"
  1254. if o == 113 and int(Gen3OT7,16) == 0x71:
  1255. Gen3OT7 = "0xFF"
  1256. if o == 138 and int(Gen3OT7,16) == 0x8a:
  1257. Gen3OT7 = "0xFF"
  1258. if o == 109 and int(Gen3OT7,16) == 0x6d:
  1259. Gen3OT7 = "0xFF"
  1260. if o == 129 and int(Gen3OT7,16) == 0x81:
  1261. Gen3OT7 = "0xFF"
  1262. if o == 139 and int(Gen3OT7,16) == 0x8B:
  1263. Gen3OT7 = "0xFF"
  1264. if o == 140 and int(Gen3OT7,16) == 0x8c:
  1265. Gen3OT7 = "0xFF"
  1266. if o == 129 and int(Gen3OT7,16) == 0x81:
  1267. Gen3OT7 = "0xFF"
  1268. if o == 140 and int(Gen3OT7,16) == 0x8c:
  1269. Gen3OT7 = "0xFF"
  1270. if Gen3OT6 == '0xFF' or Gen3OT6 == '0x00':
  1271. Gen3OT7 = "0x00"
  1272.  
  1273. Gen3OT = str(Gen3OT1)[2:] + str(Gen3OT2)[2:] +str(Gen3OT3)[2:] +str(Gen3OT4)[2:] +str(Gen3OT5)[2:] +str(Gen3OT6)[2:] + str(Gen3OT7)[2:]
  1274.  
  1275.  
  1276. Gen3move1 = move1[2:4] + move1[0:2]
  1277.  
  1278. Gen3move2 = move2[2:4] + move2[0:2]
  1279.  
  1280. Gen3move3 = move3[2:4] + move3[0:2]
  1281.  
  1282. Gen3move4 = move4[2:4] + move4[0:2]
  1283.  
  1284. Gen3PP = move1pp + move2pp + move3pp + move4pp
  1285. IVtotal = IVtotal[2:]
  1286. while len(IVtotal) < 8:
  1287. IVtotal = '0' + IVtotal
  1288. Gen3IVs = IVtotal[6:8] + IVtotal[4:6] +IVtotal[2:4] + IVtotal[0:2]
  1289. Gen3met = hex(int(metlevel,16) + 128)
  1290.  
  1291. if pokeball == 'masterball':
  1292. Gen3ball = '0F'
  1293. if pokeball == 'ultraball':
  1294. Gen3ball = '17'
  1295. if pokeball == 'greatball':
  1296. Gen3ball = '1F'
  1297. if pokeball == 'pokeball':
  1298. Gen3ball = '27'
  1299. if pokeball == 'safariball':
  1300. Gen3ball = '2F'
  1301. if pokeball == 'netball':
  1302. Gen3ball = '37'
  1303. if pokeball == 'diveball':
  1304. Gen3ball = '3F'
  1305. if pokeball == 'nestball':
  1306. Gen3ball = '47'
  1307. if pokeball == 'repeatball':
  1308. Gen3ball = '4F'
  1309. if pokeball == 'timerball':
  1310. Gen3ball = '57'
  1311. if pokeball == 'luxball':
  1312. Gen3ball = '5F'
  1313. if pokeball == 'premeirball':
  1314. Gen3ball = '67'
  1315. if int(ribbons,16) == 006:
  1316. rr = "83"
  1317.  
  1318. if int(ribbons,16) == 004:
  1319. rr = "81"
  1320.  
  1321.  
  1322. if int(ribbons,16) == 000:
  1323. rr = "00"
  1324.  
  1325.  
  1326. #Checksum calculation
  1327. checksum = 0
  1328. checksum = checksum + int(str(Gen3spec[2:]+Gen3spec[:2]),16) + int(str(Gen3exp[2:4]+Gen3exp[0:2]),16) + int(str(Gen3exp[6:8]+Gen3exp[4:6]),16) + int(str(happiness + "00"),16)+int(str(Gen3move1[2:]+Gen3move1[:2]),16)+int(str(Gen3move2[2:]+Gen3move2[:2]),16)+int(str(Gen3move3[2:]+Gen3move3[:2]),16)+ int(str(Gen3move4[2:]+Gen3move4[:2]),16)+int(str(Gen3PP[2:4]+Gen3PP[0:2]),16) + int(str(Gen3PP[6:8]+Gen3PP[4:6]),16)+int(str(HPev + "00"),16)+int(str(ATKev + "00"),16)+int(str(DEFev + "00"),16)+int(str(SPATKev + "00"),16)+int(str(SPDEFev + "00"),16)+int(str(SPEEDev + "00"),16) + int(str(metlocation +"00"),16) + int(str(Gen3ball+Gen3met[2:]),16) + int(str(Gen3IVs[2:4]+Gen3IVs[0:2]),16) + int(str(Gen3IVs[6:8]+Gen3IVs[4:6]),16) + int(str(rr+"00"),16)
  1329. checksum = str(hex(checksum))
  1330. print Gen3exp
  1331. print checksum
  1332. checksum = checksum[3:]
  1333. checksum = str(checksum[2:] + checksum[:2])
  1334. print "Checksum: " + checksum
  1335.  
  1336. #Finish the Gen 3 pkmn file and
  1337.  
  1338. Gen3pkmnfile = Gen3pid + Gen3tid + Gen3sid + Gen3nick +"0202"+ Gen3OT + "00" + checksum + "0000" + Gen3spec + "0000" + Gen3exp + "00" + happiness+ "0000" + Gen3move1 + Gen3move2 + Gen3move3 + Gen3move4 + Gen3PP + HPev + ATKev + DEFev + SPEEDev + SPATKev + SPDEFev + "000000000000" + "00" + metlocation + Gen3met[2:] + Gen3ball + Gen3IVs + "000000" + rr
  1339.  
  1340. #Create and write the pokemonfile to desktop
  1341.  
  1342. Gen3pkmnfile = Gen3pkmnfile.strip('\r\n')
  1343. Gen3pkmnfile = Gen3pkmnfile.replace("\r","")
  1344. Gen3pkmnfile = Gen3pkmnfile.replace("\n","")
  1345. Gen3pkmnfile = Gen3pkmnfile.replace(" ","")
  1346.  
  1347. gen3ascii = binascii.unhexlify(Gen3pkmnfile)
  1348. pokemon1 = open(pokemonwritefile,"wb")
  1349. pokemon1.write(gen3ascii)
  1350. pokemon1.close()
  1351. print "pokemon " + str(j) + " exported"
  1352.  
  1353. j = j+1 #continue until j = 31 (slot 30 of box 1)
  1354. if j == 31:
  1355. quit()
  1356. pokemonconvert(party,j,i)
  1357. #End of pokemonconvert(party,j,i)
  1358.  
  1359. pokemonconvert(party,j,i)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement