개인 프로젝트

[개인 프로젝트] Python으로 2048 게임 만들기 #2

hanseongjun 2022. 2. 28. 10:07
728x90
반응형

지난 글에서는 2048 게임을 만들 때 생기는 버그에 대해 알아보았다.

https://fclipse.tistory.com/18

 

[개인 프로젝트] Python으로 2048게임 만들기 # 1

버그 1. - a를 눌러 왼쪽으로 이동시켰는데 합쳐진 4는 사라지고, 그 자리에 2가 랜덤으로 생겨난 상황. - 작업 순서가 잘못된 듯하다. - 그럼에도 score은 제대로 올라감 Sol) - 원래는 4로 합쳐진 다

fclipse.tistory.com

이번 글에서는 2048 게임을 소개하고, 앞으로 최종 목표는 어떻게 될 것인지를 정하겠다.

 

먼저 이 프로젝트의 최종 목표는 '웹에 2048게임을 호스팅해서 누구나 쉽게 즐길 수 있게 하는 것'이다.

전체 코드는 다음 페이지에 소개되어 있다.

https://github.com/siejwkaodj/2048/blob/main/2048.py

 

GitHub - siejwkaodj/2048: 2048 game, made of python

2048 game, made of python. Contribute to siejwkaodj/2048 development by creating an account on GitHub.

github.com

먼저, 프로그램을 다운받아 실행시키면 다음과 같은 창이 뜬다.

여기서는 게임을 실행할 보드의 크기를 입력받는데, 최소 3 이상의 숫자를 입력해줘야 게임이 진행이 된다.

 

보통 4*4 크기의 보드를 많이 사용하므로, 필자는 여기서 4를 입력하겠다.

그럼 다음과 같은 화면이 뜨는데, 여기서는 round, score, max number의 정보와 현재 보드의 상황이 나온다.

round는 몇 판을 진행했는지

score는 이제까지 합쳐서 만든 숫자의 합이

max number는 현재 보드에 있는 가장 큰 수이다.

 

처음 보드에는 2가 하나 있고, 게임을 시작하면 랜덤으로 수가 하나 생성된다.

여기서 w/s/a/d를 눌러 보드에 있는 숫자들을 위/아래/왼쪽/오른쪽으로 이동시킬 수 있다.

 

필자는 여기서 s를 눌러 2 두 개를 합쳐 보겠다.

이제 2 두 개는 4로 합쳐지고, 랜덤한 위치에 2 또는 4가 생긴다.

4가 생길 확률은 10%정도 된다.

 

계속 게임을 진행해 보겠다.

 

게임을 계속 진행할 수 있지만 여기까지만 하겠다.

이 게임의 최종 목표는 max number을 2048로 만드는 것이다. 그러면 게임에서 이기고 계속 게임은 진행할 수 있다.

다음 글에서는 웹에서 게임을 구현하는 과정을 적겠다.

728x90
반응형
LIST