Can you change protagonist's name or is there a mod to change character name?
Not without modifying game files.
Clarification: the protagonist name, male or female, is in fact controlled with a variable for use in the name box, but I am maintaining a hardliner stance on disallowing end users to adjust the male name from
Zach or the female name from
Zoey for story integrity reasons, some being:
- One of Zach's biggest pet peeves is being called his full name (Zachary) (also, this was something I didn't realize was fairly common among trans girls growing up until I talked to more of them), and I cannot realistically create that same effect of his mom sometimes calling him his full name. The closest would be something absurd like a list dictionary of names with full names, shortened versions, diminutive forms, and nicknames.
- His mom always secretly wanted a daughter and had picked out her name as Zoe long ago (the name's starting-Z and ending-Y sounds were later given to Zachary); by coincidence, Ai's chosen name for Zach was Zoey (same pronunciation).
- Something could easily break with name swapping, and it'd be a ton of work to retroactively change every instance of their name with variables.
The two possible exceptions of allowing players to change it are unwritten and unique cases of Zach realizing he is a woman, those being
Zach realizing he is transgender in Britney's epilogue after changing back and not wanting to use Zoey as her new name since that person no longer exists and
Zach realizing she is transgender in the mom route near the end of it, but it is while she hates her mom and she doesn't want to give her the satisfaction of having the daughter she always wanted with the name she always wanted to give her.
While you
could modify the game files to adjust their name(s), it wouldn't be simple and I would not suggest doing this unless you feel or someone else feels a particular aversion to the name Zach from something like it being a deadname (the name a transgender person used to have; there can be some trauma associated with being called it).
Simply changing the name variables would not work as the text substitution system for this game in regards to Zach/Zoey's name changing in dialogue blocks is almost completely unused; due to some nonsense with people making terrible machine translations several months back, the hypothetically easiest method possible of changing the name variables (inserting a .rpy or .py script changing them into the game folder at runtime) is blocked and the game will deliberately crash if tampered with.
This means you'd have to decompile the .rpa archives, carefully changing every instance of the name(s) with find/replace (regex would almost certainly be required if you didn't want this to take an eon), and then either running the game from the Ren'Py SDK or recompiling it (which would require the SDK anyways).