본문 바로가기
스크래치/스크래치 피하기

똥피하기 게임 만들기 3. 난이도 만들기

by 할거없네 2017. 11. 21.

안녕하세요. 승승이 입니다.

이제 게임의 재미의 요소로 난이도의 증가 설정 및 아이템이나 다른 기타 여러가지의 이벤트 발생을 추가적으로 만들어 볼까 합니다.

이전까지는 기본적으로 간단하게 똥피하기를 만들었다면, 여기부터는 제작자의 창의성이 요구되는 부분입니다. , 난이도를 어느정도로 설정할까, 아이템은 어떻게 만들까 등등이 될 것입니다.


난이도는 제작자와 테스터들이 계속해서 플레이 하면서 적당한 난이도를 만들어 줘야 하기 때문에 어떻게 만드느냐는 제작자의 몫입니다. 가장 좋은 것은 처음에는 쉽다가 서서히 어려워지면서 플레이어의 도전정신을 자극하는 것이 좋습니다. 처음부터 어려우면 재미가 없고, 후반까지 쉬우면 게임을 공략하는 재미가 반감될 것입니다. 이런 똥피하기 류의 미니게임류는 플레이 시간이 1분 수준이 될 것입니다. 그래서 1분정도면 게임이 마쳐질 정도의 난이도로 만들 예정입니다. 난이도를 만들어 내는 여러가지 요소도 알아봐야 하는데, 떨어지는 속도, 개수, 똥의 크기가 될 것입니다. 이 어려운 똥들은 10초에 한번씩 단계가 올라가면서 높은 난이도의 똥이 떨어지게 할 것입니다. 이제 난이도는 대충 정리가 되었네요.


1) 난이도는  처음엔 쉽다가 1분정도면 게임 오버가 될 정도의 난이도

2) 난이도가 올라가는 방식은 개수, 낙하속도, 크기 3가지로 분류

3) 10초에 한단계씩 올라감



1. 난이도에 따른 똥 타입 만들기


난이도에 따라서 여러가지의 똥을 만들어 봅시다. 먼저 적당히 8단계의 이미지를 넣어서 난이도가 높은 똥인지 낮은 똥인지 구별하기 위해 넣어주었습니다.

이제 똥들은 타입에 따라서 8단계의 똥이 됩니다. 이 똥들의 모양은 @type 이라는 변수에 따라 결정됩니다. 복제되었을 때 모양을 level+@type으로 결정합니다.

이제 타입별로 속도와 크기를 조절할 예정입니다. 속도는 @speed값에 따라 결정되고, 크기는 @scale입니다. 각각의 8개의 타입에 대해서 적당한 속도와 크기를 만들어 주겠습니다.


각 타입에 대한 데이터가 정해지면 일단 크기는 정해진 스케일로 바뀌어서 떨어질 것입니다.

Ddong_move 블록에서 속도를 결정해주는 값으로 @speed로 합니다.



이제 난이도에 따라서 타입을 만들어 내도록 합니다. Ddong_level블록은 현재 난이도 값(#난이도)에 따라서 @type의 값을 결정해줍니다.


Ddong_level 블록의 위치는 복제하는 블록 안에 있으며, 이것은  복제하기 전에 타입을 결정해 줍니다.



2. 시간에 따라 난이도 올리기(빨리 만들어 내기, 많이 만들어 내기)

이제 시간이 갈수록 점점 떨어지는 똥들이 많아지게 하도록 하겠습니다. 똘이 만들어 지는 곳인 Ddong_copy에서  딜레이 시간을 조절함으로써 가능합니다.

여기서 #딜레이가 작을수록 쉴틈없이 똥을 만들어 낼 것입니다. 하지만 이것으로도 부족해서 한번에 여러 개 만들어 지게 할 예정입니다.



Ddong_copy에서 ~번 반복하기에 #개수 변수를 넣어서 이 변수만큼의 반복을 하도록 합니다.



#딜레이의 초기값은 0.5, #수의 초기값은 1로 놓고 난이도가 높을수록 딜레이는 짧아지고 개수는 많아지도록 합니다.



다시 적당히 난이도가 오를 수록 딜레이를 감소시키고, 개수를 증가시켜줍니다.




3. 기타, 구석방지를 위한 유저 위치에서 소환


1/3의 확률로 유저의 x좌표에 똥을 떨어뜨리도록 스크립트를 추가하였습니다. 이로써 구석에 숨어서 점수를 높이는 행위는 불가합니다.

스크립트 확인하기:

https://scratch.mit.edu/projects/187861563/




댓글