타워 게임을 어떻게 만들어야 할 것인가? Study+more

타워 게임을 어케 만들어야 할까여?

클래스를 어케 구성해야 할지를 모르겠네영..

우선, 학교에서 배운대로 요구사항을 작성한 다음에 요구사항에서 클래스를 도출해 보도록 하지영.
(딱히, 다른 대안이 없어서 이런짓을 하고 있다능..;;)

음, 우선 제가 원하는건, 고정된 맵이 등장하구요. 아, 맵은 한 화면 크기예요. 다시말해 스크롤되거나 그런건 없다는 말이지여.
그다음에 지도에는 딱 길 하나가 존재해요. 구불구불해도 되고 직선이어도 되고 뭐, 암 상관 없긴 한데, 어쨌든 출발에서 도착까지 이어지는 길이 일방통행 인거예요. 중간에 교차로 막 이따위꺼 나오면 안되여.
그리고 지도에 적을 공격할수 있는 타워가 있어여. 이 타워는 사용자가 짓게되여. 타워는 여러가지 종류가 존재할수 있어여. 그리고 각 타워는 자신만의 공격 범위를 가지고 있지여. 물론, 공격력도 각기 다르지여.
웅, 그리고 적들은 이동속도가 달라여. 근데, 일방통행이잖아여. 그래서 한 단계에서 나오는 적은 모조리 같은 녀석이 나와여. 즉 적 10마리가 출발에서 도착지까지 이동한다고 하면 동일한 적 10마리가 나오게 되는거지여. 적은 단계가 넘어가면서 바껴여.

원평희 추가:
적은 한방에 죽는게 아니라면 맷집이나 체력이 있어야 할것 같구.. 또.. 이름이라던가.. 위치좌표라던가.. 있으면 좋을것 같은데요..
흠.. 유저 클래스도 만들어주면 좋지 않을까요.. 남은 체력이라던지.. 돈.. 점수 등이 필요할 것 같아요..

장씨 추가:
먼저 인터페이스가 들어가야 합니다. 타워를 설치할 메뉴가 없어서는 안 됩니다. 그 외에도 중간중간 데이터를 세이브 하거나, 일시 정지를 시킬 수 있는 부분, 타워 내지는 다른 요소를 얻은 포인트로 강화할 수 있는 부분도 필요합니다. 게임 도중에 타이틀로 돌아갈 수 있도록 하는 부분도 필요하고, 사운드를 사용할 경우 이에 따른 볼륨 설정 메뉴도 필요합니다.
맵같은 경우는 적들의 통행 경로에는 타워를 짓지 못 하고, 그 이외의 경로에 타워를 짓도록 구분되어야 하는데, 간혹 이런거 안 하는 TD도 있긴 하지만 대체로는 지을수 있는 장소와 지을 수 없는 장소를 구분해 놓습니다.
그리고 게임 오버의 조건으로 일정 횟수의 적의 침공을 당하거나, 또는 기지나 거점등에 적이 접근하여 공격을 당해 횟수 또는 생존점수가 깍이면 게임 오버가 되도록 하는 이 부분도 있어야 됩니다.
타워 내지는 몹에게 상태 이상에 대한 내성 및 해당 상태이상을 받아들일 부분도 필요합니다. 대체로 타워디펜스에서는 공통적으로 적을 느리게 하는 슬로우는 꼭 들어가는 편입니다.
타워의 공격 타입에 대한 설정도 필요합니다. 보통 개틀링과 같은 연사 단발형, 미사일과 같은 범위형 스플래쉬, 레이저와 같이 타겟팅한 적을 계속 공격하는 지속형등이 있고, 보통 단발형은 타겟팅한 목표를 알아서 추격하는 형태지만 스플래쉬같은 경우에는 처음 지정한 위치를 그대로 따라가기만 하는 형태인 경우도 있습니다. 레이저 지속형 계통에는 플레임타워처럼 화염이펙트 전체에 판정이 붙어 있는 스플래쉬형태도 있는 경우가 있습니다. 
적을 쓰려뜨렸을때 얻을 수 있는 금액도 설정해야 합니다. 적의 이동경로를 만드는 방식이 여러가지가 있겠지만, 대체로는 지정된 이동방향을 설정하고 그대로 가게 하는 방식이 있고, 다른 하나는 유저가 타워를 지을 수 있는 영역을 가지 못 하도록 막아놓고 길이 막혔을 경우 돌아가도록 AI설정을 해 놓는 경우가 있습니다.

여기서 간단히 추출할수 있는 클래스는 '맵', '타워', '적', '유저' 밖에 없는건가여?

속성은
맵 : 고정, 한화면, 일방통행, 타워, 적
타워 : 종류, 공격 범위, 공격력, 소요금액
적 : 이동속도, 종류, 위치, HP, 소유금액, 이름 
유저 : 돈
메뉴 : 저장, 일시정지, 타워 업그레이드, 게임 중지

정도를 추출해 냈는데.. 음...

뭐가 더 있어야 할까여?

`장씨` 님이 덧글로 달아주신 내용중, 제 수준에서 가능하지 않은 부분은 strike 처리했습니다. : )

다음번에는 요 추출한  (추상적인)클래스를 다이어그램으로 표현해 보도록 하겠습니다. : )

이글루스 가든 - 게임 프로그래머 되기

트랙백

이 글과 관련된 글 쓰기 (트랙백 보내기)
TrackbackURL : http://handmade.egloos.com/tb/5117278 [도움말]
  • 다이어그램 작성....?! 2009/11/23 20:29 #

    타워 게임을 어떻게 만들어야 할 것인가? 이런거 처음해봐서리.. 어케 해야 할지를 모르겠네. 우선, 추출된 클래스를 다이어그램으로 만들어 봤음.속성(멤버 변수)이나 멤버 함수등은 나중에 추가하도록 하고, 갯수가 많아질수 있는것들은 추상 클래스를 두고 상속 받도록 했음. 대충 스샷을 올릴테니, 이상한거 지적좀 부탁드림.(이상한게 너무 많아서 지적이 불가능 하다면, 이상한게 너무 많아서 지적이 불가능하다고 적어주시면 감사) &n...... more

덧글

  • 원평희 2009/11/08 21:25 # 삭제 답글

    적은 한방에 죽는게 아니라면 맷집이나 체력이 있어야 할것 같구.. 또.. 이름이라던가.. 위치좌표라던가.. 있으면 좋을것 같은데요..
    흠.. 유저 클래스도 만들어주면 좋지 않을까요.. 남은 체력이라던지.. 돈.. 점수 등이 필요할 것 같아요..
  • 해태 2009/11/09 00:33 # 삭제 답글

    자네 지금 미국인가? @@
  • 승네군 2009/11/09 18:49 # 삭제

    진작부터 한국이라네.

    연락좀 하고 살쥐? 2012를 같이 볼 사람이 없다네..

    아.. 설마 애인이 생겼는가??? 부..부럽;
  • 기아 2009/11/09 09:45 # 삭제 답글

    역시 게임은 그래픽이 좋아야@@
  • 장씨 2009/11/09 12:41 # 답글

    먼저 인터페이스가 들어가야 합니다. 타워를 설치할 메뉴가 없어서는 안 됩니다. 그 외에도 중간중간 데이터를 세이브 하거나, 일시 정지를 시킬 수 있는 부분, 타워 내지는 다른 요소를 얻은 포인트로 강화할 수 있는 부분도 필요합니다. 게임 도중에 타이틀로 돌아갈 수 있도록 하는 부분도 필요하고, 사운드를 사용할 경우 이에 따른 볼륨 설정 메뉴도 필요합니다.

    맵같은 경우는 적들의 통행 경로에는 타워를 짓지 못 하고, 그 이외의 경로에 타워를 짓도록 구분되어야 하는데, 간혹 이런거 안 하는 TD도 있긴 하지만 대체로는 지을수 있는 장소와 지을 수 없는 장소를 구분해 놓습니다.

    그리고 게임 오버의 조건으로 일정 횟수의 적의 침공을 당하거나, 또는 기지나 거점등에 적이 접근하여 공격을 당해 횟수 또는 생존점수가 깍이면 게임 오버가 되도록 하는 이 부분도 있어야 됩니다.

    타워 내지는 몹에게 상태 이상에 대한 내성 및 해당 상태이상을 받아들일 부분도 필요합니다. 대체로 타워디펜스에서는 공통적으로 적을 느리게 하는 슬로우는 꼭 들어가는 편입니다.

    타워의 공격 타입에 대한 설정도 필요합니다. 보통 개틀링과 같은 연사 단발형, 미사일과 같은 범위형 스플래쉬, 레이저와 같이 타겟팅한 적을 계속 공격하는 지속형등이 있고, 보통 단발형은 타겟팅한 목표를 알아서 추격하는 형태지만 스플래쉬같은 경우에는 처음 지정한 위치를 그대로 따라가기만 하는 형태인 경우도 있습니다. 레이저 지속형 계통에는 플레임타워처럼 화염이펙트 전체에 판정이 붙어 있는 스플래쉬형태도 있는 경우가 있습니다.

    적을 쓰려뜨렸을때 얻을 수 있는 금액도 설정해야 합니다. 적의 이동경로를 만드는 방식이 여러가지가 있겠지만, 대체로는 지정된 이동방향을 설정하고 그대로 가게 하는 방식이 있고, 다른 하나는 유저가 타워를 지을 수 있는 영역을 가지 못 하도록 막아놓고 길이 막혔을 경우 돌아가도록 AI설정을 해 놓는 경우가 있습니다.

    참고하기에 좋은 몇가지 디펜스류를 적어봅니다.

    http://starcraft2.pro/beta
    가장 심플한 형태의 구성으로 높은 완성도를 지니고 있습니다

    http://www.kongregate.com/games/preecep/desktop-tower-defense-1-5
    길찾기 AI를 사용한 TD입니다.

    http://armorgames.com/play/4409/epic-war-3
    TD는 아니더라도 디펜스류의 일종으로 다른 컨셉의 게임도 있습니다.

    http://armorgames.com/play/4410/paper-war
    플레이어가 공격을 담당하기도 하는 타입의 디펜스류 입니다.
  • 승네군 2009/11/09 18:54 # 삭제

    죄송합니다. 주말까지 틈틈히 정리하도록 하겠습니다.
    직장을 다니다보니 시간이 잘 안나는군요..T^T

    가르침 감사합니다.(__)
덧글 입력 영역