I’ve also checked if there was a collision channel mismatch but it’s not the case, the print “entered” is never done when the player enters the Area2D.
I tried replacing _process function with _physics_process but it still didn’t work.
In the end it was really a collision channel mismatch, the player was set on channel 2 instead of 1, even though I was sure I had already checked.
Areas don’t detect characters. you need an Area2D inside the CharacterBody2D, set to a different layer, then to set the Area to detect that layer, and then use area_entered instead of body_entered.
body_entered works mostly for rigidbodies and I think staticbodies, but it doesn’t work with CharacterBodies