디버깅은 힘들다


MapleStory Worlds Games Blog

굿즈가 도착했다

CI 2021 오리엔테이션이나 안내 메일로 준다고 고지받았던 굿즈들이 도착했다. 20211124_124053 오오!(사진 방향이 이상하지만 수정하기 귀찮다. 그냥 올리자.)

구성품은 후드집업, 장패드, 뱃지, 스티커. 장패드 예쁘게 나와서 좋아보이는데 애초에 노트북밖에 없는데 키보드랑 마우스를 둘 장패드를 쓸 이유가 없다…
하지만 후드집업은 잘 입을듯. 20211124_175529 사람마다 사이즈 맞추기는 어려우니 역시 주최측에서도 넉넉한 걸로 준비한 것 같다.

오늘은 디버깅만 엄청 했다.

사실 오늘 한건 거의 없다.
그제 어제 한 것들 뒤치다꺼리만 했지…

뭔가 프로그램이란건 짤 때마다 끝없는 디버깅을 해야 하는게 필수인 것 같다. 일단 대시와 차지 공격을 하는 컴포넌트를 구성한 것까진 좋은데, 이걸 가지고 실제 모델들을 때려보니 문제가 생겼다.
데미지가 안 들어가거나, 데미지가 들어가도 제대로 반응이 되지 않는 것.
이것 때문에 한참을 골머리를 썩혔다.

헤매다 찾은 답은 서버와 클라이언트 간의 문제였다. 기본 모델들의 피격 로직엔 상태의 변경을 시도하는 함수의 호출이 따라오는데, 문제는 이 함수가 서버 기준으로 돌아간다는 것.
그래서 원래 키보드 입력과의 동기를 편하게 하려고 클라이언트에서 다 실행하던걸 서버에서 실행하도록 바꾸는 데 꽤나 고생했다. image 또, 특정 구간에선 낙사판정을 만들어 낙사판정에 닿으면 체력을 깎고 발판 위로 워프시키는 컴포넌트를 만들었지만, 이게 또 제대로 작동을 하지 않았다.
마찬가지로 열심히 디버깅을 하다 발견한 답은 낙사에서 직접 체력 수치를 조정하는 이벤트를 걸지 말고, 공격 판정이 존재하도록 해 데미지를 준 다음, 피격을 감지하는 함수를 이용해 워프를 실행하는 거였다.
image

기본구조는 갖춰졌다

그래도 오늘 디버깅 작업을 하면서 실제 모델에 적용했을때를 봤으니 기본 이동과 공격, 회피기 로직은 어느정도 진행된 느낌이다.
그래서 공개 기능도 시험해볼 겸 일단 공개 상태로 작업중인 월드를 돌렸다.
image

다음으로 할 것

우선 목표로 하는건 보스 하나를 잡기 위해 갖은 고생을 다 해야하는 액션 게임.
그렇기에 이걸로 플레이어 조작 로직이 설사 완성에 이르렀다 하더라도 결국엔 보스 패턴들을 잘 만드냐에 따라 완성도가 달라질거다.
보스를 담당할 원석은 메이플 리소스들 중에서 봐둔게 있으니, 만들면 되는데… 잘 될진 모르겠다.

여튼 힘내라 나 자신.

© 2024 SeokguKim   •  Base Theme  Moonwalk