728x90

크래프톤 129

24.05.18 나만무

나만무폴리싱 위주timer 크기를 조정했다.속도계 배경 추가하고, 글씨 흰색으로 변경했다.리타이어 인원 - 게임 결과에 표시되도록 추가게임 도중에 클라이언트가 disconnect 되면 broadcast가 먹통되던 것 수정PlayerDisconnect() : socket이 속한 플레이어 리스트에서 플레이어 삭제하고, 다른 플레이어들에게 알린다종료 카운트다운이 끝난 직후 완주하면 골인 처리가 되는 상황gameRoomList에 state를 추가하고, 게임 진행 상황을 저장했다.GameStartCountDown 과 함께 state = true로 변경했다.GameEnd 와 함께 state = false로 변경했다.PlayerGoal : room.state == true 인 경우에만 Goal 처리가 가능하도록 조건..

나만무 슬레이어즈 21

나만무 서버에서 안쓰는 함수들을 정리했다. 인게임 UI 글씨들이 배경과 같은 색이여서 가시성이 좋지 않아 검정색으로 수정했다. 속도가 100 이상일 때, Speed UI의 색상을 빨간색으로 변화 시키는 코드를 추가했다. 매칭이 두 번 안 눌리게 수정했다. 한글 폰트가 깨지는 문제.한글 폰트의 사이즈를 줄여 해결했다. 체크 포인트 너비가 얇아서 다른 사람이 길게 Position이 이동되면 체크포인트를 넘어가는 문제체크포인트의 너비를 1→7로 수정했다. 사운드 에셋을 찾고 있다.현재 불꽃의 땅 무스펠하임이 좋아보인다.

Study/Project 2024.05.18

24.05.17 나만무

나만무서버에서 안쓰는 함수들을 정리했다. 인게임 UI 글씨들이 배경과 같은 색이여서 가시성이 좋지 않아 검정색으로 수정했다. 속도가 100 이상일 때, Speed UI의 색상을 빨간색으로 변화 시키는 코드를 추가했다. 매칭이 두 번 안 눌리게 수정했다. 한글 폰트가 깨지는 문제.한글 폰트의 사이즈를 줄여 해결했다. 체크 포인트 너비가 얇아서 다른 사람이 길게 Position이 이동되면 체크포인트를 넘어가는 문제체크포인트의 너비를 1→7로 수정했다. 사운드 에셋을 찾고 있다.현재 불꽃의 땅 무스펠하임이 좋아보인다.

나만무 슬레이어즈 20

나만무GameEnd UI - 시간 출력 관련TimeSpan.FromMilliseconds 을 이용해 ms → mm:ss:ms 형식으로 변환했다Packet id → nickname 으로 수정 완료클라이언트에서 불필요한 패킷을 수정하는 과정에서 서버와의 연결하는 패킷의 수정을 해야했다.InGame내에서 더이상 id를 사용하지 않기 때문에 nickname으로 수정하는 과정을 거쳤다.DB Table 정리 → 사용하지 않는 Column 정리, name → nickname으로 변경했다.닉네임 변경하고 게임에 바로 접속했을 때, socket을 찾지 못했던 버그전의 닉네임으로 socket에 등록되어 있었기 때문에 발생한 버그였다.setname 했을 때 list의 key와 socket name을 변경해주었다.

Study/Project 2024.05.16

24.05.16 나만무

나만무GameEnd UI - 시간 출력 관련TimeSpan.FromMilliseconds 을 이용해 ms → mm:ss:ms 형식으로 변환했다Packet id → nickname 으로 수정 완료클라이언트에서 불필요한 패킷을 수정하는 과정에서 서버와의 연결하는 패킷의 수정을 해야했다.InGame내에서 더이상 id를 사용하지 않기 때문에 nickname으로 수정하는 과정을 거쳤다.DB Table 정리 → 사용하지 않는 Column 정리, name → nickname으로 변경했다.닉네임 변경하고 게임에 바로 접속했을 때, socket을 찾지 못했던 버그전의 닉네임으로 socket에 등록되어 있었기 때문에 발생한 버그였다.setname 했을 때 list의 key와 socket name을 변경해주었다.

24.05.14 나만무

나만무매치메이킹을 간단하게나마 구현했다.플레이어가 매치메이킹 버튼을 클릭하면 서버에서 매칭을 진행하게 된다.매칭을 준비하고 있는 방이 있다면 그 방에 플레이어를 넣어주게 되고, 방이 없다면 방을 생성해준다.그리고 일정 인원 (현재 5명)이 차거나 아니면 20초가 지나게 된다면 서버가 클라이언트에게 같이 게임하는 인원들의 정보를 주고, 게임을 매칭 결과창을 보여준다. 그 후 5초 뒤에 게임으로 이동하게 된다.게임에 들어가면 아까 받아온 같이 게임을 하는 인원들의 정보를 통해 플레이어들을 그려주게 된다.어려웠던 점어떻게 정보를 넘겨 줘야 할지, 그 정보를 어떤 오브젝트가 들고 있어야 할지 정하는 부분이 어려웠다.outgameserver가 가지고 있고, 그 부분을 worldmanager로 넘기는 형식으로 구현..

나만무 17 슬레이어즈

나만무socket.on 에서 setActive(true)가 안됐던 문제해결 : 털보도사님 쿠고랑 아저씨가 도와줬다.Unity에서 Socket.IO를 사용할 때 콜백 함수 내에서 Unity의 메인 스레드로 작업을 전달해야 한다. Socket.IO의 이벤트 처리가 별도의 스레드에서 실행되기 때문에 Unity의 메인 스레드에서 직접 Unity 관련 작업을 수행하면 안된다.Unity에서 UnityThread.executeInUpdate() 메서드를 사용하여 작업을 메인 스레드로 전달할 수 있다. 이 메서드는 전달된 작업을 Unity의 업데이트 루프에서 실행되도록 예약한다.Debug.log의 경우 로깅 시스템을 사용하는 메서드로, 실제로 메인 스레드에서 실행되지 않아도 된다고 한다. unity에서 debug.lo..

Study/Project 2024.05.15

24.05.13 나만무

나만무socket.on 에서 setActive(true)가 안됐던 문제해결 : 털보도사님 쿠고랑 아저씨가 도와줬다.Unity에서 Socket.IO를 사용할 때 콜백 함수 내에서 Unity의 메인 스레드로 작업을 전달해야 한다. Socket.IO의 이벤트 처리가 별도의 스레드에서 실행되기 때문에 Unity의 메인 스레드에서 직접 Unity 관련 작업을 수행하면 안된다.Unity에서 UnityThread.executeInUpdate() 메서드를 사용하여 작업을 메인 스레드로 전달할 수 있다. 이 메서드는 전달된 작업을 Unity의 업데이트 루프에서 실행되도록 예약한다.Debug.log의 경우 로깅 시스템을 사용하는 메서드로, 실제로 메인 스레드에서 실행되지 않아도 된다고 한다. unity에서 debug.lo..

나만무 슬레이어즈 16

나만무setName 구현 완료문제 : 비동기로 코드가 진행되다 보니, DB에서 읽어오기 전에 아래 코드가 진행되어 값이 들어가지 않는 상황이 발생했다.async, await을 사용하여 문제를 해결했다.async function isUniqueName(name) { // 중복 없으면 true, 있으면 false await connection.query('SELECT * FROM User WHERE name = ?', [name], (err, rows) => { if (err) { logger.error('setUniqueName query error:', err); } if (rows.length === 0) { ..

Study/Project 2024.05.12

24.05.12 나만무

나만무setName 구현 완료문제 : 비동기로 코드가 진행되다 보니, DB에서 읽어오기 전에 아래 코드가 진행되어 값이 들어가지 않는 상황이 발생했다.async, await을 사용하여 문제를 해결했다.async function isUniqueName(name) { // 중복 없으면 true, 있으면 false await connection.query('SELECT * FROM User WHERE name = ?', [name], (err, rows) => { if (err) { logger.error('setUniqueName query error:', err); } if (rows.length === 0) { ..

728x90