Change range of IR programatically
Consider using a Sharp Distance Sensor in addition to your shoot / confirm-hit inferred LED &amp; receiver.

This Sharp distance sensor is specified to detect objects that reflect IR light from 100&nbsp;cm-500&nbsp;cm. 


  How can I change the range of an IR transmitter with as little
  hardware as possible, or at best, completely in software?


I believe the sensors produce an analog output that can feed into an Arduino's ADC.  So software (by itself) can be used to adjust the threshold distance.

Similar devices I have used have a narrow sensing field.  They only reported the distance to objects directly in front of them.  Also, I found they were effected by defective (burning out?) florescent light sources.  We assumed failing florescent light sources produced IR radiation similar in frequency as used by the sensor's IR emitter.  Also, the analog output is slightly stair stepped in the unit we tested.  I say this in case you were expecting to use increase relative accuracy of several readings if not precision of any given reading.