firstly, thank you for taking the time to look at things! It means a lot that you'd put up with my terrible code XD
second, I'm not a trained programmer, and yes, I've done this whole thing by the seat of my pants lol. I've been working on this game for over two years, and you'd better believe that in that time I have learned SOOOO much about programing. due to the monthly release schedule, I don't always have the time to retrofit or overhaul the existing systems when i discover a new way to do things. (if you wanna see something really crazy, you should open the files of my last game Imparagon. I didn't even know what the call function was, so I built the whole thing with "jumps" XD ). this means that while i am a lot better at programing now, some of my original code from 2 years ago is still in there and causes problems from time to time.
1: you're probably right! but the biggest thing is we're built around monthly releases. when we shift to private development somewhere down the line, I'll definitely consider reformatting, but as it stands, any time I spend re-organizing will take away from the time i spend making the content and artwork folks are paying for each month over on patreon. for that reason, if it ain't broke, i can't spend time fixing it. (but yes please keep up the bug reports lol, those are super helpful!)
2: I'm not sure what you're suggesting with this one? i'm guessing this is in reference too the ambient event checks that trigger each mingle phase (which a handful of them should certainly be in a label, but some of them are specific to certain mingle phases). I would say the biggest difference between this and the rpg example you gave is that it's narrative. calling an attack over and over is useful sure, but dialogue has to be unique to its context. we have started using TF descriptions as call functions to use for multiple leadups, is that more what you are talking about?
3: the attitude system (although not always front facing) has been in the game since the very beginning, and its largely meant for the dating mechanics / dialogue trees, but it's still not fully implemented yet. it is also mean to someday be tied to the expressions each character will have (rhianna is the only one who has any rn, but we plan to apply them to others once we're closer to finishing). the perk system is much more recent (and probably better), but we want to use it more for narration interjections rather than plot flow. the idea for perks is to have them throw more life into big group scenes without having to plan scenes for every specific form. the attitudes are going to be more geared towards relationships with those characters, and eventually develop into proposals and such once we get there.
"lovestruck" Is an romance attitude that we are working towards implementing for tessa, it doesn't have any uses yet i don't think. wait, no there might be some lines for it in the "what do you think about rhianna?" smalltalk.