English  Español  Português  Français  Italiano  Deutsch  Nederlands  Svenska  Dansk  Suomi  Norsk  Русский  Polski  Română  Български  Hrvatski  Česky  中国  中國  日本語  한국어  Ελληνική  हिन्दी  العربية 
Elder Scrolls III: Morrowind
Automatizado de juego
Colin Fahey

1. Introducción

2002.05
Nunca he jugado una fantasía Juego de rol (RPG) en la PC hasta que un amigo mío, Greg Moulton, me presentó a “The Elder Scrolls III: Morrowind”.  Este video juego fue muy popular a mediados de 2002.  Se trata de un increíble juego.  Me ha encantado jugar el juego a pesar de mi falta general de interés en el género fantástico. 
En este video juego, un personaje tiene la habilidad de las cantidades a diversos tipos de actividades.  Al igual que en la vida real, un personaje puede incrementar la destreza en una actividad de la práctica de la actividad.  Por ejemplo, un personaje puede emitir repetidamente hechizos mágicos para mejorar la capacidad de emitir hechizos mágicos.  El personaje puede simplemente estar en un lugar aislado y hechizos mágicos emitidos repetidas veces y, por tanto, a mejorar la fundición hechizos mágicos.  Por otra parte, el carácter simplemente de pie en un lugar aislado y saltar en repetidas ocasiones, o correr en círculos, para mejorar el carácter de la capacidad atlética. 
Tedioso practicar puede hacerse más fácil para el jugador de ordenador utilizando la automatización.  De este modo, un jugador puede “practicar” actividades sin necesidad de estar cerca de la computadora!  Mi amigo y yo Sam Robertson fueron turnándose jugar el juego una noche, y él me inspiró a reunirse espontáneamente componentes electrónicos y de software para automatizar juego.  Después de aproximadamente una hora, estábamos viendo el juego que desempeña el propio ordenador. 
2002may_mwgame_screen.jpg
Morrowind: Al lado de una cama, dispuesta a emitir un hechizo.
Mejorar la capacidad del personaje para lanzar hechizos de magia en una categoría específica de hechizos mágicos, como la "destrucción" categoría de hechizos mágicos, se puede lograr en varias ocasiones que emitan cualquier conjuro mágico dentro de la categoría específica de hechizos mágicos. 
En concreto, tenemos que pulsar el "botón izquierdo del ratón" a emitir el conjuro mágico.  Cada pocos segundos podemos emitir el conjuro mágico de nuevo.  Eventualmente se quedará sin “Magicka”, una especie de energía personal, y que necesitamos para descansar antes de emitir más hechizos mágicos. 
Para el resto, tenemos que pulsar la “tecla espacio” mientras estamos en la proximidad de una cama, con lo que “utilizando” la cama.  También tenemos que despedir a un cuadro de mensaje que aparece y se especifica la duración del período de descanso. 
Podemos automatizar todo el proceso. 
Un jugador puede utilizar en el juego de engañar a la “consola” de una forma más directa la moda.  Por ejemplo, un jugador puede simplemente escribir en un comando para solicitar la creación de cualquier objeto o material a adquirir cualquier atributo personal o la cantidad de habilidad.  Sin embargo, mi objetivo era ser más “honesto” en mi trampa!  Suministro de teclado y ratón de entrada para el juego parece más honesto que utilizar un mecanismo fuera del contexto de juego (es decir, la consola) para manipular el juego. 
2002may_mwgame_master.jpg
Un segundo equipo, con Visual C++ y mi programa
Me escribió un programa simple para expedir órdenes para el puerto serie.  Estos comandos participar y desentenderse relés (esencialmente “botones)” para controlar la entrada en el equipo que ejecuta la videojuego Morrowind.  El programa tiene los retrasos que corresponden a los retrasos típicos de un ser humano en el ratón y el teclado.  Asimismo, el programa tiene diferentes lógica para hacer frente a los distintos tipos de tareas (hechizo de fundición, de descanso), que debe desencadenar en los otros PC. 
2002may_mwgame_serialboard.jpg
Relay bordo controlado por puerto serie (RS-232)
Esta placa acepta comandos sobre una línea serie (RS-232).  Los parámetros de comunicación son: 9600 baudios, 8 bits de datos, 1 bit de parada, sin paridad.  Los comandos pueden controlar los 8 enlaces en el tablero.  Un comando puede convertir cualquier relé de encendido o apagado. 
2002may_mwgame_mouse.jpg
Botón izquierdo del ratón, conectado a un relé a través de clips
Me abrió el ratón y clips de cocodrilo adjunta a los terminales del botón izquierdo del ratón sobre la pequeña placa de circuito en el interior del ratón. 
De este modo, la junta de relé puede controlar el estado del botón izquierdo del ratón. 
2002may_mwgame_keyboardfull.jpg
Abierto el teclado, teclas eliminado, hoja con huellas
Cuando se abre un moderno PC teclado, es sólo tres hojas de papel delgado y flexible de plástico.  Es un sándwich, con la parte superior e inferior capas metálicas cubiertas por caminos que representan la organización de los principales botones.  La media hoja de plástico tiene agujeros donde los principales botones están situados, pero por lo demás aísla la parte superior de la hoja de hoja inferior. 
En cualquier caso, es fácil localizar el botón de la barra de espacio caminos. 
2002may_mwgame_keyboardclips.jpg
Close-up de la conexión a barra espaciadora circuito caminos.
Adjuntar clips de cocodrilo a la par de caminos que, cuando se combinan, a “la barra espaciadora” del teclado mensaje, fue fácil. 
De este modo, el relé bordo dependa fundamentalmente de “presionar” la barra espaciadora en el mando. 
2002may_mwgame_bed.jpg
Morrowind: Al lado de una cama, dispuesta a emitir un hechizo.  (ver # 2)
Podemos pulsar el botón izquierdo del ratón para lanzar hechizos una y otra vez.  Con un hechizo realmente “barato” (“Magicka” bajo coste), puede emitir al menos 30 veces antes de que necesitamos para descansar.  Este hecho es esencialmente incorporada a nuestro sencillo C aplicación en los demás PC. 
2002may_mwgame_dialogbox.jpg
Morrowind: El “uso de la cama,” descanso duración cuadro de diálogo.
Después de que emitan un hechizo de 30 veces, el programa asume que C que necesitamos para descansar, y que asume que estamos cerca de una cama.  Por lo tanto, la C programa emite un puerto serie de comandos que da lugar a un relevo en la junta de relevo que esencialmente “prensas de” la barra espaciadora clave en el teclado se adjunta a la Morrowind de videojuegos de ordenador. 
Por lo “tanto,” usamos la cama, y este cuadro de diálogo, pidiendo a cuánto tiempo queremos descansar.  C El programa asume que este cuadro de diálogo aparece en la pantalla, y también asume que el cursor del ratón se encuentra sobre el botón apropiado en el cuadro de diálogo (que es una condición que debe ser creado, sólo una vez, con antelación), y procede a iniciar un botón izquierdo del ratón para seleccionar la opción deseada. 
El descanso se inicia y finaliza automáticamente, y estamos dispuestos a emitir el hechizo 30 veces más! 
Cada 100 votas (o así parece), aparecerá un mensaje en la pantalla indicando que nuestra habilidad en esta área ha mejorado en un 1% (esencialmente). 
2002may_mwgame_levelup.jpg
Morrowind: A veces hemos adelantado en el nivel!
Si queremos mejorar cualquier habilidad en un 10%, que avanzamos hacia un nuevo “nivel” de logro en el juego.  Así que, ya que cada 1% de habilidad tiene alrededor de 100 arroja la práctica, los niveles se avanza cada 1000 arroja, y tenemos que descansar unas 30 veces en el proceso!  Pero, gracias a la automatización, podemos mejorar nuestro personaje mientras dormimos ...  literalmente! 
Yo y mi amigo Sam Robertson ha discutido sobre cómo manejar el “nivel de adelanto” cuadro de diálogo.  Necesitamos un poco más de control del ratón para automatizar la selección de carácter atributo aumenta.  Se puede hacer, pero es complicado porque se trata de “mover” el cursor del ratón a través de la automatización de todo. 
colinfahey.com
información de contacto
English  Español  Português  Français  Italiano  Deutsch  Nederlands  Svenska  Dansk  Suomi  Norsk  Русский  Polski  Română  Български  Hrvatski  Česky  中国  中國  日本語  한국어  Ελληνική  हिन्दी  العربية