Help with duplicate signals?

Godot Version

godot-4

Question

I have spent the last 3 hours trying to solve this issue so you guys are my last hope…

When connecting a signal to my script I noticed that there were 3 duplicates of the signal already. Im assuming this is causing a ton of serious bugs, how do I delete the extra signals? I cant find them anywhere in my project and have noticed that deleting the entire node does not get rid of them. I am super new to Godot so my bug fixing is lackluster. Below are screenshots.

Have you confirmed that those signals are actually being called multiple times? I’d suggest putting a print statement under them and during your game, check if they get called multiple times or not. If so, you can trace it back by placing a breakpoint there and looking back the callstack.

1 Like

Where you connect the signal, you could condition it by checking that the signal is not already connected. Then any subsequent attempt would not make an additional connection.

It could also be that you have three instances of the same scene and each has a separate signal of the same type? The its not a problem that you see three signals connected where you only expect to see one.

Are you using version 4.5.x? I’m also having weird signal connection bugs that sometimes it doesn’t connect signal to a function even though I clicked on the editor. I may need to re-open the scene or do the connection again.

In your case, if you cannot fix it through the editor, you can easily open the scene ( with a text editor and delete the line with the connection. Make a backup copy first, just to be safer.

I think this is the line you should see and remove in your scene when you open it with a text editor:

[connection signal=“response_finished” from=“NobodyWhoChat” to=“.” method=“_on_nobody_who_chat_response_finished”]