인기 포스트
-
스파르타) The Last Rollback (D-33, Node.js 게임 서버 최종 프로젝트)
> 과제 진행 간 완료한 사항 및 문제점과 해결 과정을 정리해보았다.학습 키워드: Protobuf, C# 1. 과제 진행 간 알게된 것1) 프로토콜 버퍼 관련 사항: 바로 어제자 TIL의 2. 문제점 1) 에서 작성한 내용인데, 어제는 원인이 명확하지 않아서 두 번 직렬화 하고 역직렬화 하는 과정에서 문제가 생긴다고 판단했으나, 팀원과 상의해본 결과 역직렬화 로직 자체에서는 태그를 잘 못 인식할 가능성이 없다고 결론이 내려졌다. 이상하다고 생각되어 어제와 동일한 구조를 만든 뒤 테스트 해보니 실제로 다시 역직렬화가 잘 되는 것을 확인했다. 분명 ResponsePacket 구조도 전부 일치했고 서버측 직렬화 및 역직렬화가 정상적으로 동작하는 것을 console로 찍어서 확인 했고, 매핑된 패킷 번호 또한 ..
-
(WIP) 스파르타) Node.js 5기 게임 서버 최종 프로젝트 (D-3)
> 개발 과정을 문서로 정리하면서 이전 TIL 글 들에서 놓친 디테일을 조사하고 추가하여 당시 발생한 문제들의 원인을 좀 더 정확하게 알 수 있었다. 학습 키워드: - 1. Progress1) Notion 문서 작업: 서버 아키텍처 - 데디케이티드 서버 로직 | Notion서버 플로우eliotjang.notion.site 서버 아키텍처 - Dedicated Server | NotionBuilt with Notion, the all-in-one connected workspace with publishing capabilities.eliotjang.notion.site > Dedicated 서버 개발 과정 정리 관련 TIL 링크 : https://donkim0122.tistory.com/165 : ht..
-
스파르타) The Last Rollback (D-18, Node.js 게임 서버 최종 프로젝트)
> 클라이언트에서 패킷 처리 부분에 약간의 오류가 있어 중간 발표 시연 전에 빠르게 수정하게 되었다. 학습 키워드: Unity, C#, SceneManager 트러블 슈팅1) 게임 세션 종료 후 마을 복귀 시 일부 클라이언트에서 다른 유저가 보이지 않는 문제: 마을 귀환을 처리하는 부분의 코드 동작 순서로 인해 일부 유저의 클라이언트에서 몇몇 다른 유저가 보이지 않는 현상이 발생했다. 서버 쪽 로그에서는 모든 유저가 세션에 있는 것을 확인했으며, 모습을 못 보는 클라이언트의 캐릭터가 움직이면 다른 클라이언트에서는 해당 유저의 위치 정보 동기화가 잘 이루어졌기 때문에 클라이언트 코드 문제인 것을 알 수 있었다. // PacketHandler.cs (클라이언트)...public static void S_E..
-
스파르타) The Last Rollback (D-36, Node.js 게임 서버 최종 프로젝트) - Protobuf
> 과제 진행 간 완료한 사항 및 문제점과 해결 과정을 정리해보았다. 학습 키워드: Protobuf, Node.js, TCP, socket 1. 완료한 과제 진행 사항1) 프로토콜 버퍼 / 직렬화 관련 기능 추가 완료: packetType 중복 파일 제거" data-og-host="github.com" data-og-source-url="https://github.com/eliotjang/the-last-rollback-server/pull/4" data-og-url="https://github.com/eliotjang/the-last-rollback-server/pull/4" data-og-image="https://scrap.kakaocdn.net/dn/bhDVXB/hyWCAp1TX3/0lZBbyul..
-
강의 과제) CPU란 무엇인가?
학습 키워드: CPU 중앙 처리 장치 (CPU, Central Processing Unit)1) What is it?: CPU는 컴퓨터의 두뇌 역할을 하는 핵심 부품으로, 다음과 같은 여러가지 부속 장치들이 모여 하나의 CPU를 구성한다. 제어 장치 (Control Unit): 주 기억장치에 저장된 명령어를 순서대로 실행하고 해독하며, 컴퓨터 시스템의 각 장치들에 전기신호를 보내 high-level instruction의 실행을 제어하는 역할을 한다. 앱이나 프로그램을 직접 제어하지는 않는다.산술 논리 장치 (Arithmetic/Logic Unit, ALU): 산술 연산(+, -, *, /)이나 비교 연산 등을 처리하는 작업을 한다. 기억 장치 (Memory Unit): CPU와 RAM 사이의 데이터..
-
스파르타) Node.js 5기 게임 서버 최종 프로젝트 (D-1)
학습 키워드: C#, Node.js, DotRecast, NavMesh 1. Progress1) 발표 자료 준비: Team 12가지 인생의 법칙 최종 프로젝트The Last RollBack - 코르딩딩 마을의 최후 - TEAM : 12가지 인생의 법칙 장성원, 김동균, 박지호, 양현언, 윤동협, 황정민docs.google.com 2. Troubleshooting1) 몬스터가 건물 및 플레이어를 공격하지 않는 문제 (원인 발견): 몬스터가 갑자기 플레이어 및 건물을 무시하고 백본 서버까지 돌진한 뒤 가만히 서있는 문제가 있었다. 처음에 한 팀원이 플레이하던 도중 문제가 발견됐을 때는 로그가 나오거나 하지 않아서 딱히 원인을 파악하지 못한 채로 넘어가게 되었는데, 저녁 회의 중에 이 문제의 원인이 무엇인지..