godotengine / godot-proposals

Godot Improvement Proposals (GIPs)
MIT License
1.17k stars 98 forks source link

Disable debugging-related command line arguments in release export templates #11246

Open ElryGH opened 4 days ago

ElryGH commented 4 days ago

Describe the project you are working on

A Multiplayer FPS Game with Voxels.

Describe the problem or limitation you are having in your project

If you are Building a Game with Godot you currently ship with -h, --help (not that bad, but adds to the dangerous rest.) -d --debug -b --breakpoints --profiling --gpu-profile --gpu-validation --remote-debug -s --script --check-only

Stuff like that should not ship with a release build and can / will be abused by cheaters to debug the actual game files, infact the gamefiles are compiled to bytecode wich is quite neat to stop cheat devs at a basic level, but then you can debug the game ???

This basically makes Godot useless for anything Multiplayer, this is a major flaw.

Describe the feature / enhancement and how it helps to overcome the problem or limitation

I need to clone Godot, modify main.cpp, then comment out or remove the debug flags and build Godot....

Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams

Have an option when building thats called "disable debugging flags" that is checked by default for release builds.

If this enhancement will not be used often, can it be worked around with a few lines of script?

if (arg == "--help" && internal.stripdebug == false) { print_help(); return 0; }

Idk im not a C++ Dev, i just know what to comment out due to ChatGPT.

Is there a reason why this should be core and not an add-on in the asset library?

Cuz this is Engine dependent.

Calinou commented 4 days ago
ElryGH commented 4 days ago

Indeed and its a shame that its still a problem in 4.3