Curious: why is this in _physics_process
? Shouldn't it just be in plain old _process
? You're not doing any physics stuff like position so process may be faster. Also - any debug messages you are getting? Any "standalone expression" errors or anything?
You may also try adding a layer of abstraction. A variable is a reference and if the time of reference is wrong, the code will do the wrong thing.
Try doing a separate variable for the potunlocked * 10, like....
func _process(_delta):
var newPotprice = potunlocked * 10
potprice = newPotprice
$buypot/potcosttext.text = (str(potprice))