본문 바로가기
엔트리/엔트리 RPG만들기 기본

엔트리 RPG 게임만들기1. 키보드로 움직이기

by 할거없네 2019. 12. 8.

 

 

안녕하세요. RPG게임 만들기의 강좌를 시작합니다.

가장 먼저 만들어야 하는 것은 키보드로 움직이는 것부터 합니다.

움직이는 방법은 마우스도 있고 키보드도 있고, 화면이 대신 움직이기도 하고 다양한 방법인데요

이번에 제작하려는 게임은 횡으로 움직이면서 몬스터를 잡고 레벨업 하는식의 RPG의 게임입니다.

이 게임은 단순히 기본적인것을 만들면서 RPG를 만드는데 필요한 필수적인 녀석들을 빠르고 간편하게? 학습하는 것을 목표로 하고 있습니다... 기존 스크래치의 경우 RPG를 만드는 강좌는 너무 길고 어려웠기 때문에

좀더 쉬운 방법부터 소개하려고 합니다.

 

대략적인 순서는

 

1. 키보드로 움직이기 (와 인트로)

2. 물리엔진 (장애물 인식, 중력, 점프)

3. 캐릭터 애니메이션

4. 스테이지와 워프

5. 몬스터 추가 (인공지능 및 맵배치 등)

6. 전투 시스템

7. 레벨업 시스템

8. 난이도 조절 및 스테이지 추가

9. 게임 인트로 및 스토리 등으로 마무리

 

이정도 순서로 진행을 하고자 합니다.

처음에는 매우 쉽지만 중간중간 어려울 수 있습니다.

따라 만들기 힘들지도 모르기 때문에... 대략적인 방법만 알고 넘어가셔도 유용한 글이 될 것 같습니다.

 

만드는건 참 간단합니다.

목표는 기본 오브젝트인 엔트리봇을 키보드로 움직이게 하는 것입니다.

 

 

 

 

 

엔트리봇은 위와 같이 코딩되어 있습니다.

게임을 만들 때 중요한 것은 '무한반복'입니다.

게임이 종료될때까지 무한반복을 하면서 언제나 유저의 입력에 따라 움직일 수 있도록 대기타도록 만들어 하는 것이죠.

이것과 다르게 방송하기라던지 ~을 하였을 때와 같은 블록은 최대한 사용하지 않습니다.

 

이것들은 이벤트 블록이라고 하는 건데 게임을 느리게 하는 주범입니다.

그렇기 때문에 가능하면 무한 루프 안에서 플레이어의 키보드 입력을 대기하도록 하시고...

이 루프 하나에서 모든것을 순서대로 동작할 수 있도록 만드는 것을 연습하시는 것이 좋습니다.

또한 깔끔하게 만들기 위해서 함수를 만들어 사용하였습니다...만 엔트리에서 지역변수가 함수안에서 사용불가인 단점중의 단점을 가지고 있기 때문에 함수의 사용이 다소 제약이 있습니다. 그러나 가능하면 함수를 엮어서 기능별로 나누어 주는것이 보기에도 좋고, 디버그라던지 기능추가할때도 편하니 이렇게 코딩하는 것을 연습하는게 좋습니다.

 

이동블록의 내용을 보면 키보드가 눌리면 speed_x, speed_y가 정해지고, 맨 마지막에 좌표가 speed의 값만큼 움직이게 되어 있습니다. 키보드를 누르면 바로 이동시키지 말고 속도를 정하는 것이 여러가지로 유리합니다. 단지 키보드로 움직이는 것 뿐인데 이렇게 힘들게 해야 하냐하면.. 미리미리 복잡하게 구현해야 하는 것들을 단순화 하기 위해서 입니다. 나중에 물리엔진을 사용할 때 모든 속도를 계산하고 마지막에 움직이게 함으로써 깔끔하게 순서대로 진행되기 때문입니다.

 

 

 

코딩은 몇개 없지만 설명은 참 길어졌네요.

 

 

 

 

 

프로젝트 보기:

 

http://naver.me/xQrXAFgW

 

Entry

 

playentry.org

 

완성작보기:

http://naver.me/FgzNCvLF

 

Entry

 

playentry.org

 

댓글