Advance time frame by frame to debug logic in Test Mode
When our logic doesn't work we don't have a way to test what is going on frame by frame.
Right now the only workaround I found to do this is to start time, let the logic do its thing, then make a video clip using the playstation share feature. Then I need to open the clip in ShareFactory (which makes me close dreams) and only then can I check my logic frame by frame.
As you can imagine it's very annoying and makes creating complex AI or behaviors quite daunting.
What would be great would be to add a skip forward and skip backward button in the Test Mode interface, allowing us to move frames forward and backwards, making debugging a blast!
-
There's no general solution for stepping backward - for example if your logic sets the value of a variable to the square of what it was before, and the new value is 4, what was the old value? 2 or -2?
But pausing and single stepping forwards should be possible. To make it more generally useful, perhaps this could be a "breakpoint" gadget that pauses time when it becomes powered on. Time would remain paused until restarted manually, even if the gadget becomes powered off. While the gadget remains powered on, attempts to restart time would single step instead. This would allow the creation of logic systems that can detect when something has gone wrong and turn on the breakpoint gadget to allow the creator to have a close look at what's going on.
The obstacle to adding this feature is that some logic systems cannot be paused. Anything that has a feedback loop wire - for example a Calculator wired to integrate or differentiate a signal over time - is continuously updated even while time is not running. I reported this as a bug way back in 2019, but Mm resolved it as by design. There are use cases for logic systems that update while time isn't running - for example editing tools - but we really need a mode in which everything can be paused. Perhaps they could make Test mode do this.
Please sign in to leave a comment.