본문 바로가기

프로젝트/게임 개발

[09] 230130 게임 개발 일지 - 탐지/채광 스킬 구현 (2)

탐지/채광 스킬에 추가 사항을 구현해 보았다.

기존 스킬 구현 사항에 대해 기획자 엉님과 얘기해보고 오류사항을 물어보고 추가 요구사항을 의논하는데,

약간의 소통 이슈가 있었다.

 

현재 채집 스킬에서 사용하는 용어가 혼동된 것이었는데,

채집 스킬 레벨, 채집 숙련도 레벨 이 두가지가 혼용되어 사용하여 요구사항을 이해하는데 소통 이슈가 있었다.

 

내가 개발한 내용을 상대방이 모두 파악하고 있지 않기 때문에, 개발 과정을 설명하거나 맞는지 검토할 때

항상 상대방이 이해하기 쉬운 용어를 사용하고,

기록하여 전달 할 때 헷갈리지 않도록 한 단어로 일관성 있게 사용해야 겠다고 느꼈다.

 

1. 숙련도 레벨/스킬레벨 에 따른 쿨타임 감소 설정

쿨타임 세팅은 서버스크립트가 아닌 클라이언트스크립트에서 설정이된다.

따라서 서버스크립트에서 유저변수를 불러온 후 fireEvent로 클라이언트에 값을 보내주어야 한다.

 

쿨타임의 공식에 들어가는 변수의 변화가 일어나거나, 처음 접속 시 이 설정을 불러와야 한다.

(기존 스킬 데이터에 쿨타임 값을 set을 통해 변경하는 것이므로)

 

우리의 스크립트 상 변화가 일어나는 시점은 아래와 같다.

  • 데미지 함수에서 채집 스킬 레벨업이 발생할 때
  • 악세서리 칸에 채집도구를 장착 할 때 (채집 도구의 단계에 따라 채집 스킬 레벨이 결정되며, 해당 레벨의 스킬을 배운다.)

음 플랫폼 상 스킬레벨에 따른 쿨타임 설정이 있었으면 조금 편했을 것 같다는 아쉬움이 조금 있었다.

 

2. 채집 숙련도 레벨 상승 시 스탯 증가/감소

전투 레벨 상승시 스탯 증가/감소와 거의 비슷한 로직이지만 더 간단했다.

기존 함수와 거의 동일하게 작성하여 채집 숙련도 레벨 상승이 발생하는 시점에 해당 함수를 실행시켜 주었다.

 

3. 팀태그 문제 해결

일반 몬스터의 팀태그와 채집 몬스터의 팀태그가 달라 발생하는 문제였다.

 

칠면조 vs 꽃

 

칠면조와 풀이 서로 싸우고 있다는 제보가 들어와 황급히 확인해 보았다.

 

전에 확인했던 팀태그는 비트연산으로 하나라도 AND되는 비트가 있을 시 동맹처리가 된다는 것을 보아

일반 몬스터에 팀태그에 채집몬스터들의 팀태그를 추가해 주어 서로 화해시켜 주었다.