Recuerdo cuando me dedicaba a programar y administrar servidores de Ultima Online que tenia que ingeniármelas como fuera para “capar” diferentes modificaciones que algunos usuarios lograban hacer a los juegos, por lo general en la época que yo jugué al UO el cliente estaba bastante evolucionado de forma que muchas de las “locuras” que hacían en un principio habían sido arregladas, pero aun quedaban algunas interesantes, como por ejemplo “AutoLoot” que no era otra cosa que al morir un personaje un software abre el cuerpo y lo vacía en menos de un segundo, la forma de solucionarlo era fácil, ponías un objeto que el jugador no pudiera tocar ni ver dentro de los cuerpos, pero el software si era capaz de moverlo, blanco y en botella, si el objeto se movía de ubicación es que habían usado software ilegal. Pasaba algo parecido con el “SpeedHacking”, movían a los personajes a una velocidad superior a la permitida, la forma de controlarlo era comprobar la distancia que había recorrido al personaje durante “x” tiempo para no permitirle ir más rápido de la cuenta. Estas cosas me daban dolores de cabeza, cada día aparecía algo nuevo y los servidores que no eran más que “emuladores” de los originales no evolucionaban tan rápido como el ingenio de los hackers. La verdad es que nunca me interesé por saber como lo lograban, hasta que vi el titulo de una charla de Carlos Hernández: “Hacking Etico de Videojuegos con HTML5”.

¿Hacking Etico? ¿Como es eso?. Pues si, hasta donde entiendo el Hacking etico de videojuegos no busca obtener beneficios sobre otros jugadores de forma que desbalanceen el juego, si no que es una forma de pasar el tiempo investigando, adquiriendo conocimientos y poniéndolos en practica sobre videojuegos.

Pero ¿Por qué?. Porque pueden. Une en una misma persona o comunidad conocimientos de programación, pasión por los videojuegos, un fuerte espíritu autodidacta y de investigación y obtendrás una persona como Carlos.

Viendo el video de su ultima charla he flipado, a mitad del video solo tenia una expresión en la cabeza, “¡Que Crack!”, bueno, también “¡Que mamón es uno de los que me daban dolor de cabeza!” xD.

Me ha impresionado como modifica el comportamiento de videojuegos como WarHammer o Guild Wars 2 usando un servidor de node.js, socket.io, html5 y una librería de su invención llamada CrazinessJS. El interviene los procesos del ordenador y los modifica a su antojo, de forma que en el juego genera cambios a tiempo real, claro no todo será tan sencillo como instalar y cambiar lo que queramos, como he dicho, detrás de cada modificación hay una tarea de investigación importante para saber que debe modificar exactamente pero CrazinessJS intenta precisamente de hacernos el proceso mas sencillo.

Algo muy curiosos que ha realizado y que he podido ver en su twitter a medida que lo probaba es un pad para mover el personaje de Diablo 3 a tiempo real desde su Ipod. Como ves no se limitan a modificar juegos con una cierta edad, si no que los juegos más actuales también pueden ser blancos de modificaciones.

Lo que más me ha gustado de la charla es la reflexión final de su charla, una reflexión digna de escuchar para cargarnos de animo e ilusiones en nuestro futuro como desarrolladores.

Si quieres aprender más te recomiendo que veas su charla en vimeo, y si tienes alguna duda sobre esto pregunta directamente a Carlos, que por lo que veo no tiene reparo ninguno en compartir y guiar a la gente sobre este tema.

Charla en vimeo: http://vimeo.com/54132709
CrazinessJS: https://github.com/karliky/CrazinessJS
Twitter: https://twitter.com/k4rliky

*Actualización: *Añado a modo de ejemplo un video de WarTool una herramienta de Carlos para modificar el comportamiento de tu personaje en WarHammer tocando solo unas teclas.

Link a la herramienta: http://nogg-aholic.es/bugcrafts-warhacker-tool/