Auto-play feature?

A place to discuss things that aren't specific to any one creator or game.
Forum rules
Ren'Py specific questions should be posted in the Ren'Py Questions and Annoucements forum, not here.
Message
Author
Rika-chan
Regular
Posts: 48
Joined: Sun Aug 06, 2006 2:01 pm
Contact:

Auto-play feature?

#1 Post by Rika-chan »

I know Ren'Py has one, but I can't seem to figure out what the code for it is. Hopefully it's not too complicated to implement, as I'd love to put it in my KN.

Thanks.

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

#2 Post by mikey »

It's actually implemented by default, so you only need to press TAB to activate it. In the options menu you can select how long the interval between the lines of text is. And it is as far as I know also connected to the amount of text on screen. The newest Ren'Py versions should also have something like "start skipping" in their in-game menus.

Rika-chan
Regular
Posts: 48
Joined: Sun Aug 06, 2006 2:01 pm
Contact:

#3 Post by Rika-chan »

Thanks for replying so quickly. I don't know what you're talking about. I tried hitting tab, and it just acts like Ctrl. There's no "start skipping" in my menu. :?

Edit: Ok, I looked again and found the button, but it's grayed out.
Last edited by Rika-chan on Thu Aug 10, 2006 6:54 pm, edited 1 time in total.

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 »

Actually mikey is sort of conflating two features here. There is the skip mode, which skips text at a fast rate. That is what is selected by hitting tab and control.

What you want sounds like auto-forward mode. Just go into the preferences and lower the auto-forward time slider (say, to 1/4 or so of the maximum setting). When you go back to your game, Ren'Py will now delay for a few seconds, and then skip to the next line.

Part of the Ren'Py philosophy is that stuff like skipping and AFM should be implemented in the engine, so every game-maker doesn't need to worry about doing it themselves. This way, game-makers can focus on making games.
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

Rika-chan
Regular
Posts: 48
Joined: Sun Aug 06, 2006 2:01 pm
Contact:

#5 Post by Rika-chan »

Thanks, PyTom, I understand now, and I got it to work for me. I saw those sliders, but I guess I didn't recognize them for what they were.

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

#6 Post by mikey »

PyTom wrote:Actually mikey is sort of conflating two features here.
God, I really AM useless. Sorry! If that's not proof that a non-programmer can make games, then I don't know what is ^_^. Oh well.

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:

#7 Post by PyTom »

Oh, and just for the record... the Begin Skipping button is grayed out when you're at the main menu, but it should work when you actually start a game.
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

Rika-chan
Regular
Posts: 48
Joined: Sun Aug 06, 2006 2:01 pm
Contact:

#8 Post by Rika-chan »

Ok, another question. Is there a way to set the sliders at some sort of default (other than max) so that it'll run that way every time, and I don't have to tell players to fix it themselves?

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:

#9 Post by PyTom »

Add the following to your script:

Code: Select all

init:
     if not persistent.set_afm_time:
         $ persistent.set_afm_time = True
         $ _preferences.afm_time = 10
This will set the setting to 10 the first time the player runs the game. It will then store the fact that it has set it into game/saves/persistent, so if the user changes the setting, it won't be set again.

Of course, you probably don't want to do this... people don't expect this behavior from games, and it's hard to pick a speed that is comfortable for both native readers, and people who aren't quite as fluent.
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
DaFool
Lemma-Class Veteran
Posts: 4171
Joined: Tue Aug 01, 2006 12:39 pm
Contact:

#10 Post by DaFool »

I thought what Rika-chan meant was for example the autotext in the lower left corner when

"Ori, Ochi, Onoe"

The kind of OMG you are now on a climactic ending path.

Another example when you have BIG BOLD TEXT in the middle of the screen declaring

"BECAUSE... I LOVE HER."

And you want the reader to suffer all the ten seconds it should take to read such a groundbreaking line, without the ability to pause or click forward.

Rika-chan
Regular
Posts: 48
Joined: Sun Aug 06, 2006 2:01 pm
Contact:

#11 Post by Rika-chan »

Actually, PyTom pretty much understood what I was asking when he answered my question. I'm still not sure I agree with whether I should or shouldn't do it (it is a KN, after all) because there are people who might play it who won't be as familiar with Ren'Py. *shrug*

But anyway, DaFool brings up an interesting point. Is it possible to disable clicking ahead, say for that really dramatic moment? Of course, this could be abused and turned into an uncomfortable Eva moment, but let's hope that won't happen.

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:

#12 Post by PyTom »

If you really want to do that, you can write:

Code: Select all

$ ui.pausebehavior(2.0)
$ ui.interact()
And it will pause for 2.0 seconds, and then continue.

That being said, let me just say that you should have faith in your players. We want to see your story as much as you want to tell us your story... and you should trust us to figure out the best way to take in that story.
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
DaFool
Lemma-Class Veteran
Posts: 4171
Joined: Tue Aug 01, 2006 12:39 pm
Contact:

#13 Post by DaFool »

That being said, let me just say that you should have faith in your players. We want to see your story as much as you want to tell us your story... and you should trust us to figure out the best way to take in that story.
Thing is, I'm more of an anime person than a manga person. A manga reader can take whatever amount of time she wants to consume a story...it doesn't matter if the mangaka spent weeks on a volume, if it can be breezed by without admiring the pretty pictures, so be it.

A game is similar to manga in its open-endedness and totaly up to the user how to experience things.

However with anime comes direction, which imho is part of moviemaking. And mikey correctly described in one of his essays that a visual novel is more like a cross between a novel and a film. The example he gave was when the Transporter dude was laying waste to countless thugs. That sort of thing would be most effective in a perfectly scripted, timed fashion. In fact it is doubtful any replay of an action game can match such finesse.

I asked the question because, say, me, as a director of a kinetic novel, feel it best that a scene will take 10 seconds, and if I say so, so be it. Movie watchers don't complain unless it really was bad timing. Thus I also feel kinetic readers should feel the same way.

And thanks for the code ^_^

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

#14 Post by monele »

Basically on that point, I think it's alright to have timed things... as long as it doesn't involve text. You can have animations, transitions, and other things with sounds... but when text is included, you should let the user decide. Either he clicks when he has read, or he has autoplay, or... anything... you can't really guess.
My biggest problem with this is synchronizing sound with events. What I usually try to do is have anything related to sound not have anything written. I guess it can't work all the time though, so.... *shrugs*... maybe use the text object and display it on screen yourself ?

But as PyTom says, if you're scared of the player clicking through the pauses and animations you make, just... don't be ô_o... Players that will do that are just not players interested in your game. Hell, I even had an example of that at work when I showed my demo to a colleague. He started reading a bit and then went clicking super fast through it all, skipping everything, even the non-text parts. My thought was not "omg, Ren'Py didn't let me block the user through this" but rather "alright, I'm not showing anything else to this guy..."

Also, think about someone who goes through your game/KN again : maybe he'll want to skip some parts ? (I hope not but eh...) Maybe he'll want to just read a particular part again ? Anyway, if you prevent him from skipping through this... he'll just be frustrated.

To conclude, I'm against games that *force* you to watch any video, just because "oh no, players always skip the intro and then ask what they have to do !"... Well these players suck and are disrespectful to your game...

User avatar
DaFool
Lemma-Class Veteran
Posts: 4171
Joined: Tue Aug 01, 2006 12:39 pm
Contact:

#15 Post by DaFool »

This reminds me of when I heard that certain independent filmmakers specifically did not want chapters to be included in DVDs of their films, because they feel that everyone should experience the film exactly as they directed it, from beginning to end.

Of course they may be a little wacko :shock:

Skipability is a good option if there are aspects which feel like commercials / advertisements.

But certain content is the content proper, and somehow must be reinforced to the user that that is the case.

Well anyways, it really depends on the scene. How about, taking the code mentioned, but with the ability of autoskip to just breeze through it? But when normal playing, it is timed. Is that possible?

Post Reply

Who is online

Users browsing this forum: No registered users