Ren'Py 4.8.7 Released

Discuss how to use the Ren'Py engine to create visual novels and story-based games. New releases are announced in this section.
Forum rules
This is the right place for Ren'Py help. Please ask one question per thread, use a descriptive subject like 'NotFound error in option.rpy' , and include all the relevant information - especially any relevant code and traceback messages. Use the code tag to format scripts.
Post Reply
Message
Author
User avatar
PyTom
Ren'Py Creator
Posts: 16096
Joined: Mon Feb 02, 2004 10:58 am
Completed: Moonlight Walks
Projects: Ren'Py
IRC Nick: renpytom
Github: renpytom
itch: renpytom
Location: Kings Park, NY
Contact:

Ren'Py 4.8.7 Released

#1 Post by PyTom »

I'm pleased to announce the release of Ren'Py 4.8.7 "American Eagle". This release simplifies the image statement syntax, adds a new ImageDissolve transition, improves performance, and fixes some bugs. It also includes a slightly-updated DSE, our new dating-sim engine.

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"
instead of having to write:

Code: Select all

init: 
    image control room = Image("control_room.jpg")
Of course, the old way still works.

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).
Last edited by PyTom on Thu Jun 23, 2005 8:21 pm, edited 1 time in total.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
Software > Drama • https://www.patreon.com/renpytom

saru
Regular
Posts: 27
Joined: Mon Apr 18, 2005 7:05 am
Location: Maeklong , Thailand
Contact:

#2 Post by saru »

it's so fast ver. :D

i used v4.8.6 at last weak and v4.8.7 is come now!!




/action test v4.8.7 now :D

User avatar
mikey
Lemma-Class Veteran
Posts: 3249
Joined: Sat Jan 10, 2004 6:03 am
itch: atpprojects
Contact:

Re: Ren'Py 4.8.7 Released

#3 Post by mikey »

PyTom wrote: So it's now possible to write:

Code: Select all

init: 
    image control room = "control_room.jpg"
instead of having to write:

Code: Select all

init: 
    image control room = Image("control_room.jpg")
Oh NOW you do this!
(jk, it's a great feature, let the simple times come!)

User avatar
PyTom
Ren'Py Creator
Posts: 16096
Joined: Mon Feb 02, 2004 10:58 am
Completed: Moonlight Walks
Projects: Ren'Py
IRC Nick: renpytom
Github: renpytom
itch: renpytom
Location: Kings Park, NY
Contact:

#4 Post by PyTom »

Apart from bug fixes, this will probably be the last release of Ren'Py for quite some time. (DSE will be updated separately, if needed.) I'm starting a full-time job on Monday, for the summer, which will begin taking up a bit of my time, and I also want to head towards a more stable release of Ren'Py. And ImageDissolve was one of the last major features Ren'Py was missing. (Well, apart from auto-forward, but that's fairly minor and not overly needed for non-H games.)

Of course, the real reason is that I've run out of spacecraft names. I mean, "American Eagle" was even unofficial.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
Software > Drama • https://www.patreon.com/renpytom

User avatar
mikey
Lemma-Class Veteran
Posts: 3249
Joined: Sat Jan 10, 2004 6:03 am
itch: atpprojects
Contact:

#5 Post by mikey »

Why is it that "hands free" mode always seems to be associated with "hands free to do something else"? ^_^ Personally I used AFM when I wanted to eat something while watching, just like a subbed anime and at times I found it quite comfortable.

Hmmm, so how about "Arianne"? If a rocket counts. Non-US...

User avatar
PyTom
Ren'Py Creator
Posts: 16096
Joined: Mon Feb 02, 2004 10:58 am
Completed: Moonlight Walks
Projects: Ren'Py
IRC Nick: renpytom
Github: renpytom
itch: renpytom
Location: Kings Park, NY
Contact:

#6 Post by PyTom »

Fair enough, except that I think you may the only one who uses AFM that way.

Hm... I haven't been using rockets, but rather the call signs for manned space missions. For the 4.8 series, I was using early US missions (Friendship 7, Freedom 7, Sigma 7) and so on... except I switched the sevens to 8s to represent the 4.8 release, and to prevent confusion. I finished Mercury, and now I'm on Gemini... which is when NASA stopped using call signs.

(The reason was Gus Grissom named his second capsule "Molly Brown", after the unsinkable Molly Brown, a survivor of the Titanic. He did this because his first capsule sank a bit after splashdown. NASA didn't have a sense of humor.)

Call signs resumed in Apollo, when there were two ships per mission. So the 4.9 series will probably have names like "Spider", "Gumdrop", "Snoopy", "Charlie Brown", (and here's where the NASA guys made them change the names to something more formal) "Eagle", "Columbia", and so on.

If I release anything else in the 4.8 series, I'll probably randomly pick names from early Soviet missions...
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
Software > Drama • https://www.patreon.com/renpytom

chronoluminaire
Eileen-Class Veteran
Posts: 1153
Joined: Mon Jul 07, 2003 4:57 pm
Completed: Elven Relations, Cloud Fairy, When I Rule The World
Tumblr: alextfish
Skype: alextfish
Location: Cambridge, UK
Contact:

#7 Post by chronoluminaire »

I use auto-forward too, for non-dodgy purposes. It can really alleviate my RSI if I don't have to click/tap space at all. But I do like it fairly configurable to go fairly fast, otherwise I get bored and find myself reaching for the mouse anyway. (And then my fingers hurt the next day...)

User avatar
PyTom
Ren'Py Creator
Posts: 16096
Joined: Mon Feb 02, 2004 10:58 am
Completed: Moonlight Walks
Projects: Ren'Py
IRC Nick: renpytom
Github: renpytom
itch: renpytom
Location: Kings Park, NY
Contact:

#8 Post by PyTom »

Okay, fairly good arguments. I'll see what I can do about hands-free text... I'm not 100% sure how it will work at this time.

The problem with AFM is that it's really a two-variable problem. I think there should be an amount of time given to a message for existing, and another amount added depending on the length of the message. So if we give 2 seconds for each message, and then another 2 seconds for every 50 characters in the message, a 50 character message would take 4 seconds, and a 100 character message would take 6.

I think that's how I'll do it... the AF time is equal to the setting + setting * ( text length / 50 )
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
Software > Drama • https://www.patreon.com/renpytom

Post Reply

Who is online

Users browsing this forum: Bing [Bot]