Verbal memory bot - humanbenchmark.com

Plays the "verbal memory" game for you on humanbenchmark.com

  1. // ==UserScript==
  2. // @name Verbal memory bot - humanbenchmark.com
  3. // @namespace https://reddit.com/u/AliFurkanY
  4. // @match https://humanbenchmark.com/tests/verbal-memory
  5. // @grant none
  6. // @version 1.1
  7. // @author alifurkany
  8. // @description Plays the "verbal memory" game for you on humanbenchmark.com
  9. // @license GPL-3.0
  10. // ==/UserScript==
  11.  
  12. // Speed
  13. let INTERVAL = 0;
  14.  
  15. let botbtn = document.createElement("button");
  16. let startbtn = document.querySelector("button.css-de05nr.e19owgy710");
  17. let settingsdiv = document.createElement("div");
  18. let btndiv = startbtn.parentElement;
  19. botbtn.className = startbtn.className;
  20. botbtn.innerText = "Start Bot";
  21. settingsdiv.className = btndiv.className;
  22. let intervalinput = document.createElement("input");
  23. intervalinput.className = ".css-1gr1qbh";
  24. intervalinput.type = "number";
  25. intervalinput.min = 0;
  26. intervalinput.onchange = () => (INTERVAL = parseInt(intervalinput.value));
  27. intervalinput.value = INTERVAL;
  28. intervalinput.style.color = "black";
  29. intervalinput.placeholder = 0;
  30. settingsdiv.append("Click interval (ms): ");
  31. settingsdiv.append(intervalinput);
  32. let fullnav = document.querySelector("div.full-nav");
  33.  
  34. function appendStuff() {
  35. btndiv.append(" ");
  36. btndiv.append(botbtn);
  37. btndiv.parentElement.append(settingsdiv);
  38. }
  39.  
  40. let dict = [];
  41.  
  42. botbtn.onclick = () => {
  43. startbtn.click();
  44. setImmediate(() => {
  45. let worddiv = document.querySelector("div.word");
  46. let [seenbtn, newbtn] = document.querySelectorAll(
  47. "button.css-de05nr.e19owgy710"
  48. );
  49. let stopped = false;
  50. let stopbtn = document.createElement("button");
  51. stopbtn.className = startbtn.className;
  52. stopbtn.innerText = "Stop";
  53. stopbtn.onclick = () => {
  54. console.log("Stopped");
  55. stopped = true;
  56. stopbtn.remove();
  57. };
  58. fullnav.append(stopbtn);
  59. let interval = setInterval(() => {
  60. if (document.querySelector(".css-0")) {
  61. console.log("Game ended");
  62. document
  63. .querySelector("button.secondary.css-qm6rs9.e19owgy710")
  64. .addEventListener("click", () =>
  65. setImmediate(() => {
  66. dict = [];
  67. startbtn = document.querySelector(
  68. "button.css-de05nr.e19owgy710"
  69. );
  70. btndiv = startbtn.parentElement;
  71. appendStuff();
  72. })
  73. );
  74. stopbtn.remove();
  75. clearInterval(interval);
  76. } else if (!stopped) {
  77. let word = worddiv.innerText.trim();
  78. console.log(word);
  79. if (dict.includes(word)) seenbtn.click();
  80. else {
  81. dict.push(word);
  82. newbtn.click();
  83. }
  84. }
  85. }, INTERVAL);
  86. });
  87. };
  88.  
  89. appendStuff();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址