Hello!

I have the following problem. One of the nodes in my scene tree has a few children as it follows from "remote" view of the scene tree, see the screenshot below. However, if I request "get_children()", the result is null, not even an empty array. But I really need the list of children of the node. Game logic depends on it. If it matters, Godot version is "3.5.stable" on Windows 10. I'd appreciate any help!

Thank you!

z80 changed the title to Why does Node.get_children() return null? .

Get children works on Nodes. I notice those objects don't have an icon, are they not nodes? What are they?

  • z80 replied to this.

    One oddity is that some nodes in the scene dock, such as Rotation, lack an icon. I haven't seen that before. (cybereality already noticed that while I was typing my post.)

    Are any of the 232 errors of interest?

    • z80 replied to this.

      cybereality

      Hello!

      All the objects are inherited ether from a Node or a Spatial. My guess, they don't have icons because it is a "remote" mode of the scene view. When I observe it in normal "local" view mode, all objects have icons.

        DaveTheCoder Are any of the 232 errors of interest?

        Those all are related to unused arguments which I didn't prepend with underscore.

        Everything should have an icon. Something is wrong with those objects.

        • z80 replied to this.

          You might want to fix those 200 errors as well. Maybe 1 or 2 of them in there are real.

          • z80 replied to this.

            z80 When I observe it in normal "local" view mode, all objects have icons.

            It might perhaps help to share a screenshot of that local view too.

            • z80 replied to this.

              z80 My guess, they don't have icons because it is a "remote" mode of the scene view. When I observe it in normal "local" view mode, all objects have icons.

              When I use the Remote tab, all the nodes have their normal icons, just as for the Local tab. (Godot 3.5.2-rc1 and Godot 4.0-beta10)

              Megalomaniak It might perhaps help to share a screenshot of that local view too.

              Here it is:

              The same scene but local view. All objects have icons.

              cybereality Everything should have an icon. Something is wrong with those objects.

              Is there a way to figure out what exactly is wrong with the objects? For now I see no icons only when the objects are simultaneously 1) in remote view and 2) are inherited from Node. Objects inherited from Spatial have their normal icons.

              cybereality You might want to fix those 200 errors as well. Maybe 1 or 2 of them in there are real.

              I don't know how. All errors are like "The function 'shell_open()' returns a value, but this value is never used." Currently going through them one-by-one and for all API functions returning value assign a dummy variable prepended with underscore to suppress the debugger message. Is there any better way?

                z80 Best way to get help is to just share the project if you can afford to.

                • z80 replied to this.

                  z80 "The function 'shell_open()' returns a value, but this value is never used."

                  That warning can be suppressed by preceding the line with:
                  #warning-ignore:RETURN_VALUE_DISCARDED

                  You can save some time and have the editor insert that by clicking on the little yellow triangle at the bottom right of the script window and then clicking on [Ignore].

                  You can also disable warnings globally, but I prefer not to do that, since sometimes the warning indicates an actual mistake:
                  Project >> Project Settings... >> General >> Debug >> GDScript

                  • z80 replied to this.

                    Megalomaniak Best way to get help is to just share the project if you can afford to.

                    Sure. [project link] (https://github.com/z80/ignition). The project is in the folder "/ignition". Godot with classes derived from Node is in "/godot" folder. Particular commit in question is 7985390404d3e2db96f53b75a7269dc6e26df420. File physics/celestial_bodies/celestial_body.gd, line #76.

                    DaveTheCoder You can save some time and have the editor insert that by clicking on the little yellow triangle at the bottom right of the script window and then clicking on [Ignore].

                    You can also disable warnings globally, but I prefer not to do that, since sometimes the warning indicates an actual mistake:
                    Project >> Project Settings... >> General >> Debug >> GDScript

                    Ah, thanks a lot! It eliminates 95% of the messages.