OpenLaserTag IR protokol

Spread the love

Přehled

Protokol OpenLaserTag je založen na protokolu MilesTag II, rozšiřuje jeho možnosti a je s ním zpětně kompatibilní. Umožňuje až 32767 unikátní ID hráčů, obsahuje 15 bitů pro ID hráče. To umožňuje hry pro velký počet hráčů. Posledních 1024 ID je vyhrazeno pro anti-materiálové zbraně. Ty slouží pro ničení obrněných cílů.

Protocol specification
Carrier frequency:56kHz
Recommended carrier duty-cycle: 1/3
Recommended sensors:TSOP2256, TSOP4856, TSOP34856, TSOP32256
Shot Packet bite count22
Command Packet bite count24

Modulace

Protokol používá kódování založené na rozdílné délce pulsů. Nosná frekvence je 56kHz s doporučenou střídou 1/3. Logická “1”  má puls dlouhý 1.2ms a pro logickou “0” je to 0,6ms. Všechny pulsy jsou odděleny 0,6ms pauzou.

 

OpenLaserTag paket

LaserTag používá dva typy paketů. Shot paket pro výstřel. Command paket pro moderování hry a základní nastavení hráče. Pokročilá nastavení jsou pak realizována pomocí jiných bezdrátových technologií nebo rozšířením IR protokolu mimo tuto specifikaci.

Shot paket začíná hlavičkou 2400us následovanou 600us pauzou. Délka Shot paketu je 22 bitů. První bit určuje typ paketu, “0” označuje Shot paket a “1” Command paket. Dalších 7 bitů je první část ID hráče, to může být pro zpětnou kompatibilitu ID klubu. Další 2 bity je ID týmu. Další 4 bity poškození. Posledních 8 bitů je druhá část ID uživatele. Nejvýznamnější 3 bity této druhé části označují anti-materiálové zbraně.

TeamBinary ID
Red[00]
Blue[01]
Yellow[10]
Green[11]
DamageBinary 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]

Command Packet začíná hlavičkou 2400us následovanou 600us pauzou. Dalších 24 bitů, 3 Bajty, obsahují zprávu příkazu. Kurzíva označuje rozšíření mimo protokol MilesTag II.

CommandFirst ByteSecond ByteThird Byte
Add Healt 1 to 1000x800x01 to 0x640xE8
Add Rounds 1 to 1000x810x01 to 0x640xE8
RESERVED0x82---0xE8
Admin Kill0x830x000xE8
Pause/Unpause0x830x010xE8
Start Game0x830x020xE8
Restore Defaults0x830x030xE8
Respawn0x830x040xE8
New Game0x830x050xE8
Full Ammo0x830x060xE8
End Game0x830x070xE8
Reset Clock0x830x080xE8
RESERVED0x830x090xE8
Initialize Player0x830x0A0xE8
Explode Player0x830x0B0xE8
New Game (Ready)0x830x0C0xE8
Full Health0x830x0D0xE8
RESERVED0x830x0E0xE8
Full Armor0x830x0F0xE8
RESERVED
0x830x100xE8
RESERVED
0x830x110xE8
RESERVED
0x830x120xE8
RESERVED
0x830x130xE8
Clear Scores0x830x140xE8
Test Sensors
0x830x150xE8
Stun Player
0x830x160xE8
Disarm Player
0x830x170xE8
RESERVED0x84---0xE8
RESERVED0x85---0xE8
RESERVED0x86---0xE8
System Data0x87[Not Implemented]0xE8
RESERVED0x88---0xE8
RESERVED0x89---0xE8
Pickup Clips Box, quantity 0 to 1508A0x00 to 0x0F0xE8
Pickup Health Box, quantity 0 to 150x8B0x00 to 0x0F0xE8
Flag Pickup, Flag ID 0 to 150x8C0x00 to 0x0F0xE8
Radiation Zone remove Health 1 to 1000xA00x01 to 0x640xE8
Anomaly Zone Add Health 1 to 1000xA10x01 to 0x640xE8
Set Game Mode0xA80x00 to 0xFF0xE8
Set Team ID 0 to 30xA90x00 to 0x030xE8
Add or Remove Red member Health -128 to 1270xB00x00 to 0xFF0xE8
Add or Remove Blue member Health -128 to 1270xB10x00 to 0xFF0xE8
Add or Remove Yellow member Health -128 to 1270xB20x00 to 0xFF0xE8
Add or Remove Green member Health -128 to 1270xB30x00 to 0xFF0xE8
Respawn Team member ID 0 to 40хВ40x00 to 0x030xE8
Kill Team member ID 0 to 40хВ60x00 to 0x030xE8
Full Ammo Team member ID 0 to 40xB70x00 to 0x030xE8

Add a Comment

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

This site uses Akismet to reduce spam. Learn how your comment data is processed.