Just wanted to share this in case it helps anyone else, and maybe get some hints as to how to avoid/resolve this more cleanly going forward.
It seems that I created the Blueprint class before I was finished with the cpp and manually added a TriggerVolume to the Blueprint. I think that’s what happened, but I’m not 100% sure. Neither OnComponentBeginOverlap nor OnComponentEndOverlap would trigger, but NotifyActorBeginOverlap and NotifyActorEndOverlap would.
When I was trying to troubleshoot, the settings and code seemed right and, none of the ‘turn it off and on again’ solutions work. I noticed that the Trigger Volume’s Variable.Category was set to ‘Default’ in my project but was ‘PlatformTrigger’ in the lecture project, which tipped me off to try creating a new Blueprint class based on PlatformTrigger, and that ended up fixing the issue.
Can anyone give me some insight into what Variable Category is? I’m new to Unreal in general (Unity background), but I’m guessing it’s like a source label for Blueprint composition. I haven’t been able to find a clear answer online.