본문 바로가기

게임만들기20

리듬게임 만들기1. 키부터 만들어 보자 이번 강좌는 '리듬게임'입니다. 리듬게임도 생각보다 만들기 어려운 장르중 하나입니다. 가장 만들기 어려운 부분은 원하는 시간에 해당되는 노트가 정확히 들어가야 하는 것입니다. 그리고 어려운 것은 그 노트를 문제 없이 인식하여 터치를 하도록 만드는 것이 되겠네요. 이번에 만들려고 하는 것은 이러한 문제들에 대해서 어떻게 풀어나가야 할지 생각해 보고 해결해 가는 과정을 알 수 있습니다. 이번 프로젝트의 중간과정 결과물... 아직 작성중입니다 ^^ 일단 먼저 리듬게임을 만들 때 무엇을 만들까 생각을 해봐야 겠습니다. 1. 키 만들기2. 노트 만들기- 순서대로 노트가 떨어지기- 키를 누르면 노트를 인식시키기- 여러개 라인에서 순서대로 떨어지기3. 악보 만들기 이러한 순서가 될 듯 합니다. 일단 가장 어려운 부분.. 2017. 12. 17.
12월 14일 프로젝트 상황- 리듬게임 발전 중 리드게임은 순조롭게 만들고 있습니다. 현재 판정까지는 무난하게 작성되었습니다. 판정에 따른 효과는 핵심기능이 아닌 단지 부가기능이기 때문에 별다른 어려운 기술은 없습니다. 단지 판정에 따라 효과를 어떻게 주냐가 다를 뿐입니다.판정하는 것은 약간의 생각을 해줘야 합니다. 앞서 말한 것처럼 겹쳐 있는 노드들을 하나씩 인식시켜줘야 하는 것이 풀어야 할 숙제입니다. 다른 초보 스크래쳐들이 만든 리듬게임에는 여기서 장벽이 생깁니다. 대부분이 '~에 닿기'를 사용하는 바람에 닿는 모든 블럭들을 인식해버리니까요.그것을 해결하기 위해서 각 노드들의 라인에서 제거되지 않은 가장 앞의 노드의 위치만을 판정합니다. 정말 간단하고 쉬운 일이지만 이것을 구현하는 것은 약간의 생각이 필요합니다. 제가 적용한 방법은 각 라인에 따.. 2017. 12. 14.
12월 13일 프로젝트 상황- 리듬게임 제작, 소녀전선 런 게임 다음 강좌는 리듬게임 만들기를 준비하고 있습니다. 저도 리듬게임은 예전에 만든 적이 있으나 너무 허접하게 만들고 실력도 부족했었습니다.이번에도 역시 새롭게 만들면서 저도 도전하는 것이기 때문에 바로바로 강좌는 나오기는 힘들 것 같네요.가장 어렵다고 생각되는 부분은 싱크를 맞추는 것일 겁니다. 노드를 일정 시간에 맞춰서 원하는 위치(파란색)에 들어가야 하는데, 그걸구현해 주어야 합니다.기존에 제가 만들었던 프로젝트의 문제가, 그러한 부분에 있었습니다. 정확한 시간에 노드가 들어가지 않습니다.이번에는 '타이머'를 통해서 타이머가 노드의 위치를 결정하는 변수로 작용하면서 그 문제를 해결하였습니다. 자세한 설명은 추후 강좌로 쓰게 되겠죠. 다음은 판정의 부분인데 이부분을 도전해야 할 차례입니다. 다른 사람들이 .. 2017. 12. 13.
쿠키런 같은 게임 만들기 4. 캐릭터 애니메이션 (끝) 캐릭터를 만드는 것은 어떻게 보면 노가다이긴 합니다. 그러나 고유의 창작보다는 좀 더 쉽게 만드는 방법으로는 다른 작품을 가져오는 방법이 있고, 트레이싱(따라그리기)하는 방법, 그것을 수정하여 사용하거나 등등으로 노가다를 줄일 수 있습니다. 저의 경우는 요즘에 하고 있는 게임 중 하나에서 가져와서 사용하기로 했습니다. 1. 캐릭터 그리기사용 프로그램은 잉크스케이프이며, 여기서 벡터형태의 이미지를 사용합니다. 팔다리 등은 새로 그리는 것이 아니라 위치와 각도를 움직여 주면서 여러장의 그림을 쉽게 구현이 가능합니다. 각각의 부위를 그리고 난 다음에는 모션에 따라서 다시 재배치를 해줍니다.이제 각 모션 하나하나를 png의 형태로 배경은 투명하게 하여 저장을 합니다. 이동모션의 의미로 m1~m18까지의 이름을 .. 2017. 12. 11.
쿠키런 같은 게임 만들기 3. 지형만들기 이번 포스팅에서는 지형을 만들고 인식하도록 합니다. 다른 제작과정보다 상당히 난이도가 높은 부분입니다. 어디부터 손을 대야 할지 난간할 수 있습니다. 저도 이걸 만드는데 어디부터 설명을 하고 만들어야 하나 좀 고민을 했어야 했습니다. 일단 순서는 1. 땅을 만들어서 2. 인식하는 것입니다. 1. 땅 만들어 주기 일단 지형을 만들어 줄 스프라이트들을 만듭니다. 바로 이 검정색 막대기는 지형을 만들어 줍니다. 여기서 1이면 땅이고 0이면 공중으로 만들어 줍니다. 따라서 맵은 11110111... 이런식으로 숫자의 배열로 되고, 이걸 순서대로 땅으로 채워주면서 만드는 것이 이번 스크립트 제작의 목표가 됩니다. 땅을 만들어 주는 스크립트는 위와 같이 됩니다. 땅은 자신의 크기와 위치에 맞게 복제가 되고 자신의 .. 2017. 12. 10.
쿠키런 같은 게임 만들기 2. 함정 만들기 이번에는 고양이가 피해야 할 장애물을 만들어 봅니다. 장애물의 모양은 여러가지가 있겠지만 일단 그리기 귀찮으니 공모양의 스프라이트로 시작해 볼까 합니다. 추가적으로 '스테이지'라는 스프라이트도 추가했는데 이것은 장애물이나 지형을 순차적으로 만들어 줄 스프라이트입니다. 현재는 장애물 만들어 주기 위한 용도로만 사용할 것입니다. '트랩' 스프라이트는 여러 개를 사용하기 때문에 복제하여 사용됩니다. 트랩은 복제해서 사용하기 때문에 초기값으로는 '숨기기'와 복제된 개체와 구별하기 위한 변수를 초기값을 결정해 줍니다.그리고 무한 반복속에서 트랩을 만들어 주는 요청을 하면 트랩의 특성을 결정해주는 지역변수 @trap_type을 결정해주고 복제하기 해줍니다.리스트를 삭제해 줌으로써 복수의 트랩이 만들어지지 않도록 합.. 2017. 12. 5.
쿠키런 같은 게임 만들기 1. 기본 캐릭터 만들기 안녕하세요. 승승이 입니다. 이번에 만들 프로젝트는 '쿠키런 같은 게임 만들기'입니다. 만들고자 하는 게임의 유형은 장애물을 회피하고, 아이템을 먹으면서 달리는 게임류입니다. 해당 프로젝트를 만들면 이런 모습이 될 것입니다. 이것도 일종의 미니게임으로 하드코어하게 만들거나 해도 될 거 같네요. 게임을 만들기 전에 어떻게 만들지 정리해봅니다. 1. 캐릭터- 캐릭터는 아이템을 먹거나 장애물을 피할 수 있어야 합니다. 점프와 지면의 인식이 핵심적인 부분입니다.2. 장애물- 장애물이 캐릭터에 닿으면 게임이 끝납니다. 돌이나 가시같은 장애물과 웅덩이와 같은 낙사용 장애물, 새와 같이 공중에 있는 장애물로 3가지정도가 있습니다.3. 아이템- 아이템은 기본적으로 동전과 같이 점수 획득용이 있고, 속도가 빨라지거나 무.. 2017. 12. 4.
똥피하기 게임 만들기 4. 아이템 만들기(끝) 안녕하세요. 승승이 입니다. 똥피하기의 마지막으로 아이템을 만들어 보겠습니다.아이템은 몇초에 한번씩 떨어지게 하고, 그 아이템을 먹으면 좋은 효과를 발생하도록 하는 것으로 만들 예정입니다.그래서 생각해봐야 할 것은 아이템을 먹으면 어떤 효과를 나게 할 것인지 정리해봐야 하는데요, 일단 생각해 둔 기능들은 다음과 같습니다. 1. 멈추기2. 속도 느려지게 하기3. 모두 사라지기4. 똥을 모두 작아지게하기 4가지정도면 적당할 것 같네요. 그 외의 복잡한 기능들에 대한 아이디어가 있다면 한번 만들어 보는 것도 좋습니다. 이제 아이템을 만들어 보는데, 스프라이트를 새로 만들어서 아이템으로 정하도록 합니다. 아이템은 게임이 시작하면 주기적으로 '복제하기'를 통해 만들어 냅니다. 메인 함수들은 위와 같습니다. ite.. 2017. 11. 25.
똥피하기 게임 만들기 3. 난이도 만들기 안녕하세요. 승승이 입니다. 이제 게임의 재미의 요소로 난이도의 증가 설정 및 아이템이나 다른 기타 여러가지의 이벤트 발생을 추가적으로 만들어 볼까 합니다.이전까지는 기본적으로 간단하게 똥피하기를 만들었다면, 여기부터는 제작자의 창의성이 요구되는 부분입니다. 즉, 난이도를 어느정도로 설정할까, 아이템은 어떻게 만들까 등등이 될 것입니다. 난이도는 제작자와 테스터들이 계속해서 플레이 하면서 적당한 난이도를 만들어 줘야 하기 때문에 어떻게 만드느냐는 제작자의 몫입니다. 가장 좋은 것은 처음에는 쉽다가 서서히 어려워지면서 플레이어의 도전정신을 자극하는 것이 좋습니다. 처음부터 어려우면 재미가 없고, 후반까지 쉬우면 게임을 공략하는 재미가 반감될 것입니다. 이런 똥피하기 류의 미니게임류는 플레이 시간이 1분 수.. 2017. 11. 21.
똥피하기 게임 만들기 2. 충돌처리(~에 닿았는가), 사망처리 안녕하세요. 승승이 입니다. 지난번에 만든 똥피하기에서 똥을 맞았을 때 캐릭터의 게임오버, 그리고 똥이 바닥에 들어가면 사라지기 등등의 게임의 기본적인 틀을 이어서 만들어갈 예정입니다.게임의 요소중에서 가장 기본적인 틀 들을 만들 것인데요, 게임의 규칙과 게임오버 조건 등을 만들어 볼 수 있습니다. 이번 똥피하기 게임에서 가장 중요한 룰은 똥에 맞지 않는 것입니다. 이전 포스팅에서는 단순히 똥을 만들어 내서 떨어진다면 여기서는 그 똥을 맞으면 게임 오버가 되는 것이 핵심 요소가 됩니다. 그래서 똥에 닿았는가 아닌가를 판단하는 것이 중요한데, 게임을 단순하게 만들기위해서 일단 가장 간단한 방법으로 소개하기로 하였습니다. 1. 똥의 충돌 처리일단 똥이 캐릭터에 맞았을 때를 판단해야 하는데요, 일단 블록중에 .. 2017. 11. 20.