Опенласертаг ИК-протокол
Обзор
Опенласертаг протокол основан на протоколе милестаг II, расширяет его возможности и является обратно совместимым с этим протоколом. Позволяет до 32767 уникальный ID игрока, 15 бит для игрока ID. Это позволяет большую игру для многих игроков. Последние 1024 идентификаторов зарезервированы и указывают на противоматериальное оружие. Это полностью проникает в бронированную цель.
Protocol specification | |
---|---|
Carrier frequency: | 56kHz |
Recommended carrier duty-cycle: | 1/3 |
Recommended sensors: | TSOP2256, TSOP4856, TSOP34856, TSOP32256 |
Shot Packet bite count | 22 |
Command Packet bite count | 24 |
Модуляции
Протокол использует кодирование ширины импульса битов. Импульс, представляющий логический «1» является 1,2 мс длинный всплеск 56kHz перевозчика, в то время как ширина взрыва для логического «0» составляет 0,6 мс длиной. Все всплески разделяются на 0,6 мс длинным интервалом пространства. Рекомендуемый рабочий цикл перевозчика составляет 1/3. Приемник
Опенласертаг пакет
Лазертаг использует два типа пакетов. Пакет Shot используется для съемки. Командный пакет используется для модерации игры и базовых настроек проигрывателя. Расширенные настройки проигрывателя реализуются с использованием других беспроводных технологий или расширений ИК-протокола.
Пакет Shot начинается с заголовка 2400ус, за которым следует 600ус пауза. Часть данных для пакета Shot составляет 22 бита. Первый бит указывает пакет Shot. «0» обозначает пакет «Shot», «1» означает пакет команд. Следующие 7 бит — это первая часть идентификатора пользователя, это может быть идентификатор клуба для обратной совместимости. Следующие 2 бита — идентификатор команды. Следующие 4 бита урон. Последние 8 бит — это вторая часть идентификатора пользователя. Наиболее значимые 3 бита эта вторая часть свидетельствует об оружии против материальных средств.
Team | Binary ID |
---|---|
Red | [00] |
Blue | [01] |
Yellow | [10] |
Green | [11] |
Damage | Binary ID |
---|---|
1 | [0000] |
2 | [0001] |
4 | [0010] |
5 | [0011] |
7 | [0100] |
10 | [0101] |
15 | [0110] |
17 | [0111] |
20 | [1000] |
25 | [1001] |
30 | [1010] |
35 | [1011] |
40 | [1100] |
50 | [1101] |
75 | [1110] |
100 | [1111] |
Пакет команд начинается с заголовка 2400ус, за которым следует 600ус пауза. Следующие 24 бита, содержащие командное сообщение. Курсив указывает на расширение за пределами милестаг II.
Command | First Byte | Second Byte | Third Byte |
---|---|---|---|
Add Healt 1 to 100 | 0x80 | 0x01 to 0x64 | 0xE8 |
Add Rounds 1 to 100 | 0x81 | 0x01 to 0x64 | 0xE8 |
RESERVED | 0x82 | --- | 0xE8 |
Admin Kill | 0x83 | 0x00 | 0xE8 |
Pause/Unpause | 0x83 | 0x01 | 0xE8 |
Start Game | 0x83 | 0x02 | 0xE8 |
Restore Defaults | 0x83 | 0x03 | 0xE8 |
Respawn | 0x83 | 0x04 | 0xE8 |
New Game | 0x83 | 0x05 | 0xE8 |
Full Ammo | 0x83 | 0x06 | 0xE8 |
End Game | 0x83 | 0x07 | 0xE8 |
Reset Clock | 0x83 | 0x08 | 0xE8 |
RESERVED | 0x83 | 0x09 | 0xE8 |
Initialize Player | 0x83 | 0x0A | 0xE8 |
Explode Player | 0x83 | 0x0B | 0xE8 |
New Game (Ready) | 0x83 | 0x0C | 0xE8 |
Full Health | 0x83 | 0x0D | 0xE8 |
RESERVED | 0x83 | 0x0E | 0xE8 |
Full Armor | 0x83 | 0x0F | 0xE8 |
RESERVED | 0x83 | 0x10 | 0xE8 |
RESERVED | 0x83 | 0x11 | 0xE8 |
RESERVED | 0x83 | 0x12 | 0xE8 |
RESERVED | 0x83 | 0x13 | 0xE8 |
Clear Scores | 0x83 | 0x14 | 0xE8 |
Test Sensors | 0x83 | 0x15 | 0xE8 |
Stun Player | 0x83 | 0x16 | 0xE8 |
Disarm Player | 0x83 | 0x17 | 0xE8 |
RESERVED | 0x84 | --- | 0xE8 |
RESERVED | 0x85 | --- | 0xE8 |
RESERVED | 0x86 | --- | 0xE8 |
System Data | 0x87 | [Not Implemented] | 0xE8 |
RESERVED | 0x88 | --- | 0xE8 |
RESERVED | 0x89 | --- | 0xE8 |
Pickup Clips Box, quantity 0 to 15 | 08A | 0x00 to 0x0F | 0xE8 |
Pickup Health Box, quantity 0 to 15 | 0x8B | 0x00 to 0x0F | 0xE8 |
Flag Pickup, Flag ID 0 to 15 | 0x8C | 0x00 to 0x0F | 0xE8 |
Radiation Zone remove Health 1 to 100 | 0xA0 | 0x01 to 0x64 | 0xE8 |
Anomaly Zone Add Health 1 to 100 | 0xA1 | 0x01 to 0x64 | 0xE8 |
Set Game Mode | 0xA8 | 0x00 to 0xFF | 0xE8 |
Set Team ID 0 to 3 | 0xA9 | 0x00 to 0x03 | 0xE8 |
Add or Remove Red member Health -128 to 127 | 0xB0 | 0x00 to 0xFF | 0xE8 |
Add or Remove Blue member Health -128 to 127 | 0xB1 | 0x00 to 0xFF | 0xE8 |
Add or Remove Yellow member Health -128 to 127 | 0xB2 | 0x00 to 0xFF | 0xE8 |
Add or Remove Green member Health -128 to 127 | 0xB3 | 0x00 to 0xFF | 0xE8 |
Respawn Team member ID 0 to 4 | 0хВ4 | 0x00 to 0x03 | 0xE8 |
Kill Team member ID 0 to 4 | 0хВ6 | 0x00 to 0x03 | 0xE8 |
Full Ammo Team member ID 0 to 4 | 0xB7 | 0x00 to 0x03 | 0xE8 |