Jackie OKelly and J Paul Gibson

From Scientific Programs
Jump to: navigation, search

A programming video allows the player to control autonomous units within the game through elements of computer programming. This allows players to use a specific domain-specific programming language to guide them. It is often presented visually to simplify the programming metaphor. Programming games broadly can be classified into two categories: single-player games where the programming elements make up part of or the whole of a puzzle game, and multiplayer games where the player's computer program is pitted against other players with their own programs.





Contents



1 As puzzle games 2 as competitive games. See also 4 References 6 External Links





As puzzle games[edit]



The first games in this genre were

System 15000

and

Hacker

The release dates were 1984 and 1985 respectively.



Programming games have been utilized as part of puzzle games, which require players to reach certain results once the program begins operating. An example of such a game is SpaceChem, where the player uses its visual language to manipulate two waldos as to disassemble and reassemble chemical molecules. In such games, players are able to test and debug their programs whenever they need to until they come up with a solution that works. A lot of these games challenge players to discover the most efficient program by comparing the amount of time required or the number of commands needed. Other games similar to this include Human Resource Machine,[1] Infinifactory and TIS-100. Zachtronics is a company that develops video games that is well-known for its programming-based puzzle games. [2]



Other games include the elements of programming as portions of puzzles in the larger game. For instance, Hack 'n' Slash incorporates a metaphor for being capable of accessing the internal programs and variables of objects that are represented in the game, pausing the the game as the player engages the interface for programming, and modify the object's program as to advance further. This could mean changing the state of an object from being indestructible to destructible. Other games similar to this kind of approach to programming include Transistor, else Heart.Break(), Glitchspace, and Pony Island. [3]



Another method of using graphics games that contain programming elements is to provide the user with a command line interface. This allows the player to issue orders using a specific domain language. This lets the player issue commands whenever the situation changes, instead of developing a program from scratch. Duskers and Quadrilateral cowboy allow the player to command small robotic creatures by using the code language. This allows them to achieve a goal. [3Hackmud Hackmud presents the player with a simulated mainframe interface that allows them to give commands to advance. [4]





As competitive games[editAs competitive games[edit



A lot of programming games require controlling things like robots, tanks or bacteria that try to destroy one another. These games are environments of digital organisms connected to artificial life simulations. Players are given tools to design and test their programs using the game's domain-specific language before submitting the program to a central server. The server then runs the program against other players and reports the results back to the player. Based on this, they can make any changes or enhancements to their program. There are various leagues and tournaments for programming games where the characters can compete against one another. Usually , a script is optimized for a particular strategy. Similar strategies are employed in traditional games. The World Computer Chess Championship is comprised of matches against programs created for abstract strategy chess.



The game of programming competition is also a part of to other board games, like RoboRally or Robot Turtles generally, where programs are made into a deck of playing cards which is played one at a time to execute the code. [5]



Researchers presented RoboCode to researchers as a "problem-based" learning tool to teach programming. [6]





Similar areas [editSimilar areas[edit



Open world games allow players to construct environments from a variety of building blocks. These blocks are typically used by more advanced players to construct logic circuits as well as more advanced programs that use the basic blocks.

Minecraft

One example is the game which is a limited set of blocks that can mimic switches and electric circuits. However, users were able to construct basic computers that function in the virtual world. A modification was designed to teach children how to program the virtual machine using a simple language. [7]



Several sites, such as Codecademy and Codecademy, assist to teach programming languages in real-world settings through gamification, where the principles of video games are used to inspire the user. [8]





See also[editedit

Video games portal



Category for programming games: List of digital organism simulators Visual programming language Zachtronics





References[edit]



^

Sayer, Matt (October 3, 2016). "Can Videogames Teach You Programming? ".

Rock Paper Shotgun

. Retrieved October 3, 2016.

^

"Zachtronics book Zach Love shows how the puzzle sausage is made." ^

<b>a </b>

<b>b </b>

Caldwell, Brendan (November 9, 2015). "The 10 Most Fun Hacking, Coding, and Computing Games"

Rock Paper Shotgun

. Retrieved on October 3, 2016.

^

Caldwell, Brendan (September 27, 2016). "Wot I think: Hackmud"

Rock Paper Shotgun

. Retrieved October 3, 2016.

^

Metz, Cade (September 24, 2014). STOCKALICIOUS "The 75-Year Story Behind a Game that Teaches Preschoolers Code"

Wired

. Retrieved on October 3, 2016.

^

O'Kelly and Jackie Gibson. "RoboCode and problem-based learning: A non-prescriptive method for teaching programming." ACM SIGCSE Bulletin 38. 3 (2006): 217-221.

^

FInley, Klint (August 18, 2014). "New Minecraft Mod Teaches You Code as You Play".

Wired

. Retrieved on October 3, 2016.

^

Vincent, Alice (August 19, 2011). "Codecademy is a way to 'gamify' the process of learning Javascript".

Wired

. Retrieved on October 3, 2016.



External links[editExternal links[edit