need help with raycast

I am trying to use this raycast for creating some kind of laser in my space game. But it is not working, what do i have to correct?

 if (Physics.Raycast(transform.position, new Vector3(transform.position.z - Aim.position.x,
transform.position.y - Aim.position.y,
transform.position.z - Aim.position.z), out hit,200))
    					{
    							
    							Debug.DrawLine(transform.position, hit.point, Color.green, 1, false);
    							try
    							{
    	
    						hit.collider.gameObject.GetComponent<Energy>().power -=3;
    							} catch
    							{
    							}
    									try
    							{
    							hit.collider.gameObject.GetComponent<health>().hp-=1;
    							}
    							catch
    							{
    							}
    						
    						
    					 }

thanks to all, the problem was solved. It were just my curved hands. Sorry for disturbing, the script is working perfectly.