How Do I Track Which Timer Fired in Blueprints? (Multiplayer)

Hi everyone,

I’m working on a Blueprint-only project and learning network replication. I’m updating a Launch Pad Blueprint I published to the Unreal Engine Marketplace/Fab, and I want it to work correctly in multiplayer.

The pad launches a player when they step on it. One of the modes lets the player launch toward a specific target actor (hard-referenced). After launching, I start a timer (using Set Timer by Event) to call an OnLanded event after a short delay. This event resets certain player values.

The problem is:
I need to know which character was launched when the timer expires so I can correctly reset them in OnLanded. But since Set Timer by Event doesn’t support passing parameters, I’m unsure how to track which player the timer is for when it fires.

I considered storing the character in a variable before starting the timer, but this breaks in multiplayer or when multiple players use the pad in a short time — the variable gets overwritten. I’ve also looked into using a Map of handles or keys to characters, but in Blueprints I can’t tell which timer just fired when OnLanded is called.

My questions:

  1. Is there any clean way in Blueprints to know which player the timer was meant for when it fires?
  2. Should I be using a unique timer-per-player approach with a custom dispatcher or a spawned helper actor instead?
  3. What’s the best multiplayer-safe way to track data across a delayed timer call in pure Blueprints?

Any help or best practices would be super appreciated. Thank you!