Data Structures | Defines | Enumerations | Variables

ispackets.h File Reference

Go to the source code of this file.

Data Structures

struct  IS_ISI
 InSim Init - packet to initialise the InSim system. More...
struct  IS_TINY
 IS_TINY - used for various requests, replies and reports. More...
struct  IS_SMALL
 IS_SMALL - used for various requests, replies and reports. More...
struct  IS_VER
 This version packet can be sent on request. More...
struct  IS_STA
 StatePack. More...
struct  IS_SFP
 State Flags Pack. More...
struct  IS_MOD
 send to LFS to change screen mode More...
struct  IS_MSO
 MSg Out - system messages and user messages. More...
struct  IS_III
 InsIm Info. More...
struct  IS_ACR
 Admin Command Report - any user typed an admin command. More...
struct  IS_MST
 MSG Type - send to LFS to type message or command. More...
struct  IS_MSX
 MSg eXtended - like MST but longer (not for commands) More...
struct  IS_MSL
 MSg Local - message to appear on local computer only. More...
struct  IS_MTC
 Msg To Connection - hosts only - send to a connection / a player / all. More...
struct  IS_SCH
 Single CHaracter. More...
struct  IS_ISM
 InSim Multi. More...
struct  IS_VTN
 VoTe Notify. More...
struct  IS_PLC
 PLayer Cars. More...
struct  IS_RST
 Race STart. More...
struct  IS_NCN
 New ConN. More...
struct  IS_CNL
 ConN Leave. More...
struct  IS_CPR
 Conn Player Rename. More...
struct  IS_NPL
 New PLayer joining race. More...
struct  IS_PLP
 PLayer Pits. More...
struct  IS_PLL
 PLayer Leave race. More...
struct  IS_CRS
 Car ReSet. More...
struct  IS_LAP
 LAP time. More...
struct  IS_SPX
 SPlit X time. More...
struct  IS_PIT
 PIT stop. More...
struct  IS_PSF
 Pit Stop Finished. More...
struct  IS_PLA
 Pit LAne. More...
struct  IS_CCH
 Camera CHange. More...
struct  IS_PEN
 PENalty. More...
struct  IS_TOC
 Take Over Car. More...
struct  IS_FLG
 FLaG. More...
struct  IS_PFL
 Player FLags. More...
struct  IS_FIN
 FINished race notification. More...
struct  IS_RES
 RESult. More...
struct  IS_REO
 REOrder. More...
struct  IS_AXI
 AutoX Info. More...
struct  IS_AXO
 AutoX Object. More...
struct  NodeLap
 Car info in 6 bytes. More...
struct  IS_NLP
 Node and Lap Packet. More...
struct  CompCar
 Car info in 28 bytes. More...
struct  IS_MCI
 Multi Car Info. More...
struct  CarContact
 16 bytes : one car in a contact - two of these in the IS_CON More...
struct  IS_CON
 CONtact - between two cars (A and B are sorted by PLID) More...
struct  CarContOBJ
 8 bytes : car in a contact with an object More...
struct  IS_OBH
 OBject Hit - car hit an autocross object or an unknown object. More...
struct  IS_HLV
 Hot Lap Validity - illegal ground / hit wall / speeding in pit lane. More...
struct  ObjectInfo
 Info about a single object - explained in the layout file format. More...
struct  IS_AXM
 AutoX Multiple objects - variable size. More...
struct  IS_SCC
 Set Car Camera. More...
struct  IS_CPP
 Cam Pos Pack. More...
struct  IS_RIP
 Replay Information Packet. More...
struct  IS_SSH
 ScreenSHot. More...
struct  IS_BFN
 Button FunctioN. More...
struct  IS_BTN
 BuTtoN. More...
struct  IS_BTC
 BuTton Click. More...
struct  IS_BTT
 BuTton Type. More...
struct  OutSimPack
 OutSimPack. More...
struct  OutGaugePack
 OutGaugePack. More...

Defines

#define ISF_RES_0   1
 bit 0 : spare
#define ISF_RES_1   2
 bit 1 : spare
#define ISF_LOCAL   4
 bit 2 : guest or single player
#define ISF_MSO_COLS   8
 bit 3 : keep colours in MSO text
#define ISF_NLP   16
 bit 4 : receive NLP packets
#define ISF_MCI   32
 bit 5 : receive MCI packets
#define ISF_CON   64
 bit 6 : receive CON packets
#define ISF_OBH   128
 bit 7 : receive OBH packets
#define ISF_HLV   256
 bit 8 : receive HLV packets
#define ISF_AXM_LOAD   512
 bit 9 : receive AXM when loading a layout
#define ISF_AXM_EDIT   1024
 bit 10 : receive AXM when changing objects
#define ISS_GAME   1
 in game (or MPR)
#define ISS_REPLAY   2
 in SPR
#define ISS_PAUSED   4
 paused
#define ISS_SHIFTU   8
 SHIFT+U mode.
#define ISS_16   16
 UNUSED.
#define ISS_SHIFTU_FOLLOW   32
 FOLLOW view.
#define ISS_SHIFTU_NO_OPT   64
 SHIFT+U buttons hidden.
#define ISS_SHOW_2D   128
 showing 2d display
#define ISS_FRONT_END   256
 entry screen
#define ISS_MULTI   512
 multiplayer mode
#define ISS_MPSPEEDUP   1024
 multiplayer speedup option
#define ISS_WINDOWED   2048
 LFS is running in a window.
#define ISS_SOUND_MUTE   4096
 sound is switched off
#define ISS_VIEW_OVERRIDE   8192
 override user view
#define ISS_VISIBLE   16384
 InSim buttons visible.
#define SETF_SYMM_WHEELS   1
#define SETF_TC_ENABLE   2
#define SETF_ABS_ENABLE   4
#define PIF_SWAPSIDE   1
#define PIF_RESERVED_2   2
#define PIF_RESERVED_4   4
#define PIF_AUTOGEARS   8
#define PIF_SHIFTER   16
#define PIF_RESERVED_32   32
#define PIF_HELP_B   64
#define PIF_AXIS_CLUTCH   128
#define PIF_INPITS   256
#define PIF_AUTOCLUTCH   512
#define PIF_MOUSE   1024
#define PIF_KB_NO_HELP   2048
#define PIF_KB_STABILISED   4096
#define PIF_CUSTOM_VIEW   8192
#define CONF_MENTIONED   1
#define CONF_CONFIRMED   2
#define CONF_PENALTY_DT   4
#define CONF_PENALTY_SG   8
#define CONF_PENALTY_30   16
#define CONF_PENALTY_45   32
#define CONF_DID_NOT_PIT   64
#define CONF_DISQ   (CONF_PENALTY_DT | CONF_PENALTY_SG | CONF_DID_NOT_PIT)
#define CONF_TIME   (CONF_PENALTY_30 | CONF_PENALTY_45)
#define CCI_BLUE   1
 this car is in the way of a driver who is a lap ahead
#define CCI_YELLOW   2
 this car is slow or stopped and in a dangerous place
#define CCI_LAG   32
 this car is lagging (missing or delayed position packets)
#define CCI_FIRST   64
 this is the first compcar in this set of MCI packets
#define CCI_LAST   128
 this is the last compcar in this set of MCI packets
#define OBH_LAYOUT   1
 an added object
#define OBH_CAN_MOVE   2
 a movable object
#define OBH_WAS_MOVING   4
 was moving before this hit
#define OBH_ON_SPOT   8
 object in original position
#define RIPOPT_LOOP   1
 replay will loop if this bit is set
#define RIPOPT_SKINS   2
 set this bit to download missing skins
#define RIPOPT_FULL_PHYS   4
 use full physics when searching an MPR
#define IS_X_MIN   0
#define IS_X_MAX   110
#define IS_Y_MIN   30
#define IS_Y_MAX   170
#define INST_ALWAYS_ON   128
 if this bit is set the button is visible in all screens
#define ISB_C1   1
 you can choose a standard interface colour using
#define ISB_C2   2
 see ISB_C1
#define ISB_C4   4
 see ISB_C1
#define ISB_CLICK   8
 click this button to send IS_BTC
#define ISB_LIGHT   16
 light button
#define ISB_DARK   32
 dark button
#define ISB_LEFT   64
 align text to left
#define ISB_RIGHT   128
 align text to right
#define ISB_LMB   1
 left click
#define ISB_RMB   2
 right click
#define ISB_CTRL   4
 ctrl + click
#define ISB_SHIFT   8
 shift + click
#define OG_SHIFT   1
 key
#define OG_CTRL   2
 key
#define OG_TURBO   8192
 show turbo gauge
#define OG_KM   16384
 if not set - user prefers MILES
#define OG_BAR   32768
 if not set - user prefers PSI

Enumerations

enum  {
  ISP_NONE, ISP_ISI, ISP_VER, ISP_TINY,
  ISP_SMALL, ISP_STA, ISP_SCH, ISP_SFP,
  ISP_SCC, ISP_CPP, ISP_ISM, ISP_MSO,
  ISP_III, ISP_MST, ISP_MTC, ISP_MOD,
  ISP_VTN, ISP_RST, ISP_NCN, ISP_CNL,
  ISP_CPR, ISP_NPL, ISP_PLP, ISP_PLL,
  ISP_LAP, ISP_SPX, ISP_PIT, ISP_PSF,
  ISP_PLA, ISP_CCH, ISP_PEN, ISP_TOC,
  ISP_FLG, ISP_PFL, ISP_FIN, ISP_RES,
  ISP_REO, ISP_NLP, ISP_MCI, ISP_MSX,
  ISP_MSL, ISP_CRS, ISP_BFN, ISP_AXI,
  ISP_AXO, ISP_BTN, ISP_BTC, ISP_BTT,
  ISP_RIP, ISP_SSH, ISP_CON, ISP_OBH,
  ISP_HLV, ISP_PLC, ISP_AXM, ISP_ACR
}
 

the second byte of any packet is one of these

More...
enum  {
  TINY_NONE, TINY_VER, TINY_CLOSE, TINY_PING,
  TINY_REPLY, TINY_VTC, TINY_SCP, TINY_SST,
  TINY_GTH, TINY_MPE, TINY_ISM, TINY_REN,
  TINY_CLR, TINY_NCN, TINY_NPL, TINY_RES,
  TINY_NLP, TINY_MCI, TINY_REO, TINY_RST,
  TINY_AXI, TINY_AXC, TINY_RIP
}
 

the fourth byte of an IS_TINY packet is one of these

More...
enum  {
  SMALL_NONE, SMALL_SSP, SMALL_SSG, SMALL_VTA,
  SMALL_TMS, SMALL_STP, SMALL_RTP, SMALL_NLI
}
 

the fourth byte of an IS_SMALL packet is one of these

More...
enum  {
  MSO_SYSTEM, MSO_USER, MSO_PREFIX, MSO_O,
  MSO_NUM
}
 

User Values (for UserType byte)

More...
enum  {
  SND_SILENT, SND_MESSAGE, SND_SYSMESSAGE, SND_INVALIDKEY,
  SND_ERROR, SND_NUM
}
 

Message Sounds (for Sound byte)

More...
enum  {
  VOTE_NONE, VOTE_END, VOTE_RESTART, VOTE_QUALIFY,
  VOTE_NUM
}
 

Vote Actions.

More...
enum  {
  PITLANE_EXIT, PITLANE_ENTER, PITLANE_NO_PURPOSE, PITLANE_DT,
  PITLANE_SG, PITLANE_NUM
}
 

Pit Lane Facts.

More...
enum  {
  PSE_NOTHING, PSE_STOP, PSE_FR_DAM, PSE_FR_WHL,
  PSE_LE_FR_DAM, PSE_LE_FR_WHL, PSE_RI_FR_DAM, PSE_RI_FR_WHL,
  PSE_RE_DAM, PSE_RE_WHL, PSE_LE_RE_DAM, PSE_LE_RE_WHL,
  PSE_RI_RE_DAM, PSE_RI_RE_WHL, PSE_BODY_MINOR, PSE_BODY_MAJOR,
  PSE_SETUP, PSE_REFUEL, PSE_NUM
}
 

Pit Work Flags.

More...
enum  {
  VIEW_FOLLOW, VIEW_HELI, VIEW_CAM, VIEW_DRIVER,
  VIEW_CUSTOM, VIEW_MAX
}
 

View identifiers.

More...
enum  {
  LEAVR_DISCO, LEAVR_TIMEOUT, LEAVR_LOSTCONN, LEAVR_KICKED,
  LEAVR_BANNED, LEAVR_SECURITY, LEAVR_NUM
}
 

Leave reasons.

More...
enum  {
  PENALTY_NONE, PENALTY_DT, PENALTY_DT_VALID, PENALTY_SG,
  PENALTY_SG_VALID, PENALTY_30, PENALTY_45, PENALTY_NUM
}
 

Penalty values (VALID means the penalty can now be cleared)

More...
enum  {
  PENR_UNKNOWN, PENR_ADMIN, PENR_WRONG_WAY, PENR_FALSE_START,
  PENR_SPEEDING, PENR_STOP_SHORT, PENR_STOP_LATE, PENR_NUM
}
 

Penalty reasons.

More...
enum  {
  TYRE_R1, TYRE_R2, TYRE_R3, TYRE_R4,
  TYRE_ROAD_SUPER, TYRE_ROAD_NORMAL, TYRE_HYBRID, TYRE_KNOBBLY,
  TYRE_NUM
}
 

Tyre compounds.

More...
enum  {
  PMO_LOADING_FILE, PMO_ADD_OBJECTS, PMO_DEL_OBJECTS, PMO_CLEAR_ALL,
  PMO_NUM
}
 

Values for PMOAction byte.

More...
enum  {
  RIP_OK, RIP_ALREADY, RIP_DEDICATED, RIP_WRONG_MODE,
  RIP_NOT_REPLAY, RIP_CORRUPTED, RIP_NOT_FOUND, RIP_UNLOADABLE,
  RIP_DEST_OOB, RIP_UNKNOWN, RIP_USER, RIP_OOS
}
 

Error codes returned in IS_RIP replies.

More...
enum  { SSH_OK, SSH_DEDICATED, SSH_CORRUPTED, SSH_NO_SAVE }
 

Error codes returned in IS_SSH replies.

More...
enum  { BFN_DEL_BTN, BFN_CLEAR, BFN_USER_CLEAR, BFN_REQUEST }
 

the fourth byte of IS_BFN packets is one of these

More...
enum  {
  DL_SHIFT, DL_FULLBEAM, DL_HANDBRAKE, DL_PITSPEED,
  DL_TC, DL_SIGNAL_L, DL_SIGNAL_R, DL_SIGNAL_ANY,
  DL_OILWARN, DL_BATTERY, DL_ABS, DL_SPARE,
  DL_NUM
}

Variables

const int INSIM_VERSION = 5
 INSIM VERSION NUMBER (updated for version 0.6B)
const int VIEW_ANOTHER = 255
 viewing another car
const int NOT_CHANGED = 255

Variable Documentation

const int INSIM_VERSION = 5

INSIM VERSION NUMBER (updated for version 0.6B)

Definition at line 718 of file ispackets.h.

 All Data Structures Files Variables Enumerator Defines