samuelask

Untitled

Aug 5th, 2021 (edited)
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.81 KB | None | 0 0
  1. local c = require("component")
  2. local term = require("term")
  3. local component = require("component")
  4. local event = require("event")
  5. local serialization = require("serialization")
  6. local gpu = component.gpu
  7. local w, h = gpu.getResolution()
  8. local computer = require("computer")
  9. gpu.fill(1, 1, w, h, " ")
  10. local os = require("os")
  11. local modem = component.modem
  12. local term = require("term")
  13. local sg = c.stargate
  14. local port = 126
  15. adresses_checked = 0
  16. stargates_checked = 0
  17. stargates_found = 0
  18. address = {}
  19. symbols = {"Sculptor","Scorpius","Centaurus","Monoceros","Pegasus","Andromeda","Serpens Caput","Aries","Libra","Eridanus","Leo Minor","Hydra","Sagittarius","Sextans","Scutum","Pisces","Virgo","Bootes","Auriga","Corona Australis","Gemini","Leo","Cetus","Triangulum","Aquarius","Microscopium","Equuleus","Crater","Perseus","Cancer","Norma","Taurus","Canis Minor","Capricornus","Lynx","Orion","Piscis Austrinus"}
  20. lenght = {min = 6, max = 6}
  21.  
  22. function save(address,name)
  23. local file = fs.open(name,"w")
  24. file.write(textutils.serialize(address))
  25. file.close()
  26. end
  27. function checkadress(address)
  28. term.clear(true)
  29. table.insert(address, "Point of Origin")
  30. print("Checked adresses:",adresses_checked)
  31. print("Checked Stargates:",stargates_checked)
  32. print("Stargates Found:",stargates_found)
  33. if not component.stargate.getEnergyRequiredToDial(address) == "address_malformed" then
  34. stargates_found = stargates_found + 1
  35. print("Address found, saving to file: ",address)
  36. address = serialization.serialize(address_raw)
  37. modem.broadcast(port, "foundaddress", address)
  38. save(address,stargates_found)
  39. os.sleep(5)
  40. end
  41. end
  42. function checksymbols(address)
  43. adresses_checked = adresses_checked + 1
  44. if address[1] == address[2] or address[1] == address[3] or address[1] == address[4] or address[1] == address[5] or address[1] == address[6] or address[2] == address[3] or address[2] == address[4] or address[2] == address[5] or address[2] == address[6] or address[3] == address[4] or address[3] == address[5] or address[3] == address[6] or address[4] == address[5] or address[4] == address[6] or address[5] == address[6] then
  45. term.clear(true)
  46. print("Checked Stargates:",stargates_checked)
  47. print("Checked adresses:",adresses_checked)
  48. print("Stargates Found:",stargates_found)
  49. else
  50. stargates_checked = stargates_checked + 1
  51. checkadress(address)
  52. end
  53. address = {}
  54. end
  55. function generate(current, len, chars)
  56. if #current == len then
  57. checksymbols(current)
  58. return
  59. end
  60. if #current < len then
  61. for c = 1, #chars do
  62. curr = {}
  63. for i = 1, #current do
  64. curr[i] = current[i]
  65. end
  66. curr[#curr+1] = chars[c]
  67. generate(curr, len, chars)
  68. end
  69. end
  70. end
  71. function brute(chars, min, max)
  72. for l = min, max do
  73. generate({}, l, chars)
  74. end
  75. end
  76.  
  77. brute(symbols, lenght.min, lenght.max)
Add Comment
Please, Sign In to add comment