The python error states there is an attempted multiplication of a "float" and a "none". This is somewhere in the internals, but must be due to the parameter being passed in.
In the renpy in-game console, I can get the same error with this code:
Code:
> 1.0 * None
TypeError: unsupported operand type(s) for *: 'float' and 'NoneType'
Despite the
default persistent.textbox_transparency = 1.0
, it seems somehow there is a "none", i.e. an unset variable, involved somewhere.
Apart from that, scanning through the code the only difference i can see from the MissFortune example is you have
1 - persistent.textbox_transparency
. That should not be an issue as long as the variable is a float; in python "1 - 1.0" gives "0.0" due to type coercion.
At this stage, I'd stop looking closely at this code and go back to basics here and recheck your assumptions - are you editing the right files? do you have code in another file that is overwriting a variable? Can you try deleting the RPYC files and see what happens? (although keep backups! if you are working on an existing game - it can cause issues with reloading save games from previous versions)