Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Wattson

51
Posts
411
Followers
76
Following
A member registered Jun 24, 2019 · View creator page →

Creator of

Recent community posts

Like it cycles through multiple fonts before settling on one or each letter is a different random font?

Mostly just would be having it so the letters keep some kind timer, randomly going through characters until the timer hits zero and then just shows the actual letter. Though if you do need me to do it I'll note it down and let you know when I can get to it later.

(1 edit)

No, I've never directly made an effect like that, but with my setup, it wouldn't be hard to make one if you know what you want and have some coding experience. Could maybe make one if you need though, but currently busy with another project so can't promise anything for a bit if you need it right now.

Sorry about that. Yeah I've had that issue sometimes crop up. Usually though it's when I'm having another auto talking solution going on as well. If I ever find a solution to that though I'll be sure to let you know.

If I had to guess I would presume it's because when the scene starts, the character hasn't been speaking, so the speaking_char is probably either None or someone else. Then when the line starts, the character is then set as the speaking_char, so he lights up to normal. If you want them to start off already focused, you can manually set the speaking char by doing:

$ speaking_char = "guard1"

either before the transition or sometime during it. Which would then have the sprite start off in the talking state.

Hopefully that helps. But if it's some other issue, let me know and I'd be happy to help correct it.

You can probably have the glitch go slower but changing the redraw time. Maybe something like 1./30 instead of 0 if you just want it at 30 fps or just .2 or something if you need it slower. It'll be the renpy.redraw(self,[new number here]) bit.

I'd need to know more about your project to know what might be the issue.

Ah so you got it fixed?

You'd probably need to add a flag to each text tag function or class to tell it to do more default behavior. Will need to make it a persistent or preference variable as well so it is always accessible.

Sorry for the late reply. But yeah you need to have the base kinetic_text_tags.rpy in there as well since it contains the DispTextStyle class which helps the text tag function handle other text tags. That or you can copy it from there into that file if it's the only thing you need.

Hi. Sorry for the late reply. I tried replicating the issue on my end, but doing the same setup (or at least what I can suppose from your comment) yielded results that looked correct to me. My best guess for the issue is that something about how you defined the sprites is causing renpy to reset the anim_time value, which would cause the sprite_highlight function to snap to the highlighted value. Which maybe you're confusing for the .2 seconds given .2 is pretty fast. Though I could be wrong. This is just my best guess given the information.

I tested with NVL and that didn't seem to make much of a difference. If you'd want to show me your code so I could test it and see what the issue might be, I'd be happy to take a look when I have time. (My username on discord is wattson if you need to reach out). But yeah I'm not entirely sure what the problem might be beyond my guess. Hope this was helpful and a solution to your issue can be found!

Hi. Sorry for taking a bit to get back to you. But yeah I appreciate you wanting to edit it to be easier for non-programmers to read it. I will admit I did my best when writing the original code to try and make it approachable as I could. If you have ideas on how to make it more approachable, I'd be happy to take feedback and upload a modified version on here with credit to you for the help. But if you're not making significant changes to the functionality and just adding comments, I feel like it'd be best to just have one project up. Sent a friend request on discord so we can chat more about it. Thanks for your feedback.

- Wattson

Yes. But you'll also need to make changes to your layeredimage sprites to work with it in order for it to work. Instructions and examples on how to do it can be found in the example project.

1. You'll probably need to add the glitch tag to the DispTextStyle class as part of the custom tags. That way it'll try and add it to every letter more or less. 

2. Depends on what you want to do with the swap text. You'll probably want to update the SwapText class at least to take a list of texts to do. And then tell it to keep track of which one is being shown and increment it when you want it to go to the next one. But yeah the details from there are up to how you want to do it.

Sure I'll see what I can do about that. The main reason I split them up was originally to make it more modular. So if you didn't need every tag, you could pick and choose which you want, without it becoming a 1000+ line script file to go through. But given how many of my custom tags use the DispTextStyle class to handle other tags, probably makes sense to just lump them into one. So ppl just need to download one file even if they don't use all of them. I've just been pretty busy lately with my actual job and life stuff, so I'll see about when I get around to updating it. Probably when I have enough free time to work on another tool I've been meaning to release for a while.

Can you not use matrixcolor to accomplish the same thing?

The text's default position is going to be relative to where it would normally be placed on the screen. I don't know which specific tag is giving you problems, but I will guess it's the ATL tag. Depending on the values you give it, you may just be offsetting it too much and might want to bring them down closer to 0. Hard to know what exactly is the problem without more details, but hope you're able to get it fixed.

Sorry for the late response but I think I have an idea what's wrong. Thing is, Renpy won't even allow this to work even without the kinetic text tag. I tested it myself and the outline still wouldn't appear. I believe the problem is that for the style {=} tag, renpy will only apply certain properties of the specified style. And sadly, outlines is not one of them. https://www.renpy.org/doc/html/text.html#style-text-tags

That said, there is an outlinescolor text tag. https://www.renpy.org/doc/html/text.html#text-tag-outlinecolor But I believe this would require the text to already have an outline, which you'd probably have to specify in your say screen. Maybe make a transparent outline that you can then replace with outlinecolor? I haven't tested this but I believe the solution is beyond the scope of my text tags sadly. But hope you're able to get your thing working!

I already noted that as being a bug in the demo. I think it has something to do with a whole line being made up of displayable inserts instead of actual text and renpy not being able to figure out the proper width of things. My best solution right now is to just say to add the line breaks in manually for where you know they should be. You can use \n or the {para} tag used in the demo. I know it's annoying but been too busy with other things to really look into a serious fix to avoid it. Sorry about that.

Well hope you're able to find a solution down the line.

And happy my script able to help people out! The support is appreciated!

Maybe it has something to do with the 'with' transitions?

In what way does it not work?

Never wrote one for that. Would probably have to be a shader or something to pull that off. But could work if ya do it like that.

Sure. I don't know if I feel comfortable putting my discord out in public like this. But you can DM me on Twitter and can get a conversation going from there.

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.

Not sure if I'll update it to include that. But if you want, you can go into the kinetic-text-tags.rpy and go down to the ScareText class. Near the bottom of the render function, you'll see 

renpy.redraw(self, 0)

Just change that 0 to something else like 0.2 or 0.5 or something and should slow it down.

If you ever need help feel free to let me know.

Yee I'd love to see a devlog about 'em!

Programmer for the game here. Just to eek out a bit more info, do you know what your Brawn stat was at for that section? Trying to gauge if it's a matter of your Brawn stat making it harder or some other issue going on.

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. 

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.

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!

I can confirm to you this is a bug in the code. I just made a mistake in the update function. There should be a hotfix out soon though that resolves the issue. Thank you for reporting this.

I couldn't tell you why. Might have something to do with your translation I'd imagine? Here's all the code that relates to the bounce tag. 


There's nothing in there checking for those characters. Or any other characters for that matter. (Except the argument). Maybe try it with the other tags and lemme know if it's still doing that. Couldn't tell you why it'd do it.

How is it the "official" FVN discord server? Who owns Furry VN? There's another FVN discord server out there that I enjoy a lot more. 

Sounds cool. Lemme know if you need any help with screen and sprite effects. I've been doing a number of them in Ren'py for a while so would be more than happy to offer coding advice if you want any. And feel free to use any of the ones I've put on my itch as well if you want. (Just provide credit if you do~)

Not sure why it'd do that. Can you share the particular line with me so I can see what might be going on?

Glad it can help you out and hope your Spooktober VN goes great!!

Went ahead and made an update with the changes. Decided not to add support for it to every tag. Couldn't think of a good way to implement it on Swap, Chaos, or Gradient tags. But should be fine on the rest of 'em. Hope you find 'em useful and lemme know if you have any issues! 

I will try to remember to maybe add this functionality in later. But right now, work is swamping me with things I gotta get done. Not sure I'll be able to get to this for a while. Sorry I can't be of more help at present.