Having some trigger problems for materials on procedurally generated spline thingies. halp please!

What i’m aiming for at the moment is to be able to lay down a spline and have all the procedural components placed correctly and ready to go with functionality. I’ve got a good amount of stuff down and a lot more to go, but i’ve seem to run into a problem. Funny thing is, i’m pretty sure it was working before.

Please disregard prototype placeholder art :smiley:

Here’s the whole BP in question (tried to tidy it up a bit more for this screenshot). Also, this BP is what gets placed along the spline each time:

When I am not inside any trigger volumes the lines on the boxes pulse in and out as they should

When I step inside the last box along the spline it stops pulsing as intended and turns thick, the blueprint switches loops, and i get print confirmation i’ve applied the material setting

When I step inside the first box (or the second) I get confirmation i’m applying the settings, but the pulsing continues anyway and the blueprint window still shows it’s in the non overlap loop???

So,

  1. Why would this only be working on the last box along the chain? Especially if i’m getting the print confirmation that it’s going into the trigger overlap loop for the other two. It seems like i’m getting conflicting feedback with them.
  2. The pulsing currently stops on all objects that have that material instance applied. What would be the proper way to add a unique material instance to each box so that I can affect them individually?

Could it be the last cube along the chain has priority or something? I can show the BP for the spline itself if needed.

welp, I done fixed it if anyone’s interested.

At some point I thought using a material parameter collection was the only way to go, which it is exactly not the way to go. I returned to just having a scalar parameter in my material.

The linear sequence of execution meant only the last node on the spline mattered because it overwrites anything done by the ones before it. Parameter collection was too general. Pretty sure that was the problem.