Fulqrum Publishing Home   |   Register   |   Today Posts   |   Members   |   UserCP   |   Calendar   |   Search   |   FAQ

Go Back   Official Fulqrum Publishing forum > Fulqrum Publishing > IL-2 Sturmovik: Cliffs of Dover > Technical threads

Technical threads All discussions about technical issues

Reply
 
Thread Tools Display Modes
  #1  
Old 02-15-2012, 08:20 PM
joecajun joecajun is offline
Registered Member
 
Join Date: Feb 2012
Posts: 4
Default Simpit Questions from a noob

I am new to CloD, but have alot of experience with FSX & XPlane9/10. I chose CloD because I am trying to obtain the most realistic flight sim possible.

I realize most already probably know this but, with FSX it is possible to undock the instrument panel and have it run on a separate monitor from the forward view. With XP9/10 you can run a network with different views (eg: front, sides, panel) generated by the separate computers. Ultimately, with both FSX & XP it is possible to build a simpit with working gauges and have the view outside the cockpit projected onto one or more screens. These screens can even be cylindrical giving the sim pilot a more immersive experience.

Is it possible to do these things with Clod?

Any info on the subject is greatly appreciated.

Thank you
Reply With Quote
  #2  
Old 02-15-2012, 09:04 PM
recoilfx recoilfx is offline
Approved Member
 
Join Date: Jul 2010
Posts: 265
Default

Nope, there is no devicelink support in CloD currently.
Reply With Quote
  #3  
Old 02-16-2012, 01:21 AM
bolox bolox is offline
Approved Member
 
Join Date: May 2008
Posts: 351
Default

if i could qualify the above answer, there is a method of getting the information for gauges etc out of the sim-see:-
http://forum.1cpublishing.eu/showthread.php?t=26587

however there is no script written by community (yet?) to actually output this data to 'gauges'.This feature may(or may not ) be finished off by the devs- i'd love to see it and i doubt i'm alone.


in the old IL2 this was done using 'devicelink' (tho some functions only worked offline)
http://forums.ubi.com/showthread.php...estions-thread

hope this helps answer your questions
Reply With Quote
  #4  
Old 02-16-2012, 02:03 AM
joecajun joecajun is offline
Registered Member
 
Join Date: Feb 2012
Posts: 4
Default

Thank you for the quick replies. The links you (bolox) have provided are very helpful. Now I have a place to start. While I lack the programming skills to do much with this, I know others who do have the skills.

Also, if anyone else has additional info on this matter please post it here. My guess is, that like myself & bolox, there are many others who are interested in creating simpits for CloD.
Reply With Quote
  #5  
Old 02-16-2012, 06:01 AM
bolox bolox is offline
Approved Member
 
Join Date: May 2008
Posts: 351
Default

well if you know people who can program C#.....

as mentioned, old IL2 did this previously. I and quite a few others use virtual gauges on a second screen.
If you can get someone to program this there are 2 obvious (?) ways to do this:-

1) make a new protocol to use all the more/different parammeters and write a 'client' program to display the output.

2) write code that parses the data to the old devicelink values in a UDP.

Number 2 is obviously a bit easier

this old IL2 bit of code (C++) might be of interest to your coder?
http://www.wingwalkers.org/vault/dev...nk_wrapper.zip

the original devicelink readme may also be of use?

Code:
The DeviceLink interface is meant to provide the third-party software with the
current condition of the player's aircraft as well as allow an unified method of
connecting alternative operating controls.

DeviceLink utilizes the UDP protocol to transfer the data. In this network, IL2
plays a part of the server. The external application sends a query packet, in
reply, IL2 sends back one (or several) packets containing the query result.
Proposing using the protocol within a single computer, ar a local network, no
data encoding is used and data integrity CRC-checks are not taken. Packets do
contain only symbolic information, the allowed range is (0x21-0x7e). A query
packet is preceded with an 'R' symbol, the resulting packed is preceded with an
'A'; followed by one or several "key"/"value" pairs. The "key" is the number
identifying a parameter. The "value" may be omitted or consist of a number of
copies. The semantics of the "value" depends on the parameter itself. The "keys"
are preceded with a '/', the "values" are preceded with a '\'. If a "value" is
to contain one of these symbols, it is preceded with a '\'. There are two types
of "keys" - (get) requiring to return the value of the given parameter, and
(set) setting the given parameter. The (get) keys are even while the latter ones
are odd. "Get-keys" may contain values for the specified parameter, the answer
packet returns the "value" with the "get-key". "Set-keys" may contain values for
the parameter, but with these the reply contains none.

Ex.:

key 40 - altimeter
key 81 - power
Query packet           - R/40/81\1.6e-1
  Return the aircraft altitude, and set the power to 1.6e-1.
Reply (answer) packet  - A/40\534.3
  Returns the current altitude 534.3 meters MSL.

The DeviceLink interface is activated if the [DeviceLink] section is found in the
conf.ini file. Within this section, "port" specifies the number of UDP port for
data transfer.
Using "host" parameter one can specify the address of the network interface in
use.
The "IPS" parameter restricts the allowed client IP addresses. If the "IPS"
parameter is not found in the section, any IP address is allowed to connect.

Ex.:

[DeviceLink]
port=10000
IPS=10.1.1.3 10.1.1.8

Port number is 10000, allowed clients are 10.1.1.3 and 10.1.1.8.



1. Parameters - common.



Version
  2   get() 
      return: string containing DeviceLink version id.

accessible get
  4   get(parameter key)
      return: parameter key and 1 or 0 - wheither this key has get method
              allowed in the current context (I.e. allowed during the mission
              but not while mission is loading).

accessible set
  6   get(parameter key)
      return: parameter key and 1 or 0 - wheither this parameter has set method
              allowed.

time of day
  20  get()
      return: float[hours] - current tome of the day within the game.

plane
  22  get()
      return: string identifying the player plane.

cockpits
  24  get()
      return: int, quantity of cockpits in the player aircraft.

cockpit cur
  26  get()
      return: int, number of the cockpit the player is currently in, starting
              with 0. The cockpit # 0 is always the pilot in command's cockpit.
              Returns -1 if the camera is on an external view.

engines
  28  get()
      return: int, quantity of engines on the player aircraft.



2. Parameters - instruments readings.



In current version, this section is disabled while playing the game over the
net.

speedometer_indicated 
  30  get()
      return: float [km/h]      +0.00   +inf

variometer            
  32  get()
      return: float [m/s]       -inf    +inf

slip                  
  34  get()
      return: float [deg.]      -45.00  +45.00

turn
  36  get()
      return: float [undefined] -1.00   +1.00
              turn indicator

angular_speed         
  38  get()
      return: float [deg./s]    -inf    +inf

altimeter             
  40  get()
      return: float [m]         +0.00   +inf

azimuth               
  42  get()
      return: float [deg.]      +0.00   +359.(9)

beacon_azimuth        
  44  get()
      return: float [deg.]      +0.00   +359.(9)

roll                  
  46  get()
      return: float [deg.]      -180.00 +180.00

pitch                 
  48  get()
      return: float [deg.]      -90.00  +90.00

fuel
  50  get()
      return: float [kg.]      +0.00   +inf

overload              
  52  get()
      return: float [undefined] -inf    +inf

shake_level           
  54  get()
      return: float [undefined] +0.00   +1.00

gear_pos_l
  56  get()
      return: float [undefined] +0.00   +1.00
              left gear "leg" position

gear_pos_r
  58  get()
      return: float [undefined] +0.00   +1.00
              right gear "leg" position

gear_pos_c
  60  get()
      return: float [undefined] +0.00   +1.00
              central gear position

magneto               
  62  get(int - engine idx)
      return: int   [undefined] +0      +3

rpm                   
  64  get(int - engine idx)
      return: float [rpm]       +0.00   +inf

manifold              
  66  get(int - engine idx)
      return: float [bar]       +0.00   +inf

temp_oilin            
  68  get(int - engine idx)
      return: float [deg.C]     -273.00 +inf

temp_oilout           
  70  get(int - engine idx)
      return: float [deg.C]     -273.00 +inf

temp_water            
  72  get(int - engine idx)
      return: float [deg.C]     -273.00 +inf

temp_cylinders        
  74  get(int - engine idx)
      return: float [deg.C]     -273.00 +inf



3. Parameters - controls.



3.1. Analog controls (joy axis).
"Value" is limited to -1.00 +1.00.



Power
  80  get() return: float
  81  set(float)

Flaps 
  82  get() return: float
  83  set(float)

Aileron      
  84  get() return: float
  85  set(float)

Elevator     
  86  get() return: float
  87  set(float)

Rudder       
  88  get() return: float
  89  set(float)

Brakes       
  90  get() return: float
  91  set(float)

Prop Pitch        
  92  get() return: float
  93  set(float)

Aileron Trim
  94  get() return: float
  95  set(float)

Elevator Trim
  96  get() return: float
  97  set(float)

Rudder Trim
  98  get() return: float
  99  set(float)



3.2. Discontinuous.
If the set method contains no value, calling it is equal to depressing the
corresponding hotkey once.



Level Stabilizer
 100  get() return: 1 or 0
 101  set()

Toggle Engine
 103  set()

Boost (WEP) On/Off
 104  get() return: 1 or 0
 105  set()

Magneto Next
 106  get() return: int 0 - 3
 107  set()

Magneto Prev.
 108  get() return: int 0 - 3
 109  set()

Supercharger Next Stage
 110  get() return: int
 111  set()

Supercharger Prev. Stage
 112  get() return: int
 113  set()

Select All Engines
 115  set()

Unselect All Engines
 117  set()

Select Left Engines
 119  set()

Select Right Engines 
 121  set()

Select Engine #1
 123  set()

Select Engine #2
 125  set()

Select Engine #3
 127  set()

Select Engine #4
 129  set()

Select Engine #5
 131  set()

Select Engine #6
 133  set()

Select Engine #7
 135  set()

Select Engine #8
 137  set()

Toggle Selection for All Engines
 139  set()

Toggle Left Engines
 141  set()

Toggle Right Engines
 143  set()

Select/Unselect Engine #1
 145  set()

Select/Unselect Engine #2
 147  set()

Select/Unselect Engine #3
 149  set()

Select/Unselect Engine #4
 151  set()

Select/Unselect Engine #5
 153  set()

Select/Unselect Engine #6
 155  set()

Select/Unselect Engine #7
 157  set()

Select/Unselect Engine #8
 159  set()

Fire Extinguisher
 161  set()

Feather Prop.
 162  get() return: int
 163  set()

Gear Up/Down
 164  get() return: float
 165  set()

Rise Gear manually
 167  set()

Lower Gear manually
 169  set()

Cowl or Armor Flaps
 171  set()

Airbrake
 172  get() return: int 0 - 1
 173  set()

Lock Tail Wheel
 174  get() return: int 0 - 1
 175  set()

Jettison Droptanks
 177  set()

Attach/Detach Aircraft
 179  set()

Weapon 1
 180  get() return: int 0 - 1
 181  set(int) 1 - start 0 - stop

Weapon 2
 182  get() return: int 0 - 1
 183  set(int) 1 - start 0 - stop

Weapon 3
 184  get() return: int 0 - 1
 185  set(int) 1 - start 0 - stop

Weapon 4
 186  get() return: int 0 - 1
 187  set(int) 1 - start 0 - stop

Weapon 1+2
 188  get() return: int 0 - 1
 189  set(int) 1 - start 0 - stop

Toggle Gun Pods On/Off
 190  get() return: int 0 - 1
 191  set()

Toggle Sight Mode (Auto)
 193  set()

Increase Sight Distance
 195  set()

Decrease Sight Distance
 197  set()

Adjust Sight Control to Right
 199  set()

Adjust Sight Control to Left  
 201  set()

Increase Sight Altitude
 203  set()

Decrease Sight Altitude
 205  set()

Increase Sight Velocity  
 207  set()

Decrease Sight Velocity
 209  set()

Toggle Wing Fold
 210  get() return: int 0 - 1
 211  set()

Open/Close Canopy
 212  get() return: int 0 - 1
 213  set()

Toggle Arresting Hook
 214  get() return: int 0 - 1
 215  set()

Toggle Chocks
 216  get() return: int 0 - 1
 217  set()

Gunner Fire
 220  get() return: int 0 - 1
 221  set(int) 1 - start 0 - stop

Gunner Move
 223  set(int,int,int)
      Increment of mouse movement along the 3 axis. The third one is not used
      currently.



4. Parameters - camera control.



4.1. Discontinuous.
If the set method contains no value, calling it is equal to depressing the
corresponding hotkey once.



Pilot or Gunner Position
  300 get() return: int current player cockpit idx
  301 set()

Jump to Cockpit #1 (Pilot)
  303 set()

Jump to Cockpit #2
  305 set()

Jump to Cockpit #3
  307 set()

Jump to Cockpit #4
  309 set()

Jump to Cockpit #5
  311 set()

Jump to Cockpit #6
  313 set()

Jump to Cockpit #7
  315 set()

Jump to Cockpit #8
  317 set()

Jump to Cockpit #9
  319 set()

Jump to Cockpit #10
  321 set()

FOV 90
  323 set()

FOV 85
  325 set()

FOV 80
  327 set()

FOV 75
  329 set()

FOV 70
  331 set()

FOV 65
  333 set()

FOV 60
  335 set()

FOV 55
  337 set()

FOV 50
  339 set()

FOV 45
  341 set()

FOV 40
  343 set()

FOV 35
  345 set()

FOV 30
  347 set()

Toggle FOV
  348 get() return: float, current FOV, degrees.
  349 set()

Increase FOV
  351 set()

Decrease FOV
  353 set()

Cockpit View
  355 set()

No Cockpit View
  357 set()

External View
  359 set()

Next Friendly View
  361 set()

Next Enemy View
  363 set()

Fly-by View
  365 set()

Padlock Enemy
  367 set()

Padlock Friendly
  369 set()

Padlock Enemy Ground
  371 set()

Padlock Friendly Ground
  373 set()

Padlock Next
  375 set()

Padlock Previous
  377 set()

Instant View Forward with Padlock
  479 set(int) 1 - start 0 - stop

External Padlock, Enemy Air
  381 set()

External Padlock, Friendly Air
  383 set()

External Padlock, closest Enemy Air
  385 set()

External Padlock, Enemy Ground
  387 set()

External Padlock, Friendly Ground
  389 set()

External Padlock, closest Enemy Ground
  391 set()

Chase View
  393 set()

Next Friendly Chase View
  395 set()

Next Enemy Chase View
  397 set()

Toggle Gunsight
  399 set()

Toggle Seat Position
  447 set()

4.2. Analogue.



TrackIR 
   11 set(float,float,float) 
      Sets the camera turn angles - yaw, pitch, and roll [deg.].
      The roll param is ignored.



5. Parameters - misc.



5.1. Discontinuous.
If the set method contains no value, calling it is equal to depressing the
corresponding hotkey once.



Toggle Autopilot
  401 set()

Toggle Level Autopilot
  403 set()

Bail Out
  405 set()

Tinted Reticle Dimmer (German Planes)
  407 set()

Cockpit Lights
  409 set()

Toggle Nav. Lights
  411 set()

Toggle Landing Light
  413 set()

Toggle Wingtip Smoke
  415 set()

Toggle Map
  417 set()

Chat
  419 set()

Online Rating
  421 set(int) 1 - show 0 - hide

Next Ratings Page
  443 set()

Toggle Speed Bar
  423 set()

Toggle Icon Types
  425 set()

Toggle Mirrors Show/Mode
  427 set()

Quick Start/Save Track
  429 set()

Radio Mute Key
  431 set(int) 1 - start 0 - stop

Mute
  445 set()

Radio Channel Switch
  433 set()

Accelerate Time x2/x4/x8
  435 set()

Normal Time
  437 set()

Decelerate Time x2/x4
  439 set()

PauseGame
  441 set()

Time Skip
  449 set()
Hopefully what i've posted should give your coders a few clues
Reply With Quote
  #6  
Old 01-21-2014, 06:07 AM
OverDhill OverDhill is offline
Approved Member
 
Join Date: Dec 2012
Posts: 29
Default

I sure wish someone would write a script for CLOD to UDP Speed. I would pay for a solution to be able to use UDP Speed from CLOD on a networked PC like I do with IL-2 1946
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 06:58 AM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © 2007 Fulqrum Publishing. All rights reserved.