Having fun is the most important thing!
And about those issues…
Maybe try to use the is_on_ceiling() or is_on_ceiling_only() functions from CharacterBody3D? 🤔
What issues exactly? Stopping from moving of something like that?