Skip to content

choseongje/MadCampWeek2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AuctionKingdom

Outline


YaOng 2: AuctionKingdom은 2인이서 플레이할 수 있는 전략 게임입니다. 자산을 잘 분배해서 고양이 왕국의 힘을 키워보세요!

Tech Stack

  • Front-End : Kotlin
  • Server : node.js, express.js
  • DB : mongoDB
  • IDE : Android Studio, Visual Studio Code

Team


조성제

김해담솔

Details


Intro

  • Splash 화면을 통해 도장이 찍히는 애니메이션을 구현하여 게임의 핵심 키워드인 ‘Auction’을 강조했습니다.

Login

  • Google 로그인과 Guest 로그인을 구현했습니다.

  • Google로그인을 통해 처음 로그인을 하면 유저의 왕국 이름과 왕 이름을 설정하고, 원하는 고양이 왕의 프로필을 선택할 수 있습니다.

  • Guest 로그인의 경우에는 접속이 끊기면 Guest 유저의 데이터가 DB에서 삭제되도록 구현했습니다.

Main

  • 메인 화면에서는 프로필 상세 페이지, 상점, 랭킹, 라이브러리, 게임방법, 게임 화면으로 전환할 수 있습니다.

  • 프로필 상세 화면에서는 로그인한 유저의 전적, 티어를 볼 수 있고, 프로필 변경을 할 수 있습니다.

  • 상점 화면에서는 게임 시작 전에 사용할 아이템들을 구입할 수 있습니다.

  • 랭킹 화면에서는 DB에 저장되어 있는 유저들의 랭킹을 볼 수 있습니다.

  • 라이브러리 화면에서는 게임에 나오는 카드들의 목록을 볼 수 있습니다. 카드를 터치하면 카드를 크게 볼 수 있습니다.

  • 게임 방법 화면에서는 게임의 규칙을 볼 수 있습니다.

  • 스타트 버튼을 눌러 방 목록 페이지로 넘어갑니다.

방 목록

  • 코드를 입력해 방을 만들고, 같은 코드를 입력하여 만들어진 방에 입장할 수 있습니다.
  • 방이 생성, 삭제되거나 방의 정보가 변경되면 접속해있는 모든 유저들의 방 목록 화면이 갱신됩니다.

방 세부 정보

  • 방 세부 정보 화면에는 현재 방에 접속해 있는 유저들의 정보가 표시됩니다.
  • 유저들은 레디 상태를 토글 방식으로 변경할 수 있습니다.
  • 방 안의 유저 두명이 모두 레디 상태라면 방장이 매치 버튼을 눌러서 게임을 시작할 수 있습니다.
  • 게임 시작 전 상점에서 샀던 아이템을 사용할지에 대한 여부를 선택할 수 있습니다. (게임 적용은 미구현)

게임

  • 게임 화면에서는 게임에 참여한 두 플레이어가 실시간으로 턴제 게임을 즐길 수 있습니다.

  • 화면 하단 입력창에 베팅할 금액을 선택할 수 있고, 먼저 베팅을 하면 상대방에게 베팅을 했다는 UI가 제공됩니다.

  • 두 플레이어가 모두 베팅을 완료하면, 라운드가 진행되고 베팅의 결과가 팝업창으로 나타납니다.

  • 15라운드가 모두 지나면 게임 결과를 반영해 두 플레이어에게 게임 결과 화면이 표시됩니다.

💡 **게임의 개요와 룰 정리**

개요:

  • 플레이어 수: 2인용
  • 라운드 수: 15라운드
  • 시작 조건: 플레이어 각각 10000골드 보유, 초기 국력 0
  • 목표: 더 많은 카드를 구매하여 국력을 높이고, 최종적으로 더 높은 국력을 가진 플레이어가 승리

게임의 진행:

  1. 카드 제공: 매 라운드마다 중앙에 카드가 제공됨 (카드마다 국력 값이 있음)
  2. 배팅: 두 플레이어는 각자 배팅할 골드를 입력
    • 두 플레이어가 모두 배팅할 골드를 입력하면 배팅 결과를 계산
  3. 배팅 결과:
    • 더 높은 골드를 배팅한 플레이어가 카드를 구매함
    • 두 플레이어 모두 배팅한 골드를 잃음
    • 동점인 경우: 먼저 배팅한 플레이어가 해당 카드를 구매하고, 두 플레이어 모두 배팅한 골드를 잃음
  4. 국력 증가: 카드를 구매한 플레이어의 국력이 해당 카드의 국력만큼 증가
  5. 라운드 종료: 15라운드가 종료되면 게임이 끝남
  6. 승리 조건: 15라운드 종료 시 더 높은 국력을 가진 플레이어가 승리

세부 규칙:

  • 최대 배팅 금액: 플레이어는 현재 보유한 골드보다 더 많은 금액을 배팅할 수 없음
  • 라운드 진행: 각 라운드는 두 플레이어가 배팅을 완료하고 결과가 발표된 후 다음 라운드로 진행됨
  • 게임 종료: 15라운드가 종료되면 게임이 종료되고 승리자가 결정됨

APK


AuctionKingdom.apk