Если CharacterBody проходит сквозь мир, а Area не замечает предмет, не начинайте со случайного переключения слоёв. Порядок диагностики начинается с Remote scene tree: проверьте, что оба объекта существуют, а CollisionShape включены, содержат форму и пересекаются.
Затем уточните, кто управляет движением. CharacterBody перемещает скрипт через
move_and_slide() в физическом такте. RigidBody должен получать силы и импульсы от физического движка. Прямое изменение позиции может обойти ожидаемую обработку столкновений.Только после этого проверяйте слои и маски: слой задаёт категорию объекта, маска определяет, какие категории он отслеживает. Для Area дополнительно нужны включённый monitoring и верно подключённый сигнал. Пример движения и прыжка проверен в Godot 4.7.2, но остальные сценарии столкновений автор не тестировал во время выполнения.
