How do I unlock a button when a player collides to a box through different levels?

If your talking about this bind, then I’m not 100%.

313850-bind.png

I really tend to use the Is Variable setting to allow for custom event triggers in the graph:

313862-graph.png

Regardless, you may want to check your bind function is being called once the level loads. when you load the new level unless its called again, everything will be at default because its a new instance of that widget.