banner

Blog

May 18, 2024

Tengo que atraparlos todo el tiempo

Los juegos de Pokémon, que disfrutan personas de todas las edades, han capturado los corazones de millones de personas en todo el mundo desde su lanzamiento. Los juegos consisten en atrapar y coleccionar varias criaturas conocidas como Pokémon. Si bien los jugadores encuentran una variedad de estos seres fantásticos a lo largo de su viaje, la verdadera emoción proviene de encontrar Pokémon raros. Estas esquivas criaturas, con sus habilidades únicas y diseños cautivadores, representan un desafío que pone a prueba las habilidades, la paciencia y la determinación del entrenador.

Los Pokémon raros no se entregan simplemente a los jugadores; con frecuencia deben buscarse en lugares específicos o durante eventos especiales. En su búsqueda para capturar Pokémon raros, los entrenadores pueden necesitar emplear varias tácticas, como usar Poké Balls especiales, debilitar al Pokémon objetivo sin noquearlo y explotar sus debilidades. Algunos Pokémon raros pueden incluso requerir que se completen misiones o acertijos intrincados antes de revelarse, lo que agrega capas de complejidad al desafío.

Sin embargo, mucha gente cree que el desafío se ha vuelto demasiado grande en algunos de los juegos más recientes, ya que algunos Pokémon tardan semanas de juego en capturarse. El YouTuber Dinones es un gran admirador del juego Pokémon Brilliant Diamond para Nintendo Switch, pero definitivamente siente que los Pokémon más raros, especialmente los Pokémon brillantes, son demasiado difíciles de atrapar. Aparentemente, Nintendo tenía un generador de números aleatorios de 12 bits que se morían por usar en este juego, dando una probabilidad de 1 entre 4,096 de que apareciera un Pokémon brillante en cualquier batalla determinada.

Dinones hizo algunos cálculos preliminares y se dio cuenta de que fácilmente podría llevar más de 40 horas de juego encontrar un solo Pokémon brillante. Como dice el famoso dicho (que estoy acuñando hace un momento), cuando las cosas se ponen difíciles, los difíciles se automatizan. Dinones creó un sistema que juega automáticamente, detecta si un Pokémon brillante y raro está presente en una batalla y, de ser así, lo captura. Esta configuración se configuró para ejecutarse en un bucle, por lo que puede reproducirse durante horas hasta que se logre el objetivo. Si bien algunas personas pueden considerar que esta medida es controvertida, Dinones simplemente la ve como una respuesta práctica a probabilidades irrazonables.

Hay una serie de piezas móviles para que este truco funcione. Primero, un dispositivo de captura HDMI a USB adquiere fotogramas de imagen del Nintendo Switch mientras se juega. Luego, con la ayuda de una herramienta que creó, Dinones encontró los colores presentes en los Pokémon brillantes que no están presentes en sus contrapartes normales. Esto proporciona una firma que se puede detectar durante una batalla usando OpenCV.

Para controlar el juego se aprovechó una aplicación llamada NXBT. Esto permite que los comandos se envíen mediante programación a un Switch a través de Bluetooth, como si vinieran de un Joy-Con. Finalmente, usando estas piezas, se codificó la lógica en un script de Python que iniciará el juego, entrará en una batalla y evaluará si un Pokémon brillante está presente o no. De lo contrario, se emite un reinicio por software y el proceso comienza de nuevo. Si se encuentra un Pokémon brillante y esquivo, es capturado inmediatamente por una Master Ball especial que no puede fallar y luego el juego se pausa. Todo el sistema funciona con una Raspberry Pi, por lo que Dinones no necesita escuchar el zumbido del ventilador de su computadora principal durante las largas horas de caza automática de Pokémon.

Si necesitas alejarte de tu Switch porque tienes que comer algo, o tal vez ir a tu trabajo para poder seguir comiendo en el futuro, pero aún quieres atrapar un Pokémon brillante y esquivo, entonces Dinones. El trabajo puede ser de tu interés. Afortunadamente, ha publicado el código fuente en GitHub para cualquiera que quiera replicar el proyecto.

COMPARTIR