Unable to set/render overlay materials during runtime

I have a simple material that I want to apply as a Material Overlay on my player character, however, when I do it via nodes, the material does not render, despite the fact that the code succeeds in execution, and the material is verifiably functional (pre-applying it in editor works).

Here is the material, alongside of an image of it working as intended.

It’s just a transparent material with no depth test (which also means that it is impossible for the mesh to occlude the material). Pretty straightforward stuff.

And here is the blueprint. For the record, every single branch and cast had a print, and I guarantee that it succeeds. It gets to the end of the execution without flaw.

Here is a close-up to make the important part readable.

On top of that, the final print out returns the correct overlay.

I’ve spent some six hours or so today trying to figure out why this is happening. But I’ve reached the limit of why my meagre brain can manage, I’m out of ideas as to why this does not work.

For additional context: This is for a multiplayer game, but this code is entirely client side, only the client that presses the key and executes the function gets to see the changes. Meaning that there is no possibility that this is some weird ownership or server authority issue. The only net-related thing here is fetching the player list, but this one is reliably and verifiably correctly populated.

I would kindly welcome any advice.

Had the same problem, disallowing Nanites solved it for me.