Hyperion3D , just wanted to say I've just started playing the game. Impressive use of the Renpy functionality around case-handling for variables in names/relationships! Not many renpy games do that. I've even seen some that use different variables for each different case rather than dynamically handling it.
Well done!
One minor suggestion: You have one line of "tenant" before you define the relationships between the MC and his "landlady". It might be worth doing a minor reorder of that conversation to take advantage of the definitions before first use.
I.e.
Current:
Code:
"Someone knocks on my door."
show openingeyesnarrow
scene 0000 with Dissolve(2)
eva "[mc!c]?"
eva "Are you awake, [mame]?"
david "Huh?!"
play sound "doorknock.mp3"
eva "Wake up, darling!"
"Who is that?"
$ ma = renpy.input("She is my: (Default: Landlady)")
if not ma:
$ ma = "landlady"
$ mame = renpy.input("I'm her: (Default: Tenant)")
if not mame:
$ mame = "tenant"
Suggestion:
Code:
"Someone knocks on my door."
show openingeyesnarrow
scene 0000 with Dissolve(2)
eva "[mc!c]?"
"Who is that?"
$ ma = renpy.input("She is my: (Default: Landlady)")
if not ma:
$ ma = "landlady"
$ mame = renpy.input("I'm her: (Default: Tenant)")
if not mame:
$ mame = "tenant"
eva "Are you awake, [mame]?"
david "Huh?!"
play sound "doorknock.mp3"
eva "Wake up, darling!"
But seriously, so far this is one of the better scripted games that I've seen in renpy. You should be proud of your efforts on the programming/dev side!
*Edit, another small adjustment to avoid having a line prewritten before variables are set:
Current Chloe introduction:
Code:
david "(That was Chloe... my [si!l].)"
$ si = renpy.input("She is my: (Default: Roommate)")
Suggestion:
Code:
david "(That was Chloe.)"
$ si = renpy.input("She is my: (Default: Roommate)")
*Edit 2: Just finished the current content. Honestly those are the only two things that really caught my attention. Definitely a solid basis to continue to expand your game upon. Keep up the good work, and the clean code!