Hey there @IslandChap!
The reason that the code is passing the if test every time comes from the part right after the or, the "y".
It's important to remember that Python treats each side of the or as an independent clause that it evaluates to a result of true or false. The left side is clearly false, as "no" doesn't equal "yes", but the right clause is simply "y", there is no test there. Python interprets a lack of a test as an automatic pass, so no matter if newGame == "yes" or not, "y" will always cause the first if statement to be run, as opposed to the second one down lower.
I hope this makes sense! If you have any more questions, don't hesitate to ask!