Config 変数 link
config 変数は Ren'Py の実装の振る舞いを制御し、 Ren'Py 自体を柔軟にカスタマイズ可能にします。その範囲には ( 画面のサイズを変更するなど ) 基本的なことから知られていないもの ( 新しい種類のアーカイブファイルの追加 ) まであります。
Ren'Py の実装では一旦 GUI が初期化されたら config 変数は変更されないものと規定しています。 init
ブロック外で config 変数を変更すると未定義の動作を引き起こします。 config 変数はセーブデータに含まれません。
殆どの config 変数は define
ステートメントで簡単に設定されます。
define config.rollback_enabled = False
辞書とリストの変数は define
の使用や init python
ブロック内で拡張できます。
define config.preload_fonts += ["OrthodoxHerbertarian.ttf"]
define config.adjust_attributes["eileen"] = eileen_adjust_function
init python hide:
def inter_cbk():
# this is a terrible callback
renpy.notify("Interacting !")
config.interact_callbacks.append(inter_cbk)
プロジェクト情報 link
- define config.name = "" link
これはゲーム名の文字列です。tracebacks やその他のログファイルの一部に含まれているため、使用されているゲームのバージョンを特定するのに役立ちます。
- define config.version = "" link
これはゲームのバージョンです。これは tracebacks やその他のログの一部として含まれ、使用されているゲ―ムのバージョンを特定するのに役立ちます。
- define config.window_icon = None link
None を指定するか、ゲームのメインウィンドウで使用されるアイコン画像のファイル名を指定します。これはwindows の実行ファイルや mac app で使用されるアイコンを設定しません。それらは 特別なファイル によって制御されます。
- define config.window_title = None link
Ren'Py のゲームウィンドウのタイトルに常に表示される文字列です。
_window_subtitle
がこれに追加されてウィンドウの完全なタイトルになります。None なら
config.name
の値になります。
オートモード link
- define config.afm_bonus = 25 link
オートモードが有効の時にすべての文字列に対して追加される特別な文字数です。
- define config.afm_callback = None link
None を指定するか、自動読み進めしてよいかを決定するために呼び出される Python 関数を指定します。これによってボイスシステムによるボイス再生中に、自動読み進めを無効化できます。
- define config.afm_characters = 250 link
自動進行の設定で指定された、自動進行が開始するまでの時間を算出するための文字列の文字数です。この文字数ごとに設定された時間自動進行の開始を待ちます。
- define config.afm_voice_delay = .5 link
ボイスファイルが再生を終了後、自動進行がテキストを読み進めるまでの秒数です。
コールバック link
これらは、特定のイベントが発生したときに呼び出される関数を受け取ります。これらが唯一のコールバックではなく、より具体的な機能に対応するものは、その機能のセクションにリストされています。
- define config.after_default_callbacks = [ ... ] link
default ステートメントが処理されるときに (引数なしで) 呼び出される関数のリストです。 default ステートメントは初期化後、ゲーム開始前やセーブのロード時、ロールバック後、 lint 前、およびその他の場合にも実行されます。
default ステートメントと同様に、これらのコールバックは存在しないが必要なデータをゲームに追加するのに良い場所です。
- define config.context_callback = None link
menu コンテキストのような新しいコンテキストに Ren'Py が入ったときに引数なしで呼び出されるコールバックです。
- define config.interact_callbacks = [ ... ] link
インタラクションが開始または再開されるときに ( 引数なしで ) 呼び出される関数のリストです。
- define config.label_callbacks = [ ] link
これはどのラベルに到達しても呼び出されるコールバックのリストです。2つの引数で呼び出され、最初はラベル名、2つ目はラベルがジャンプ、呼び出し、あるいは新しいコンテキストの作成により到達したなら True 、そうでないなら False になります。
- define config.periodic_callbacks = [ ... ] link
およそ20Hz毎に引数なしで呼び出される関数のリストです。
- define config.python_callbacks = [ ... ] link
関数のリストです。このリストの関数は初期化時以外で python ブロックが実行されるたびに引数なしで呼び出されます。
考えられるこれの使用法の一つは、変数をそれが調整されるたびにある範囲内に制限する関数の追加です。
関数は完全にゲームが開始する前や、もしかすると関数が依存する変数が初期化される前に Ren'Py 内部のコードで呼び出されるかもしれません。関数は変数が定義されているかチェックするために
hasattr(store, 'varname')
を使用してこれを考慮する必要があります。
- define config.python_exit_callbacks = [ ] link
Ren'Py がオペレーティングシステムに移行しようとしているときに呼び出される関数のリストです。これは、Pythonモジュールの初期化解除での使用を意図しています。
Ren'Py の多くは、これらの関数が呼び出される前に初期化解除されているため、これらのコールバックでの Ren'Py 関数の使用は安全ではありません。
- define config.scene_callbacks = [ ... ] link
scene ステートメントの実行や
renpy.scene()
が呼び出されると実行される関数のリストです。関数は1つの引数で呼び出され、それは scene ステートメントが呼び出されるレイヤーです。これらの関数はレイヤーがクリアされた後、あれば任意の画像が追加される前に呼び出されます。Ren'Py はrenpy.scene を自身の目的で呼び出すかもしれないので、これらのコールバックの実行前にレイヤー名のチェックを推奨します。
- define config.start_callbacks = [ ... ] link
初期化後、ゲーム開始前 ( スプラッシュ画面を含む ) に引数なしで呼び出される関数のリストです。これは保存される変数を初期化するためにフレームワークによって使用されることを意図しています。
この変数のデフォルトの値は Ren'Py が内部で nvl-mode などのような機能を実装するために使用しているコールバックを含みます。新しいコールバックはこのリストに追加できますが、すでにあるコールバックは除去してはいけません。
- define config.start_interact_callbacks = [ ... ] link
インタラクションの開始時に ( 引数なしで ) 呼び出される関数のリストです。これらのコールバックはインタラクションの再開時には呼び出されません。
- define config.statement_callbacks = [ ... ] link
あるステートメントの実行時に呼び出される関数のリストです。これらの関数は通常ステートメント名を引数に呼び出されますが、いくつか特別なステートメント名があります。
- "say"
通常の say ステートメント
- "say-bubble"
吹き出しモードでの say ステートメントです。
- "say-nvl"
NVLモードでの say ステートメントです。
- "say-bubble"
吹き出しモードでの say ステートメントです。
- "say-centered"
centered
キャラクターを使用した say ステートメントです。- "menu":
通常の menu ステートメントです。
- "menu-nvl"
NVLモードでの menu ステートメントです。
- "menu-with-caption"
キャプション付きの menu ステートメントです。
- "menu-nvl-with-caption"
NVL モードでのキャプション付きの menu ステートメントです。
このリストには
window auto
を実装するためのデフォルトのコールバックが含まれています。
- define config.with_callback = None link
None を指定するか with ステートメント が実行される時に呼び出される関数を指定します。この関数は画面に一時的に何かするために使用できます ( 例えばトランジション中はウィンドウを表示しないなど ) 。関数は一つの引数で呼ばれ、それは実行されているトランジションです。トランジションを返すことが期待され、それが実際のトランジションに使用されますが、引数と同じでもそうでなくてもかまいません。
キャラクターとセリフ link
- define config.all_character_callbacks = [ ... ] link
キャラクターから呼び出されるコールバックのリストです。このリストはキャラクター指定コールバックリストの先頭に追加されます。 Ren'Py はこのリストの先頭に内部で使用するためのコールバックを含めます。
- define config.character_id_prefixes = [ ... ] link
これは
Character()
に指定されるスタイルプロパティーの接頭辞のリストを指定します。指定した接頭辞のうち一つのスタイル接頭辞が指定されると、 ID がその接頭辞である displayable にプロパティーが適用されます。例えば、デフォルトのGUIは "namebox" をこれに追加します。 Character に namebox_background プロパティーが指定されると、id "namebox" の say スクリーンの displayable に
background
を設定します。
- define config.say_allow_dismiss = None link
None を指定するか、関数を指定します。関数はユーザーが say ステートメント を省略しようとすると引数なしで呼び出されます。この関数が True を返すと、省略は許可され、そうでなければ無視されます。
- define config.say_arguments_callback = None link
None を指定するか、話している character に続いて位置引数、キーワード引数を受け取る関数を指定します。そのステートメントが明示的に引数を渡さないときであっても、 say ステートメントが実行されるたびに呼び出されます。コールバックに渡される引数は常に interact 引数を含み、(あれば)その say ステートメントへの他の引数も含めます。
これは位置引数 (ほとんどは空) のタプルとキーワード引数 (ほとんどは interact のみ) の辞書を含むペアを返すべきです。それらはコールバックに渡された引数を置き換えます。
例
def say_arguments_callback(who, interact=True, color="#fff"): return (), { "interact" : interact, "what_color" : color } config.say_arguments_callback = say_arguments_callback
- define config.say_sustain_callbacks = [ ... ] link
ポーズを含む台詞による二番目以降のインタラクションの前に、引数なしで呼び出される関数のリストです。 ポーズ越しでもボイスを再生し続けるために使用されています。
表示 link
- define config.adjust_view_size = None link
None か、物理ウィンドウの幅と高さの 2 つを引数にとる関数です。 OpenGL の viewport , Ren'Py が画像を描画する画面の領域の幅と高さを指定するタプルを返してください。
これを使用して、特定の画面サイズのみを許可するよう Ren'Py を設定出来ます。例えば次のコードは元の画面サイズの整数倍のみ許可します。
init python: def force_integer_multiplier(width, height): multiplier = min(width / config.screen_width, height / config.screen_height) multiplier = max(int(multiplier), 1) return (multiplier * config.screen_width, multiplier * config.screen_height) config.adjust_view_size = force_integer_multiplier
- define config.display_start_callbacks = [ ] link
これは Ren'Py が ウィンドウを表示後、最初のフレームの描画前に呼び出される関数のリストを含みます。この主な用途は OpenGL 関数のように、 gui を初期化する必要があるリソースにライブラリーがアクセスできるようにします。
- define config.gl_clear_color = "#000" link
画像が描画される前にウィンドウを埋める色です。これは主に、ウィンドウ(やフルスクリーン)モードでのモニターのアスペクト比が、ゲームのアスペクト比と合わないときに描画されるレターボックスやピラーボックスの色にみられます。
- define config.gl_lod_bias = -0.5 link
u_lod_bias uniform のデフォルト値で、 Ren'Py が使用する mipmap レベルを制御します。
- define config.gl_resize = True link
ユーザーが OpenGL が描画したウィンドウのサイズを変更できるか決定します。
- define config.gl_test_image = "black" link
OpenGL のパフォーマンステスト実行時に使用される画像の名前です。この画像は 5 フレームか 0.25 秒起動時に表示され、その後自動的に hide されます。
- define config.minimum_presplash_time = 0.0 link
PC, Android, iOS のプレスプラッシュが表示される最小時間の秒数です。この時間に到達する前に Ren'Py が初期化すると、スリープして少なくともこの時間画像が表示されることを保証します。Ren'Py の起動に時間がかかると画像はより長く表示されます。
- define config.nearest_neighbor = False link
デフォルトで最近傍補間を使用して、ピクセルアートのサポートや、プレイヤーの目になじませんます。
- define config.physical_height = None link
設定すればこれは Ren'Py のゲームを表示するウィンドウのデフォルト高さになります。設定しなければ、ウィンドウの高さのデフォルトは
config.screen_height
になります。
- define config.physical_width = None link
設定すればこれは Ren'Py のゲームを表示するウィンドウのデフォルト幅になります。設定しなければ、ウィンドウの幅のデフォルトは
config.screen_width
になります。
- define config.screen_height = 600 link
ゲームのピクセル数での仮想の高さです。
config.physical_height
が設定されていなければ、これはゲームを含めるウィンドウのデフォルトサイズにもなります。通常、gui.init()
をかなり大きなサイズに設定します。
- define config.screen_width = 800 link
ゲームのピクセル数での仮想の幅です。
config.physical_width
が設定されていなければ、これはゲームを含めるウィンドウのデフォルトサイズにもなります。通常、gui.init()
をかなり大きなサイズに設定します。
- define config.shader_part_filter = None link
None でなければシェーダーパーツのタプルを引数とする関数であり、別のシェーダーパーツのタプルを返してそれを使用するようにします。
ファイルI/O link
- define config.file_open_callback = None link
None を指定するか、ファイルが開かれる必要がある時にファイル名を引数に呼び出される関数を指定します。通常の Ren'Py の仕組みを使用してファイルをロードするために、 file-like オブジェクトか None を返すべきです。
これとともに
config.loadable_callback
も定義するとよいかもしれません。
- define config.open_file_encoding = False link
False でなければ、
renpy.open_file()
がその encoding パラメーターが None の時に使用するエンコーディングになります。これは、renpy.file()
を使用していた Python 2 のゲームを Python 3 に移植するときにデフォルトでテキストとしてファイルを開くためにほとんど使用されます。これはデフォルト値を RENPY_OPEN_FILE_ENCODING 環境変数から所得します。
ヒストリー link
- define config.history_callbacks = [ ... ] link
Ren'Py が新しいオブジェクトを _history_list に追加する前に呼び出されるコールバックリストが含まれます。コールバックは新しい HistoryEntry オブジェクトを第一引数に呼び出され、そのオブジェクトに新しい field を加えられます。
Ren'Py は内部で history コールバックを使用するため、開発者は完全な置き換えはせず、自身のコールバックをこのリストに加えてください。
- define config.history_current_dialogue = True link
True なら、現在の台詞が history スクリーンに表示されます。
- define config.history_length = None link
Ren'Py が保有するテキスト履歴の数です。これはデフォルト gui では 250 に設定されます。
入力、フォーカス、イベント link
- define config.allow_screensaver = True link
True ならスクリーンセーバーはゲーム起動中有効です。False なら無効です。
- define config.controller_blocklist = [ ... ] link
文字列のリストであり、各文字列はゲームコントローラーのGUIDに一致します。これらの文字列はGUUIDコントローラーの接頭辞(
log.txt
で確認できます)としてマッチし、マッチすればそのコントローラーを初期化から省きます。
- define config.focus_crossrange_penalty = 1024 link
これはキーボードでフォーカスを移動するときに、選択された方向に対して垂直な移動に適用される曖昧さの値です。
- define config.input_caret_blink = 1.0 link
False でなければ、デフォルトキャレットの点滅時間の秒数です。
- define config.keymap = { ... } link
この変数には各可能な処理に代入されたキーボードとマウスのボタンを与えるキーマップを含みます。より詳しくは キーマップ を参照してください。
- define config.longpress_duration = 0.5 link
プレイヤーがタッチデバイスで、長押しとして認識されるためにスクリーンを押さなければならない時間です。
- define config.longpress_radius = 15 link
長押しと認識するために、押している間とどまる必要のあるピクセル数です。
- define config.longpress_vibrate = .1 link
長押し後にデバイスがバイブする時間です。
- define config.pad_bindings = { ... } link
ゲームパッドに対する
config.keymap
に相当する物です。詳細は キーマップのカスタマイズ のパッドについての章を参照ください。
- define config.pass_controller_events = False link
True なら、 pygame-like CONTROLLER イベントは Displayable のイベントハンドラーに渡されます。そうでなければそれらは Ren'Py の方で処理されます。
- define config.pass_joystick_events = False link
True なら、 pygame-like JOYSTICK イベントは Displayable のイベントハンドラーに渡されます。そうでなければそれらは Ren'Py の方で処理されます。
- define config.web_input = True link
True なら、 web プラットフォームは
renpy.input()
を扱うのにブラウザの入力システムを使用します。 False なら、 Ren'Py 自身の入力システムが使用されます。ブラウザの入力システムはより多くの言語、バーチャルキーボード、その他の便利機能をサポートしますが、カスタマイズできません。これは初期化時および translate python ブロックで変更されます。
タッチスクリーンデバイス上のブラウザの入力システムでのみ使用するには、次のようにしてください
define config.web_input = renpy.variant("touch")
レイヤー画像 link
レイヤー link
- define config.bottom_layers = [ "bottom", ... ] link
これはすべての他のレイヤーの上に表示されるレイヤー名のリストで、すべてのレイヤーに適用されるトランジションには参加しません。レイヤー名がここにリストアップされるなら、
config.layers`
やconfig.top_layers
のリストには含められるべきではありません。
- define config.choice_layer = "screens" link
( menu ステートメントで使用される ) choice スクリーンが表示されるレイヤーです。
- define config.clear_layers = [ ... ] link
メインメニューまたはゲームメニューに入るとき非表示されるレイヤー名のリストです。
- define config.context_clear_layers = [ 'screens', 'top', 'bottom', ... ] link
新しいコンテキストに入るとき非表示されるレイヤーのリストです。
- define config.default_tag_layer = "master" link
config.tag_layer
にタグがない画像を表示するレイヤーです。
- define config.detached_layers = [ ] link
scene に自動的には追加されないレイヤーです。これらは常に
sticky
として扱われ、Layer
Displayable と共に組み込みでの使用を意図しています。
- define config.interface_layer = "screens" link
組み込みのスクリーンが表示されるレイヤーです。
- define config.layer_clipping = { ... } link
レイヤーのクリッピングを制御します。これはレイヤー名から (x, y, height, width) タプルへのマップです。 x, y はレイヤーの左上端からの座標であり、 height と width はレイヤーサイズを指定します。
レイヤーが config.layer_clipping で設定されていないければ、レイヤーはそれを含むコンテナのフルサイズを占有します。
Layer
displayable の中に表示されていない限り、これは一般的には画面と同じサイズになります。
- define config.layer_transforms = { } link
レイヤー名を transform のリストにマッピングする辞書です。これらの transform は、
show layer
とcamera
transform が適用された後に最後に適用されます。レイヤー名が None の場合、 transform はすべてのトランジションが適用された後、
config.layers
内のすべてのレイヤーに適用されます。
- define config.layers = [ 'master', 'transient', 'screens', 'overlay', ... ] link
この変数は Ren'Py 知っているすべてのレイヤーのリストであり、それらが画面に表示される順番です ( 最も遠いレイヤーはこのリストの一番最初にあります )。 Ren'Py はレイヤー 「master」, 「transient」, 「screens」, 「overlay」を (そして詳細のバージョンではおそらく他のものも)内部で使用するので、常にこのリスト内にあるべきです。
renpy.add_layer()
を使用すれば元の値がわからなくてもこの変数にレイヤーを追加できます。
- define config.overlay_layers = [ 'overlay', ... ] link
これはすべてのオーバーレイレイヤーのリストです。オーバーレイレイヤーはオーバーレイ関数が呼び出される前にクリアされます。「 overlay 」は常にこのリスト内にあるべきです。
- define config.say_layer = "screens" link
say スクリーンが表示されるレイヤーです。このレイヤーは
config.context_clear_layers
に含まれるべきです。
- define config.sticky_layers = [ "master", ... ] link
タグがそこに表示されたら、表示されている間は
config.tag_layer
のタグより優先されるレイヤー名のリストです。
- define config.tag_layer = { } link
画像タグの文字列をレイヤー名の文字列に対応させる辞書です。レイヤー名の指定なしに画像が表示されるとき、この辞書からタグを探し表示するレイヤーを所得します。タグが見付からなければ、
config.default_tag_name
が使用されます。
- define config.top_layers = [ "top", ... ] link
これはすべての他のレイヤーの上に表示されるレイヤー名のリストで、すべてのレイヤーに適用されるトランジションには参加しません。レイヤー名がここにリストアップされるなら、
config.layers`
やconfig.bottom_layers
.にはリストアップされるべきではありません。
- define config.transient_layers = [ 'transient', ... ] link
この変数はすべての一時的なレイヤーのリストを与えます。一時的なレイヤーは各インタラクションの後にクリアされるレイヤーです。「 transient 」は常にこのリスト内にあるべきです。
メディア(音楽、効果音、ビデオ) link
- define config.audio_filename_callback = None link
None でなければオーディオファイル名を引数とする関数であり、別のオーディオファイル名を返してそれを再生するようにします。
これはゲームにあるオーディオファイルのフォーマットが変更されたが、ゲームスクリプトの更新は望ましくないときの使用を意図しています。
- define config.auto_channels = { "audio" : ( "sfx", "", "" ), ... } link
自動的にオーディオチャンネルを決定するために使用されます。チャンネル名を次の 3 要素のタプルに対応させる辞書です。:
そのチャンネルが使用するミキサーです。
そのチャンネルで再生するファイルに与えられる接頭辞です。
そのチャンネルで再生するファイルに与えられる接尾辞です。
- define config.auto_movie_channel = True link
True かつ play 引数が
Movie()
に指定されると、オーディオチャンネル名が自動的に各ムービーに対して生成されます。config.single_movie_channel
はこの変数に対して優先されます。
- define config.context_fadein_music = 0 link
コンテキスの変更により Ren'Py が音声を再生するときフェードインに掛ける時間の秒数です(通常はゲームロード時です)。
- define config.context_fadeout_music = 0 link
コンテキスの変更により Ren'Py が音声を再生するときフェードアウトに掛ける時間の秒数です(通常はゲームロード時です)。
- define config.enter_sound = None link
None を指定するか、ゲームメニューに入るときに再生される音楽ファイルを指定します。
- define config.exit_sound = None link
None を指定するか、ゲームメニューを出るときに再生される音楽ファイルを指定します。
- define config.fadeout_audio = 0.016 link
stop
ステートメントやrenpy.music.stop()
でオーディオが止まったときやplay
ステートメントやrenpy.music.play()
で新しいオーディオトラックが開始されたときに、オーディオをフェードアウトするデフォルトの時間です。キューされたオーディオの開始では使用されません。デフォルトではフェードアウトは短く、オーディオの停止や変更時のクリック音やポップのイズを防ぎます。
None を指定するか、ゲームメニューで再生される音楽ファイルを指定します。
None を指定するか、メインメニューで再生される音楽ファイルを指定します。
config.main_menu_music
にフェードインするのに掛かる秒数です。
メインメニューに入るまたは出るときに停止されるチャンネルのリストです。
- define config.play_channel = "audio" link
renpy.play()
,hover_sound
,activate_sound
で使用されるチャンネル名です。
- define config.preserve_volume_when_muted = False link
デフォルトでは、 False であり、チャンネルがミュートのときはそのチャンネルの音量は 0 として表示され、音量を変更するとミュートが解除されます。そうでなければミュート中もミュートのまま音量の表示と変更ができます。
- define config.single_movie_channel = None link
None でなく play 引数が
Movie()
に指定されるとこれはムービーが再生されるチャンネル名に使用されます。Ren'Py 内部での使用に予約されているため、これは "movie" であるべきではないです。
- define config.skip_sounds = False link
False なら、ループしないオーディオは Ren'Py がスキップ中は再生されません。
- define config.sound = True link
True なら効果音が動作します。 False なら sound/mixere サブシステムは完全に無効化されます。
- define config.sound_sample_rate = 48000 link
サウンド力ード実行時のサンプルレートです。あなたの wav ファイルの全てが比較的低いレートであるなら、これをそのレートに変更すると処理が効率的になるかもしれません。
- define config.web_video_base = "./game" link
これはウェブブラウザ上でムービーを再生するとき、ムービーファイル名に追加して再生するムービーのフル URL になる URLです。ディレクトリを含められるので "https://share.renpy.org/movies-for-mygame" にもできます。
これにより、巨大なムービーファイルをゲームの外の別のサーバー上にホスト出来ます。
- define config.web_video_prompt = _("Touch to play the video.") link
iOS 上のモバイルの Safari では、デフォルトでは音声付きのムービーを再生するにはクリックが必要です。この変数はプレイヤーにクリックを促すのに使用されるメッセージを与えます。
- define config.webaudio_required_types = [ "audio/ogg", "audio/mpeg", ... ] link
Ren'Py は、ウェブプラットフォーム上で動作するとき、ブラウザがこれらの MIME タイプのオーディオファイルを再生可能か調べます。可能であれば、そのブラウザでファイルを再生します。そうでなければ、より遅く、音飛びしやすい可能性のある wasm デコーダが使われます。
デフォルトでは、ChromeとFirefoxではブラウザのウェブオーディオシステムが使用され、safariではwasmが使用されます。もし、あなたのゲームがmp3 オーディオしか使わないのであれば、これは次のコードにより変更でき
define config.webaudio_required_types = [ "audio/mpeg" ]
Safari でもより高速なウェブオーディオシステムが使用出来ます。
Mouse link
- define config.mouse = None link
この変数はユーザー定義マウスカーソルの使用を制御します。 None ならシステムマウスが使用され、それは通常白と黒のマウスカーソルです。
そうでなければこれは様々な種類のマウスに対するマウスアニメーションを与える辞書であるべきです。デフォルトで使用されるキーは 「 default 」, 「 say 」, 「 with 」, 「 menu 」, 「 prompt 」, 「 imagemap 」, 「 button 」, 「 pause 」, 「 mainmenu 」, 「 gamemenu 」 を含みます。 「 default 」 キーはより特別なキーが存在しないときに使用されるので常に存在するべきです。キーは任意に接頭辞
pressed_
を持て、マウスが押されたときにそのカーソルが使用されることを示します。辞書の各値はフレームを表す (image, xoffset, offset) のタプルのリストであるべきです。
- image
マウスカーソルの画像です。この画像の最大サイズはプレイヤーのハードウェアによって変化します。 32x32 はどんな環境でも動作すると保証される一方、 64x64 は殆どのハードで動作します。より大きな画像は恐らく動作しません。
- xoffset
カーソルの左端からのピクセル数でのホットスポットのオフセットです。
- yoffset
カーソルの上端からのピクセル数でのホットスポットのオフセットです。
フレームは 20hz で再生され、アニメーションはすべてのフレームが表示されたらループします。
詳細と例は カスタムマウスカーソル を参照してください。
- define config.mouse_displayable = None link
None でなければ、これは displayable や displayable を返す呼び出し可能オブジェクトであるべきです。呼び出し可能オブジェクトは None を返すかもしれませんが、その場合 Ren'Py は displayable が None かどうかを処理します。
displayable が指定されると、マウスカーソルは非表示され、その displayable が一番上に表示されます。この displayable はマウスカーソルの配置と描画を担当するため、おそらく
MouseDisplayable()
やよく似た何かであるべきです。詳細は カスタムマウスカーソル を参照してください。
- define config.mouse_focus_clickthrough = False link
True ならゲームウィンドウへフォーカスするクリックは通常通り処理され、 False ならそのようなクリックは無視されます。
- define config.mouse_hide_time = 30 link
この秒数がマウス入力なしで経過したらマウスが非表示になります。これは一つのスクリーンを読むのにかかるだろう時間より長めに設定して、ユーザーがクリックのたびにマウスが出たり消えたりするのを経験しないようにしましょう。
None ならマウスは非表示になりません。
パス link
- define config.archives = [ ... ] link
画像やその他のデータを探索するアーカイブファイルのリストです。この要素は、 .rpa 拡張子を取り除いたアーカイブファイルのベース名で構成されるはずです。
このリストで見つかった順にアーカイブが探索され、ファイルは最初に見つかったアーカイブから受け取ります。
起動時 Ren'Py は自動的にこの変数に ゲームディレクトリーで見つかったすべてのアーカイブの名前を、ASCII コードと逆の順に並べ替えて加えます。例えば Ren'Py がファイル
data.rpa
,patch01.rpa
とpatch02.rpa
を見つけると、この変数には['patch02', 'patch01', 'data']
が加えられます。
- define config.gamedir = ... link
ゲームの
game/`
ディレクトリへのフルパスです。これは読み込み専用の変数です。特に Android のようなプラットフォームではファイルがそこにある保証はありません。
- define config.savedir = ... link
ゲームがセーブされるディレクトリーの絶対パスです。これは
python early
ブロックでのみ設定されるべきです。python early
ブロック内で設定されなかったらこれのデフォルト値を生成するconfig.save_directory
も参照しましょう。
- define config.search_prefixes = [ "", "images/", ... ] link
検索時にファイル名の先頭に追加される接頭辞のリストです。
- define config.searchpath = [ 'common', 'game', ... ] link
画像や音楽、アーカイブやその他のメディアを検索するディレクトリーのリストで、スクリプトではありません。これはリストが 「 common 」とゲームディレクトリーを含むように初期化されます。
終了 link
- define config.quit_action : Action link
ユーザーがウィンドウの閉じるボタンを押した時に呼び出されるアクションです。デフォルトのアクションではユーザーにゲームを終了するか確認します。
- define config.quit_callbacks = [ ... ] link
Ren'Py 停止またはスクリプトのリロード時に(引数なしで)呼び出される関数のリストです。これは開かれたファイルや開始されたスレッドのような初期化時に init ブロックないで作成されたリソースの解放を意図しています。そのようなリソースは自動的には解放されません。
- define config.quit_on_mobile_background = False link
True ならモバイルアプリでフォーカスを失ったとき、状態を保存して戻れるようにするのではなく終了します(振る舞いを制御する
config.save_on_mobile_background
も参照してください)。
リプレイ link
- define config.after_replay_callback = None link
None を指定するか、リプレイ終了後に引数なしで呼び出される関数を指定します。
- define config.replay_scope = { "_game_menu_screen" : "preferences", ... } link
リプレイに入るときに、デフォルト store の変数をキーに、その値をその変数の値にする辞書です。
ロールバック link
- define config.call_screen_roll_forward = False link
スクリーンの roll_forward プロパティーが None のときに値が使用されます。
- define config.ex_rollback_classes = [ ] link
オブジェクトは以前はロールバックをサポートしていたが、現在はしていないという警告を表示しないクラスオブジェクトのリストです。意図的にあるクラスからロールバックのサポートを除去したなら、そのクラスオブジェクトをこのリストに配置して警告をださないようにしてください。
多分、これを使用するよりは、あなたのクラスの基本型のリストに
object
を追加したくなるでしょう。
- define config.fix_rollback_without_choice = False link
このオプションは組み込みのメニューやイメージマップの固定ロールバック中の振る舞いを決定します。デフォルトの値は False で、これはメニューでは以前選択された選択肢のみがクリック可能であることであることを意味します。True に設定されると選択された選択肢は目印が付きますが、クリック可能な選択肢はありません。ユーザーはクリックでロールバックバッファから前に進めます。
- define config.hard_rollback_limit = 100 link
これは Ren'Py がユーザーにインタラクションにロールバックさせるステップ数です。これを 0 に設定するとロールバックは完全に無効化されますが、ロールバックはユーザーが間違えてスキップしたテキストを見るために便利ですのでこれはお勧めしません。
- define config.pause_after_rollback = False link
デフォルトでは False で、ロールバックは時間指定のあるポーズもないポーズも飛ばして台詞やメニューのような他のインタラクションに止まります。 True ならロールバックは時間指定のないポーズでも止まります。
- define config.rollback_enabled = True link
ユーザーはゲーム中にロールバック出来るべきですよね? False の場合、ユーザーはインタラクションにロールバック出来ません。
- define config.rollback_length = 128 link
ロールバックログにこれ以上のステートメントがあれば Ren'Py はログをカットします。これはスクリプトが変更されたセーブデータをロードしようとしたときに、 Ren'Py が何回ロールバックするかも制御します。
デフォルト値より下げると、 Ren'Py は不安定になります。
- define config.rollback_side_size = .2 link
rollback side が有効のとき、クリックまたはタッチでロールバックする側の画面の割合です。
セーブとロード link
- define config.after_load_callbacks = [ ... ] link
ロード時に(引数なしで)呼び出される関数のリストです。
それらのコールバックがデータ (例えば古いバージョンからの移行データ) を変更するなら、
renpy.block_rollback()
を呼び出してプレイヤーのロールバックを禁止し、変更が戻らないようにするべきです。
- define config.auto_load = None link
None を指定するか、 Ren'Py 起動時に自動的にロードされるセーブファイルの名前を指定します。これはエンドユーザーというより開発者向けです。
- define config.autosave_callback = None link
バックグラウンドでのオートセーブ実行後毎に呼び出されるコールバックまたはコールバックかアクションのリストです。アクションは使用できますが、 Return アクションは機能しません。
displayable やスクリーンを表示しないアクションなら、
renpy.restart_interaction()
も呼び出されるべきです。- ::
define config.autosave_callback = Notify("Autosaved.")
- define config.autosave_frequency = 200 link
大雑把なオートセーブが実行されるまでのインタラクションの数です。オートセーブを無効化するためには
config.has_autosave
を False に設定して、この変数を変更しないでください。
- define config.autosave_on_choice = True link
True なら Ren'Py はゲーム中の選択肢に入ると自動セーブします (
renpy.choice_for_skipping()
呼び出し時 )。
- define config.autosave_on_input = True link
True なら Ren'Py はユーザーがテキストを入力すると自動セーブします (
renpy.input()
呼び出し時 )。
- define config.autosave_on_quit = True link
True なら、ユーザーが終了やメインメニューに戻る、現在のゲームを破棄して別のゲームをロードすると Ren'Pyが自動セーブをします(時間を節約するため、ユーザーにプロントが表示されている間に自動セーブは行なわれます)。
- define config.autosave_prefix_callback = None link
None または引数なしで呼び出される関数であり、オートセーブファイルの接頭辞を返します。使用されるデフォルトの接頭辞は "auto-" であり、つまりオートセーブスロットは "auto-1", "auto-2" などのようになります。
- define config.autosave_slots = 10 link
オートセーブで使用するスロット数
- define config.file_slotname_callback = None link
Non または file actions により使用されてページと名前を save functions に渡すスロット名に変換する関数です。
- page
アクセスされているページの名前を含める文字列です。これは通常数値を含む文字列ですが、 "quick" や "auto" のような特別な値も含みます。
- name
そのページのスロット名を含める文字列です。 (r'd+' のような)正規表現パターンも含み、その場合同じパターンを結果に含めるべきです。
デフォルトの振る舞いは次と等しいです。
def file_slotname_callback(page, name): return page + "-" + name config.file_slotname_callback = file_slotname_callback
使い方の1つはゲームがセーブファイルに接頭辞を付けられるようにすることです。
config.autosave_prefix_callback
も参照ください。
- define config.has_autosave = True link
True ならゲームはオートセーブを使用し、 False ならオートセーブは起こりません。
- define config.load_failed_label = None link
文字列なら、スクリプトの変更が多くて Ren'Py では追跡できないためにロードに失敗したときにジャンプするラベルです。ロード処理の前に、 Ren'Py は最後のステートメントを開始まで戻り、呼び出しスタックをします。
関数も指定できます。関数は引数なしで呼び出され、ラベルの文字列を返します。
- define config.loadable_callback = None link
None を指定するか、ファイル名を引数に呼び出される関数です。ファイルがロード可能なら関数は True を、そうでなければ False を返します。これは
config.file_open_callback
やconfig.missing_image_callback
とともに使用可能です。
- define config.quicksave_slots = 10 link
クイックセーブで使用するスロット数
- define config.save = True link
True なら、 Ren'Py はユーザーがゲームを保存出来るようにします。 False なら、出来ないようにして、既存のセーブも表示しません。
- define config.save_directory = "..." link
これはゲームデータや永続データを保存するディレクトリーを生成するために使われます。生成される名前はプラットフォームに依存します:
- Windows
%APPDATA%/RenPy/save_directory
- Mac OS X
~/Library/RenPy/save_directory
- Linux/Other
~/.renpy/save_directory
None に設定すると、「 saves 」ディレクトリーをゲームディレクトリーの直下に生成します。これは同じシステム上で複数ユーザーがゲームを共有する妨げになるので、非推奨です。また、管理者権限でゲームをインストールし、ユーザーとして実行した場合に問題を引き起こします
これは define ステートメントか
python early
ブロックで設定される必要があります。どちらの場合でも他のどんなコードよりも前に実行され、式ではなく文字列に設定されるべきです。セーブディレクトリーを知る必要のあるコードは、この変数の代わりに
config.savedir
を読み込むべきです。
- define config.save_dump = False link
True に設定されると Ren'Py はゲームをセーブするときは常に新しい save_dump.txt ファイルを作成します。このファイルはセーブファイルに含まれるオブジェクトの情報を含みます。各行は相対的なサイズの見積もり、オブジェクトへのパス、オブジェクトがエイリアスかどうかの情報、オブジェクトの説明で構成されています。
- define config.save_json_callbacks = [ ... ] link
各セーブに保存される json オブジェクトを作成し、
FileJson()
,renpy.slot_json()
を利用してアクセス可能にするために使用されるコールバック関数のリストです。各コールバックは最終的に保存される python の辞書を引数に呼び出されます。コールバックはその辞書に数字、文字列、リストや辞書のような json 互換の python 型を追加して変更するべきです。辞書は最後のコールバックが終わるとセーブスロットにセーブされます。
コールバックに渡される辞書は多分すでにアンダースコア
_
で始まるキーを持っているかもしれません。これらのキーは Ren'Py が使用するので変更するべきではありません。例
init python: def jsoncallback(d): d["playername"] = player_name config.save_json_callbacks.append(jsoncallback)
FileJson(slot)
とrenpy.slot_json(slot)
は辞書化されたオブジェクトd
の状態をゲームが保存された時点と同じに復元してくれます。ゲームが保存された時点のplayer_name
変数の値もFileJson(slot, "playername")
でアクセス可能です。
- define config.save_on_mobile_background = True link
True ならモバイル app ではフォーカスを失うと状態を保存します。この方法で状態が保存されると、その app が再び起動されたときに自動的にロードされ、ゲームが再開されます。
- define config.save_persistent = True link
True なら、 Ren'Py は永続データを保存します。 False なら保存されず、永続データへの変更はゲーム終了時に失われます。
- define config.save_physical_size = True link
True ならウィンドウの実際のサイズは設定に保存され、ゲーム再開時に再現されます。
- define config.save_token_keys = [ ] link
セーブファイルを読み込む際にゲームが信頼するキーのリストです。これを使用してゲームの制作者が警告の表示なく読み込めるセーブファイルを配布できるようにします。
このように現在のコンピュータのセーブトークンを信頼できるようにするには、 console を開き、以下を実行します
print(renpy.get_save_token_keys())
これはキーを log.txt に保存します。その値を使用して config.save_token_keys をこれに設定できます。この変数は define ステートメントか python early ブロックで設定されなければなりません。
- define config.thumbnail_height = 75 link
ゲームがセーブされるときに撮られるサムネイルの高さです。これらのサムネイルはゲームがロードされるときに表示されます。サムネイルはユーザーに表示される時点でのこの設定の値ではなく、それが撮られたサイズで表示されることに注意してください。
これはデフォルトのGUIによって変更されます。
- define config.thumbnail_width = 100 link
ゲームがセーブされるときに撮られるサムネイルの幅です。これらのサムネイルはゲームがロードされるときに表示されます。サムネイルはユーザーに表示される時点でのこの設定の値ではなく、それが撮られたサイズで表示されることに注意してください。
これはデフォルトのGUIによって変更されます。
スクリーン言語 link
- define config.always_shown_screens = [ ... ] link
Ren'Py がメニューや、そのインターフェイスが隠されているときにも常に表示する screen 名のリストです。このリストのスクリーンが表示されたことがなければ、そのスクリーンが再表示されます。これは Ren'Py によって使用され、Ren'Py はこのリストの内容を変更することがあります。
通常は
config.overlay_screens
のリストの方がより適切です。
- define config.context_copy_remove_screens = [ 'notify', ... ] link
コンテキストがロールバックやセーブのためにコピーされるときに除去されるスクリーンのリストを含みます。
- define config.imagemap_auto_function : Callable link
スクリーン言語 imagebutton や imagemap ステートメントの auto プロパティーを displayable に拡張する関数です。 これは auto プロパティーの値を受け取って : 「 insensitive 」, 「 idle 」, 「 hover 」, 「 selected_idle 」, 「 selected_hover 」, 「 ground 」 のいずれかの画像を探します。これは displayable か None を返すはずです。
デフォルトの実装では auto プロパティーを要求した画像でフォーマットし、その結果のファイル名が存在するかを確認します。
- define config.keep_side_render_order = True link
True なら、Side の位置での部分文字列の順番が子のレンダリング順を決定します。
ゲームメニューに入るときに非表示されるレイヤー名 ( 文字列 ) のリストです。
- define config.notify : Callable link
renpy.notify()
やNotify()
によって message 引数で呼び出され、通知を表示します。デフォルトの実装はrenpy.display_notify()
です。これは制作者が通知を加工できるように意図しています。
- define config.overlay_screens = [ ... ] link
オーバーレイが有効なとき表示され、停止すると非表示されるスクリーンのリストです(スクリーンは overlay レイヤーではなく screens レイヤーに表示されます)。
- define config.per_frame_screens = [ ... ] link
これはインタラクションごとでなく、 1 フレーム毎に更新されるスクリーン名の文字列のリストです。 Ren'Py は内部でこのリストを使用するので、スクリーンを追加するなら、リスト全体を置き換えずに名前を追加してください。
- define config.transition_screens = True link
True なら、スクリーンはディゾルブのような以前のスクリーンの状態から新しいスクリーンの状態へのトランジションに参加します。False ならただ最新のスクリーン状態が表示されます。
- define config.variants = [ ... ] link
ユーザーに表示するスクリーンを選択する時に検索されるスクリーンバージョンのリストです。デフォルトのスクリーンが選択されることを保証するために、これは常に None で終わるべきです。 スクリーン variant を参照してください。
スクリーンショット link
- define config.pre_screenshot_actions = [ Hide("notify", immediately=True), ... ] link
スクリーンショットを撮るときに呼び出されるアクションのリストです。これははスクリーンショットに表示されるべきでない要素の一時的な非表示を意図しています。
- define config.screenshot_callback : Callable link
スクリーンショットを撮るときに呼び出される関数です。関数はスクリーンショットがセーブしたファイル名をひとつのパラメーターにして呼び出されます。
- define config.screenshot_crop = None link
None を指定するか、 (x, y, height, width) のタプルを指定します。スクリーンショットはセーブされる前にこの長方形にクロッピングされます。
- define config.screenshot_pattern = "screenshot%04d.png" link
スクリーンショットファイルを作成するために使用されるパターンです。このパターンは ( python の文字列フォーマットの規則を持ちいて ) ファイル名の連番となる自然数に適用されます。ファイル名は絶対座標か config.renpy_base からの相対座標です。存在していない最初のファイル名がスクリーンショットの名前として使用されます。
辞書がなければ作られます。
_screenshot_pattern
も参照してください。None でなければこの変数より優先して使用されます。
セルフボイシング / テキスト読み上げ link
- define config.tts_substitutions = [ ] link
これは(pattern, replacement)のペアのリストです。これを使用して音声合成エンジンに渡される前にテキストを置換処理して、音声合成エンジンが正確に発音できるようにします。
pattern は文字列か正規表現で、 replacement は文字列でなければなりません。
pattern が文字列の場合、エスケープされ、次に r' \b' (単語境界で始まり、単語境界で終わる必要があることを示す)で前置および後置され、その後正規表現にコンパイルされます。 pattern が文字列の場合、 replacement もエスケープされます。
pattern が正規表現なら、そのまま使用され、 replacement はエスケープされません。
置換は指定された順で処理され、置換が文字列に一致すると、その一致がタイトルケース、大文字、小文字のいずれであるかがチェックされます。対応するケースが replacement に対して実行され、実行後の replacement が適用されます。
例
define config.tts_substitutions = [ ("Ren'Py", "Ren Pie"), ]
これは文字列 "Ren'Py is pronounced ren'py." を "Ren Pie is pronounced ren pie" であるかのように発音します。
- define config.tts_voice = None link
None またはセルフボイシングでテキスト再生に使用する非デフォルトボイスの文字列です.選択可能なものはプラットフォームに依存するので、プラットフォームごとに設定するべきです(翻訳においても同様に変更してください)。
画像の表示 link
- define config.adjust_attributes = { } link
None を指定しないなら、これは辞書です。画像属性を含むステートメントや関数が実行または予測されるときに、そのタグがこの辞書から探されます。見つからなければ、 None キーがこの辞書から探されます。
どちらかが見つかれば、それらは関数であることが期待されます。関数にはタグと属性で構成されるタプルの画像名が与えられます。タグと新しい属性の組み合わせを含む変更されたタプルを返すべきです。
この関数は予測の間に呼び出されるかもしれないため、状態に依存しないべきです。
- define config.cache_surfaces = False link
True なら、画像の基本的なデータはRAMに置かれ、画像マニュピレーターがディスクからの再読み込みなしでその画像に適用できるようにします。 False なら、データはキャッシュから外れますが、ビデオメモリーにテクスチャとして保持され、 RAM の使用を減らします。
- define config.conditionswitch_predict_all = False link
ConditionSwitch()
とShowingSwitch()
に対する predict_all 引数のデフォルト値で、これはすべての可能な displayable が表示されるかを決定します。
- define config.default_attribute_callbacks = { } link
画像属性を含む関数やステートメントが実行または予測され、そのタグが現在表示されていなければ、この辞書から探されます。見つからなければ、 None キーで代わりに探されます。
見つかれば、それは関数が期待されます。関数にはタグと属性で構成されるタプルの画像名が与えられます。画像が最初に表示されるときに適用される追加の属性を含むイテレーターを返すべきです。
関数の結果は追加専用として扱われ、明示的に競合する属性や負の属性があっても優先されます。
この関数は予測の間に呼び出されるかもしれないため、状態に依存しないべきです。
- define config.default_transform = ... link
show または scene ステートメントを使用して displayable が表示されるとき、その transform プロパティーはこの transform から取得され、 displayable の transform の値を初期化するのに使用されます。
デフォルトの transform は
center
です。
- define config.displayable_prefix = { } link
Displayable prefixes を参照してください。
- define config.hide = renpy.hide link
hide ステートメント が実行されるときに呼び出される関数です。これは renpy.hide と同じ引数をとるべきです。
- define config.image_cache_size = None link
None でなければ、これを使用して 画像キャッシュ のサイズを画面サイズの倍数として設定します。この数はピクセル数での画面サイズの倍数で、ピクセル数での画像キャッシュのサイズを取得するためのものです。
大きく設定し過ぎるとこれはメモリーを浪費しかねません。小さすぎると画像は繰り返しロードされ、パフォーマンスを悪化させます。
- define config.image_cache_size_mb = 300 link
これを使用して、 画像キャッシュ のサイズをメガバイトで設定します。
config.cache_surfaces
が False なら、画像は 1 ピクセル毎に 4 バイト使用し、そうでなければ、 1 ピクセル毎に 8 バイト使用します。大きく設定し過ぎるとこれはメモリーを浪費しかねません。小さすぎると画像は繰り返しロードされ、パフォーマンスを悪化させます。 None でなければ、
config.image_cache_size
がこの変数の代わりに使用されます。
- define config.keep_running_transform = True link
True なら transform や ATL ブロックを与えられなかった画像の表示では、そのタグを持つ画像が以前使用していた transform を、それが何であっても維持するようにします。 False なら transform は停止されます。
- define config.max_texture_size = (4096, 4096) link
Ren'Py が単一のテクスチャとしてロードする画像の最大サイズです。これは3Dモデルにとっては重要ですが、2D画像では必要に応じて複数のテクスチャに分割されます。
Live2d は live2d の最大テクスチャに合うようにこれを調整します。
- define config.optimize_texture_bounds = True link
True なら、Ren'Py は画像をスキャンして不透明なピクセルのバウンディングボックスを見つけ、それらのピクセルをテクスチャにロードします。
- define config.predict_statements = 32 link
これは現在のものを含むステートメントの数で、予測画像をロードするタイミングを考慮するために使用されます。現在のステートメントが実行されてからこの数のステートメントまでが幅優先探索で考慮され、それらのステートメントで参照される画像がバックグラウンドで予測ロードされます。これを 0 に設定すると画像の予測ロードは無効化されます。
- define config.scene = renpy.scene link
scene ステートメント で renpy.scene の代わりに使用される関数です。 これは画面のクリアに使用され、
config.show
は新しい画像の表示に使用されることに注意してください。これはrenpy.scene()
と同じ引数、返り値を持つべきです。
- define config.show = renpy.show link
renpy.show()
の代わりに show や scene ステートメントで使用される関数です。これはrenpy.show()
と同じ引数、返り値の構造を持つべきであり、未知のキーワード引数はそのまま渡すべきです。
- define config.speaking_attribute = None link
None または画像属性の文字列を指定します。画像属性はキャラクターが話すとそのキャラクターの画像タグに追加され、止めると除かれます。
これは
config.tag_layer
で設定される、そのタグに対するデフォルトのレイヤー上の画像に適用されます。これは台詞の行中で、 @ を使用して表示された一時属性に類似しますが、この属性はそのテキストの出現アニメーションが終わっても覗かれず、台詞ウィンドウが非表示になったときに除かれます。
- define config.tag_transform = { ... } link
画像タグの文字列を transform または transform のリストに対応させる辞書です。 at 節なしに画像が表示されると、この辞書からタグを探し、使用する transform または transform のリストを見付けます。
- define config.tag_zorder = { } link
画像タグの文字列を zorder に対応させる辞書です。 zorder 節の指定なしに画像が表示されると、この辞書からタグを探し、使用する zorder を見付けます。 zorder が見付からなければ 0 が使用されます。
- define config.transform_uses_child_position = True link
True なら transform はその子から position properties を引き継ぎます。そうでないなら引き継ぎません。
スキップ link
- define config.allow_skipping = True link
False に設定されるなら、ユーザーはゲームのテキストをスキップ出来ません。
_skipping
を参照してください。
- define config.fast_skipping = False link
開発者モード以外でもファストスキップを許可したい場合これを True に設定してください。
- define config.skip_delay = 75 link
ctrl キーを使用してスキップしている時に台詞が表示されているミリ秒単位の時間です ( 実際はそれほど正確ではないが )。
- define config.skip_indicator = True link
True ならライブラリーはスクリプトをスキップするときにスキップインディケーターを表示します。
テキストとフォント link
- define config.font_hinting = { None : "auto" } link
これは、フォントファイル名を含む文字列をキーに、
hinting
にあるフォントヒンティングモードのいずれかの文字列を値とする辞書です。hinting
が True なら、この辞書からその値が検索され、その結果のモードが使用されます。キーが見つからなければ、 None で検索した結果のモードが使用されます。
- define config.font_name_map = { } link
(フォント名) から (フォントのファイルパス//フォントグループ)へのマップです。フォント名は
{font}
タグに単純化または短縮され、フォントグループ 機能にアクセスできるようになります。
- define config.font_transforms = { ... } link
これを使用して、アクセシビリティー目的に新しいフォント変換を作成できます。フォント変換は、第一引数として "font transform" を使用する
Preferences()
によってアクティブにできます。辞書は、使用する名前の文字列を関数にマップします。この関数は、フォントまたは
FontGroup
を唯一の引数として呼び出され、フォントまたはフォントグループを返すことが期待されます。例えば、 dejavusans 変換は次のように定義されます。init python: def dejavusans(f): return "DejaVuSans.ttf" config.font_transforms["dejavusans"] = dejavusans
- define config.font_replacement_map = { } link
これは (font, bold, italics) から (font, bold, italics) へのマップであり、あるフォントをボールドとイタリック、またはそのどちらかを持つフォントで置き換えるために使用されます。例えば
Vera.ttf
のイタリックを使用するものすべてに、代わりにVeraIt.ttf
を使用して欲しいなら次のようにコードを書きます。 :init python: config.font_replacement_map["Vera.ttf", False, True] = ("VeraIt.ttf", False, False)
これらの対応はフォントの特定の種類に適用されるだけで、 Vera のボールドイタリックを要求されると VeraIt のボールドではなく Vera のボールドイタリックが使用されます。
- define config.hyperlink_handlers = { ... } link
ハイパーリンクのプロトコルをそのプロトコルのハンドラーに対応させる辞書です。ハンドラーは値 (: の後のすべて) を受け取る関数で、いくつかのアクションを処理します。値が返されると、インタラクションが終わります。そうでなければ、クリックは無視され、インタラクションは継続します。
- define config.hyperlink_protocol = "call_in_new_context" link
担当するプロトコルを持たないハイパーリンクに使用されるプロトコルです。可能なプロトコルの意味するところはは
a
テキストタグを参照してください。
- define config.new_substitutions = True link
True なら Ren'Py はすべての表示されるテキストに新しいスタイル ( 角括弧 ) の置換を適用します。
- define config.old_substitutions = True link
True なら Ren'Py は say や menu ステートメントで表示されるテキストに旧スタイル ( % ) の置換を適用します。
- define config.preload_fonts = [ ... ] link
起動時に Ren'Py がロードすべき TrueType または OpenType フォントの名前リストです。ここにフォントの名前を含むと、 Ren'Py が新しいタイプのフォントを導入するときに、停止するのを防げます。
- define config.replace_text = None link
None または、ユーザーに表示されるテキストを引数に呼び出される関数です。関数は渡されたものと同じテキストか、代わりに表示される代替テキストを返します。
関数は置換処理が終了し、テキストがタグに分割された後で呼び出されるため、引数は実際のテキストを含みません。表示されるすべてのテキストはこの関数を通過します(ダイアログテキストだけでなくユーザーインターフェーステキストも含みます)。
以下のコードで示すように、これを使用して特定の ASCII 番号を対応するユニコード文字で置き換えられます。
def replace_text(s): s = s.replace("'", u'\u2019') # apostrophe s = s.replace('--', u'\u2014') # em dash s = s.replace('...', u'\u2026') # ellipsis return s config.replace_text = replace_text
None を指定するか、 say や menu ステートメントの文字列にあるテキストを与えられる関数を指定します。これは新しい ( または同じ ) 文字列を返すことが期待されており、それらで元のテキストを置き換えます。
これは say と menu ステートメント処理のかなり初期、翻訳と置換が適応される前に実行されます。後に実行されるフィルターについては
config.replace_text
を参照してください。
トランジション link
- define config.adv_nvl_transition = None link
NVLモードテキストの直後にADVモードのテキストを表示する時、 ADVモードウィンドウの表示に使用するトランジションです。
- define config.after_load_transition = None link
ロード後、ロードしたゲームが開始する時に使用されるトランジションです。
- define config.end_game_transition = None link
ゲームが通常通り終了するか、戻り先がない状態で return を実行するか、または
renpy.full_restart()
を呼び出してメインメニューを表示するときに使用するトランジションです。
- define config.end_splash_transition = None link
スプラッシュ画面の後にメインメニューを表示するときに使用するトランジションです。
- define config.enter_replay_transition = None link
None を指定するか、リプレイ開始時に使用するトランジションを指定します。
- define config.enter_transition = None link
None を指定するか、ゲームメニューに入る時に使用するトランジションを指定します。
- define config.enter_yesno_transition = None link
None を指定するか、 yes/no プロンプト表示時に使用するトランジションを指定します。
- define config.exit_replay_transition = None link
None を指定するか、リプレイ終了時に使用するトランジションを指定します。
- define config.exit_transition = None link
None を指定するか、ゲームメニューを閉じる時に実行されるトランジションを指定します。
- define config.exit_yesno_transition = None link
None を指定するか、 yes/no プロンプトを閉じる時に使用するトランジションを指定します。
- define config.game_main_transition = None link
None を指定するか
MainMenu()
アクションを使用してゲームメニューからメインメニューに戻るときに使用するトランジションを指定します。
- define config.intra_transition = None link
ゲームメニューを表示するときに使用するトランジションです(これは
ShowMenu()
でスクリーンが変更されるときです)。
- define config.nvl_adv_transition = None link
NVLモードテキストの直後にADVモードのテキストを表示する時、 NVLモードウィンドウの非表示に使用するトランジションです。
- define config.pause_with_transition = False link
False なら、
renpy.pause()
は常にpause
ステートメントに使用され、 True で遅延時間が指定されていればならpause 5
はwith Pause(5)
と等価です。
- define config.say_attribute_transition = None link
None を指定するか、画像属性付きの say ステートメントでキャラクターの画像が変化する時に使用するトランジションを指定します。
- define config.say_attribute_transition_callback : Callable link
これは実行するトランジションとそれを適用するレイヤーを返すトランジション関数です(訳注: 画像属性付きの say ステートメントでキャラクターの画像を変更する時に使用するトランジションとトランジションを行うレイヤーを指定します)。
これは表示されている画像タグ、 mode パラメーター、トランジション前のタグの set とトランジション後のタグの set の 4つの引数を持つ関数です。 mode パラメーターの値は次のうちの1つです。 :
"permanent" 永続的属性変更に対するもの(現在の say ステートメントの後も続くもの)
"temporary" 一時的属性変更に対するもの(現在のsay ステートメントの終わりに戻るもの)
"both" 永続的変更と一時的属性変更の両方に対するもの (1つは現在の say ステートメント後も続くもの、もう一つは現在の say ステートメントの終わりに戻るもの)
"restore" 一時的(または一時的と永続的の両方の) 変更が復元される時に対するもの。
これは以下の2要素のタプルを返すべきです。 :
使用するトランジション、またはトランジションを起こさないなら None
トランジションが実行されるべきレイヤーの文字列か None , これはほとんど常に None です。
これのデフォルトの実装では (config.say_attribute_transition, config.say_attribute_transition_layer) を返します。
- define config.say_attribute_transition_layer = None link
None を指定しないなら、これはレイヤー名の文字列です(ほとんどの場合 "master" です)。say ステートメントで指定した画像属性がその名前のレイヤーに適用され、 Ren'Py はこのトランジションの実行を待つポーズをしません。これは台詞の表示時のその画像属性へのトランジションに影響します。
- define config.window_hide_transition = None link
トランジションが明示的に指定されなければ、window hide ステートメントで使用されるトランジションです。
- define config.window_show_transition = None link
トランジションが明示的に指定されなければ、window show ステートメントで使用されるトランジションです。
トランジションの制御 link
- define config.implicit_with_none = True link
デフォルトは True で、 with None ステートメントの評価は台詞、選択肢、入力、イメージマップによって起きるインタラクションの後に処理されます。これはトランジション中に以前の画面が表示されないことを保証します。
- define config.load_before_transition = True link
True の場合、すべての画像がロードされるまで入力を受け付けません (はい、これは変な名前ですね)。
- define config.mipmap_dissolves = False link
Dissolve()
およびImageDissolve()
,AlphaDissolve()
,AlphaMask()
へのミップマップ引数のデフォルト設定値です。
- define config.overlay_during_with = True link
with ステートメント の間にオーバーレイが表示されていて欲しいなら True 、with ステートメントの間はそれらが非表示になる方が好みなら、 False に設定してください。
翻訳 link
- define config.default_language = None link
None を指定するか、翻訳フレームワークでゲームが翻訳されるデフォルトの言語の文字列を指定します。
詳細は 翻訳 を参照してください。
- define config.defer_styles = False link
True なら、style ステートメントの実行はすべての
translate python
ブロックが実行されるまで延期されます。これでtranslate python
ブロックで style ステートメント ( translate style ではありません ) で使用される変数を更新出来ます。これはデフォルトで False で、
gui.init()
が呼び出されるとこれは True に設定されます。
- define config.defer_tl_scripts = Fasle link
True なら、 tl ディレクトリーにあるスクリプトのロードをその言語が選択されるまで延期します。 翻訳ファイルの遅延読み込み を参照してください。
- define config.enable_language_autodetect = False link
True なら、Ren'Py はプレーヤーのシステムのロケールに基づいた言語名の決定を試みます。成功すればその言語がデフォルトの言語として使用されます。
- define config.locale_to_language_function : Callable link
ゲームが使用するべき言語を決定する関数で、ユーザーのロケールに基づきます。2つの文字列引数を受け取り、 ロケールの ISOコードと地域の ISO コードです。
使用する翻訳の名前の文字列か、デフォルト翻訳を使用するなら None を返すべきです。
- define config.new_translate_order = True link
Ren'Py 6.99.11 で述べられた新しい style と translate ステートメントの順番を有効化します。
- define config.translate_clean_stores = [ "gui", ... ] link
翻訳言語変更時に初期化の最後で状態が初期化される名前付き store のリストです。
- define config.translate_ignore_who = [ ] link
翻訳を生成しないキャラクター名の文字列のリストです。これは、デバッグやメモの目的で使用されるキャラクターに役立ちます。これは、ステートメント内の式の文字列値と比較されます(したがって、 "e" は
e
に一致しますが、 e と l が同じオブジェクトであってもl
には一致しません。
ボイス link
- define config.auto_voice = None link
ここには、文字列、関数、None のいずれかを指定し、None の場合は自動ボイスは無効化されます。
文字列の場合は現在の行の台詞の識別子に対応する
id
変数でフォーマットされます。その文字列が存在するファイルであればそのファイルがボイスとして再生されます。関数の場合はその関数は現在の行の台詞の識別子を引数として1つ与えられて呼び出されます。この関数は文字列を返すことが期待されます。その文字列が存在するファイルであればそのファイルがボイスとして再生されます。
詳細は Automatic Voice を参照してください。
- define config.emphasize_audio_channels = [ 'voice' ] link
オーディオチャンネル名の文字列のリストです。
「 emphasize audio 」設定が有効なら、リストにあるオーディオチャンネルの 1 つが再生を開始すると、このリストにないすべてのチャンネルでそのセカンダリーボリュームを
config.emphasize_audio_time
秒かけてconfig.emphasize_audio_volume
まで減少させます。このリストにないチャンネルがオーディオを再生すると、リストにないすべてのチャンネルはそのセカンダリーボリュームを
config.emphasize_audio_time
秒かけて 1.0 に上げます。例えばこれを
[ 'voice' ]
に設定すると、ボイス再生中はボイス以外のすべてのチャンネルのボリュームが下がるでしょう。
- define config.emphasize_audio_time = 0.5 link
上記参照。
- define config.emphasize_audio_volume = 0.5 link
上記参照。
- define config.voice_filename_format = "{filename}" link
再生されるファイル名を生成するために、voice ステートメントに渡される引数の文字列でフォーマットされる文字列です。例えばこれが "{filename}.ogg" なら
voice "test"
ステートメントはtest.ogg
を再生します。
ウィンドウ管理 link
- define config.choice_empty_window = None link
None ではなく、 (通常は
menu
ステートメントで呼び出される) 選択肢メニューがキャプションを持っていない場合、この関数が引数(""、interact=False)で呼び出されます。これの想定される使用は次のように
define config.choice_empty_window = extend
他のキャプションがなければ選択肢のキャプションとして台詞の最後の行を繰り返し表示することです。
他の実装も可能ですが、これは常にダイアログウィンドウを表示することを想定しています。
- define config.empty_window : Callable link
これは _window が True で、画面には何もウィンドウが表示されていない時に引数なしで呼び出されます(
renpy.shown_window()
の呼び出しは起こりません)。 空のウィンドウを画面に表示し、インタラクションを起こさずに処理を返す動作が期待されます。デフォルトの実装ではこれを narrator キャラクターでインタラクションなしで空白を表示するために使用します。
- define config.window = None link
これは台詞ウィンドウのデフォルトの管理方法を設定します。None か "show", "hide", "auto" の内ひとつにしてください。
"show" に設定すると、台詞ウィンドウは常に表示されます。 "hide" に設定すると、台詞ウィンドウは say ステーションや台詞ウィンドウを表示する他のステートメント以外では台詞ウィンドウを非表示にします。 "auto" に設定すると、台詞ウィンドウは scene ステートメント前で非表示され、台詞の前に表示されます。
これはデフォルトの動作を設定します。設定は
window show
とwindow hide
,window auto
ステートメントから変更出来ます。詳細は テキストウィンドウの管理 を参考してください。
- define config.window_auto_hide = [ "scene", "call screen", "menu", "say-centered", "say-bubble", ... ] link
window auto
によって空の会話ウィンドウを非表示にするステートメントのリスト。
- define config.window_auto_show = [ "say", "say-nvl", "menu-with-caption", "nvl-menu", "nvl-menu-with-caption", ... ] link
window auto
によって空の会話ウィンドウを表示するステートメントのリスト。
開発業者 link
互換性 link
- define config.label_overrides = { } link
この変数は Ren'Py スクリプト中でラベルへのジャンプや呼び出しを他のラベルにリダイレクトさせる方法を提供します。例えば「 start 」から「 mystart 」へのマッピングを追加すると、「 start 」へのすべてのジャンプと呼び出しは代わりに「 mystart 」へ向かいます。
- define config.script_version = None link
None またはスクリプトのバージョンを指定します。必要なら Ren'Py はこのスクリプトバージョンをいくつかの互換性機能を有効化するために使用します。 None ならこれは最新バージョンのスクリプトと推測します。
これは通常 Ren'Py ランチャーにより配布物のビルド時に追加されるファイル内で設定されるので、通常は設定しないでください。
開発 link
- define config.console = False link
config.ldeveloper
が True でない場合に、コンソールを有効化します。
- define config.developer = "auto" link
True の場合、開発者モードが有効化されます。開発者モードは Shift+D での開発者メニューや、Shift+R でのリロードなどエンドユーザー向けではないその他様々な機能を提供します。
True または False, "auto" です。 "auto" なら Ren'Py はゲームが配布物にパッケージされたかを確認して、 config.developer を適切に定義します。
デバッキング link
- define config.clear_log = False link
True なら、
config.log
によって作成されたログは Ren'Py が起動するたびにクリアされます。
- define config.debug_prediction = False link
True なら Ren'Py は ( 実行フロー、画像、スクリーンの ) 予測についてとその最中に発生したエラーを log.txt とコンソールに書き出します。
- define config.debug_sound = False link
サウンドのデバッグ機能を有効化します。これはサウンド生成時のエラーの抑制を無効化します。サウンドカードに欠点があったり失敗しても、そのようなエラーはよくあることで Ren'Py の動作を妨げません。これはゲームのリリース時には常に False であるべきです。
- define config.debug_text_overflow = False link
True だと Ren'Py はテキストオーバーフローを text_overflow.txt に記録します。テキストオーバーフローは
Text
displayable がその許可された領域よりも大きくレンダリングされると起こります。これを True にして 台詞用ウィンドウのxmaximum
とymaximum
スタイルプロパティーをウィンドウのサイズに設定すると、台詞がウィンドウより大きい場合は報告するように出来ます。
- define config.disable_input = False link
True なら
renpy.input()
は即座に停止し、その default 引数を返します。
- define config.exception_handler = None link
None を指定するか、関数を指定します。関数は次の 3 つの引数で呼び出されます :
トレースバックのテキストの文字列ですが、省略されてて制作者作成のファイルのみを含みます。
トレースバックの完全なテキストで、製作所作成と Ren'Py のファイルの両方を含みます。
トレースバックされたメソッドを含むファイルへのパスです。
この関数はユーザーに適した方法でエラーを提供出来ます。 True を返せば、例外は無視され、制御は次のステートメントに渡されます。 False なら組み込みの例外ハンドラーが使用されます。この関数は
renpy.jump()
を呼び出して制御を他のラベルに移します。
- define config.lint_character_statistics = True link
True かつ
config.developer
も True ならば、 lint レポートに各キャラクターが話したダイアログブロックの数の統計が含まれます。この統計はゲームがパッケージ化された時点で、ネタバレを防ぐために無効化されます。
- define config.lint_hooks = [ ... ] link
これは lint が実行されると引数なしで呼び出される関数のリストです。関数はエラー確認のためにスクリプトのデータをチェックすることが期待され、標準出力に発見したものを表示します ( この場合 python
print
ステートメントの使用が適切です )。
- define config.log = None link
None を指定するか、ファイル名を指定します。 say や menu ステートメントによって表示されるテキストの多くはこのファイルに保存されます。
- define config.log_events = False link
true の場合、 Ren'Py は pygame スタイルのイベントを log.txt ファイルに記録します。これはパフォーマンスを低下させますが、特定の問題のデバッグに役立つ場合があります。
- define config.log_width = 78 link
config.log
使用時の記録される行の幅です。
- define config.missing_image_callback = None link
None を指定するか、画像ファイルの呼び出しの試みが失敗するときに呼び出される関数を指定します。コールバックには失敗した画像のファイル名が渡されます。それは None を返すか、 image manipulator を返すでしょう。画像マニュピレーターが返されるとその画像マニュピレーターは失敗した画像の場所にロードされます。
特にこれが
DynamicImage()
に使用されるなら、config.loadable_callback
も定義するとよいかもしれません。
- define config.missing_label_callback = None link
None または存在しないラベルに Ren'Py がアクセスしようとすると呼出される関数です。存在しないラベルをパラメーターとし、その代わりに使用されるラベル名を返すか、Noneを返して Ren'Py に例外を投げるべきです。
- define config.profile = False link
True ならプロファイル情報が標準出力に出力されます。
- define config.profile_init = 0.25 link
init
とinit python
ブロックの実行にこの時間以上かかると log ファイルにレポートされます。
- define config.raise_image_exceptions = None link
True の場合、Ren'Py は画像名が見つからない場合に例外を送出します。False の場合、Ren'Py は画像の代わりにテキスト形式のエラーメッセージを表示します。
None の場合、これは config.developer の値を取ります。
Ren'Py が例外を無視する場合、これは False に設定されます。
- define config.raise_image_load_exceptions = None link
True の場合、Ren'Py は画像の読み込み中に例外が発生した場合に例外を送出します。False の場合、Ren'Py は画像の代わりにテキスト形式のエラーメッセージを表示します。
None の場合、これは config.developer の値を取ります。
Ren'Py が例外を無視する場合、これは False に設定されます。
- define config.return_not_found_label = None link
None または帰る場所が見つからないときにジャンプするラベルです。コールスタックはこのジャンプの実行前にクリアされます。
ガーベッジコレクション link
- define config.gc_print_unreachable = False link
True なら、Ren'Py はコレクションを起動するオブジェクトに関する情報をコンソールとログに書き出します。
- define config.gc_thresholds = (25000, 10, 10) link
非アイドル時に Ren'Py が使用する GC のしきい値です。これらの数字以下でガーベッジコレクションが起動しないようにします。 3 つの数字は :
level 0 コレクション以前に割り当てられるべきオブジェクトのネットナンバー
level-1 コレクションを引き起こす level-0 コレクションの数
level-2 コレクションを引き起こす level-1 コレクションの数
(Level-0 コレクションはフレームドロップを引き起こさない程度に高速であるはずで、 level-1 コレクションはたぶん、 level-2 はきっと)
- define config.idle_gc_count = 2500 link
Ren'Py が安定状態になったときに、コレクションを起動するオブジェクトのネットナンバーです( スクリーンが更新されてから 4 フレーム以上後です)。
- define config.manage_gc = True link
True なら、 Ren'Py は GC を自身で管理します。つまり以下の設定を適用します。
リロード link
- define config.autoreload = True link
True なら shift+R で自動リロードの有効無効がトグルします。自動リロードが有効なら、 Ren'Py は使用するファイルが変更されるたびにゲームをリロードします。
False なら Ren'Py は shift+R を押すたびにゲームをリロードします。
- define config.reload_modules = [ ... ] link
ゲームと共に再読込されるべき python モジュール名の文字列のリストです。これらのモジュールのどのようなサブモジュールも再読込されます。