2025년 8월 1일 금요일

DW의 지하실 제작 #6 - 자동 데모, 난이도 설정 및 이어하기

@ 오토플레이 데모


게임의 규칙은 복잡하지 않습니다만, 아무런 설명도 없으면 좀 그렇죠?ㅎ

첫 스테이지에서 자동으로 진행되는 데모를 넣어보았습니다.

화면 아래에 간단히 설명도 붙였구요.

타이틀 화면을 가만히 두면(약 20초), 데모플레이가 시작됩니다.




@ 난이도 설정


새 게임 진입 시 난이도를 고를 수 있습니다.

쉬움, 보통, 어려움으로 3가지이구요. 기본 선택은 '보통'입니다.

난이도에 따라 회복 아이템의 개수, 몬스터 종류 비율이 달라집니다.

'어려움' 난이도에서는 '폰' 아이템이 시작점이 아닌 랜덤한 위치에 생성됩니다.




@ 이어하기


게임을 세이브하면 카트리지에 데이터가 저장 후 타이틀 화면으로 돌아갑니다.

시작 메뉴에서 '이어하기'를 선택해서 계속 플레이할 수 있습니다.


아래 키를 누르면, 아무때나 세이브 가능합니다.

키보드: SPACE 또는 ESC

조이스틱: A

조이메가: B 또는 START



@ 그 밖의 정보


스테이지 클리어를 위해서는 실제 키보드로 한글 단어(또는 문장)을 입력해야합니다.

만약 키보드를 쓸 수 없는 환경에서는 GRAPH 키를 눌러서 입력을 스킵하세요.

조이스틱(버튼B), 조이메가(버튼C)를 눌러도 스킵됩니다.


게임 플레이는 당연히 하이리스크 하이리턴입니다.

X-II 종류에 상관없이 배터리를 넣어서 켜면 모두 득점이 됩니다.

HP의 여유가 있다면, 모든 X-II를 다 켜서 고득점을 노려주세요!

'Z80 몬스터'가 튀어나오는 '요상한 X-II'는 주의하시구요.

참고로 X-II 종류는 레이더에서 색깔로 확인할 수 있습니다. (하양, 노랑, 빨강)


모든 몬스터는 장애물 또는 아이템(X-II, 배터리 등)을 통과하지 못합니다.

따라서 배터리를 다 줍는 것도 적에게 도움이 됩니다ㅋ



마지막으로 오토플레이 데모와 초반 진행 모습을 찍어보았습니다.

세이브 및 이어하기도 포함되어 있으니 참고하시구요.




2025년 7월 20일 일요일

DW의 지하실 제작 #5 - 게임 플레이 구현

재료(?)들은 준비되었으니, 이제 본격적인 코딩으로 들어갑니다.

.

.

사실 그냥 노가다입니다요~ ㅎ.ㅎ



내용을 설명으로 적어보면요...


플레이어는 바닥에 떨어진 배터리를 줍는다. 최대 5개 소지가능.

X-II에 배터리 2개를 넣으면 전원이 켜짐. 안켜지는 고장난 X-II도 존재.

적과 부딛히거나 바닥의 누액을 밟으면 체력이 소모됨.

피로회복제로 체력 회복 가능.


적들(유령 및 몬스터)는 주변의 켜진 X-II로 돌아가려함.

X-II에 적 하나가 들어가면, 화면에 한글 글자 1개가 나타남.

해당 스테이지에 맞는 한글 글자를 모두 얻으면, 최종 X-II를 얻을 수 있음.

최종 X-II에서 키보드 테스트(한글 입력)를 완료하면 스테이지 클리어!


주변의 방들은 서로 연결되어있으며, 휴대폰 아이템을 얻으면 화면에 지도가 나타남.

지도상에는 정상적인 X-II(흰색)와 고장난 X-II(빨간색)가 표시되며,

정상 X-II를 켜면 파란색으로 바뀜.


아이큐1000, 아이큐2000, 데이터레코더 등의 아이템으로 보너스 점수 획득가능.


... 이렇습니다. 글로 적으니까 복잡하네요ㅋ



그냥 영상으로 보시죠~ ㅎ.ㅎ/




'DW의 지하실'의 플레이는 이렇게 완성되었습니다.

스테이지 데이터는 아직 다 만들어진 상태는 아닌데요, 며칠 더 삽질이 필요하겠습니다.


2025년 7월 16일 수요일

DW의 지하실 제작 #4 - 사운드 넣기

게임이 MSX2 기본 사양(물론 VRAM은 128KB)이라, 사운드도 그냥 PSG만 사용합니다.

CPU 여유가 되면 FM도 넣어볼까 생각은 해봤었는데, 그래픽 때문에 좀 불가능할 것 같네요

BGM과 효과음도 모두 PSG만 사용하니까, 효과음 출력 시 BGM 한채널이 MUTE되는 걸 볼 수 있겠습니다!


먼저 타이틀에 쓰일 곡으로 '드뷔시 달빛'을 템포를 약간 올려서 넣었구요.

게임 메인 BGM은 '라데츠키 행진곡'입니다.

제목은 기억 못하더라도(제가 그랬...ㅋ) 곡 자체는 귀에 익으실 겁니다요 ㅎ.ㅎ


사운드 루틴은 VDP의 스캔라인 인터럽트를 활용합니다.

아무래도 V블랭크 구간에서는 그래픽 작업때문에 CPU가 바빠서 사운드 타이밍을 밀었습니다~


아래는 CPU로드 그래픽을 켠 상태이니, 참고하세요.

색칠된 스캔라인 개수가 CPU로드를 나타낸다고 보시면 됩니다.

사운드는 한 프레임 출력의 절반쯤에서 처리되고 있어요.




사운드는 딱히 설명할 부분이 없네요. 으흠...

그냥 영상으로 구경하시죠~ ㅎ.ㅎ/



그럼, 다음 편에서 뵈어요~ ㅎ.ㅎ/