4mla1fn Posted March 28, 2008 Report Posted March 28, 2008 i've got an academic research project where i need to connect an "agent" (e.g. an AI program) to fly a plane in a flight sim. hence, my agent would need to receive perceivable flight parameters (e.g. whatever a human could observe; gauges readings, lever/switch positions, etc), and my agent would return actions (keypresses) to fly the sim like a human would who is using the keyboard (e.g. keys for stick movements, throttle, operating autopilot, radios, yada yada yada.) i know this kind of thing has been done with x-plane, however i'd like to do it with microsoft flight simulator x. i read the list of capabilities of FSUIPC but it's not exactly clear if it supports what i need. several years ago, i wrote a data collection/analysis app to capture broadcast UDP packets of flight parameters produced by MS2004/FSUIPC. this was used to evaluate pilot performance in a series of maneuvers using different kinds of gauge displays. what i don't know though is if FSUIPC also supports sending keypresses to fly the plane *from* an agent to FS. i've just learned about simconnect in version X. does this support what i need? if so, is this a better approach. $ is not a factor (within reason). many thanks.
Pete Dowson Posted March 29, 2008 Report Posted March 29, 2008 i read the list of capabilities of FSUIPC but it's not exactly clear if it supports what i need. Not sure where this "list of capabilities" is you have read, but certainly you can read everything you need and write/send any controls you need. This is how many complete cockpits are built and external / add-on autopilots programmed. For FSX you should also look at SimConnect, which is Microsoft's official interface. FSUIPC4 actually uses SimConnect in any case for about 99% of its operations. what i don't know though is if FSUIPC also supports sending keypresses to fly the plane *from* an agent to FS. Of course you can send keypresses, but that sounds extremely primitive and inefficient. Why key presses to operate elevator, aileron, throttle and rudder. Surely you want to use analogue inputs. You can either send the same controls a real joystick would, or directly set the internal values. Seems like you've not actually scanned through the documentation in the SDK at all? Check the FSUIPC SDK package on http://www.schiratti.com/dowson. i've just learned about simconnect in version X. does this support what i need? if so, is this a better approach. SimConnect is the approach MS would want you to take. FSUIPC offers compatibility with FS2004, FS2002, FS2000, CFS1 and CFS2, but otherwise it makes no difference other than programming style: SimConnect provides a server-client relationship, whilst the FSUIPC interface is by polling. So, please do take a look at the SimConnect documentation too (it's in the FSX SDK). Pete
4mla1fn Posted March 29, 2008 Author Report Posted March 29, 2008 Not sure where this "list of capabilities" is you have read hi pete. many thanks for your response. the list i was looking at was here: http://secure.simmarket.com/product_infts_id=2068 which i got to from http://www.schiratti.com/dowson ...you can read everything you need and write/send any controls you need. excellent. i'd hoped this was the case. i'd interpreted the stuff i was reading as mainly doing setup and configuration of FS and peripherals (trims, weather, calibrations, etc), but it wasn't obvious to me that i could send a value for a control (throttle or a surface) while the plane was flying. this is perfect. Seems like you've not actually scanned through the documentation in the SDK at all? Check the FSUIPC SDK package on http://www.schiratti.com/dowson. thanks for this. i looked at the wrong documents; i only reviewed only the fsuipc4 user guide and missed the FSUIPC SDK, but i've got it now. i think i'm now well on my way. many thanks for pointing me in the right direction.
Pete Dowson Posted March 29, 2008 Report Posted March 29, 2008 the list i was looking at was here:http://secure.simmarket.com/product_infts_id=2068 That's a sales site, for end users wishing to purchase FSUIPC so that they can use the payware user facilities. None of that is much to do with FSUIPC's function as an interface for applications. That isn't "sold" to end users so it isn't described as part of any purchase. and missed the FSUIPC SDK, but i've got it now. i think i'm now well on my way. many thanks for pointing me in the right direction. Okay! Good. Regards Pete
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now