본문 바로가기

렌파이/게임 제작하기

비주얼 노벨 만들기

렌파이로 비주얼 노벨을 만드는 스크립트는 텍스트 어드벤처와 크게 다르지 않습니다. 다만 아래 스크립트를 추가해야 합니다.

스크립트


narrator = NVLCharacter(None)

narrator 는 말하는 사람이 정해지지 않은 대사, 그러니까 따옴표 적힌 문장 한 줄만 적힌 대사에 적용되는 캐릭터입니다. 고로 위 스크립트에서는 narrator 에 NVLCharacter 를 지정해 해설로 쓰이는 대사를 비주얼 노벨 타입으로 바꾸었습니다(novel 에서 모음만 빼면 NVL이니 기억하기 어렵지 않습니다)

Character 안에 None 을 입력한 것은 대사 치는 사람의 이름이 없다는 뜻입니다.

menu = nvl_menu

선택지를 만드는 menu 명령문에 nvl_menu에 저장된 비주얼 노벨 모드 선택지 특성을 저장한 것입니다. 이렇게 해야 menu 명령문을 쓸 때 선택지가 따로 뜨지 않고 대사창 안에 나타나게 됩니다.

adv_menu = menu

기존 menu 문에 저장된 선택지 특성을 다른 변수에 저장한다는 의미입니다. 비주얼 노벨 모드만 쓸 거라면 큰 의미는 없습니다만 만약을 대비해서...

nvl clear

nvl 모드에서 대사 스크립트를 계속 적고 확인을 해보면 대사들이 알아서 지워지지 않고 화면 바깥에까지 넘어서 대사가 출력되는 모습을 확인할 수 있습니다. 이같은 상황을 방지하려면 적당한 위치에 nvl clear라는 명령어를 이용해야 합니다.



window show / window hide

그림을 바꾸거나 장면이 바뀔 땐 텍스트 창이 나타났다 사라지도록 만들어야 합니다. 텍스트 창을 나타내려면 window show, 텍스트 창을 숨기려면 window hide 를 입력합시다.

이 외 명령문은 텍스트 어드벤처 만들었을 때 썼던 것과 같습니다. 시험삼아 스크립트를 작성해보면 비주얼 노벨에서 흔히 보던 화면을 볼 수 있습니다.

FAQ

텍스트 창이 화면을 다 가려요.



대사창의 배경과 화면 사이의 거리를 픽셀단위로 조정하는 스크립트입니다. 그림에는 위, 왼쪽만 나타냈지만 xmargin 은 좌우, ymargin 은 상하방향 양쪽 모두를 가리킵니다. 숫자는 적당한 값으로 바꿔주면 됩니다.

선택지 색이 마음에 안 들어요


등호 오른쪽에 있는 값을 임의로 수정하면 됩니다. 따옴표 안에 적어야 하며, 이 때 적는 값은 HTML에서 쓰는 색상코드와 형식이 같습니다. 앞에 여섯자리는 색상, 맨 마지막에 두 글자는 색상의 투명도를 가리킵니다. 자세한 내용은 이 페이지의 색상 부분을 확인하세요.

대사창 안의 글씨 위치를 바꾸고 싶어요