Go Down

Topic: The Ultimate Laser Tag Game (Asked by the ultimate noob) (Read 6894 times) previous topic - next topic


I wasn't intending to get offensive, so I apologize.

Thanks.  :)

The point being that at first tracking a location by RFID anywhere in a warehouse would require a lot of RFID readers with a range of at least up to the knee of the person waring the tag. At a reader density that would be prohibitive expensive and quite a technical challenge involving designing custom readers. Then in a later post you changed to talking about only having the readers in things some one might hide behind. This I consider not fulfilling the brief because, when being hit running between hiding places there would be no range information and second most RFID systems can't cope with more than one tag in the field at the same time. So two people or more would be rendered invisible. Now I know you can get tags that will back off if they detect a collision or you can get readers that will read multiple tags but these are even more specialised and expensive.

That said, saying I'm wrong and implying that your experience with RFID is somehow more relevant than that of the engineers who published those papers... that can be taken as offensive as well.

No that was not my intent. What I was questioning was the relevance of those papers to the problem in hand.


now that is a helpful post! :D

Seeing your thought process removes the shroud of "this won't work because I say so" and IMHO contributes to the creative process.

The concept my brain came up with used barriers/obstacles and walls because in my (somewhat limited and forever ago) experience playing laser tag, most players spent most of their time in cover of some sort.  It also lowered the number of readers when compared to a grid type deployment, but perhaps that's not a great idea.  Either way, if the system has a last-known location for each player you can calculate shot distance to a rough accuracy.  It's not perfect, but it's useful.  In a grid-in-the-floor reader deployment (assuming that's possible, I don't know where he's building his arenas and if they're even permanent installations) you would get more granular location data.  I still hold that RFID is a feasible option, but it may well be a bad choice given other available options.

The Zigbee idea is interesting.  I skimmed the AN016 and didn't see information about location granularity, but I may have just missed it.  That could prove to be a better way to accomplish this using one radio (per player) to handle location data and all other wireless communication during a match.  I wonder how the accuracy of the blind nodes is affected by the varying obstacle density (players' bodies and whatever other cover is provided in the arena).  It would be a really cool feature to provide a realtime arena map with locations, shots fired, hit count, etc. to spectators.  You could even use it to replay matches so teams could study tactics and improve... I think I'm getting too interested in this project :D



First, I am more than intrigued with this idea, and have been mulling it over in my head a bit.

I have an idea to solve the hit point system issue.  This may not be feasible the way I see it, but I am throwing it out there to see if it might work.
I am just riffing of the top of my head, so if I am wrong on certain details, please correct me.
What about using real laser pointers as the laser?
Each player would have to wear glasses to protect their eyes (if they even make glasses like that, but it seems I have seen such a monster before)
for the hit sensors, What about arrays of LDRs with with a light diffuser in front of them.  wouldn't the diffuser screen spread out the light beam from the laser enough to effect one zone of the LDR array, and the drop in resistance could trigger a point value to be sent through blue tooth to the shooters unit and add to his XP and level.

With an actual laser beam, you could keep the keep the area of the target affected much more precise. 

I am not sure if this would work or not, but it sounded workable in my head and I figured I would throw it out there.
Hope it helps


Jan 23, 2013, 12:56 am Last Edit: Jan 23, 2013, 01:03 am by Garbloom Reason: 1
Wow! I was not anticipating this sort of support. I am extremely pleased to be a member of this community. I apologize for not actively responding, school just started up again, so time is stretched now, but just know I'm taking everything you guys have said into account and would love to work with any of the other groups who are mulling this project over. Perhaps we could supercollab, knock this out quickly and implement a number of features we all have.

In regards to measuring distance, which seems to be the most pressing hurdle, I did some research and found that while I may not be able to directly measure distance, measuring time is actually a possibility. This would involve the equipment being linked via wifi or other means, but I should be able to measure exact time of shot and time of received hit. Using the proper formula (don't have it on hand) you can potentially find the distance shot from. Measurements will obviously have to be very precise as a millisecond would be the difference between a point blank shot and a shot from the moon. Can someone confirm this as a possibility?


Can someone confirm this as a possibility?

You're proposing to use the speed of light to measure distances of the order of yards? It strikes me as being utterly and completely infeasible to DIY; your only hope would IMO be to use a commercial 'laser distance measurer' but they are not cheap, and introduce the dangers of people looking into lasers.


not to mention that the speed of light is nearly 300 million meters per second.  so 1 millisecond precision is 300km precision and 1 microsecond is 300m.  Those numbers are in a vacuum and it does slow down slightly through air... but consider that it takes roughly 2.5 seconds to bounce a laser to the moon *and back*.  Throw in the crazy precision that would be required when sync'ing the clocks of multiple sensors and it becomes a pretty infeasible task. 

It is, of course, possible to use light speed to measure distance but there are much simpler ways :)


I concur that measuring distance with the proposed method will not work.

An idea which I had is the following, which might give you the desired effect:

Instead of firing 1 packet, fire several, each with a different damage coefficient. Now send each of the packets with a different current through your led. The higher the current, the longer the reach.

Current can be controlled through a DAC-controlled mosfet, in between closed and open the mosfet has a part where it opens slowly as a function of voltage.

Another way to achieve this is to connect several resistors to your IR led, each chosen to give the desired current, and use transistors to switch to the preferred resistor.

Trial and error will learn the reach of each resistor setup. Then you will have to program you code on the receiving end so if it receives multiple correct packets from the same player in a short amount of time, only the highest damage coefficient will be used.


Now: my tagger runs at 600 rpm fine, this works at the receiving end as well. I am not sure whether 1800 rpm (3 shot packets per shot) is feasible, but you would have to try. My taggers are btw standard equipped with 300 RPM, so 600 RPM will be rapid fire.




1) if the beam spreads then you might infer distance by the spread or intensity.
2) rather than filling an area with RFID readers how about each player has a GPS and XBee or XBeePro reporting position? It would be cheaper.

Nick Gammon on multitasking Arduinos:
1) http://gammon.com.au/blink
2) http://gammon.com.au/serial
3) http://gammon.com.au/interrupts


hello everybody, this is a topic also very close to my heart and one I have had some experience in. With location tracking consider that GPS wont work indoors which is where a lot of the Laser Tag games would be played from.


also http://www.lasertagparts.com/arduino.htm is a good place to start


You could try making a self-tracker with accelerometer, gyroscope and digital compass.

Or you could put a grid of IR leds in the ceiling so that each led shines on a 2 or 3 meter circle on the floor. And that led would be beaming location ID over and over. 1 IR reader in every hat and your hat knows where it is if it points up and a transmitter is above.

Nick Gammon on multitasking Arduinos:
1) http://gammon.com.au/blink
2) http://gammon.com.au/serial
3) http://gammon.com.au/interrupts


I have also been working on a laser tag game very sporadically over the last couple years, mostly trying to figure out what I want it to be.  I burned out a laser pointer, but did find some 5v laser modules on ebay that work perfectly with arduino , and they only cost me about $1 at the time I bought them.  I've been modulating the signal at 38khz using Ken Shiriff's library for testing so far, and have found that an tsop4838 ir detector works with the laser.  I have also got xbee's I'm hoping to integrate for real time scoring as well as tft screens that will give information on who last hit you, who you hit, your health meter, score, and ultimately, if you could figure out the location thing, have a dot showing relative position of friendlies and enemies like some video games.  I like the idea of the ir leds in the ceiling for tracking, this could all be communicated through the xbee to the scoring computer or to the other players gear when hit in the laser stream.  It's just a matter of how much info you want to send on the beam.  Thanks for listening to my rambling, I'll be following this thread to see what comes of it.


I know it's a long time since the last post on this thread but perhaps DerekD will see this and tell me what sort of laser he was using with the TSOP4838?

Or (of course) anyone else that has used a laser with the TSOP4838?

Two or three hours spent thinking and reading documentation solves most programming problems.


GPS does work inside nearly as well as outside.  Depending on the roof material.  But it will still be off by 10-20m.

Go Up