파이썬 텍스트 기반 어드벤처 게임은 프로그래밍을 배우고 있다면 도전해 볼 수 있는 재미있는 프로젝트입니다. 파이썬을 사용하여 텍스트 어드벤처 게임을 만들고, 명령줄에서 실행하고, 플레이어가 입력하는 텍스트에 따라 스토리를 변경할 수 있습니다.

파이썬 어드벤처 게임용 파이썬 스크립트에서는 몇 가지 기본 프로그래밍 개념을 다룹니다. 여기에는 인쇄 문, if 문, 함수가 포함됩니다.

텍스트 어드벤처 게임용 파이썬 스크립트를 만들고 스토리 콘텐츠를 추가하는 방법

확장자가 .py인 표준 텍스트 파일을 사용하여 스크립트를 생성하면 파이썬으로 텍스트 기반 어드벤처 게임을 만들 수 있습니다. 파이썬 구문에 익숙하지 않다면 파이썬을 더 빨리 배우는 데 도움이 될 수 있는 몇 가지 기본 파이썬 예제를 살펴보세요.

이 GitHub 리포지토리에서 Python 어드벤처 게임의 전체 소스 코드를 다운로드할 수 있습니다.

파이썬 어드벤처 게임을 시작하기 전에 특정 작업을 수행하는 데 유용한 다른 파이썬 원라이너를 살펴볼 수도 있습니다.

파이썬 파일의 주요 기능에서 스토리와 환영 메시지를 설정합니다.

파이썬 어드벤처 게임의 코드를 저장하기 위해 “AdventureGame.py”라는 새 파일을 만듭니다.

⭐ 파일에 메인 시작 함수를 추가합니다. 이 함수에는 플레이어를 파이썬 텍스트 기반 어드벤처 게임으로 안내하는 간단한 오프닝 스토리가 포함됩니다. 그런 다음 introScene()이라는 다른 함수를 호출합니다.

 if __name__ == "__main__":
  while True:
    print("Welcome to the Adventure Game!")
    print("As an avid traveler, you have decided to visit the Catacombs of Paris.")
    print("However, during your exploration, you find yourself lost.")
    print("You can choose to walk in multiple directions to find a way out.")
    print("Let's start with your name: ")
    name = input()
    print("Good luck, " +name+ ".")
    introScene()

파이썬 어드벤처 게임용 스토리에서 여러 장면과 옵션을 만드는 방법

텍스트 기반 어드벤처 게임의 스토리에는 여러 장면 또는 “방”이 포함됩니다. 파이썬 어드벤처 게임의 각 장면에 대한 함수를 생성하면 나중에 플레이어가 같은 방에 다시 들어가게 될 때 다시 사용할 수 있습니다.

각 장면마다 어디로 갈지 선택할 수 있는 옵션도 달라집니다. 시나리오를 코딩하기 전에 스토리를 매핑하여 텍스트 기반 어드벤처 게임의 스토리가 잘 구성되었는지 확인하는 것이 좋습니다.

파이썬 텍스트 게임의 각 장면에는 유효한 방향 목록과 플레이어가 취할 수 있는 여러 경로에 대한 if 문이 있습니다. 플레이어가 파이썬 어드벤처 게임에서 이동하는 경로에 따라 스크립트는 다음 장면을 호출합니다.

이 글도 확인해 보세요:  JES에서 사운드를 임포트하고 재생하는 방법

파이썬 어드벤처 게임에서 발생할 장면에 대한 함수를 만듭니다.

⭐ 메인 함수 위에 introScene() 함수를 생성합니다. 플레이어가 걸어 들어갈 수 있는 메시지와 방향을 추가합니다.

 def introScene():
  directions = ["left", "right", "forward"]
  print("You are at a crossroads, and you can choose to go down any of the four hallways. Where would you like to go?")
  userInput = ""
  while userInput not in directions:
    print("Options: left/right/backward/forward")
    userInput = input()
    if userInput == "left":
      showShadowFigure()
    elif userInput == "right":
      showSkeletons()
    elif userInput == "forward":
      hauntedRoom()
    elif userInput == "backward":
      print("You find that this door opens into a wall.")
    else:
      print("Please enter a valid option for the adventure game.")

⭐ 사용자의 입력에 따라 Python 어드벤처 게임이 다른 장면을 호출합니다. 예를 들어, 플레이어가 “왼쪽”을 입력하면 어드벤처 게임은 플레이어에게 showShadowFigure() 장면을 표시합니다. 이 방에서 플레이어가 뒤로 이동하면 파이썬 어드벤처 게임이 인트로 장면으로 돌아갑니다. 왼쪽이나 오른쪽으로 이동하면 다른 방으로 들어가거나 막다른 골목에 부딪히게 됩니다.

 def showShadowFigure():
  directions = ["right", "backward"]
  print("You see a dark shadowy figure appear in the distance. You are creeped out. Where would you like to go?")
  userInput = ""
  while userInput not in directions:
    print("Options: right/left/backward")
    userInput = input()
    if userInput == "right":
      cameraScene()
    elif userInput == "left":
      print("You find that this door opens into a wall.")
    elif userInput == "backward":
      introScene()
    else:
      print("Please enter a valid option for the adventure game.")

⭐ 플레이어가 우회전하는 경우를 처리하기 위해 카메라 씬을 추가합니다. 여기서 플레이어는 출구 중 하나를 찾을 수 있습니다. quit() 함수를 호출하여 파이썬 텍스트 기반 어드벤처 게임을 종료합니다. 플레이어는 여전히 이전 장면으로 돌아가도록 선택할 수도 있습니다.

 def cameraScene():
  directions = ["forward", "backward"]
  print("You see a camera that has been dropped on the ground. Someone has been here recently. Where would you like to go?")
  userInput = ""
  while userInput not in directions:
    print("Options: forward/backward")
    userInput = input()
    if userInput == "forward":
      print("You made it! You've found an exit.")
      quit()
    elif userInput == "backward":
      showShadowFigure()
    else:
      print("Please enter a valid option for the adventure game.")

이 글도 확인해 보세요:  Vite 시작하기: 최고의 빌드 툴

⭐ 어드벤처 게임의 시작 부분으로 돌아가서 나머지 장면에 대한 함수를 추가해야 합니다. 플레이어가 앞으로 이동하기로 선택한 경우에 대한 hauntedRoom() 장면을 추가합니다. 이렇게 하면 플레이어의 선택에 따라 파이썬 어드벤처 게임이 종료됩니다.

 def hauntedRoom():
  directions = ["right", "left", "backward"]
  print("You hear strange voices. You think you have awoken some of the dead. Where would you like to go?")
  userInput = ""
  while userInput not in directions:
    print("Options: right/left/backward")
    userInput = input()
    if userInput == "right":
      print("Multiple goul-like creatures start emerging as you enter the room. You are killed.")
      quit()
    elif userInput == "left":
      print("You made it! You've found an exit.")
      quit()
    elif userInput == "backward":
      introScene()
    else:
      print("Please enter a valid option for the adventure game.")

⭐ 파이썬 텍스트 기반 어드벤처 게임에 더 흥미로운 콘텐츠를 추가할 수도 있습니다. 파일 맨 위에 “무기”라는 전역 변수를 만듭니다. 플레이어가 무기를 찾았는지 여부에 따라 참 또는 거짓이 됩니다.

 weapon = False 

⭐ 방 중 하나에서 플레이어가 무기를 찾으면 무기 변수를 true로 설정합니다. 플레이어는 필요한 경우 다음 방에서 사용할 수 있습니다.

 def showSkeletons():
  directions = ["backward", "forward"]
  global weapon
  print("You see a wall of skeletons as you walk into the room. Someone is watching you. Where would you like to go?")
  userInput = ""
  while userInput not in directions:
    print("Options: left/backward/forward")
    userInput = input()
    if userInput == "left":
      print("You find that this door opens into a wall. You open some of the drywall to discover a knife.")
      weapon = True
    elif userInput == "backward":
      introScene()
    elif userInput == "forward":
      strangeCreature()
    else:
      print("Please enter a valid option for the adventure game.")

⭐ 플레이어가 무기를 찾으면 다음 방에서 적을 처치하고 다른 출구를 찾을 수 있습니다. 그렇지 않으면 적이 그들을 죽일 것입니다.

 def strangeCreature():
  actions = ["fight", "flee"]
  global weapon
  print("A strange goul-like creature has appeared. You can either run or fight it. What would you like to do?")
  userInput = ""
  while userInput not in actions:
    print("Options: flee/fight")
    userInput = input()
    if userInput == "fight":
      if weapon:
        print("You kill the goul with the knife you found earlier. After moving forward, you find one of the exits. Congrats!")
      else:
        print("The goul-like creature has killed you.")
      quit()
    elif userInput == "flee":
      showSkeletons()
    else:
      print("Please enter a valid option for the adventure game.")

이 글도 확인해 보세요:  판다와 폴라: 성능 대결

텍스트 기반 어드벤처 게임용 파이썬 스크립트 실행 방법

터미널 또는 명령 프롬프트를 사용하여 파이썬 텍스트 기반 게임용 스크립트를 실행할 수 있습니다. 터미널에 입력을 입력하면 파이썬 어드벤처 게임의 다음 장면으로 스토리가 계속 진행됩니다.

⭐ 터미널 또는 명령 프롬프트를 사용하여 파이썬 어드벤처 게임용 파일을 저장한 위치로 이동합니다.

 cd C:\Users\Sharl\Desktop\Python 

⭐ 스크립트를 실행하여 Python 텍스트 기반 어드벤처 게임을 시작합니다.

 python AdventureGame.py 

⭐ 파이썬 어드벤처 게임 시작을 환영하는 메시지가 표시됩니다.

⭐ “왼쪽”, “오른쪽” 또는 “뒤로” 등 나열된 옵션 중에서 입력합니다. 잘못된 입력을 입력하면 파이썬 어드벤처 게임에서 올바른 입력을 입력하라는 메시지가 표시됩니다.

⭐ 텍스트 기반 Python 어드벤처 게임을 다시 플레이하여 다른 경로를 선택할 수도 있습니다.

Python 스크립트 하나만 사용하여 간단한 텍스트 기반 어드벤처 게임 만들기

Python 스크립트를 사용하여 Python 텍스트 기반 어드벤처 게임을 만들고 명령줄에서 실행할 수 있습니다. 파이썬 어드벤처 게임 내에서 플레이어에게 환영 메시지와 초기 스토리를 제공할 수 있습니다. 그런 다음 플레이어는 Python 어드벤처 게임 내에서 제시하는 옵션에 따라 행동을 입력할 수 있습니다.

더 다재다능한 파이썬 개발자가 되고 싶다면 텍스트 기반 어드벤처 게임 외에도 만들 수 있는 다른 프로젝트가 있습니다. Python과 함께 사용하거나 통합할 수 있는 몇 가지 유용한 도구를 살펴볼 수 있습니다.

By 이지원

상상력이 풍부한 웹 디자이너이자 안드로이드 앱 마니아인 이지원님은 예술적 감각과 기술적 노하우가 독특하게 조화를 이루고 있습니다. 모바일 기술의 방대한 잠재력을 끊임없이 탐구하고, 최적화된 사용자 중심 경험을 제공하기 위해 최선을 다하고 있습니다. 창의적인 비전과 뛰어난 디자인 역량을 바탕으로 All Things N의 잠재 독자가 공감할 수 있는 매력적인 콘텐츠를 제작합니다.