Hello, no problem. I hope you can find the solution quickly. Good benefit of testing without Steam enabled is, that you can have all your print strings during launched game, so you can debug easier.
I’m leaving here some things that were causing a lot of errors for me, when I didn’t understand multiplier behaviour correctly - maybe any of these is also an issue in your case:
-Classes are created in certain order, so for example if you have logic on BeginPlay of your player controller, that uses Controlled Pawn or PlayerState, these 2 might be not valid yet. It’s worth to do validation loop before accessing those classes.
-Clients don’t have all data replicated on the first tick (during BeginPlay). If you need to have something set from server on BeginPlay, you need to wait for one replication tick.
-If you use delays in your logic, you need to be very careful and precise where to use them, as so many things can go wrong and they are hard to debug. For example you wait for a variable to be synchronized with delay 0.2. It will almost always work fine on your end because your local lag is always smaller. And it will fail so many times for actual players.
Good luck with debugging!
Edit: P.S. as for Steam AppID you can use it for many projects until you actually release your game. Just store projects on separate Steam branches. I was doing it this way for learning purposes.