Lightning fx with appropriate collision.

I want to make a lightning effect as a type of weapon fire, but I want the lightning to only deal damage if an actual bolt hits the target. Additionally, walls and other objects needs to block the damage, and preferably the fx. I intend to use it quite a lot - Fire lightning from weapon, have lightning from a source and also as the typical weather effect. But I would like the collision to be accurate, not just some trigger volume.
What would be a good method for doing such things?