Ren'Py 5.3.1 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: 16088
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 5.3.1 Released

#1 Post by PyTom »

"Joy To The World." We see it everywhere this time of year, but have you ever pondered what it really means? Here at American Bishoujo, we gave it quite a bit of thought, and came to only one conclusion: Joystick Support.

We're pleased to announce our gift to you, the 39th public release of the Ren'Py 4 /5 codebase, Ren'Py 5.3.1 "Joy To The World". The big new feature in this release is joystick support, which can be used to manipulate menus and play games. This release also improves image preloading (for example, ImageDissolves are preloaded), supports arbitrary ramps for ImageDissolve, and better reports errors when setting config or library variables. Even if you've been naughty this year, there are still a number of bug fixes... which are a might bit better than coal.

You won't find Ren'Py 5.3.1 in your stocking or under your tree... you'll find it at the Ren'Py home page:

http://www.bishoujo.us/renpy/

As usual, upgrade by copying over your game directory. There are a few new styles that support customizing the joystick mappings, but they inherit from sane defaults, so it probably won't be necessary to customize them.

I do ask that people try out the new joystick code, to ensure that it works correctly. If you don't have a joystick on your system, all you'll see is a grayed-out Joystick... button on the Preferences menu. If you do have a joystick, you can click to get into the joystick configuration. Click a mapping and you can edit it by moving the joystick or pressing the appropriate button.

Even without editing the mappings, the joystick should work well enough that you can navigate around the menus and the game, pressing button 0 to advance the screen or select a menu choice or button.

I would like feedback from people with joysticks who try this out. I've only tested it under Linux and Window using a PS2 gamepad -> USB converted, so I'd be especially interested on how it works with traditional gameport joysticks. Even if you have a digital joystick, reports of success, failure, or even just comments and suggestions would be appreciated.

Anyway, I leave you with tidings of wonder, joy, and What's new in Ren'Py 5.3.1.

Ren'Py now includes support for using a joystick to play the game. To configure joystick support, go into Preferences, click Advanced..., and then click the function you wish to assign to a joystick axis or button.

ImageDissolve now support a ramp parameter, which can be used to give the ramp explicitly.

Now, we preload the images that are used in say statement, menus, and transitions. This means that just about every image in a basic game should be preloaded, which should in turn lead to an improved user experience and a lack of pauses for image loading. To support this, the Character function grew a predict_function argument, and there are now also predict_menu and predict_say functions at the top-level.

Setting a config or library variable that does not exist is now an now raises an error. Previously, this was ignored silently.

If it exists, renpy.zip is added to the python search path. This lets one replace the renpy/ directory with a renpy.zip file containing that directory, if so desired.

A non-nested return now returns the user to the main menu, rather than dumping him out of Ren'Py entirely.

Fixed a bug that required Tab to be pressed twice to re-enable skip mode after skipping was terminated by hitting a menu.

Maybe fixed a bug that was preventing non-fullscreen video from working. (I'm not totally sure this is a real bug.)

Fixed a bug that prevents certain MOD files (including the .xm files that shipped with the non-Ren'Py game Transfer Teacher) from working under Ren'Py. This required the creation of a new Ren'Py Launcher for Macintosh, as well as a new release of the renpy module installer for Windows.
Last edited by PyTom on Thu Jan 12, 2006 11:51 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 »

http://www.bishoujo.us/renpy/dl/5.3.1/renpy-5.3.0.zip <<<<< Miss Link

"Joy To The World" Look like a happy time ^_^
:)

User avatar
Quin
Regular
Posts: 117
Joined: Sun Nov 20, 2005 4:29 am
Location: Maine
Contact:

Re: Ren'Py 5.3.1 Released

#3 Post by Quin »

PyTom wrote:Fixed a bug that prevents certain MOD files (including the .xm files that shipped with the non-Ren'Py game Transfer Teacher) from working under Ren'Py. This required the creation of a new Ren'Py Launcher for Macintosh, as well as a new release of the renpy module installer for Windows.
MOD files as in tracker files? Like ProTracker modules? Ren'Py supports those? Really? :shock:

If so, not only will I not have to go spend that $20 on MIDI composition software (and, more importantly, deal with the vagaries of MIDI), but I'll be completely in my element... I've been making MODs for 12 years!

Is it as simple to use as $ renpy.music.play("music/filename.mod") ? *tries it out* Oh, sweet mercy, it DOES work!

Before I get TOO excited (yeah, I know, it's a little late for that), how's MOD-playing compatibility with Mac/Unix/etc.? Will everybody be able to hear my intricate symphonies or my nerve-crunching gritcore? (Also, are 8-channel MODs with 31 samples supported, or only a smaller subset?)

monele
Lemma-Class Veteran
Posts: 4101
Joined: Sat Oct 08, 2005 7:57 am
Location: France
Contact:

#4 Post by monele »

http://www.bishoujo.us/renpy/dl/5.3.1/renpy-5.3.1.zip << looks like a working link.

Quin : RenPy uses the Bass library I think... or at least one of the popular music libraries. I'm pretty sure all kind of modules will work ^^

PyTom : just tried with my Microsoft gamepad (6 front buttons, select, start, L & R) and it works like a charm :). My mouse left button will probably say thank you for this ^^
Maybe a bug : while in the Joystick preference page, pushing up goes through Quit, Load game, Preferences, Return and then jumps at Select/Dismiss. Looks like it should jump at Menu though. Same thing when going down, it jumps from Menu to Preferences and not Return.

Question : can we add mappings ourselves ? If so, how ? ^^;. I just think it lacks a button to skip (not *toggle*, just skip while pressed, just like the CTRL key).

User avatar
PyTom
Ren'Py Creator
Posts: 16088
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:

#5 Post by PyTom »

Re: The missed link.

Too much eggnog. Fixed now.

Re: MOD support.

Ren'Py has had support for MOD files forever and a day. It now support MOD playback using the libmikmod library. This library means we should have identical MOD playback support on all of the platforms we support. This is definitely the case on Windows, Mac OS X (using Ren'Py Launcher for Macintosh) and Linux (using py4renpy).

Ren'Py supports all the MOD formats libmikmod supports. According to their homepage, this includes:

669 (Composer 669, Unis 669), AMF (DSMI Advanced Module Format), AMF (ASYLUM Music Format V1.0), APUN (APlayer), DSM (DSIK internal format), FAR (Farandole Composer), GDM (General DigiMusic), IT (Impulse Tracker), IMF (Imago Orpheus), MOD (15 and 31 instruments), MED (OctaMED), MTM (MultiTracker Module editor), OKT (Amiga Oktalyzer), S3M (Scream Tracker 3), STM (Scream Tracker), STX (Scream Tracker Music Interface Kit), ULT (UltraTracker), UNI (MikMod), XM (FastTracker 2)

I belive 32 channel MODs are supported, and I don't know anything about how many samples are supported. I'd suspect it can play most reasonable MODs out there, but I don't know the precise definition of reasonable.

Re: Joystick.

With regards to navigating in windows, the joystick should emulate the keyboard, and both implement something vaguely like the way dvd menus work. So if some of the jumps are a little weird, it isn't necessarily a bug.

Right now, the joystick code only maps one event at a time, and only handles buttons being pushed down or axes being pushed into a direction. It doesn't handle buttons being released or axes returning to neutral... I'd need to think about if I want to support that use case... which is necessary to have a hold-to-skip joystick button.
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
PyTom
Ren'Py Creator
Posts: 16088
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 »

FWIW, I made it so joystick events can represent a button press and release at once. This means that I'm able to implement Hold-to-skip on the latest codebase of Ren'Py, and I did.
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

monele
Lemma-Class Veteran
Posts: 4101
Joined: Sat Oct 08, 2005 7:57 am
Location: France
Contact:

#7 Post by monele »

Yay :). PyTom, rocking the ren'ai world since... a few years ago :)

User avatar
Quin
Regular
Posts: 117
Joined: Sun Nov 20, 2005 4:29 am
Location: Maine
Contact:

#8 Post by Quin »

PyTom wrote:Ren'Py has had support for MOD files forever and a day.
And I have known about it for... a day. ^_^
PyTom wrote:This library means we should have identical MOD playback support on all of the platforms we support. This is definitely the case on Windows, Mac OS X (using Ren'Py Launcher for Macintosh) and Linux (using py4renpy).
That answers my question exactly... I can now make MODs without fear.

For anyone not familiar with MODs, it's sequenced like a midi but includes its own samples in the file instead of using presets. Most of the file's size comes from the samples, so a 10-minute song isn't much bigger than a 1-minute song that uses the same samples. It's possible to create songs smaller than 100 KB, and most of my old songs were less than 200 KB. My song Synthetic Nectar is 2844 KB as a low-fi 80kbps MP3, but only 124 KB as a MOD.
PyTom wrote:Ren'Py supports all the MOD formats libmikmod supports. According to their homepage, this includes: {...} MOD (15 and 31 instruments) {...} I belive 32 channel MODs are supported, and I don't know anything about how many samples are supported.
Actually, samples = instruments, so that answers my question as well. It's rare that I use more than 15 samples in anything instrumental, but I have the luxury of using 31. And 32 channels is more than enough. ^_^

This truly is a gift. Thank you, PyTom... and thank you to all the people upon whose shoulders you're standing.

Post Reply

Who is online

Users browsing this forum: Bing [Bot], Ocelot