Team

🗃️ Github

https://github.com/choisooyoung-dev/d-ingco.git

📽️ 시연 영상

🗒️ 발표 자료

https://docs.google.com/presentation/d/17T5n9gLx_kFfs9TG2ld2GO56I8ejq7hv5TbUSfFnR1E/edit?usp=sharing

images.png


👣 개인과제

1. 프로젝트

Node.js 게임서버 풋살 온라인 프로젝트 (1)


2. 기획 관련 메모

ZH7V3VMLO2REFA4VNBIBFKXSD4.avif


  1. player(혹은 character) - 선수 (아이템 테이블과 동일)

    선수 스탯 뽑기 확률 포지션? (도전) 강화도: 기본 값 0, 강화도에 따라 스탯 가중치 (도전 - 생각해본 것) 선수 등급?

  2. grade (도전 - 생각해본 것) - 선수 등급에 따른 강화도 스탯 가중치 테이블??

  3. user - 유저 계정

    캐시 = character.money (유저 돈) (도전) 유저 점수, 매칭용 (랭킹 조회 가능해짐)

  4. team - 팀 구성 (장착 아이템과 동일), 최대 3명, 중복 불가, 팀 없으면 게임 불가

  5. inventory - 가진 선수 테이블 (보유 아이템 목록과 동일)

  6. store - 상점

    캐시구매 기능 = 돈 벌기 뽑기 = 아이템 구매랑 동일, 핵심 BM (도전) 강화: 여기서 하거나 별개 라우터 upgrade 만들기 강화 대상 캐릭터 현재 강화 레벨에 따라 강화 확률 감소

  7. game - 게임 플레이 = 없던 기능

    게임 로직 함수 = 스탯 가중치 (총합 1), 정규화, 총합 비교 후 승률 정하고 룰렛 (랜덤) (????) post: 게임 로직 실행 후 결과 db에 create (도전) 매치 메이킹: 유저 점수 기반으로 상대 매칭

  8. rank - 유저 점수 기반


user - 유저 계정 캐시 = character.money (유저 돈) (도전) 유저 점수, 매칭용 (랭킹 조회 가능해짐)

inventory - 가진 선수 테이블 (보유 아이템 목록과 동일)

store - 상점 캐시구매 기능 = 돈 벌기 뽑기 = 아이템 구매랑 동일, 핵심 BM (도전) 강화: 여기서 하거나 별개 라우터 upgrade 만들기 강화 대상 캐릭터 현재 강화 레벨에 따라 강화 확률 감소

game - 게임 플레이 = 없던 기능 게임 로직 함수 = 스탯 가중치 (총합 1), 정규화, 총합 비교 후 승률 정하고 룰렛 (랜덤) (????) post: 게임 로직 실행 후 결과 db에 create (도전) 매치 메이킹: 유저 점수 기반으로 상대 매칭

rank - 랭킹 get: 유저 테이블 유저 점수 select 후 정렬


userChecker(userId, select)

// @returns user // 유저 존재 유무 확인

playerChecker(playerId, select)

// @returns player // 선수 존재 유무 확인

inventoryChecker(userId, playerId, select)

// @returns inventory // 선수 보유 중인지 확인 // 내부에서 userChecker, playerChecker 사용

moneyChecker (userId, chargeMoney, select)

// @returns user // 요청에 대해 돈이 충분한지 확인 // 내부에서 userChecker 사용

3. WBS & Tasks


4. 와이어프레임

***Front-End Version

Blank diagram (1).png

5. API 명세서 (구현 기능 안에 상세 설명 추가)

API 명세서

6. ERD DIAGRAM


erd5.drawio.png

erd4.drawio.png

Node.js 기획 특강

jHypeh-gNmdMbPZsI7cuI19uSCwiAmRrqhJM1wlMtOlTSqeatTTdP_MQpCo1k1g13AhIYYT_8SsZzp8h2ajoTw.gif

jHypeh-gNmdMbPZsI7cuI19uSCwiAmRrqhJM1wlMtOlTSqeatTTdP_MQpCo1k1g13AhIYYT_8SsZzp8h2ajoTw.gif