저번에는 힘내서 타이틀을 만들어봤습니다. 타이틀 만드는 것만으로도 벌써 귀찮아요... 라고 생각하실 수 있습니다. 걱정하지마세요, 정상입니다. 처음에는 명령어 익히고 외우느라 어렵다고 느끼지만 익숙해지면 '이건 노가다의 영역이다'라고 생각하게 되니까요.


각설하고 오늘은 게임 본편을 만들어봅니다.



목차


  • 필수로 입력해야하는 것들
    • 북마크
    • 모두지우기
    • 버튼지우기
    • 스크립트 기본세팅.txt
    • 화면 색깔
    • 대사창 설정
  • 대사를 입력해봅시다! - 기본편
    • 대사잇기
    • 대사새줄
  • 대사를 입력해봅시다! - 추가기능 편
    • 페이스cg 기능으로 말하는 사람의 이름을 표시해봅시다.
    • 회상 창에서 캐릭터의 이름을 표시해봅시다.
  • 선택지를 만들어봅시다! 기본편
    • 선택지 바로 전의 대사를 지우고 싶어요!
    • 선택지 글씨색을 바꾸고 싶어요!
    • 선택지 위에 마우스를 올렸을 때 나오는 색을 바꾸고 싶어요!
  • 선택지를 만들어봅시다! 응용편
    • 선택지 버튼 만들기
    • 선택지버튼영역
    • 딜레이 명령어 추가하기
    • +a
  • 스크립트와 이미지 파일 공개



필수로 입력해야하는 것들



북마크 


위 글대로 진행한 뒤라면 여러분에게는 타이틀.txt와  본편 게임을 작성할 스크립트 파일 하나가 있고 첫 줄에 북마크까지 써있을겁니다.


"전 타이틀 화면같은 건 안 만들고 게임 본편만 만들거라서 1편 내용대로 안 했어요!" 하시는 분들도 계실 거라고 생각합니다.

그렇다면 게임 본편을 만들 스크립트 첫 줄에 '북마크 [북마크이름]' 을 기입해줍시다.  1편에서도 설명했지만 북마크는 스크립트 내의 이동, 스크립트 간의 이동을 하게 해주는 매우 중요한 기능이기 때문에 첫번째 줄에는 무조건! 북마크를 박아줍시다. 이름은 본인이 편한 걸로 지으셔도 됩니다.



그러니까.. 이런 게 있으면 됩니다.


대사창이 저렇게 찌그러진 이유는 대사창을 아직 설정하지 않아서 그렇습니다. 제가 설정한 대사창스킨이 흰색이라 검은 화면에 잘 보이는 것 뿐이지 화면 색을 흰색으로 해두면 검은색 기본 대사창스킨도 시작할 때 찌그러져있다는 사실을 확인 하실 수 있습니다.

이렇게요. 대사창을 설정하지 않으면 기본 대사창이든, 이쁘게 꾸며둔 대사창이든 저렇게 공평하게 찌그러져있습니다.





모두지우기


아무튼 북마크를 입력했으니 이제 다음 줄에는 뭘 입력해야할까요? 캐릭터cg 부터? 대사창? 배경cg? 브금? 다 틀렸습니다.  저희는 타이틀 메뉴에 있는 것들을 전부 지워줘야합니다.

본편 스크립트에 이렇게 작성해봤습니다. 원래대로라면 저렇게 검은 화면에 대사창과 함께 제가 입력한 대사가 나와야합니다.  

이제 타이틀 화면에서 시작하기를 눌러보겠습니다.



보다싶이 로고, 타이틀 배경, 버튼 전부 그대로인채 대사창이 그 위에 뜹니다. 물론 저희가 타이틀 화면을 만드느라 좀 고생하긴 했지만... 이렇게 게임 내내 타이틀 화면을 자랑하고 싶지는 않잖아요.


첫줄의 '북마크 [이름]'  아래에 '모두지우기' 를 입력합니다. 이 명령어 하나만 있다면 화면에 보이는 모든 걸 지워버립니다. 심지어 배경음악도 자동으로 치워줍니다.

 이걸로 한 건 해결!


참고로 타이틀 화면을 만들지 않으신 분들도 혹시라도 스크립트의 맨 처음으로 이동해야할 일이 있을 때를 대비해 모두지우기를 입력해주시면 좋습니다.

뭐, 처음으로 돌아가기 버튼이나 선택지를 만들 수도 있잖아요. 그 때를 대비한 보험이라고 생각합시다.



버튼지우기

'모두지우기' 도 지우지 못하는 것이 있습니다.  버튼들입니다. 때문에 얘네들을 지우는 명령어를 입력해줘야합니다. '모두지우기' 아래에  '버튼제거' 를 입력해줍시다.




스크립트 기본세팅.txt


그 다음으로 저희는 ' 스크립트 기본셋팅.txt ' 를 입력해야합니다. 이것도 필수로 입력해야합니다.  기본셋팅.txt 은 메뉴를 불러오는 스크립트입니다. 즉,  이걸 입력 하지 않으면 메뉴 창이 뜨지 않습니다. 세이브, 로드, 설정 이런 게 불가능 해지는 거에요.

세이브, 로드가 불가능한 비쥬얼 노벨 게임은 뭐.. 반강제 로그라이크 게임이죠. 뭐 잘못 눌렀더니 처음부터 다시 하게 하는.  로그라이크 게임을 만들어서 플레이어들의 혈압을 올리고 싶은 마음이 없으시면 꼭 꼭 넣어줍시다.





화면 색깔


배경에 아무것도 없을 때 화면에 보이는 색입니다. 이걸 입력하지 않으면 스크립트가 아예 실행이 안 됩니다.  입력은 '화면색깔 [R] [G] [B] [투명도]' 입니다만 투명도를 빼고 '화면색깔 [R] [G] [B]' 만 입력해도 됩니다.

저는 걍 0 0 0 (검정색) 이나 255 255 255 (하얀색) 을 사용하지만 다른 색을 넣고 싶으신 분들은 

도움말 창에 보이는 색깔 넣기 버튼을 누르시면 저렇게 색을 고를 수 있는 창이 뜹니다. 저기서 색을 고르고 확인을 누르면 스크립트 창에 방금 고른 색의 RGB가 자동으로 입력 됩니다.  배경 색깔 외에도 대사의 색 등을 바꾸고 싶으실 때 괜히 포토샵이나 클튜 키지 말고 유용하게 쓰도록 합시다.(클튜에서 색 찍어 쓰다가 한참뒤에 이 기능을 알았던 바보멍청이 올림)






대사창 설정


그 다음! 이제 대사창 설정을 입력해야합니다. 위에서도 말했지만 대사창 설정을 하지 않으면 저희들의 대사창은 찌부러진채 게임이 실행됩니다. 저희가 필수로 입력해야하는 대사창 설정 명령어들은 다음과 같습니다


  • 대사창영역  
    •  대사창이 표시될 위치와 크기를 정합니다. 명령어는 '대사창영역[x][y][가로크기][세로크기]' 입니다.  저같은 경우는 x, y좌표 찾는게 귀찮아서 대사창을 화면해상도와 같은 크기의 배경이 투명화 된 png로 만들어둡니다. 이렇게 하면 좌표 안 찾고 '대사창영역0 0[화면해상도가로크기][화면해상도세로크기]' 만 쓰면 되니까 편하거든요. 
이런식입니당
  • 대사출력영역
    • 대사가 출력 될 영역입니다. 명령어는 '대사출력영역[x][y][가로크기][세로크기]' 입니다.이건 좌표를 직접 찍어야합니다. 가로길이를 넘는 대사를 입력하면 알아서 대사가 다음줄로 넘어가게 됩니다.  또한 선택지를 대사창에 표시할 때, 선택지 위에 마우스를 올리면 선택지 배경색을 띄울 수 있는데 이 배경색이 칠해지는 영역도 대사출력영역으로 정해집니다. 잘 정해줍시다.
  • 대사그림자
    • 말그대로 출력된 대사의 그림자입니다. 명령어는 '대사그림자 [타입]' 입니다. 없어도 되기는 하는데 이게 있어야 대사가 더 잘보입니다. 
  • 대사줄간격
    • 대사간의 간격을 정합니다. 명령어는 '대사줄간격 [픽셀]' 입니다. 픽셀에는 원하는 숫자를 입력하면 되며, 음수도 가능합니다.
  • 대사크기
    •  앞으로 출력될 대사의 크기를 정하는 명령어입니다. '대사크기 [크기]' 를 입력하면 됩니다. '앞으로 출력될' 대사이기 때문에 이 명령어를 이용해 아래 예시처럼 대사 도중 크기를 변화시킬 수 있습니다.
  • 대사굵게
    • 대사 글씨를 굵게 할지 말지 정하는 명령어 입니다. '대사굵게 [응/아니]' 를 입력하시면 됩니다.  (예시: 대사굵게 응)
  • 대사폰트
    • 대사 폰트를 정합니다. '대사폰트 [이름]' 명령어를 사용하며 이름은 파일명이 아닌, 폰트 이름을 써주셔야합니다. 
  • 대사속도
    • 대사 출력 속도입니다. '대사속도 [시간]' 이고  시간에 적은 숫자가 작을수록 글자가 빨리 출력 됩니다.



다 읽고 나니 입력하기 귀찮죠.  여러분이 딱히 화면해상도나 UI를 건드리지 않았다면 네코노벨 원본 파일의 타이틀.txt 에 아주 복사붙여넣기 하기 좋은 스크립트가 있습니다.

// 간단한 셋팅을 합니다.

화면색깔 255 255 255

대사창영역 0 420 800 209

대사출력영역 20 430 760 157

대사그림자 4

대사줄간격 10

대사크기 30

대사굵게 아니

대사폰트 나눔고딕

대사속도 16

드래그 해서 복사붙여넣기 해줍시다. 화면해상도나 UI를 손보셨다면 대사창 영역과 대사출력영역을 적절히 고쳐주셔야합니다. 그 외에는 취향껏 수정합시다.


대사창 UI를 수정하시는 분들을 위한 팁을 하나 드리자면  대사창 스킨 이미지 파일은 png에  이름은 무조건 '대사창스킨' 으로 하셔서 넣으세요.  Image 파일에 '대사창스킨.png' 파일이 없으면 오류가 생기더라고요. 


+

대사창스킨 명령어는 그럼 뭔가요 -> 기존 대사창을 다른 스킨으로 바꿀 때 쓰는 명령어인데 기존 대사창이 일단 있어야 바꿀 수 있습니다.

이럴 때 쓰는 명령어입니다. 뭔가 재밌게 쓸 수 있는 기능 같기는 한데(대사창에 피 떨궈서 호러 분위기 내기, 캐릭터마다 대사창 스킨 변경해서 쉽게 알아볼 수 있게 하기 같은) 저는... 안 썼습니다. 명령어 입력이.. 귀찮아서....





대사를 입력해봅시다! - 기본편


게임이 실행되기 위해 필수적인 걸 다 입력했습니다. 

비쥬얼 노벨 게임을 이루는 요소는 여러가지 있겠지만 가장 먼저 근 - 본인 대사를 입력해보도록 합시다.  다른 건 몰라도 비쥬얼 노벨은 텍스트가 젤 중요하니까요.


텍스트를 입력을 하려면 대사창을 소환해야합니다.  특히 타이틀을 만드셨던 분들이라면 타이틀.txt에서 대사창을 감춰놨기 때문에 무조건! 

'페이드인 대사창' 명령어를 입력해줍니다.  대사창이 서서히 나타나기를 바라시면 뒤에 숫자를 적당히 기입해줍니다 (예: 페이드인 대사창 1000)


모든 대사는 '대사' 명령어를 쓰고 띄어쓰기를 한 다음 내용을 쓰시면 됩니다.  예시입니다.

대사 "이것은 대사라네."


대사 "비쥬얼노벨을 이루는 중요한 요소지."


대사 "스팀에 오토메 좀 더 출시해줘."


대사 "그리고 스팀 오토메 태그에 제발 남성향 게임 넣지마ㅠㅠㅠ."


대사 "??"


대사 


한번 이렇게 여러 줄을 줄줄이 써보고 f5키를 눌러 테스트 플레이 해보겠습니다.

이럴수가 게임 텍스트가 로딩되자마자 빠르게 다음 대사로 넘어가며 속사포 랩배틀이 시작 되고 맙니다. 이러면 대사를 제대로 읽을 수조차 없으니 빠르게 조취를 합시다.


'대기'명령어를 넣어주면 플레이어가 키를 누를 때까지 스크립트의 다음줄이 실행되지 않게 됩니다. 즉, 클릭할 때마다 대사가 넘어가는 걸 원하신다면 이 명령어를 넣어주면 됩니다. 그리고.. 저희는 이 명령어를 정말 주구장창 쓰게 됩니다. 친해지도록 합시다.


아무튼 대기 명령어를 넣어 대사가 클릭 할때마다 다음 대사로 넘어가게 수정하면 이렇게 됩니다.

대사 "이것은 대사라네."

대기


대사 "비쥬얼노벨을 이루는 중요한 요소지."

대기


대사 "스팀에 오토메 좀 더 출시해줘."

대기


대사 "그리고 스팀 오토메 태그에 제발 남성향 게임 넣지마ㅠㅠㅠ."

대기


대사 "??"

대기


대사 

대기

대사 입력은 어렵지는 않고 많이 귀찮은 작업입니다. 우리 존재 화이팅!




그 외 대사를 입력할 때 쓸 수 있는 기능입니다. 


대사잇기

'대사잇기 [내용]'을 입력해서 사용합니다.  그냥 사용하면 별로 티가 안납니다만 중간에 다른 명령어들을 끼워넣으면서 쓰는 식입니다. 

예시로 중간에 '대기' 명령어와 함께 쓰면 대사의 일부를 먼저 보여주고 클릭시 나머지 대사를 보여주는 식으로 쓸 수 있습니다.

대사 "그리고 스팀 오토메 태그에

대기

대사잇기  제발 남성향 게임 넣지마ㅠㅠㅠ."

대기

이런 걸 입력해두면 아래의 결과물이 됩니다.(커서 빙빙 돌린 후 클릭함)

그 외에도 대사 사이에 효과음을 넣는다던가. 대사 도중 글자 크기를 변경한다든가 등등 활용도가 높은 명령어입니다.  궁금하신 분이 있으면 스크립트 나중에 빼두겠습니다 



대사새줄 

대사가 출력되는 줄을 다음 줄로 옮기는 명령어입니다. 얘는 혼자서는 쓸 수 없고 대사잇기와 같이 써야합니다.  

대사 "그리고 스팀 오토메 태그에

대기

대사새줄

대사잇기  제발 남성향 게임 넣지마ㅠㅠㅠ."

대기

이렇게 입력하면

이렇게 출력됩니다. 대사잇기 대신 대사 명령어를 넣으면 새로운 줄에 입력 되는 게 아니라 평범한 대사 명령어 입력처럼 따로 따로 출력 됩니다.


기본편은 여기까지만 하고 다른 걸로 넘어가봅시다.



대사를 입력해봅시다! - 응용편


페이스cg 기능으로 말하는 사람의 이름을 표시해봅시다.

트친에게 만들어드린 미연시 플레이 스크린샷 입니다. 대사창을 보시면 위에 이름이 있고 아래에 대사 텍스트가 있습니다. 이걸 해볼겁니다. 


하는 방법은 크게 3 가지입니다. 


하나는 대사 기능을 이용해 넣는 것입니다.  예시로 하나 작성해봤습니다.

대사 한줄 출력하는데 8줄이나 입력해야합니다.

 귀찮은 건 둘째치고 스크립트 길이가 너무 늘어나면 렉이 걸리거나 멈추거나 하는 등의 문제가 발생할 수 있습니다. 



두번째 방법은 라벨 기능을 이용하는 것입니다. 대사기능을 사용하는 것 보다는 훨씬 입력이 간단합니다.

라벨 그리고 라벨속성 이렇게 명령어 두 종류만 입력하면 된다는 장점이 있지만 말하는 인물을 바꿀 때마다 페이드아웃을 일일히 넣어야한다는 귀찮음이 있습니다. 또한 대사창을 지울 때 자동으로 같이 사라지지 않아 그때도 페이드아웃 명령어를 기입해줘야합니다.




이 모든 걸 한 줄로 해결할 수 있는 방법이 페이스 CG입니다. 원래는 대사창에 캐릭터의 얼굴 cg를 넣는 기능입니다만 찾아보니 다들 이걸로 캐릭터의 이름 넣고 있더라구요.

아무튼 준비물은 캐릭터의 이름이 있는 배경이 투명화된 png 파일입니다.

페이스CG 명령어는 '페이스CG [파일명] [x] [y]' 입니다.  [x] [y]를 입력 안 했으면 0 좌표에 찍힙니다.

지금 보니 얘네도 화면해상도랑 같은 크기로 만들었으면 xy 좌표를 안 찾고 걍 0 0 으로 해도 됐네요.... ㅎ...


아무튼 명령어를 입력해보면

딱 두줄로 아까와 똑같은 효과가 납니다.  간단!


페이스 cg는 인물을 교체할 때도 페이드인/아웃 명령어를 안 써도 되고 대사창을 지울 때도 알아서 같이 지워진다는 장점이 있습니다.

하지만 입력하기 귀찮잖아요 -> 구글문서 같은 곳에다가 페이스 cg 명령어 써놓고 복사붙여넣기 합시다. 저희에게는 ctrl + C/ crtl + V 가 있습니다.





회상 창에서 캐릭터의 이름을 표시해봅시다.


네코노벨에는 회상창이 있습니다.  뭐 비쥬얼 노벨겜이면 대부분 있긴 하지만.

esc키/마우스 오른쪽키를 눌러서 나오는 메뉴에서 회상 메뉴를 확인하거나 마우스휠을 위로 올리면 회상창을 확인 할 수 있습니다.

이 때 회상창을 확인해보시면 저희가 입력한 대사만 출력되어 누가 무슨 말을 한 건지 헷갈립니다.

다행히 이걸 해결해줄 명령어가 있습니다. '변수' 명령어입니다. 얘는 나중에 또 인사해야되서 설명은 생략하고... 저희가 입력할 명령어는 '변수 회상이름 = "[이름]" ' 입니다.  이번에는 이름만 쓰시면 안 되고 큰따옴표까지 같이 써주셔야합니다.

예시입니다.

보시면 알겠지만 회상이름은 말하는 캐릭터의 이름을 표시해주는 페이스cg 명령어를 입력할 때 같이 세트로 입력하게 됩니다.

그러니 이렇게 둘을 붙여서 정리해두면 편하게 복붙해서 쓸 수 있습니다.  대사량이 많아질수록 복붙으로 아끼는 시간도 늘어납니다.  정리가 귀찮다고 내팽겨치지 말고 꼭.. 정리해둡시다.  (스불재 했던 사람 올림)



선택지를 만들어봅시다! 기본편


비쥬얼 노벨은 플레이어의 선택으로 게임의 전개가 바뀌곤 합니다. 네... 선택지를 만들겁니다.


선택지 명령어는 '선택지 [파일이름] [북마크이름] [선택지내용]' 입니다.  선택지가 작성된 파일의 북마크로 이동하려면 [파일이름]여기라고 입력하면 됩니다. 글로만 보면 헷갈리니 직접 만들어봅시다. 

예시로 프롤로그.txt 파일과 방금 새로 만든 000.txt 파일에 각각 이렇게 적어봤습니다.


프롤로그.txt


대사 "아무튼 선택지를 골라보게."

대기 



//선택지

선택지 여기 1번선택지 1번선택지일세

선택지 000.txt 2번선택지 2번선택지일세


북마크 1번선택지

대사 "1번선택지!"

대기 




000.txt

북마크 2번선택지

(게임 필수설정들 전부 입력)


대사 "2번선택지!"

대기 


입력하면 이런게 나옵니다. 선택지 위에 마우스를 올리면 텍스트 바탕이 빨간색으로 나오구요. 이대로 그냥 냅둘 수도 있지만 선택지 색이라든가, 선택지 배경색이라든가 이것저것 바꾸고 싶으실 수도 있을 겁니다.


선택지 바로 전의 대사를 지우고 싶어요!


간단합니다. 대사와 선택지 스크립트 사이의 줄에  '대사지우기' 이거 하나 입력하면 펑하고 정리 됩니다.

화면상에 출력 되어있는 모든 대사를 지우는 명령어입니다. (회상 출력에 영향x)




선택지 글씨색을 바꾸고 싶어요!

선택지색깔 [빨강] [초록] [파랑] [투명도=255] 을 선택지 앞 줄에 입력하면 됩니다. 투명도는 생략 가능합니다.

(예시: 선택지색깔 255 208 208 )

 앞으로 출력될 선택지 색깔을 지정하는 거라서 이렇게 쓰면 선택지별로 색을 바꿀 수도 있습니다만.... 이러면 선택지가 다 안 뜹니다. 그냥 맘편히 선택지간의 통일감을 줍시다. 색깔은 도움말 바로 옆에 있는 색깔넣기 기능을 이용해 원하는 색을 뽑아 씁시다. 




선택지 위에 마우스를 올렸을 때 나오는 색을 바꾸고 싶어요!

선택지배경색 [빨강] [초록] [파랑] [투명도=255] 을 선택지 전에 입력하면 됩니다. 역시나 투명도는 생략 가능합니다. 얘는 선택지별로 배경색을 바꾸는 것은 불가능합니다. 


이걸 전부 무사히 입력했다면 이렇게 북마크간의 이동이 잘 되는지 확인해줍시다.





선택지를 만들어봅시다! 응용편


얼레벌레 게임 만드는 사람은 필요없는 기능입니다만.. 선택지 UI도 마음대로 바꾸고 싶으신 분들도 계실겁니다. 그걸 위해 선택지버튼 명령어를 써볼겁니다.


이거랑 비슷한 걸 만들어볼겁니다. 왜 접경도시 UI가 여기서 튀어나오냐면.. 제가 예전에 접경도시 트친을 (놀리기) 위해 게임을 만들다만 소스가 남아있어서 그렇습니다. (쓲)


일단 영칠 대사창 UI와 최대한 비슷하게 뭔갈 만들어봤습니다. 마침 화요일이니 시공안개 초기화전에 같이 돌 사람을 찾는 컨셉으로 대사도 넣어줍시다.

 당연하지만 이 ui로 상업적인 게임을 만들면 안 됩니다.ㅎㅎ.... 트친을 놀리기 위해서만 씁시당...




선택지 버튼 만들기

선택지 버튼을 만들어야하니 버튼 이미지를 준비합시다.  영칠은 선택지를 클릭하시 버튼 이미지가 변하니 롤오버 이미지도 만들었습니다. 

인게임 내의 선택지버튼 설명을 가져왔습니다. 이미지나 효과음 부분에는 확장자까지 전부 입력하고 사용하고 싶지 않은 부분은 없음을 입력하면 됩니다.

선택지버튼이라고 해도 '선택지 [파일이름] [북마크이름] [선택지내용]' 에서 이미지와 효과음 기입이 추가 되었을 뿐이라 선택지 명령어 처럼 북마크를 생성하고 기입하는 건 똑같습니다.


그러니까 이런식으로 작성하면 이렇게 됩니다.

영칠 선택지가 흰색이라 흰색 배경에 잘 안 보여서 잠깐 화면 색을 0 0 0 (검정)으로 바꾸고 왔습니다.






선택지버튼 영역


'선택지버튼영역 [X] [Y] [가로크기] [세로크기]' 를 입력하면 됩니다. 선택지 버튼이 나타나는 영역인데 기본설정 영역 값은  '0 100 800 400'입니다.

x,y 좌표는 선택지버튼이 나타나기 시작하는 기준 위치입니다. 가로크기 세로크기는 선택지버튼 영역의 크기입니다. 

선택지 수가 너무 늘어나서 선택지버튼 영역이 부족하다 싶거나 선택지가 출현하는 위치를 수정하고 싶을 때 건드시면 됩니다. 전.. 딱히 안 건듭니다...






딜레이 명령어 추가하기


여기서 선택지 버튼을 만들어보고 테스트 플레이를 실행해보면 선택지 버튼이 0.001초의 딜레이도 없이 클릭하면 튀어나오기 때문인지, 마우스 위치가 선택지 버튼 위에 있을 때 선택지가 선택된 것으로 판단 되어버립니다.

그러니까 플레이어는 그냥 대사를 넘기려고 화면을 클릭했을 뿐인데, 원하지 않게 다음 줄에 나올 선택지도 같이 한꺼번에 클릭하게 된다는 거죠.


좀 해결하기 귀찮아보이는 문제이지만 사실 이거 하나만 입력하면 됩니다.


'딜레이 [시간]' 을 넣으면 그 시간만큼 클릭을 하든 뭘하든 스크립트의 다음줄로 넘어가지 않습니다. 시간은 1/1000초 단위입니다.

이걸 이런 식으로 선택지 버튼이 나오기 직전에 입력해주시면 마우스위치가 좋지 않았다는 이유로 강제로 선택지가 강제로 선택되는 문제가 해결됩니다. 이걸로 한 건 해결!







+오마케

이건 영칠 UI 패러디니까 영칠 UI 처럼 보이게 해결해보겠습니다.

준비물은 불투명도  좀 낮은 검은색 이미지입니다. 회색이 아니라 검은색 이미지의 불투명도를 낮춘 이미지입니다. 다른 방법도 있겠지만... 전 야매러니까요.  야매로 합니다.


아무튼 저 이미지 파일을 cg 명령어와 페이드인 명령어를 이용해서 불러옵니다. 

까먹으신 분들이 있으실까봐 쓰는 cg명령어 와 페이드인 명령어

cg [이름]  [파일명] x좌표  y좌표  세이브슬롯등장여부(응)

 페이드인 [이름] 소요시간

이렇게 입력하면 검은색 이미지가 다 로딩 될 때까지 선택지 이미지가 뜨지 않아 딜레이와 유사한 기능을 합니다.  한 번 입력해봅시다.

"엥 할머니 다른건 다 1편에 써있었는데  cg 명령어 '응' 옆에 있는 2는 뭐에요? 할머니는 거짓말쟁이~"

사실 저번 cg 명령에서 빼먹은 게 하나 있었습니다. 하도 안 쓰던 기능이라 그만...^ㅇ^


바로 출력순서 입니다. 출력순서란 무엇인가... 프로그램 내 도움말을 봅시다.

고마워요 도움말왜건! 아무튼  -200 부터 +200까지 오브젝트들의 출력 순서를 정하고, 숫자가 작을 수록 더 앞에 있게 되는 것입니다.  대사창의 출력순서 기본값은 50, 라벨은 0 이니까 둘이 겹쳐 놓으면 대사창 위에 라벨이 있는 식입니다.

아무튼 이 생략 가능한, 얼레벌레 사람들은 별로 쓸 일 없는 값이 왜 갑자기 튀어나왔나. 

이걸 입력하지 않으면 대사창의 값(50)이 불투명 검정 이미지 파일보다 대사창의 출력순서 값이 적어서 대사창이 검정 이미지보다 더 위에 있게 됩니다.

하지만 영칠 ui를 보시면 아시겠지만 선택지가 나올 때, 대사창까지 같이 어두워져야하기 때문에 저희는 이 이미지의 출력순서 값을 50보다 줄여야합니다. 저는 2를 입력했지만 50이하면 딱히 상관 없습니다. 그 때 그 때 게임 상황을 보고 적당한 값을 입력해주세요.


아무튼 출력순서까지 조정하면

대충 이런 그럴싸한게 나옵니다.  단점은 매 선택지 북마크 시작마다 검정 이미지 페이드아웃 명령어를 입력해서 이미지를 치워야한다는 것입니다.  역시나 명령어를 정리한 곳에 잘 써놔서 열심히 복사붙여넣기 합시다.




스크립트와 이미지 파일 공개


이걸로 대사 입력과 선택지 추가의 기본적인.... 진짜 기본적인 설명이 끝났습니다.

작성했던 스크립트는 참고용으로 올려놓습니다.

프롤로그.txt

000.txt

요건 이미지 파일!


다음은 이미지, bgm... 등의 멀티미디어 관련된 내용을 들고 올게요..

궁금한 점 있으면 멘션이나 댓글로 남겨주세요! DM은 알림이 묻힙니다 ㅠㅠ





눅눅한 종이봉투님의 창작활동을 응원하고 싶으세요?