I am making a support application for my game, like as an addon, and I want to know if (if yes, how would I?) Godot can get system information like PC name, current date and time, Processor and stuff, and also the open applications and their information? And also be able to close them. and also would there be a way to get the system theme instead of using godot default or having to create a theme? I kind of like the theme on my pc, and I have no idea how I would recreate it in godot... pls help

This is a pretty varied request of features. There isn't really a single thing that handles them all.

Godot has support for gathering a fair amount of data about the PC but I doubt it will be enough for what you want. You can look into Godot's built-in global classes first. For example OS, and VisualServer are good places to start. They have some functions to get stuff like the OS time, the GPU vendor and other basic info. I believe the OS class has a way to open a shell (aka, execute a program for you). You just need to dig around to find what you need.

Can't help you with the theme as that is different for every OS (and, if in linux, generally for each distro). You'd also have to find a way to convert from the system's native format into Godot's format.

Basically, if Godot can't do it natively then you need to plug into a language that has the ability to do what you want. This is where GDNative comes in as you can program this functionality in something like C++ or whathaveyou and let Godot call these functions. You'd need to know how to implement these features through another language, however, as well as make a dll, so, or dylib (depending on your OS) to pass around with your game.

Hmm... That's some good information... So, just to be clear (I speak English normally but I know Japanese too, and that with my bad memory makes my English bad somehow), you cannot import or just remove the theme so you use the system theme correct? I am thinking like if you go to notepad and right click (it brings up a menu) it would be normal for you (like if you right click your desktop), but if you go into MS Edge and right click it is so freaking different with roundness bigness and also icons. I would want to be able to make it so its like if you right click your desktop so you can have it normal, instead of custom. I really wanted to know because instead of having to create a script (WHICH I HAVE NO FREAKING IDEA HOW TO) or recreate it (I DON'T KNOW HOW I WOULD DO THAT).

sorry if I am stupid, but I am pretty stupid when I don't use my brain. Which is a lot of the time.

I forgot but also is there a way to make something click-through? Like no-border, with pixel transparency, and click-through? or would it automatically make 0% alpha pixels click-through?

WRT theming, you would have to create a custom theme in godot that would imitate as close as possible the OS default. But that's probably the best you could do.

@KiwiFruit555 said: I forgot but also is there a way to make something click-through? Like no-border, with pixel transparency, and click-through? or would it automatically make 0% alpha pixels click-through?

You need to be a bit more explicit and clear as to what do you mean. Any control node would have a set of mouse related filters managing how mouse clicks are handled. Whether to pass through or ignore completely, etc.

https://docs.godotengine.org/en/stable/classes/class_control.html#class-control-property-mouse-filter

2 years later