[게임개발] 고양이 로그라이크 작업일지 008. 여러칸 이동하기

in kr •  7 years ago 

반성


오랜만입니다. 찡찡이아빠, 게임개발맨 세상속으로입니다.

이렇게 드문드문 개발 하면 안되는데... 체력의 한계인지 미루다 간만에 작업을 했습니다.

캐릭터 이동입니다.

우선은

1. AStar 알고리즘을 이용해서 캐릭터 이동 가능한 기반을 만들구요.

( AStar는 벽, 바닥없는 구멍 등을 피해서 이동하는 걸 도와줍니다 - 길찾기 기능이죠 )

2. 플레이어 턴일때 화면 클릭( 사용자 입력 ) 을 하면 해당 경로를 남은 액션에 넣어줍니다.

액션은 플레이어나 몬스터가 행동하는 행동 1개를 뜻합니다.

마법 캐스팅, 우측의 적공격, 물약 마시기, 템 줍기와 같죠.

인벤토리 열기, 닫기등은 액션에 포함되지 않습니다. 입출력 단에서 해결합니다.

3. 액션이 있는 경우 해당 액션의 내용에 따라 데이터를 변경하고 화면에 그려줍니다. ( 액션 체크 상태 )

( 위치가 이동되었다면 이동된 위치에 캐릭터를 그려줍니다 )

4. 몬스터 턴이 다 지나고, 플레이어 턴으로 돌아왔을때

액션 리스트가 비어있지 않는 경우 ( 3칸 이동을 했는데 이전턴에 1칸 이동만 한 경우 2칸 이동 경로가 남아있을 겁니다 )
플레이어는 입력을 하지 못하고 남은 것 중 첫번째 액션을 따라 자동으로 이동합니다 ( 액션이 비어있는 경우는 키보드, 마우스, 터치 입력을 받습니다 )

제가 좋아하는 로그라이크인 돌죽에서는 이렇게 액션이 남은 경우라도 적으로부터 피격 당하거나

새로운 몬스터가 시야에 들어오면 남은 행동을 하지 않고 ( 액션리스트를 비우고 )

사용자에게 입력가능한 턴을 돌려주는데 이것은 나중에 작업하기로 하죠.

결과물 - 움짤

KakaoTalk_20180328_034309083.gif

다음 목표

이제 이동이 가능하게 되었으니

몬스터 AI도 넣어야 될 상황입니다.

다음은 잠자기 상태에서 플레이어를 인식하고 깨어나는 몬스터를 만들어보도록 하겠습니다.

잠자기 상태를 기록할 ( 버프/디버프 ), 와 몬스터 턴에 사용될 몬스터별 AI가 필요하겠네요

우선은 잠에서 깨는 것 뿐이지만요 ㅎㅎ

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

저도 게임 한번만들고싶네요
어렵나요?
팔로 꾸욱~❤

ㅎㅎ 저도 공부하면서 하는거라 쉽지는 않은거 같아요. 근데 재미있어요 ㅋㅋ

게임 만드는 건 참 잼나지요 ^^ 응원 합니다.

ㅎㅎ 응원 감사합니다! 힘낼게요!

오오 몬스터 AI 부분은 좀 자세히 설명 부탁할게요! 차후 크립토게임 만들려고 하는 1인으로 흥미로운 연재네요ㅎㅎ

AI는 사실 저도 하는데 인터넷에 있던 좋은 자료 보고 하는거라 자료 공유하도록 할게요. ㅎㅎㅎ 근데 완성이 되야 포스팅도 하는데 시간이 좀 걸릴거 같아요 ㅋㅋㅋ

앗 '좋은 자료' 매우 궁금하군요ㅎㅎ 기다릴게요!!

hi @sesangsokuro, nice to see you again.
thank you for making me grow in steemit

Congratulations @sesangsokuro! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 2 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!