Articulo de referencia

Juego de programación

Un juego de programación es un videojuego que incorpora elementos de programación informática , permitiendo al jugador dirigir unidades autónomas dentro del juego para que sigan...

Un juego de programación es un videojuego que incorpora elementos de programación informática , permitiendo al jugador dirigir unidades autónomas dentro del juego para que sigan comandos en un lenguaje de programación específico , a menudo representado como un lenguaje visual para simplificar la metáfora de la programación. Los juegos de programación se dividen en dos categorías principales: juegos para un solo jugador, donde los elementos de programación forman parte o la totalidad de un videojuego de puzles , y juegos multijugador, donde el programa automatizado del jugador compite contra los programas de otros jugadores.

Como juegos de rompecabezas

Entre los primeros juegos de este género se encuentran System 15000 y Hacker , lanzados en 1984 y 1985 respectivamente.

Los juegos de programación se han utilizado como parte de juegos de rompecabezas, desafiando al jugador a lograr un resultado específico una vez que el programa comienza a funcionar. Un ejemplo de este tipo de juego es SpaceChem , donde el jugador debe usar su lenguaje visual para manipular dos waldos con el fin de desensamblar y volver a ensamblar moléculas químicas. En estos juegos, los jugadores pueden probar y depurar su programa tantas veces como sea necesario hasta encontrar una solución que funcione. Muchos de estos juegos animan al jugador a encontrar el programa más eficiente, medido por el número de pasos de tiempo necesarios o el número de comandos requeridos. Otros juegos similares incluyen Human Resource Machine , [ 1 ] Infinifactory y TIS-100 . Zachtronics es una empresa de desarrollo de videojuegos conocida por sus juegos de rompecabezas centrados en la programación . [ 2 ]

Otros juegos incorporan elementos de programación como partes de rompecabezas dentro del juego principal. Por ejemplo, Hack 'n' Slash incluye una metáfora que permite acceder a los programas y variables internas de los objetos representados en el mundo del juego, pausando el resto del juego mientras el jugador interactúa con esta interfaz de programación y modifica el programa del objeto para avanzar; esto podría implicar cambiar el estado de un objeto de indestructible a destructible. Otros juegos similares con este tipo de enfoque de programación incluyen Transistor , else Heart.Break() , Glitchspace y Pony Island . [ 3 ]

Otro enfoque utilizado en algunos juegos gráficos con elementos de programación consiste en presentar al jugador una interfaz de línea de comandos para emitir órdenes mediante un lenguaje específico de dominio para dirigir objetos dentro del juego, lo que permite al jugador reemitir comandos a medida que cambia la situación en lugar de crear un programa predefinido. Juegos como Quadrilateral Cowboy y Duskers hacen que el usuario controle varias criaturas robóticas pequeñas en tándem mediante el lenguaje de código para alcanzar un objetivo determinado. [ 3 ] Hackmud presenta al jugador una interfaz de mainframe simulada a través de la cual emite comandos para avanzar. [ 4 ]

Como juegos competitivos

Muchos juegos de programación implican controlar entidades como robots , tanques o bacterias que buscan destruirse entre sí. Estos juegos pueden considerarse entornos de organismos digitales , relacionados con simulaciones de vida artificial . Un ejemplo temprano es Core War (1984), donde programas escritos en un lenguaje estandarizado similar al lenguaje ensamblador luchan por espacio en una memoria finita ( núcleos magnéticos virtuales ). Los jugadores disponen de herramientas para desarrollar y probar sus programas dentro del lenguaje específico del juego antes de enviarlos a un servidor central. El servidor ejecuta el programa contra otros y reporta los resultados al jugador, quien puede realizar cambios o mejoras en el programa.

Existen diferentes torneos y ligas para los juegos de programación donde los personajes pueden competir entre sí. Generalmente, un script se optimiza para una estrategia específica. Se utilizan enfoques similares para juegos más tradicionales; el Campeonato Mundial de Ajedrez por Computadora consiste en partidas entre programas escritos para el juego de estrategia abstracta del ajedrez .

El juego de programación competitiva también ha llegado a varios juegos de mesa como RoboRally o Robot Turtles , donde normalmente un programa se convierte en una baraja de cartas prefabricada que se juega una por una para ejecutar ese código. [ 5 ]

Los investigadores presentaron RoboCode como un sustrato de "aprendizaje basado en problemas" para la enseñanza de la programación. [ 6 ]

Los juegos de mundo abierto que permiten a los jugadores construir entornos a partir de diversos bloques de construcción han sido utilizados con frecuencia por jugadores más avanzados para crear circuitos lógicos y programas más complejos a partir de los bloques básicos. Minecraft es un ejemplo de ello, ya que, si bien el juego ofrece un conjunto limitado de bloques que imitan interruptores y circuitos eléctricos, los usuarios han podido crear ordenadores básicos funcionales dentro del mundo virtual, y al menos una modificación tiene como objetivo enseñar a los niños a programar en el ordenador virtual mediante un lenguaje sencillo. [ 7 ]

Varios sitios, como Codecademy , ayudan a enseñar lenguajes de programación del mundo real a través de la gamificación , donde se utilizan principios de videojuegos para motivar al usuario. [ 8 ]

Véase también

Referencias

  1. Sayer, Matt (3 de octubre de 2016). "¿Pueden los videojuegos enseñarte a programar?" . Rock Paper Shotgun . Consultado el 3 de octubre de 2016 .
  2. Tarason, Dominic (7 de febrero de 2019). "El libro de Zachtronics, Zach-Like, muestra cómo se hace la salchicha del rompecabezas" . Rock Paper Shotgun .
  3. 1 2 Caldwell, Brendan (9 de noviembre de 2015). "Los 10 mejores juegos de hacking, codificación e informática" . Rock Paper Shotgun . Recuperado el 3 de octubre de 2016 .
  4. Caldwell, Brendan (27 de septiembre de 2016). "Wot I Think: Hackmud" . Rock Paper Shotgun . Recuperado el 3 de octubre de 2016 .
  5. Metz, Cade (24 de septiembre de 2014). "La saga de 75 años detrás de un juego que enseña a programar a niños en edad preescolar" . Wired . Consultado el 3 de octubre de 2016 .
  6. O'Kelly, Jackie y J. Paul Gibson. «RoboCode y aprendizaje basado en problemas: un enfoque no prescriptivo para la enseñanza de la programación». Boletín ACM SIGCSE 38, n.º 3 (2006): 217-221.
  7. Finley, Klint (18 de agosto de 2014). "Nuevo mod de Minecraft te enseña a programar mientras juegas" . Wired . Consultado el 3 de octubre de 2016 .
  8. Vincent, Alice (19 de agosto de 2011). "Codecademy 'gamifica' el proceso de aprendizaje de Javascript" . Wired . Consultado el 3 de octubre de 2016 .
  • La wiki de juegos de programación
  • Muchos juegos de programación inactivos listados en AIforge
  • Historia de la programación de juegos