cherriesandmochi / gdmaim

GDMaim is a GDScript obfuscation plugin for the Godot Engine.
MIT License
85 stars 7 forks source link

BUG: Variable on right hand of assignment not renamed in scripts #1

Closed normano closed 5 months ago

normano commented 5 months ago

If you include Tracer addon and export the project PCK and inspect the code. You will see "new_thread_id" is not replaced on the right hand of the assignment even though the function parameter with new_thread_id was renamed. This happens on various scripts.

You can find tracer at https://github.com/wyvernbw/tracer.gd to include into a project as addon to try.

cherriesandmochi commented 5 months ago

Thank you very much for the bug report! Seems like I didn't think of that kind of formatting for function parameters. None of the parameters in that function seem to get detected. I already have a good idea why that happens, should be fixed tomorrow.

cherriesandmochi commented 5 months ago

Thanks again for the bug report!

normano commented 5 months ago

I got some other code doing the same thing, so I created a repo with some code that does the same: https://github.com/normano/gdmain_experiment. You can see the scheduled_task and task_scheduler files when exported will have "task" "_time" "delay" not being assigned on the right hand side.

I'll continue to try this and update the repo with any code that breaks the plugin. I'm excited about this plugin 👍

cherriesandmochi commented 5 months ago

Glad to hear that and thanks for helping with testing! Oh wow, I completely forgot about treating the semicolon as delimeter! The sample project you gave me does seem to work now, scheduled_task and task_scheduler at least look fine to me now.