Jump to content
The simFlight Network Forums

Recommended Posts

Posted

Hello all. I gather from the stickies that Pete's on holiday, so a question to all.

 

(Welcome back, Pete, when you return - saw the video of your cockpit - very nice!)

 

I know this topic has been thrashed to death, so apoligies for bringing it up again!

 

However, it's a simple question, I hope.

 

I run FS9 acros three computers to run three outside views and some screens for instruments.

 

I use Wideview to get the left-forward and right-forward views.

 

As has been documented, discussed and proved, Wideview cannot synchronise AI traffic across the network in FS9. I know it can in FSX, but my setup is straining to provide decent framerates in FS9 so an upgrade is not on the cards.

 

So my question is this:

 

"Why can't a programme be written which would extract the AI traffic info from the main FS computer, and then inject it as multiplayer traffic onto the other two?"

 

I have used FSInterrogate to look at the AI traffic tables in FS9 and they seem to update in real time. So the data which shows the movement of AI traffic on the main FS machine is available to my novice understanding.

 

There has been a large amount of discussion about this topic in the past, hence the phrasing of my question "why can't...?", rather than "is it possible to...?"

 

So, I'm clearly missing something obvious.

 

But what is it?

 

Thanks,

 

Roger.

  • 2 weeks later...
Posted

Well I've had 107 views but no replies. Maybe the answer isn't so simple.

 

I'm looking at an idea like this:

 

1) Write a prog (I use Visaul Basic 2008) which can open and host a Multiplayer session for FS9

2) This prog interfaces with the main FS computer and extracts the AI traffic data from the tables

3) It then shows the AI traffic as multiplayer aircraft to the other computers on the network

 

Thus on your WidevieW setup, you get synchronised traffic across all screens.

 

Possible?

Posted

Well I've had 107 views but no replies. Maybe the answer isn't so simple.

 

It certainly isn't. Maybe that is why WidevieW doesn't do it? That would be the best place for it to be done, after all it is already extracting user aircraft data and using it to control the clients/slaves. This would just be more of the same.

 

1) Write a prog (I use Visaul Basic 2008) which can open and host a Multiplayer session for FS9

2) This prog interfaces with the main FS computer and extracts the AI traffic data from the tables

 

Why piggy-back on FSUIPC's reading of the data from SimConnect? If someone is going to learn enough to deal correctly with Multiplayer (something I've certainly never looked at), then the easier task of interfacing to SimConnect should be a doddle and it would be more efficient that going through FSUIPC, which itself reads from SimConnect.

 

3) It then shows the AI traffic as multiplayer aircraft to the other computers on the network

Thus on your WidevieW setup, you get synchronised traffic across all screens

 

I don't know how "synchronised" it would be. How often will you read the traffic? FSUIPC reads it at quite sparse intervals, at most once per second and then it splits it up to avoid ruining FSX performance or overloading SimConnect. I had such events reported recently which gave rise to reductions in this area in FSUIPC. Someone had SimConnect overloading at an airport with lots of ground traffic, both airport vehicles and aircraft. 

 

I don't have any experience at all with multiplayer. Do you? Does VATSIM, for instance, run into MP overloads at fly-ins? It might be worth asking over in VATSIM type forums to see what the experience is. I would have thought trying to control the hundreds of AI most folks like to have (as I do, for instance, for a realistic EGLL, EHAM or LFPG) frequently enough to achieve near synchronicity would be pretty near impossible. Maybe if you accept them jumping into new positions on each individual update cycle that would be possible, but horrible. If you could limit the faster updating to only those in view, or nearly so, on the other PCs it might be a little easier. But that's a complex job computing 3D cones of view.

 

And then there's the increase in Network traffic. Not that the Network itself wouldn't be capable, it's more the processing of the TCP/IP queues on each PC, which Queues are also used for external SimConnect connections.

 

.Possible?

 

Maybe. Difficult? Certainly. I think there's a lot to be thought about before anyone rushes into this.

 

Regards

Pete

  • 4 months later...
Posted

Hello fatcharlie. Maybe we can help each other. I have used 2 programs to network FS9, 1) Wideview 2000 (yes, it works for FS9) and 2) FSManager v2.85. Both are free versions I got from the Internet. Another free program is: TCASv7-3. It is a gauge that shows AI traffic. Wideview2000 works well but requires IPX instead of TCP/IP, which I found an IPX wrapper that works for 64-bit computers and 32-bit computers. I only use Wideview2000 for the right-front and left-front views on another computer. I use FSManager to a tablet for my EFB as it updates only about every second. I'm not so interested in seeing AI traffic on the network computers, although that would be nice, because I primarly fly IFR but would like to see the traffic on the EFB using the TCASv7-3 program/gauge. In my interest in PID control testing for my personal aircraft, a long story, I have been able to read and write using FSUIPC, GPSout and Excel's 2003 VBA between two computers. Below are 3 "paragraphs" that read FSUIPC data. the first two work great but I cannot get the 3rd "paragraph to work. Perhaps this can give you insight on how to read AI traffic and if you're able, please tell my why and how I can correct the 3rd "paragraph." :

'-- 1st paragraph --

 

Dim Altitude64 As Currency

Dim Altitude As Double
If FSUIPC_Read(&H570, 8, VarPtr(Altitude64), dwResult) Then
If FSUIPC_Process(dwResult) Then
Altitude = Altitude64 * 10000#
Altitude = Altitude * 3.28084 / (65536# * 65536#)
Range("a5") = Format(Altitude, "000000")
'  this works---------

End If
End If

'---2nd paragraph ---

 Dim workArray(256) As Byte
     Dim idx As Integer
     If FSUIPC_Read(&H3D00, 256, VarPtr(workArray(1)), dwResult) Then
         If FSUIPC_Process(dwResult) Then
                     idx = 1
             While workArray(idx) <> 0
                 AircraftType = AircraftType & Chr(workArray(idx))
                 idx = idx + 1
             Wend
     End If
 this  works, it accesses the aircraft.cfg file   --------------
  Range("A21").Value = AircraftType
 '----3rd paragraph ----

Dim workArrayx(1920) As Byte
     Dim idxx As Integer
     If FSUIPC_Read(&HD040, 1920, VarPtr(workArrayx(1)), dwResult) Then
         If FSUIPC_Process(dwResult) Then
                     idxx = 1
             While workArrayx(idxx) <> 0
                 AircraftTraffic = AircraftTraffic & Chr(workArrayx(idxx))
                 idxx = idxx + 1
             Wend
     End If
   ' this does NOT work -----------
  Range("C21").Value = AircraftTraffic
'--------------------------------------------------------------------------

End If

'-- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  --

  • 2 months later...
Posted

Hello fatcharlie. Well I  haven't heard from you in quite awhile so perhaps I can assume you've gone on to other things. After some thought, I realized that perhaps I was defeating the purpose of WIDEFS by going a different route by trying to use Excel. And although WIDEFS most likely would solve my TCAS network, I'm under the impression that FSUIPC and WIDEFS for FS2004 (FS9) is to be no longer supported. If that being the case, and I understand the logic, then I don't see the need to purchase WIDEFS for the sole purpose of displaying TCAS. I did come across a couple of ways (free - of course) to show TCAS directly through using a VSI gauge with TCAS and MEDIT's airbus' ND showing traffic.  XP Reality's EFISv4 is superb but it has a nominal charge. As far as networking other aircraft info. for free, I've come across, already mentioned: Excel, FSManager 2.85 and Wideview 2000.  And there is also: AIBridge using FSINN (if memory serves me correctly) and a strange program called: navyg. So I too will go forward. Good flying...

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. Guidelines Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.