Sploop.io Debugging QOL

Removes anti debugging attempts and deobfuscates the source code. You must have instant inject on for this to work.

  1. // ==UserScript==
  2. // @name Sploop.io Debugging QOL
  3. // @namespace http://tampermonkey.net/
  4. // @version 2024-06-03
  5. // @description Removes anti debugging attempts and deobfuscates the source code. You must have instant inject on for this to work.
  6. // @author You
  7. // @match https://sploop.io/*
  8. // @icon https://www.google.com/s2/favicons?sz=64&domain=sploop.io
  9. // @grant none
  10. // @run-at document-start
  11. // ==/UserScript==
  12.  
  13. // for redundancy, remapping code is already removed from custom appjs
  14. let remappedProperties = ["log", "warn", "info", "error", "exception", "table", "trace"]
  15. for (let i=0; i < remappedProperties.length; i++) {
  16. let origValue = window.console[remappedProperties[i]]
  17. Object.defineProperty(window.console, remappedProperties[i], {
  18. get: ()=>{
  19. return origValue
  20. },
  21. set: ()=>{}
  22. })
  23. }
  24.  
  25. // custom appjs, deobfuscated and all anti debugging techniques removed
  26. let current = false
  27. new MutationObserver((mutations) => {
  28. for (let mutation of mutations) {
  29. if (mutation.type === "childList" && mutation.addedNodes.length > 0) {
  30. mutation.addedNodes.forEach((node) => {
  31. if (node.src) {
  32. if (/^https:\/\/sploop.io\/js\/.*\.js$/.test(node.src)) {
  33. current = node.src.endsWith("/e08321e984a8efa957b1.js")
  34. node.src = "https://sploop-src.glitch.me/app.js"
  35. }
  36. }
  37. })
  38. }
  39. }
  40. }).observe(document, {childList: true, subtree: true})
  41.  
  42. window.addEventListener("load", ()=>{
  43. if (!current) console.warn("%c\nWARNING: Custom app.js is outdated, use at your own risk!\n", "color: red; font-size: 20px")
  44. })