If you haven't guessed by now, the new version of Ren'Py can be downloaded from:
http://www.bishoujo.us/renpy/
As usual, upgrading can be done by copying the game directory from the old version to the new version.
My current plans are to slow down the rate of new featue introduction, and let this release mature for a bit. If no major bugs are reported, this will be released as 4.9, which will hopefully be a long-term stable release.
While DSE is included in this release, it will also be developed on its own, should the need arise.
New in 4.8.7
The new DSE dating-sim engine code is now present in the dse/ directory. It's not documented, apart from the comments in the source code, but it can be run by running the new run_dse program.
The image statement now passes its argument to the Image function, in loose mode. This means that strings and tuples are turned into single and composited images, respectively. So it's now possible to write:
Code: Select all
init:
image control room = "control_room.jpg"
Code: Select all
init:
image control room = Image("control_room.jpg")
There is now a new transition type, ImageDissolve. It lets us creat dissolve transitions in which pixels are dissolved at different times, which can be used for a range of effects. Two such effects are 'squares' and 'blinds'. A number of other types are defined in the source of the demo game, in their own section.
A new im.Tile image operator has been introduced. This operator tiles a source image until it reaches a specified size, or the size of the screen if no size is specified.
Ren'Py now supports a presplash screen. If the file presplash.png is present in the game directory, it is shown to the user on startup. This occurs before any loading or initialization occurs, so the size of the window it is shown in is determined by the size of the presplash.png image itself.
As per user request, we have made programmatic equivalents of the image, scene, show, and hide statements available. These functions are named renpy.image, renpy.scene, renpy.show, and renpy.hide, respectively.
Ren'Py now supports a new classification of layer, top layers. Top layers are layers that are displayed above any transition. This is useful if you want to have an overlay that is shown even when a transition is in progress. To have the overlays be displayed as a top_layer, remove the string 'overlay' from config.layers and append it to config.top_layers.
A new config variable, config.enable_fast_dissolve, was introduced. Setting this to False can fix a potential bug in the dissolve transition when used with an overlay layer that has an alpha channel that is not fully transparent or opaque, at the cost of 25% of the performance of dissolve. It usually can be kept at True with no ill effects.
Fade has been reimplemented in terms of Dissolve. This means that fades will be as fast as dissolves. Fade now also can take a widget, instead of a color, as an argument. If this widget is an Image, it means that we will dissolve from the old screen to the image, hold at the image for a given amount of time, and then dissolve from the image to the new screen.
The ImageReference class is now documented and present in the game's namespace. This lets us refer to an image by name from user code.
Added a RENPY_DISABLE_SOUND environment variable, which if set disables support for sound in Ren'Py. (For use on platforms where sound doesn't quite work.)
Fixed a bug in lint.
Fixed bugs that caused overlays to jump in and out during transitions, restoring the pre-4.8 behavior.
The definitions found in common/definitions.rpy are now documented in the reference. This gives a default set of transitions and positions, as well as an image (black).