MilesTag and ArduCore
After doing some research online, we found that there are a couple sites which provide DIY for making rudimentary IR guns. There is one online project called MilesTag that provides open source schematics and software for a laser tag system. The site provides IR sensors and a small board with a PIC microcontroller and peripherals to control input from sensors, ammo, and help referee the matches. The creator of the MilesTag system is also working on an open source, Arduino based version of his current system. However, he's encountered some difficulty implementing the code for the system, so we decided to contribute to the ArduCore project. We really want to build off where this project has left off because we like its core system for IR devices. The IR devices work by setting up a serial line wirelessly. The IR LED sends data packets to the IR receiver which hold information about the damage. We're going to update the ArduCore schematic (which has outdated chips that are no longer available) and complete the code base.
Game Mechanics and Byte Codes
The part of the MilesTag system that appealed to us most was sending data packets in the IR signal. Using data packets will allow us to make different kinds of weapons, status effects, and even have healing and buffers. We will have two bytes in each signal. The first byte will hold a carrier (Damage, Healing, Paralysis, Shock, etc.), and the second byte will hold the carrier value (the amount the player is damaged or healed).
Area of Effect Weapons with RF Transmitters
We decided that Area of Effect Weapons will be implemented with RF transmitters and receivers. RF devices were chosen because they are inexpensive, low power, can use the same byte codes as the IR devices, are blocked by walls, and most models have a range within about 150m. The byte codes sent through the RF devices will have the same format as the IR devices - carrier in the first byte and damage in the second byte.
Laser Tag Research
To do some in depth research, the Laser Tag Team went to a Laser Tag Facility. There, we played a couple rounds of Laser Tag, and interviewed the manager, employees, and other players. From this, we discovered -
1. Providing information on hits is extremely important. Having clear information on whether or not you hit someone, or if you've been hit is essential to good game play. Too much information can be confusing and distracting. For example, the laser tag system at this facility had multiple lights blink, a sound, and a buzzer all go off at once when a play was hit. This is distracting to the game, and also gave away your position to everyone within 10 ft after you'd been hit. We decided the best way to show hit information would be to have one LED blink on the shooter's gun when firing and one LED blink when a player is hit. In our game, we will have three different colors for different effects: Red for damage, Green for healing, and Blue for Status Condition. If sound effects are used, they need to make sense. When you get hit, a person's voice shouldn't come up, it should be a laser sound.
2. Different guns and classes would improve the game a lot. The game would have much more to it if you could be a sniper, or a shield, or a rogue. We decided that an interesting way to make classes would be to place the sensors in different areas. Maybe one class only has sensors on it's back.
3. Kids shouldn't play. By that, we mean children under the age of 13. They break everything.
4. It's definitely important to have a reason for the conflict. Just blindly running around shooting people isn't fun. Having a purpose, even if it's as a simple as capture the flag, will improve the game so much.
After doing some research online, we found that there are a couple sites which provide DIY for making rudimentary IR guns. There is one online project called MilesTag that provides open source schematics and software for a laser tag system. The site provides IR sensors and a small board with a PIC microcontroller and peripherals to control input from sensors, ammo, and help referee the matches. The creator of the MilesTag system is also working on an open source, Arduino based version of his current system. However, he's encountered some difficulty implementing the code for the system, so we decided to contribute to the ArduCore project. We really want to build off where this project has left off because we like its core system for IR devices. The IR devices work by setting up a serial line wirelessly. The IR LED sends data packets to the IR receiver which hold information about the damage. We're going to update the ArduCore schematic (which has outdated chips that are no longer available) and complete the code base.
Game Mechanics and Byte Codes
The part of the MilesTag system that appealed to us most was sending data packets in the IR signal. Using data packets will allow us to make different kinds of weapons, status effects, and even have healing and buffers. We will have two bytes in each signal. The first byte will hold a carrier (Damage, Healing, Paralysis, Shock, etc.), and the second byte will hold the carrier value (the amount the player is damaged or healed).
Area of Effect Weapons with RF Transmitters
We decided that Area of Effect Weapons will be implemented with RF transmitters and receivers. RF devices were chosen because they are inexpensive, low power, can use the same byte codes as the IR devices, are blocked by walls, and most models have a range within about 150m. The byte codes sent through the RF devices will have the same format as the IR devices - carrier in the first byte and damage in the second byte.
Laser Tag Research
To do some in depth research, the Laser Tag Team went to a Laser Tag Facility. There, we played a couple rounds of Laser Tag, and interviewed the manager, employees, and other players. From this, we discovered -
1. Providing information on hits is extremely important. Having clear information on whether or not you hit someone, or if you've been hit is essential to good game play. Too much information can be confusing and distracting. For example, the laser tag system at this facility had multiple lights blink, a sound, and a buzzer all go off at once when a play was hit. This is distracting to the game, and also gave away your position to everyone within 10 ft after you'd been hit. We decided the best way to show hit information would be to have one LED blink on the shooter's gun when firing and one LED blink when a player is hit. In our game, we will have three different colors for different effects: Red for damage, Green for healing, and Blue for Status Condition. If sound effects are used, they need to make sense. When you get hit, a person's voice shouldn't come up, it should be a laser sound.
2. Different guns and classes would improve the game a lot. The game would have much more to it if you could be a sniper, or a shield, or a rogue. We decided that an interesting way to make classes would be to place the sensors in different areas. Maybe one class only has sensors on it's back.
3. Kids shouldn't play. By that, we mean children under the age of 13. They break everything.
4. It's definitely important to have a reason for the conflict. Just blindly running around shooting people isn't fun. Having a purpose, even if it's as a simple as capture the flag, will improve the game so much.
After talking to the manager, we got the names of three companies whose laser tag technology he had had experience. We're going to call these companies and try to find information about their laser tag systems:
- Darklight, UK
- Avionica
- Laser Tron, Buffalo NY
Updated Schematics and Code
The turret design has been split into two different turrets - a smart turret and a simple turret. The simple turret has considerably less hardware and much simpler code, but has less functionality. The schematic and code for the simple turret are complete and have been uploaded. The smart turret's schematic is complete, and the code is in progress. A tutorial on the turret's construction will be uploaded within the week.
Updated Schematics and Code
The turret design has been split into two different turrets - a smart turret and a simple turret. The simple turret has considerably less hardware and much simpler code, but has less functionality. The schematic and code for the simple turret are complete and have been uploaded. The smart turret's schematic is complete, and the code is in progress. A tutorial on the turret's construction will be uploaded within the week.