-
Ducktopia - <2> TOP NEW
MVP 구현 시작 어제 기록했던 것처럼 오늘은 MVP의 기능들을 구현하기 전, 전체적인 기한을 정하기로 하였다. 기한 설정 MVP 구현 기간 : 팀원별로 분리한 기능 구현을 마치는 기간 MVP 서버 종합 : 서버에서 통신하는 형태를 종합받아 정해주기 클라이언트 <> 서버 연결 : 구현된 클라이언트와 서버를 정해진 통신 구조로 연결하는 과정 발표준비 : 중간 점검/발표를 위해 자료 정리를 하는 기간으로 2차 구현을 병행하며 할 예정이므로 메인이 아니라 적어두었다. 역할 분담 원래 맡게된 기능이 게임루프 기능으로, 서버에... Read More
-
Ducktopia - <1> TOP NEW
프로젝트 시작 주어진 클라이언트 파일을 이용해 어떠한 게임을 기획하여 서버를 구축할 것인가에 대해 회의를 하였다. 기본적인 진행방향은 낮엔 파밍을하고, 저녁엔 몬스터들한테서 거점을 지키는 방식으로 채택되었다. 이를 구현하기 위해 기존에 받은 클라이언트를 커스텀하는 방향으로 진행되었다. 기획 시점은 2D 탑뷰로 기획하여 낮과 밤에 따라 게임형식이 조금씩 바뀌는 부분을 감안하여, 기초적인 인게임 화면을 구상해 보았다! 기획 중간부터 B급 감성으로 몬스터들을 “오리”로 설정해보면 어떨까? 하는 이야기가 나왔었다. (대부분 재밌을 것 같다고 하여 그대로 프로젝트이름이 Ducktopia... Read More
-
멀티타워디펜스 - 회고록 TOP NEW
-
멀티타워디펜스 - < 7 > TOP NEW
마무리 오늘은 프로젝트의 완성도를 높일 수 있도록 최적화를 해가는 작업을 실시했다. notify 함수 설정 기존 sendNotification 메서드를 통해 room 내의 player들에게 패킷을 만들어 보내주었다! 하지만 패킷을 만드는 일은 핸들러가 하는게 구조상 알맞은 것 같아 수정을 하였다! // Room 내부 메서드 /* 플레이어들에게 패킷 보내기 */ notify(infos) { for (const info of infos) { this.getPlayer(info.id).user.sendPacket(info.packetType, info.payload); } } // 핸들러에서 만들... Read More
-
컴퓨터 구조 - < 운영체제(OS) > TOP NEW
운영체제 운영체제는 컴퓨터 시스템 자원을 관리하고 사용자 프로그램이 하드웨어에 접근할 수 있도록 인터페이스를 제공하는 소프트웨어 컴퓨터 시스템의 하드웨어 자원을 효율적으로 관리하는 역할 사용자와 하드웨어 사이의 인터페이스를 제공해 효율적으로 응용 프로그램이 동작하도록 지원함 역할 자원 관리 CPU, 메모리, 디스크, 네트워크 등 컴퓨터 시스템의 자원을 관리하고, 각 프로그램이 필요한 자원을 효율적으로 사용할 수 있도록 운영체제가 이를 조정 프로세스 관리: 여러 프로그램(프로세스)이 동시에 실행될 때, 운영체제는 이 프로그램들이 CPU 시간을 적절히 나... Read More
-
멀티타워디펜스 - < 6 > TOP NEW
리팩토링 작업 utils 폴더 개선 현재 utils 폴더보다 다른구조로 병합하거나 옮길만한 파일들이 있다! 그러한 파일들을 정리해가며 옮겨준다. utils # utils 폴더 ├─ match # 매칭에 사용되는 함수 │ ├─ finish.match.js # 매치(게임)이 끝났을 경우 정산 │ └─ start.match.js # 매치(게임)이 시작할 때 초기 값 반환 ├─ path # 몬스터 길 만들기 │ └─ make.monster.path.js ├─ queue # 매칭 대기열 클래스 │ └─ waiting.queue.class.js └─ send-packet... Read More
-
멀티타워디펜스 - < 5 > TOP NEW
-
멀티타워디펜스 - < 4 > TOP NEW
메인 작업 시퀀스 시스템 현재는 서버가 클라이언트가 로그인된 이후부터 시퀀스를 체크하기 시작한다. 하지만 클라이언트를 분석해본 결과 통신 시작부터 시퀀스를 증가해가며 서버와 통신을 한다! 서버에서 시퀀스 검증을 하기 위해선 로그인 이후가 아닌 통신 시작 시점부터 시퀀스를 관리해야 했다! 대략 이런 구조로 User의 범위를 확장시켰다! (기존엔 로그인된 유저만 User 였지만 이제는 접속한 인원 모두가 User가 되는 것이다!) 코드 구현 onConnection 이벤트에 User를 생성해주도록 바꾸었다 (4)번 import on... Read More