Skip to content

Garden1298/Runtopia

 
 

Repository files navigation

런토피아(Runtopia)

   

📚 STACKS

     

  

   

    

프로젝트 소개

Unity를 활용한 로고

📆진행 일정

23.02.20(월) ~ 23.04.07(금) (총 7주)

UCC

  • 런토피아의 소개와 게임 영상에 관련한 영상입니다.

팀 소개

유도열 서준배 유제균 홍정원 김우진 권오영

팀장

클라이언트
Unity
레벨디자인
클라이언트
Unity
멀티플레이
UI/UX

인프라 CI/CD
머신러닝
클라이언트
Unity
캐릭터
아이템
UI/UX
백엔드
랭킹 시스템
대기열 시스템
회원 관리
클라이언트
Unity
레벨 디자인
🏠 블로그
💻 github
💻 github

기술 스택

Runtopia_기술스택

시작하기

  1. 원격 repository를 clone 합니다.

  2. 프로젝트의 root에서 docker compose실행

docker compose up -d
  1. 서비스 실행 확인
  • ec2 도메인으로 접속
  1. 서비스 종료
docker compose down
  1. 자세한것은 EXEC폴더 확인

기획

메타버스 게임 서비스

메타버스 게임 서비스란?

메타버스(Metaverse) 게임 서비스는 가상 세계에서 다양한 활동을 할 수 있는 온라인 플랫폼을 제공하는 게임 서비스를 말합니다. 메타버스는 실제 세계와 유사한 경험을 제공하면서, 사용자가 아바타를 통해 가상 공간에서 서로 소통하고, 거래하며, 놀고, 창작활동을 할 수 있도록 디자인된 온라인 환경입니다.

게임 기능

  1. 광장에서 플레이어와 상호작용
  2. 채팅 시스템
  3. 음악 선택 기능
  4. 랭킹 시스템
  5. 플레이어 대기열
  6. 캐릭터 기능
    • 달리기
    • 점프
    • 앉기
    • 잡기
    • 매달리기
    • 벽 점프
  7. 게임내 상호작용
    • 스피드업
    • 점프업
    • 잡기
    • 포탈설치
    • 장애물설치

클라이언트

  • 피그마를 이용한 와이어 프레임을 제작
  • 게임에서 사용할 아이템 제작 및 캐릭터 적용
  • 장애물 및 함정 배치
  • 멀티플레이에서 플레이어간 상호작용
  • 광장 시스템
  • 채팅 시스템
  • 캐릭터 상호작용 및 춤

백엔드

  • 플레이어끼리 경쟁을 하기 위한 랭킹 시스템
  • 서버가 Full 상태를 대비한 플레이어 대기열 시스템
  • Jenkins와 Docker를 이용한 CI/CD 구축
  • ssl로 보안 적용

머신러닝

  • 플레이어를 공격하기 위한 적대적 AI 훈련 모델 적용

JIRA

  • jira를 이용해 주 단위 스프린트로 기획 및 개발 진행
  • 에픽, 스토리, 테스크로 이슈를 지정
    • 스토리는 개발, 테스크는 회의로 지정하였습니다.

image

burn down chart

image

  • 주 단위로 이슈를 해결하고 계획하며 진행하였음

문서

회의록

image

  • 주 단위로 회의록을 작성, 스프린트 회의, 회고, 팀미팅을 기록

개발 컨벤션

  • IDE

    • IntelliJ
      • 2022.3.1 (Ultimate Edition)
    • Vscode
      • 1.75
    • UnityEditor
      • 2021.03.19f
  • Framework

    • Java
      • OpenJDK 1.8.0_332
    • Springboot
      • 2.4.5
    • Gradle
      • 6.7
  • DBMS

    • MySQL
      • 5.7.35
    • Redis
      • 7.0.10
  • Deploy

    • Docker
      • 20.10.23
    • Docker Compose
      • 2.15.1 -
    • Jenkins
      • 2.387.1
    • SonarQube
      • 8.9
    • PostGreSQL
      • 7.3.17
    • SonarScanner
      • 4.8.0.2856
    • Nginx
      • 1.23.3

    image

  • 네이밍 룰이나, 개발하는데 있어 변수명, 폴더 구조들을 미리 정해서 최대한 통일성 있도록 노력함

기능명세

image

  • 세부적으로 기능을 명시하며 우선순위를 지정하여 확인하도록 하였음

api명세

image

image

  • api에 대해 각 담당자가 api의 주소와 요청과 응답의 흐름을 정리하였음

ERD

ERD

피그마(와이어 프레임)

피그마

CI/CD

Jenkins

image

멀티 브랜치 파이프라인을 통하여 브랜치별로 빌드하여 안전하게 관리

image

Jenkins 파이프라인 및 SonarQube Quality Gate로 Pass, Fail 확인

MatterMost

image Jenkins 파이프라인으로 빌드 시작, 성공, 실패 시 MatterMost로 알림을 보내서 개발자에게 알림 연결

SonarQube

Jenkins 파이프라인으로 빌드시 자동으로 SonarQube 컨테이너로 전송하여 정적 분석 실시

  • FrontEnd image

  • BackEnd image

시연

메인 화면

  • 메인 메인

  • 로그인화면 로그인

  • 회원가입 회원가입

로비

  • 로비 로비

  • 로비 방 확인 image

  • 방만들기 방만들기

  • 대기실 대기실

  • 대기실 준비완료 준비...완료

  • 대기실 방장 시점(start 활성화) 대기실 방장 시점

캐릭터

  • 달리기와 점프 RunAndJump

  • 매달리기와 벽 점프 paqur

  • 잡기 jabgi

  • 이모트 emote

상호작용

게임

  • 게임 메뉴 메뉴

  • 게임 아이템 게임아이템

광장

  • 광장 광장

  • 광장2 광장2

  • 튜토리얼 튜툐리얼안내

  • 채팅 채팅

머신러닝

머신러닝-비디오

랭킹 시스템

랭킹

대기열

대기열

About

런토피아 백업

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 74.6%
  • Java 22.8%
  • Batchfile 1.0%
  • Shell 0.7%
  • HTML 0.5%
  • CSS 0.3%
  • Other 0.1%