Is there any good way to access a projectile from its template and vice versa?

There have been several cases where I've wanted to change a property in a projectile's effect template from the weapon that fired it, or have the projectile's effect draw information from the weapon from which it was spawned, but as it is this currently seems impossible without some sort of event broadcast trickery, and I would prefer to avoid unnecessary network traffic.

A couple of examples of things I've either tried to do or want to do:

  1. In a projectile template with a custom, trigger-based hitbox, grab the damage and effects values from the weapon that fired it.
  2. After spawning a stationary storm cloud projectile, call a lightning strike function after a delay to deal damage.
  3. Scale the projectile template's visual size up to match the projectile's increased hitbox size, so that the more you charge the attack, the bigger the projectile gets.

Does anybody have any ideas for potential workarounds? I have already written a custom FindObjectsInSphere() function built off World.SpherecastAll() and its parameters that I can easily utilize for these workarounds.