Resonite-Issues
Resonite-Issues copied to clipboard
ProtoFlux Debugging System
Is your feature request related to a problem? Please describe.
As highlighted in issues like #774, #945, and #947, it can sometimes be difficult at a glance to tell what all is happening during execution of ProtoFlux.
Additional ProtoFlux can be inserted into node graphs for the purposes of debugging, but this can get messy, and lead to its own issues, e.g. if you forget to re-connect nodes together after removing your debugging Flux.
Describe the solution you'd like
A generalized debugging system for ProtoFlux that would allow the user to insert breakpoints, and track the state of execution.
Describe alternatives you've considered
As highlighted above- existing options for working around this have required users to set up additional Flux in their node graphs to debug things, but these solutions have their own issues that could be streamlined by native debugging tooling to fill this purpose.
Additional Context
Follow-up from #947.
I don't think we'd made a debugging solution specifically for temporary values, that's a bit too specialized. This would be better handled by a general debugging system for ProtoFlux, which would allow insertion of break points, so you can see the state of the execution that way. This would work for more than just the values.
The values do not exist outside of the impulse, so they cannot be viewed once it finishes on principle - they're gone. There's not a way to "not clear" them, they are not stored in any permanent location.
We could add a "Debug Display" as you propose, where you explicitly write the value. You can achieve this with a few nodes by explicitly storing the value, but that adds overhead, so the "Debug Display" that only actually stores the value when it's unpacked would have value here and would be quick enough to add.
We could focus on that in this issue and make a bigger one for more general debugging system for ProtoFlux.
Requesters
@ultrawidegamer in #52.