본문 바로가기

프로그래밍98

250614 토요일 @ 48일차 🔄Game서버 리팩토링➕Game서버 컴파일에러 전부 수정➕GameServer -> PacketManager packetQueue푸시 까지 완료➕템플릿특수화로 ID 자동 맵핑 + 실수방지 진행이 꽤 느리다.시간은 많이 썼는데 서버 구조가 뭐 그냥 짜면 되는거 아닌가 싶었는데,막상 직접 짜보려고 하니까 혼란이 많이 온다.일단 에러는 전부 수정 했고 대부분 재배치, 이름 변경 등을 수행하였고, 이제 내일은 구조를 진입한다.근데 이쯤 되니까 구조가 정말 두렵게 느껴진다잘못 짜면 걷잡을 수 없게 혼란이 와버린다.흐름도 잘 안 보이고 막막해지는 것 때문에 손대기가 힘든 것 같다.암튼 이번엔 어떻게 잘 버텨서 분리를 하고 에러들도 다 잡았으니 제대로 시작한다. 2025. 6. 15.
250613 금요일 @ 47일차 / 서버코어 library 분리 너무 복잡해지고 어지러워져서 코어부분을 그냥 Lib로 빼버려서 완전히 분리시켰다.라이브러리 생성법ServerCore > 속성 > 구성 속성 > 일반 > 출력 디렉터리 $(SolutionDir)\Libs\$(Configuration)\이렇게 하면 lib파일이 해당경로에 추출된다프로젝트 위치 상위에 Libs폴더 안에 디버그/릴리즈 로 생성됨ChatServer > 속성 > 링커 > 일반 > 추가 라이브러리 디렉터리$(SolutionDir)\Libs\$(Configuration)\똑같은 경로로 맞춰서 lib를 포함시킨다ChatServer > 속성 > 링커 > 입력 > 추가 종속성ServerCore.lib실제로 포함시킬 라이브러리를 지정해줘야한다라이브러리로 이동하면서 Iocp부분을 좀 리펙토링했다.이름도 수정하고.. 2025. 6. 14.
250611 수요일 @ 45일차 치과를 가서 잇몸치료를 받았는데 잇몸이 아작이나서 괜히 덧날까봐 점심을 안먹었다그냥 굶기로 했다 원래 커피도 사올려고했는데 커피도 안좋을것같아서 안사오고집에왔는데 너무아파가지고 누워있었다.그러다가 인디 회의를 했는데 아무래도 인디 팀을 탈퇴해야할것같다 인디 회의는 한다고하는데 뭘할지도 제대로 안나오고 목표가 없다보니 시간만 허비하는것같다그래서 그냥 내일부터는 포폴을 하겠다고 그만하겠다고해야겠다.일단 Iocp에서 ClientManager지우고 그냥 Client는 raw*로 관리해야하겠다고 생각했다.그래서 Client를 미리 생성해두고 (접속 가능한 최대수 제한?)client_id (client_number)로 접근 해서 사용하도록 하고 빈클라이언트는 항상 queue에 반납하고사용할 클라이언트는 queue에.. 2025. 6. 12.
250609 월요일 @ 43일차 ✅C# DummyClient 수동 조작으로 Character 생성 까지 만들어보기재구성을 어떻게 할지 생각해보다가 이전회사에서도 DB쪽은 SP수에 따라 클래스를 전부 헤더포함 해준것이 생각이나서 큰문제는 없을것 같아서 그냥진행해야겠다.하지만 뭔가 이리저리 상속에 넘기는 부분이 많아서 그런지 연결처리를 하는부분의 작업속도가 꽤 오래걸린다.우선 작업을 진행은 계속 해보는데, 개선은 필요할것같다고 느낀다.우선 캐릭터를 생성하는데 까지는 로직을 완성했다.DB프로시저에서 캐릭터를 생성할때트랜젝션을 묶어서 Nickname중복체크,Character Uid발급,닉네임 등록을 먼저해주고다성공시 커밋 중간에 실패시 롤백처리 하였다.프로시저 반환값 CharUid + ResultValue값을 확인하여Charcater테이블에 .. 2025. 6. 10.