非互換な変更点 link

これは、スクリプトの書式や開発環境に影響すると思われる変更のリストです。私たちは、これら以外のすべての変更は既存のスクリプトに影響を及ぼさないようにしています。

config.script_version を設定することで、これらの変更の多くを以前の状態に戻せますが、逆に新しい機能は利用できなくなります。

Incompatible changes to the GUI are documented at Incompatible GUI Changes, as such changes only take effect when the gui is regenerated.

6.99.13 link

The size of a hyperlink is now inherited from the size of the enclosing text. To disable this, add the code:

define config.hyperlink_inherit_size = False

6.99.12.3 link

Ren'Py will no longer search for system-installed fonts when in developer mode. If you game was using a system installed font, the font file should be copied into the game/ directory. (But please make sure that this is compatible with the font file's license.)

6.99.11 link

The order of exection of style and translate statements has changed, as documented in the changelog. To revent this change, add the code:

define config.new_translate_order = False

これにより新しいGUIが動作しないことに注意してください。

The config.quit_action variable has changed it's default to one that cause the quit prompt to be displayed of the in-game context. To revert to the old behavior, add the code:

define config.quit_action = ui.gamemenus("_quit_prompt")

Ren'Py now enforces maximum sizes given to buttons and windows. To disable this behavior, add the code:

define config.enforce_window_max_size = False

6.99.9 link

現在 Ren'Pyは同時に複数の再生をサポートする "audio" チャンネルでインターフェースサウンドを再生します。このチャンネルはカスタマイズされた sound チャンネルとは設定が違うかもしれません。audio チャンネルの設定は config.auto_channels, の調整または、以下のコードの追加で sound チャンネルが使用されます。

define config.play_channel = "sound"

6.99.2 link

Ren'Py は画像ディレクトリー ( ゲームディレクトリー下の images ディレクトリー )から画像を探し、そのファイル名から画像を定義するようになりました。これを無効化するには、以下のコードを使用してください。

init python:
    config.image_directory = None

6.18 link

show screencall screen ステートメントで、スクリーン予測処理の一部としてそれらの引数を評価するようになりました。スクリーン引数の評価が副作用を起す場合は、 show screencall screen ステートメントには予測を禁止する新しい nopredict 節を与えてください。

スクリーンがスクリーンの以前の状態から新しい状態へのトランジションに参加するようになりました。これを無効化するためには、 config.transition_screens を False に設定してください。

スクリーンが同じタグのスクリーンを置き換えるとき、 Ren'Py はもう構造の等価性を使用して状態を移行 ( 例えば、変換の状態 ) しません。代りに use statementid プロパティーをサポートするようになり、これを使って明示的に状態を移行出来るようになりました。

6.16 link

MusicRoom()loop 引数の意味が変わりました。以前と同じ挙動にするには、 loopsingle_track の両方を True にしてください。

6.15.7 link

Ren'Py now expects auto-forward mode to be controlled by the "auto-forward" Preference(). To have it controlled by the auto-forward mode slider, set config.default_afm_enable to None.

6.14 link

Previously, Ren'Py moved archived files into the archived/ directory. It would search this directory automatically when running a game or building archives. One-click builds make this unnecessary, and files in archived/ should be moved back into the game directory.

MoveTransition() has changed its interface. The old version of MoveTransition can be accessed as OldMoveTransition, if you don't want to rewrite your code. (The changes only matter if you use factories with MoveTransition.)

Transform() has changed its behavior with regards to asymmetrically scaled and rotated images. It's unlikely the old behavior was ever used.

6.13.8 link

Old-style string interpolation has been re-enabled by default. If you wrote code (between 6.13 and 6.13.7) that uses % in say or menu statements, you should either write %% instead, or include the code:

init python:
    config.old_substitutions = False

6.13 link

The changes to text behavior can affect games in development in many ways. The biggest change is the introduction of new-style (square-bracket) text substitutions, and the elimination of old-style (percent-based) substitutions. These changes can be reverted with the code:

init python:
    config.old_substitutions = True
    config.new_substitutions = False

New- and old-style substitutions can coexist in the same game, by setting both variables to True.

Ren'Py has also changed the default line-wrapping behavior. While the new behavior should never increase the number of lines in a paragraph, it may change which words fall on each line. To restore the old behavior, add the code:

init python:
    style.default.layout = "greedy"
    style.default.language = "western"

A bug with negative line_spacing was fixed. This fix can cause blocks of text to shrink in height. To revert to the old behavior, use:

init python:
    config.broken_line_spacing = True

Finally, the new text code may lead to artifacts when displaying slow text, especially in conjunction with a negative line spacing. Consider adjusting line_overlap_split to fix this.

6.12.1 link

Image names have changed from being static names to being attribute-based. This can lead to image names that were previously distinct becoming ambiguous. To disable attribute-based image names, set config.image_attributes to False.

Showing an image without providing a transform or ATL block will now continue the previous transform that the image was using. This means that a moving image may continue moving once it has changed. To revert to the old behavior, set config.keep_running_transform to False.

The image argument to Character() has changed meaning. While the old meaning was unsupported in the screens-based environment, it can be restored for compatibility purposes by setting config.new_character_image_argument to False.

6.12.0 link

The definition of the items parameter of the Choice and nvl_choice screens has changed. The nvl_choice screen is deprecated in favor of the NVL screen.

Screens may be invoked at any time, in order to allow for image prediction, unless they have a predict property of False. When the predict property is not False, screens should not cause side effects to occur upon their initial display.

For performance reason, Ren'Py now ignores the position properties of ImageReferences. This means that the position properties of style.image_placement are now ignored. To revert to the old behavior, set config.imagereference_respects_position to True.

6.11.1 link

MoveTransition has been modified to respect the xoffset and yoffset parameters of the displayables it is moving. The factory functions that are used for movement now take xoffset and yoffset parameters. While the built-in movement factories take these parameters without problem, user-defined factories may need to be upgraded to use or ignore these additional parameters.

6.11.0 link

  • The transform specified by the config.default_transform variable is used to initialize the transform properties of images shown using the show and hide statements. The default value of this transform sets xpos and xanchor to 0.5, and ypos and yanchor to 1.0.

    This represents a change in the default value of these style properties, which were previously uninitialized and hence defaulted to 0.

    By including the reset transform in ATL transforms, these properties can be reset back to 0. Alternatively, one can stop using the default transform, and revert to the old behavior, using the code:

    init python:
        style.image_placement.xpos = 0.5
        style.image_placement.ypos = 1.0
        style.image_placement.xanchor = 0.5
        style.image_placement.yanchor = 1.0
    
        config.default_transform = None
    
  • If a transform does not define one of the position properties xpos, ypos, xanchor, or yanchor, that property will be taken from the transform's child, if the defines that property.

    This makes it possible to have one transform control a displayable's vertical motion, and the other control the horizontal. But this is incompatible with previous behavior, and so can be disabled with the config.transform_uses_child_position variable.

    init python:
        config.transform_uses_child_position = False
    

6.10.0 link

  • The default positions (left, right, center, truecenter, offscreenleft, and offscreenright) are now defined as ATL transforms. This means that showing an image at such a position will cause the position to be remembered. If you do not want this behavior, you need to redefine these positions, by adding the code:

    define left = Position(xalign=0.0)
    define center = Position(xalign=0.5)
    define truecenter = Position(xalign=0.5, yalign=0.5)
    define right = Position(xalign=1.0)
    define offscreenleft = Position(xpos=0.0, xanchor=1.0)
    define offscreenright = Position(xpos=1.0, xanchor=0.0)
    

6.9.2 link

  • To migrate your game from Ren'Py 6.9.2 or later, copy the directory containing your game into your projects directory. You can choose a projects directory by clicking "Options", "Projects Directory" in the Launcher. Please see the Ren'Py 6.9.2 release notes for information about migrating from older releases.