Comments

Log in with itch.io to leave a comment.

Viewing most recent comments 41 to 50 of 50 · Previous page · First page

This is really cool. Would it be possible to use this effect along with dialogue bleeps (since both of those effects use the callback parameter)? If so, what would be the best way to combine them? Thanks!

Actually, I just have to call my bleeps function within name_callback. In hindsight, I should've pieced that together much faster...

The effect is pretty cool. Thank you so much for the resource!

hello! i know this is a total shot in the dark on a very old comment but i am right now stuck on this very issue - i can't figure out how to call the bleeps function within name_callback. is there any chance you have a bit of old code to share?

(6 edits) (+1)

In another .rpy file, I have a dictionary that maps character names (the string that is used for the cb_name parameter when defining a Character) to the path of their respective bleep files, which looks something like this:

## name_callback in game/00auto-highlight.rpy uses this dictionary 
## to determine what bleeps to use per character
define bleeps_dict = {"ss" : "audio/bleep023.ogg", "vl" : "audio/bleep003.ogg", "ap" : "audio/bleep006.ogg"}

And in 00auto-highlight.rpy, I tweaked the name_callback function to look like this (please note that I defined a separate audio channel just for text bleeps):

def name_callback(event, interact=True, name=None, **kwargs):
         global speaking_char
         if event == "begin":
             speaking_char = name
         ## text bleeps
         if name in bleeps_dict:
             if event == "show":
                 renpy.music.play(bleeps_dict[name], channel="bleeps", loop=True)
             elif event == "slow_done" or event == "end":
                 renpy.music.stop(channel="bleeps", fadeout=1.0)

If there is a character who shouldn't use bleeps (I defined a separate Character object for my MC's thoughts, for example), then the "if name in bleeps_dict" line above can be changed to something like: 

if name in bleeps_dict and name != "name_of_silent_character": 

If there are several character who don't speak, it might be easier to define a list of names of silent characters and then use "...and name not in silent_characters". 

I think this is all I needed to do. If you have any issues, please feel free to let me know!! ♡

(Also I'm really sorry if the code formatting above is a bit nasty to read with the indentations)

(2 edits)

this is incredibly helpful, wow!! thank you so much for getting back to me, especially on such an old comment of yours - you're the best <3

i had a big followup question here but i solved it so i edited it out lol. tysm!

I'm happy to help!! I hope it works for your project.

I forgot to mention in my last reply that I defined a separate audio channel for the text bleeps (which affects the changes to the name_callback function). That's why I have a channel named "bleeps" in the code. This can be changed to any audio channel (premade or custom) where bleeps can work. 

Please feel free to let me know if you have any more questions about my implementation!! <3 <3

Is there a way to highlight both characters during narration? I am loving this script as a newbie to Renpy, so thank you sm for publishing it.

(-1)

You're a god for releasing all of these cool stuff, THANK YOU.

how do i set this up?

Simply put the 00auto-highlight.rpy file in the game folder in your project. Instructions on how to use it are provided within the file itself and an example of how to make use of it is provided in script.rpy.

Is it possible to put it in the ren'py folder so all my games benefits from it? Or do I need to put it in every games' folder?

This is so cool, thank you so much!

(1 edit)

holy crap wow

(-1)

You can also do this by taking your sprite and fading it out in Gimp.  Then when you show your characters, you just show the one that is speaking and the others as the faded out versions.  You can see how I did that in this game = https://rpgmaker.net/games/8212/

(+2)

Yes, that does work. Though it has some issues. One is that it eats up a lot of unneeded file space. With your method, every image essentially requires twice as much file space. It saves a lot of file space if you do the color manipulation in the engine for basically free. And if you want to change the look of it a little, it's a lot easier this way, since you don't have to re-export every image. Albeit, the color part of this does require using Renpy 7.4, which doesn't work on some older devices.

The other issue is that then in your script, you have to write out every 'show' and 'hide' statement manually to swap between the two. Which is a fair amount of work and means you have to be sure you do it for every time who's speaking changes in the dialogue. Which might be a lot.

With my method, and a bit of setup, it does both of these effects automatically without any additional work needed or taking up additional file space. While I commend your method and think it is clever and certainly good for its time. I think this is a nice alternative for people going forward, if they wish to do it as well.

Hi, if I want to change the contrast instead of saturation, which line I have to change? (I actually have a faint idea but rather not mess with the calculation)

I don't believe Renpy has a class that directly affects contrast. But the list of predefined matrixes can be found here. https://www.renpy.org/doc/html/matrixcolor.html#built-in-colormatrix-subclasses 

As for actually modifying it, you'll be doing that near the bottom of the 00auto-hightlight.rpy. Specifically around lines 186-192. You'll also likely want to add a change amount a bit higher with all the rest of them around 123-125. If you have any other questions I can answer, feel free to ask!

Ah I see, I thought it would be possible seeing this https://www.renpy.org/doc/html/im.html#im.matrix.contrast

but I might playing with available predefined matrixes a bit more

Oh! It would seem there is a ContrastMatrix that isn't mentioned in the matrixcolor documentation. So yeah, using ContrastMatrix should work I believe. Here's the source code to prove it exists. 

Viewing most recent comments 41 to 50 of 50 · Previous page · First page