프로그래밍 게임

Programming game

프로그래밍 게임컴퓨터 프로그래밍의 요소들을 통합한 비디오 게임으로, 플레이어가 게임 내 다른 자치 단위가 도메인별 프로그래밍 언어로 명령을 따르도록 지시할 수 있게 하며, 프로그래밍 은유를 단순화하기 위해 종종 시각적 언어로 표현된다.프로그래밍 게임은 크게 퍼즐 게임의 일부 또는 전체를 구성하는 단일 플레이어 게임과 플레이어의 자동화된 프로그램을 다른 플레이어의 프로그램과 연결하는 멀티플레이어 게임의 두 가지 영역으로 나뉜다.

퍼즐게임으로

이 장르의 초기 게임으로는 1984년과 1985년에 각각 발매된 시스템 15000해커가 있다.

프로그래밍 게임은 퍼즐 게임의 일부로 사용되어, 프로그램이 작동하기 시작하면 플레이어가 특정한 결과를 얻기 위해 도전한다.그러한 게임의 예로는 SpaceChem이 있는데, 여기서 플레이어는 화학 분자를 분해하고 재조립하기 위해 두 개의 왈도를 조작하기 위해 시각 언어를 사용해야 한다.이러한 게임에서 플레이어는 효과가 있는 솔루션을 찾을 때까지 필요한 만큼 자주 프로그램을 테스트하고 디버그할 수 있다.이러한 게임들 중 다수는 플레이어가 필요한 시간 스텝의 수나 필요한 명령의 수로 측정하여 가장 효율적인 프로그램을 찾도록 장려한다.다른 유사한 게임들로는 휴먼 리소스 머신,[1] 스페이스켐, 그리고 TIS-100이 있는데, 그것은 그들의 게임 역학에 프로그래밍을 구현하는 퍼즐 게임으로 유명한 비디오 게임 개발 회사인 Zachtronics에 의해 만들어졌다.[2]

다른 게임들은 큰 게임에서 퍼즐의 일부로서 프로그래밍의 요소들을 포함한다.예를 들어, Hack 'n' Slash는 게임 세계에서 대표되는 물체의 내부 프로그램과 변수에 접근할 수 있다는 은유를 포함하고, 플레이어가 이 프로그래밍 인터페이스에 참여할 때 나머지 게임을 일시 중지하고, 더 진행하기 위해 물체의 프로그램을 수정한다. 이것은 물체의 상태를 변화시키고 있을 수 있다.파괴할 수 있는이러한 유형의 프로그래밍 접근방식을 가진 다른 유사한 게임들로는 트랜지스터, 다른 심장 등이 있다.브레이크(), 글리치스페이스, 포니 아일랜드.[3]

프로그래밍 요소가 있는 일부 그래픽 게임에서 사용되는 또 다른 접근법은 플레이어에게 게임 내의 직접 객체에 대해 도메인별 언어를 통해 명령을 내릴 수 있는 커맨드 라인 인터페이스를 제공하는 것으로, 플레이어가 미리 만들어진 프로그램을 조작하기보다는 상황이 변함에 따라 명령을 재발행할 수 있도록 하는 것이다.4각형 카우보이뒤스커스와 같은 게임들은 사용자가 코드의 언어를 통해 여러 개의 작은 로봇 생물을 동시에 명령하여 특정한 목표에 도달하게 한다.[3]Hackmud는 플레이어에 시뮬레이션된 메인프레임 인터페이스를 제공하여 앞으로 나아가기 위한 명령을 내린다.[4]

경쟁 게임으로서

많은 프로그래밍 게임들은 서로를 파괴하려는 로봇, 탱크 또는 박테리아와 같은 통제 실체를 포함한다.그러한 게임은 인공 생명 시뮬레이션과 관련된 디지털 유기체의 환경으로 간주될 수 있다.플레이어는 프로그램을 중앙 서버에 제출하기 전에 게임의 도메인별 언어로 프로그램을 개발하고 테스트할 수 있는 도구가 주어진다.그런 다음, 서버는 다른 사람들을 상대로 프로그램을 실행하고 그 결과를 플레이어에 보고하며, 플레이어는 프로그램을 변경하거나 개선할 수 있다.프로그램 게임에는 캐릭터들이 서로 경쟁할 수 있는 다른 토너먼트와 리그가 있다.대본은 보통 특별한 전략에 최적화되어 있다.비슷한 접근법이 더 전통적인 게임에 사용된다; 세계 컴퓨터 체스 챔피언십추상적체스 전략 게임을 위해 쓰여진 프로그램들 사이의 매치로 구성되어 있다.

경쟁적인 프로그래밍 게임은 또한 로보랄리나 로봇 거북이와 같은 다양한 보드 게임으로 가는 길을 찾았는데, 일반적으로 프로그램은 그 코드를 실행하기 위해 한 사람씩 플레이하는 카드 플레이의 전판이 된다.[5]

연구자들은 로보코드를 프로그래밍을 가르치는 "문제 기반 학습" 기질로 제시했다.[6]

관련 영역

플레이어가 일련의 빌딩 블록에서 환경을 구성할 수 있는 능력을 특징으로 하는 오픈 월드 게임은 보다 진보된 플레이어가 기본 블록에서 논리 회로와 더 진보된 프로그램을 구성하기 위해 종종 사용되어 왔다.마인크래프트는 게임이 스위치와 전기회로를 모방하는 제한된 블록 집합을 제공하는 반면, 사용자들은 가상세계 내에서 기본적인 기능 컴퓨터를 만들 수 있었고, 적어도 한 가지 수정은 아이들에게 가상 컴퓨터에서 프로그램을 짜는 방법을 단순한 언어로 가르치는 것을 목표로 하고 있다.[7]

코덱애드와 같은 몇몇 사이트들은 게임화를 통해 실제 프로그래밍 언어들을 가르치는데 도움을 주고 있는데, 여기서 비디오 게임 원리는 사용자에게 동기를 부여하기 위해 사용된다.[8]

참고 항목

참조

  1. ^ Sayer, Matt (October 3, 2016). "Can Videogames Teach You Programming?". Rock Paper Shotgun. Retrieved October 3, 2016.
  2. ^ "Zachtronics book Zach-Like shows how the puzzle sausage gets made".
  3. ^ a b Caldwell, Brendan (November 9, 2015). "The 10 Best Hacking, Coding, Computing Games". Rock Paper Shotgun. Retrieved October 3, 2016.
  4. ^ Caldwell, Brendan (September 27, 2016). "Wot I Think: Hackmud". Rock Paper Shotgun. Retrieved October 3, 2016.
  5. ^ Metz, Cade (September 24, 2014). "The 75-Year Saga Behind a Game That Teaches Preschoolers to Code". Wired. Retrieved October 3, 2016.
  6. ^ 오켈리, 재키, 그리고 J. 폴 깁슨."RoboCode & 문제 기반 학습: 프로그래밍을 가르치는 데 비처방적 접근 방식"ACM SIGCSE 게시판 38호, 3번(2006): 217-221.
  7. ^ FInley, Klint (August 18, 2014). "New Minecraft Mod Teaches You Code as You Play". Wired. Retrieved October 3, 2016.
  8. ^ Vincent, Alice (August 19, 2011). "Codecademy 'gamifies' the process of learning Javascript". Wired. Retrieved October 3, 2016.

외부 링크