Difference between revisions of "IS SCH"

From LFS Manual
Jump to navigationJump to search
m
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Introduction ==
+
{{Infobox InSim packet
 +
| description  = Send a single character or key press
 +
| size          = 8
 +
| type_key      = ISP_SCH
 +
| type_value    = 6
 +
| direction    = out
 +
| category      = Text messages and key presses
 +
| prev          = [[IS_STA]]
 +
| next          = [[IS_SFP]]
 +
}}
  
The '''S'''ingle '''CH'''aracter packet is used to send individual key presses to LFS. Standard keys (e.g. V and H) should be sent as capital letters, using the corresponding ASCII values. This does not work with keys such as F keys, arrows, CTRL, etc. For those, you should send an [[IS_MST]] packet with the <code>/press</code>, <code>/shift</code>, <code>/ctrl</code>, or <code>/alt</code> commands.
+
The '''S'''ingle '''CH'''aracter packet is used to send individual key presses to LFS. Standard keys (e.g. {{key press|V}} and {{key press|H}}) should be sent as capital letters, using the corresponding ASCII values. This does not work with keys such as {{key press|F}}-keys, arrows, {{key press|Ctrl}}, etc. For those, you should send an [[IS_MST]] packet with the {{kbd|/press}}, {{kbd|/shift}}, {{kbd|/ctrl}}, or {{kbd|/alt}} commands.
  
Note that some keys seem not to work properly with this packet, for instance H does not toggle chat history, and I does not toggle ignition. On the other hand, V does change the view, and 9 does turn the hazard lights on.
+
Note that some keys seem not to work properly with this packet, for instance {{key press|H}} does not toggle chat history, and I does not toggle ignition. On the other hand, {{key press|V}} does change the view, and 9 does turn the hazard lights on.
 +
 
 +
== Packet details ==
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 42: Line 53:
 
|  
 
|  
 
|}
 
|}
 
== Packet Details ==
 
  
 
=== Size ===
 
=== Size ===
Line 59: Line 68:
 
=== CharB ===
 
=== CharB ===
  
The byte representing the key to press. You can use non-printable characters, such as 13 to send an Enter key press.
+
The byte representing the key to press. You can use non-printable characters, such as 13 to send an {{key press|Enter}} key press.
  
 
== Flags ==
 
== Flags ==
  
2 bits are used to represent the Shift (bit 0) and Ctrl (bit 1) keys being pressed. For instance, sending "M" with Flags 2 corresponds to pressing Ctrl+M.
+
2 bits are used to represent the {{key press|Shift}} (bit 0) and {{key press|Ctrl}} (bit 1) keys being pressed. For instance, sending {{code|M}} with Flags 2 corresponds to pressing {{key press|Ctrl|M}}.
 +
 
 +
{{InSim packets}}
  
 
[[Category:InSim packets]]
 
[[Category:InSim packets]]

Latest revision as of 21:51, 13 February 2026

IS_SCH
Send a single character or key press
Overview
Size 8
Type ISP_SCH (6)
Usage instruction
Previous packet
IS_STA
Next packet
IS_SFP

The Single CHaracter packet is used to send individual key presses to LFS. Standard keys (e.g. V and H) should be sent as capital letters, using the corresponding ASCII values. This does not work with keys such as F-keys, arrows, Ctrl, etc. For those, you should send an IS_MST packet with the /press, /shift, /ctrl, or /alt commands.

Note that some keys seem not to work properly with this packet, for instance H does not toggle chat history, and I does not toggle ignition. On the other hand, V does change the view, and 9 does turn the hazard lights on.

Packet details

IS_SCH packet properties
Type Name Description
byte Size 8
byte Type ISP_SCH
byte ReqI 0
byte Zero
byte CharB key to press
byte Flags bit 0: SHIFT / bit 1: CTRL
byte Spare2
byte Spare3

Size

The size of the packet, always 8 bytes.

Type

The packet type from the ISP_ enumeration, always ISP_SCH.

ReqI

ReqI is always zero.

CharB

The byte representing the key to press. You can use non-printable characters, such as 13 to send an ↵ Enter key press.

Flags

2 bits are used to represent the ⇧ Shift (bit 0) and Ctrl (bit 1) keys being pressed. For instance, sending M with Flags 2 corresponds to pressing Ctrl + M.


Initialisation IS_ISI
Version Information IS_VER
General Purpose IS_TINY · IS_SMALL · IS_TTC
State Reporting and Requests IS_STA · IS_SFP · IS_ISM
Text Messages and Key Presses IS_SCH · IS_MSO · IS_III · IS_MST · IS_MTC · IS_MSX · IS_MSL
Voting IS_VTN
Race Tracking IS_RST · IS_REO
Autocross IS_AXI · IS_AXO · IS_UCO · IS_OCO · IS_AXM
Connection Tracking IS_NCN · IS_CNL · IS_CPR · IS_ACR · IS_NCI · IS_SLC · IS_CIM
Car Tracking IS_NPL · IS_PLP · IS_PLL · IS_LAP · IS_SPX · IS_PIT · IS_PSF · IS_PLA · IS_PEN · IS_TOC · IS_FLG · IS_PFL · IS_FIN · IS_RES · IS_NLP · IS_MCI · IS_CRS · IS_CON · IS_OBH · IS_HLV · IS_CSC
Camera Control IS_SCC · IS_CPP
Replay Control IS_RIP
Screenshots IS_SSH
InSim Buttons IS_BFN · IS_BTN · IS_BTC · IS_BTT
AI Control IS_AIC · IS_AII
Other packets IS_MOD · IS_CCH · IS_PLC · IS_HCP · IS_JRR · IS_MAL · IS_PLH · IS_IPB