Some questions about the blueprint runtime error

Hi all,
I’m building a configurator based on the official tutorial launched by UE4. But I faced some blueprint runtime error despite correct compile of the blueprints.

The image below is my blueprint.

The project file download link:

Disclaimer: Didn’t have time to download the project… But my quick read on it is the error is basically saying ‘Leather Logic Reference’ isn’t valid… So when the call to Custom Event → Leather Clicked’ is attempted, its failing during the run-through at some point. This is quite common as errors go, perhaps the most common in Blueprints. You can fix it in two ways. 1. Wrap IsValid around references before using them, and handle the false outcome with a Print String or Breakpoint to warn when there’s an issue with the code.

  1. Understand that at start-up, different events happen or fire at different times in different classes (packaged games and / or multiplayer have a different order again on top of this). So its a good idea to step through your code once in a while and understand where its breaking (simply because something hasn’t been set, or hasn’t been set yet). For example, you can wrap IsValid in a **Delay’**d loop to check or wait on something until its been set or initialized etc. Overall its normal and common to see this error at start-up. So the question is, does that variable get set later or does it stay invalid. Best practice says don’t try to use untested references whenever possible, as it can lead to crashes even in Blueprints (which is normally pretty robust).