게임 개발을 마무리하고 배포 직전에 체크해야할 부분을 짚어본다.
1. 코드, 미디어 파일 숨기기
PC 버전을 배포하다가 게임 파일 압축을 풀면 소스 코드와 미디어 파일이 그대로 노출되어서 좀 당황스러웠다.
찾아보니 build.classify() 를 통해서 빌드 생성할 때 자료들(스크립트, 이미지 등)을 .rpa 확장자로 아카이빙할 수 있다.
options.rpy 파일에 주석으로 처리되어 있을 것이다. 이 부분을 수정하면 된다.
아래 코드는 렌파이 문서에서 가져온 코드에 조금 추가하였다.
# Declare three archives.
build.archive("scripts", "all")
build.archive("images", "all")
build.archive("media", "all") # 비디오, 오디오 대상
# Put script files into the scripts archive.
build.classify("game/**.rpy", "scripts")
build.classify("game/**.rpyc", "scripts")
# Put images into the images archive.
build.classify("game/**.jpg", "images")
build.classify("game/**.png", "images")
# 비디오, 오디오 대상
build.classify("game/**.mp4", "media")
build.classify("game/**.webm", "media")
build.classify("game/**.mp3", "media")
build.classify("game/**.ogg", "media")
게임 배포 후 게임 압축 해제를 하면 아래와 같이 .rpa 파일에 자료들이 담겨있는 걸 볼 수 있다.
(그런데 .rpa 파일 unzip 해주는 방법이 있더라)
게임 파일 압축 후 확인 경로: 게임명-버전-pc > game
그런데 안드로이드 버전에서는 변환이 안 되더라...
.apk 파일을 압축 해제하면 폴더 및 파일명 앞에 'x-'가 붙어있는데, 이것 때문이 아닐까 생각한다.
.rpa 변환하는 것이 용량 압축까지 해주는 건지는 확인 안 해봤다.
관련 문서: www.renpy.org/doc/html/build.html#archives
2. Persistent 데이터, 세이브 파일 삭제
|
게임 프로젝트 디렉토리 > saves - navigation.json 파일 제외한 모든 파일 삭제 |
본인이 테스트하면서 저장하지 않아도, 자동으로 세이브 되는 경우가 있으니 반드시 확인한다.
Persistent 데이터는 위 경로에서 파일을 지우거나 렌파이 런처에서 Delete Persistent 메뉴를 통해 삭제 가능하다.
3. 게임 실행 아이콘
1) PC 버전 변경 방법
|
a. 게임 프로젝트 디렉토리 - icon.ico 파일 추가 b. 게임 프로젝트 디렉토리 > game > gui - window_icon.png 파일 추가 |
실행 파일 (.exe) 아이콘과 게임 실행 화면의 윈도우 바 아이콘이 변경됨
2) 안드로이드 변경 방법
|
렌파이 설치 디렉토리 > rapt > templates android-icon_foreground.png 와 android-icon_background.png 수정 |
참고로 기본 렌파이 아이콘은 캐릭터만 있는 foreground 파일과 하늘색 배경이 있는 background 파일로 이뤄져있다.
나는 foreground에 아이콘과 배경이 다 있어서 background 파일은 그대로 냅두고 foreground 파일만 덮어씌었다.
관련 문서: www.renpy.org/doc/html/android.html#icon-and-presplash-images
4. 웹, 안드로이드 버전 로딩 화면 (Presplash)
웹과 안드로이드 버전은 게임을 시작하기까지 아래와 같은 단계를 거친다.
|
게임 실행 > 로딩 화면 > label splashscreen > 시작 메뉴 화면 > 게임 시작 (label start) |
PC 버전과 다르게 웹이나 모바일은 게임 실행 후 로딩 화면이 존재한다.
웹일 경우에는 마녀 그림이 보이고, 안드로이드일 경우에는 안드로이드 등에 탄 렌파이 마스코트가 보인다.
변경하는 방법은 다음과 같다.
|
게임 프로젝트 디렉토리 - web-presplash.png 또는 .jpg 파일 추가 (웹 버전) |
관련 문서: www.renpy.org/doc/html/android.html#presplash
5. label splashscreen
위의 Presplash가 화면에 진입하자마자 보이는 로딩 화면이라면,
splashscreen은 게임에 진입 해서 시작 메뉴가 나오기 전에 등장하는 화면이다.
영화로 예를 들면 "본 영화는 실화를 바탕으로 재구성하였습니다" 와 같은 거랄까...
물론 이미지도 넣을 수 있다. 나는 문구 하나와 UI 설명 도움말(그림)을 넣었다.
관련 문서: www.renpy.org/wiki/renpy/doc/cookbook/Adding_a_Splashscreen
6. Configuration Variable 설정
게임 캐시나 게임명 등 설정이 가능하다.
게임 프로젝트 디렉토리 > game > options.rpy
# 추가
define config.hw_video = True
define config.image_cache_size = 32
define config.cahce_surfaces = True
define build.include_updates = True
# 게임 이름
define config.name = _("게임명")
# 게임 버전
define config.version = "1.3"
# 메뉴 화면에서 게임 타이틀과 버전이 보이지 않게 설정
define gui.show_name = False
# 빌드 파일명
define build.name = "빌드명"
관련 문서: www.renpy.org/doc/html/config.html
7. 안드로이드 배포 전 jdk 설치
안드로이드 배포를 하려면 jdk를 설치해야 한다.
근데 주의점이 최신 버전을 설치하면 안 되고 8버전 64비트를 다운 받아야 한다.
다른 버전을 설치했다면 프로그램 추가 제거에서 삭제하고 재설치하면 된다.
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

