I didn’t misunderstand, ProfileService only deep copies your template for brand new profiles, so any changes to your config module won’t apply to saved data until you manually call :Reconcile()
EVEN IF you add XP = 0 before hitting “Play"
calling profile:Reconcile() only fills missing keys in-memory and doesn’t persist them back to Roblox’s DataStore, you need to write those merged fields permanently, follow your :Reconcile() with either:
profile:Reconcile()
profile:Save() -- forces immediate write to DataStore
-- or --
profile:Release() -- auto saves and frees the session lock