Quick answer: Godot Area2D not firing the overlap signal you expect? The two flags read similarly but mean opposite things — monitoring is “I detect others”, monitorable is “others detect me”.

A trigger area never fires area_entered even though a body is clearly inside. The setup has monitoring = false — the trigger is invisible to itself.

Two Independent Flags

monitoring: this Area scans for overlapping bodies / areas. Off = the area doesn’t fire its own signals. monitorable: other Areas can detect this one. Off = invisible to other areas’ monitoring.

Bidirectional Case

Two trigger zones detecting each other need both monitoring AND monitorable on both. Forgetting one side produces a one-way detection that’s very hard to diagnose.

Performance

Toggle monitoring = false for areas that don’t need to detect anything right now (gates that don’t open). Saves per-frame intersection work. Leaving monitorable on is cheap.

Collision Layers Still Apply

Both flags only enable the check. Layers / masks determine which objects participate. A correct flag setup with mismatched layers still produces zero overlaps.

Verifying

Both area_entered and body_entered fire as expected. Disabling monitoring stops only that area’s detection without affecting others detecting it.

“monitoring detects; monitorable is detected. Both needed for mutual sensing.”

Make a habit of leaving monitorable on always — the cost is tiny and you’ll never debug ‘one-way’ detection again.