https://github.com/choisooyoung-dev/d-ingco.git
GitHub - KR-EGOIST/tower_defense_game: 스파르타 내일배움캠프 Node.js 게임서버트랙 팀프로젝트 "타워 디펜스 게임 프로젝트"
✏️09:00~10:00 : 알고리즘 & SQL 풀이
📖10:00~13:00 : 오전공부
🍙13:00~14:00 : 점심식사
📖14:00~18:00 : 오후공부
🍙18:00~19:00 : 저녁식사
📖19:00~21:00 : 저녁공부
📝20:30~21:00 : TIL 작성
*9시 전에 출석 완료하기!
*20분 이상 자리 비울 시 슬랙에 알리기
개인 과제, 팀 과제를 성공적으로 제출하기
분쟁없이 잘 마무리하는 것
게임 서버 설계 및 구현
- [✅] 타워 디펜스 게임의 기본 규칙을 이해하고 있다.
- [✅] 게임 서버의 주요 기능 (회원가입, 로그인, 게임 데이터 관리 등)을 설계할 수 있다.
- [✅] WebSocket을 이용해 클라이언트와 서버 간 실시간 통신을 구현할 수 있다.
- [✅] 클라이언트 요청에 따라 적절한 게임 데이터를 처리하고 응답할 수 있다.
WebSocket 통신
- [✅] WebSocket의 기본 개념과 HTTP와의 차이점을 이해하고 있다.
- [✅] Node.js에서 WebSocket 서버를 구축할 수 있다.
- [✅] 클라이언트와 서버 간의 실시간 데이터 전송을 구현할 수 있다.
- [✅] WebSocket 이벤트를 정의하고 처리할 수 있다.
유저 인증 및 관리
- [✅] JWT를 이용한 사용자 인증을 구현할 수 있다.
- [✅] WebSocket 연결 시 JWT를 이용해 사용자 인증을 할 수 있다.
- [✅] 유저 별 게임 데이터를 관리할 수 있다.
게임 로직 구현
- [✅] 몬스터, 타워, 기지 등 게임 요소의 상태와 동작을 정의할 수 있다.
- [✅] 서버에서 게임 상태를 관리하고 클라이언트와 동기화할 수 있다.
- [✅] 게임 오버 조건과 스코어 관리 기능을 구현할 수 있다.
데이터베이스와 연동
- [✅] 데이터베이스 스키마를 설계할 수 있다.
- [✅] 데이터베이스를 이용해 유저 정보와 게임 기록을 저장하고 관리할 수 있다.
프로젝트 관리 및 협업
- [✅] Git을 사용해 소스 코드 버전 관리를 할 수 있다.
- [✅] Git branch를 이용해 브랜치 관리 및 협업을 할 수 있다.
- [✅] Pull Request와 코드 리뷰 과정을 이해하고 준수할 수 있다.
클라이언트 연동 및 테스트
- [✅] 제공된 게임 클라이언트를 이용해 서버와 WebSocket 기반으로 통신할 수 있다.
- [✅] 상태 동기화에 대해서 이해하고 이에 필요한 게임 이벤트들을 정의 할 수 있다.
회원가입 / 로그인 기능 (REST API로 통신) - 진호님
클라이언트가 서버로부터 수신하는 이벤트 종류 정의 및 코드 구현 (WebSocket으로 통신): ex) 커넥션 성공 이벤트, 커넥션 실패 이벤트, ... - 진호님
클라이언트가 서버로 송신하는 이벤트
게임 시작 이벤트, 게임 오버 이벤트, 유저 별 최고 기록 스코어 저장 - 이슬님
최초 타워 추가 이벤트 - 지호님
타워 구입 이벤트 - 정훈님
몬스터 죽이는 이벤트 - 우성
-------------------------- 도전
타워 환불 기능
특정 타워 업그레이드 기능
보물 고블린 몬스터 출연 기능
Node.js 심화 주차 일석4조 팀프로젝트 | Notion