Jump to content
The simFlight Network Forums

Recommended Posts

Posted

Pete,

We've got an issue with setting weather via the New Weather Interface (NWI) in Microsoft FlightSim 2004 (COF).

When weather is set via NWI & FSUIPC the flightsim crashes within a few minutes.

Our setup consists of;

1 pc running MSFS+fsuipc+WideServer

5 pcs running WideClient and the Glass Cockpit (2), the CDU (2) and the EICAS

1 pc running WideClient and our software to control/interface with MSFS and ProjectMagenta

All WideClient versions are 6.470

The WideServer version is 6.47

The FSUIPC version is 3.48

All machines run WindowsXP.

In the WideServer logfile I sometimes see this message. (The length is not always 25)

334907 **** ERROR! Sumcheck or length fails on received socket 2388 block, len=25 (time=22831891)

In the FSUIPC logfile I sometimes see this message.

20969563 NW_SETEXACT weather command received, ICAO=GLOB

20969735 >NewSet: **** New Weather [4] being set: ICAO=GLOB (Dyn=0)

20969735 >NewSet: Pressure=1013.0, Drift=0.0 (Target=1013.0)

20969735 >NewSet: Visibility: range=1.0sm (1609m) (Target=1.0sm), from=0ft, to=82021ft

20969735 >NewSet: Cloud[0]: type=3, from 0ft to 19685ft (+/- 66ft), cover=7, turb=3, topshape=0

20969735 >NewSet: Precip=2, base=66ft, rate=4, icing=4

20969735 >NewSet: **** End of New Weather details for ICAO=GLOB

20969797 ***ERROR C0000005 at 2112C218 ChainedProcFF (Diag=04000000)

20969797 *** Access violation trying to read address 0000000C

20969797 *** EAX 00000000 EBX 00000001 ECX 0D8D18F0 EDX 0117D418 EDI 0CA55A28 ESI 0CC692E8

20969797 Stack -1 (0920CC20) = 0042CB71, Bad=N

20969797 Stack -2 (19840110) = 00000003, Bad=Y

20969797 Stack -3 (4B434F43) = 20544950, Bad=Y

20975485 Results: FS98 Wind0: ground (-3ft) to 0ft AGL, dir 0M, vel 0, gust 0, turb 0

20990250 Results: FS98 Wind0: ground (0ft) to 0ft AGL, dir 0M, vel 0, gust 0, turb 0

Please note that the log entries mentioned above dont occur with every crash, sometimes I get only one, sometimes none, sometimes both. Also note that the WideServer logfile and FSUIPC logfile from which these logs are taken are not from the same MSFS run.

If you need more information I'd be happy to supply that... (I could mail some code snippets if that is useful).

I hope you can help us with this, because we are out of options.

sincerely,

E van Nooijen.

PS. Setting weather via the (advanced) weather interface within MSFS works fine.

Posted

When weather is set via NWI & FSUIPC the flightsim crashes within a few minutes.

That's pretty easy to do, since the NWI effectively gives you a clear interface directly into WEATHER.DLL functions. FSUIPC doesn't check your data nor place any restrictions on it, since I didn't want to restrict exploration. For example, there are only so many cloud types selectable -- if you try one which has no graphics defined for it, crash.

There are probably more ways to crash FS with erroneous data than you can shake a stick at! ;-)

1 pc running WideClient and our software to control/interface with MSFS and ProjectMagenta

Best when developing new software to test it on the FS PC first.

In the WideServer logfile I sometimes see this message. (The length is not always 25)

334907 **** ERROR! Sumcheck or length fails on received socket 2388 block, len=25 (time=22831891)

That is most definitely a problem on your Network. The data is checked thoroughly on reception to ensure no rubbish is seen and obeyed.

In the FSUIPC logfile I sometimes see this message.

20969563 NW_SETEXACT weather command received, ICAO=GLOB

20969735 >NewSet: **** New Weather [4] being set: ICAO=GLOB (Dyn=0)

20969735 >NewSet: Pressure=1013.0, Drift=0.0 (Target=1013.0)

20969735 >NewSet: Visibility: range=1.0sm (1609m) (Target=1.0sm), from=0ft, to=82021ft

20969735 >NewSet: Cloud[0]: type=3, from 0ft to 19685ft (+/- 66ft), cover=7, turb=3, topshape=0

20969735 >NewSet: Precip=2, base=66ft, rate=4, icing=4

20969735 >NewSet: **** End of New Weather details for ICAO=GLOB

20969797 ***ERROR C0000005 at 2112C218 ChainedProcFF (Diag=04000000)

20969797 *** Access violation trying to read address 0000000C

The crash is at 2112C218 which is in WEATHER.DLL, and just a glance at the weather you are trying to set shows the likely reason -- Cloud Type 3 isn't implemented in any standard FS at present. I don't know if it can be added by clever folk like those who do the cloud graphic replacements.

I hope you can help us with this, because we are out of options.

Your main task is checking the data you are asking FS to obey.

PS. Setting weather via the (advanced) weather interface within MSFS works fine.

Yes, the entire method is different there, and FSUIPC will replace any invalid cloud types with valid ones. I knew FS2000 and FS2002 Weather implementations quite well and could therefore impose restrictions without qualms. With the whole weather engine in FS2004 being new, a complete re-write, I didn't want to restrict experimentation. The consequence is that you have to check the data because FSUIPC isn't babysitting you on this.

Regards,

Pete

Posted

Pete,

first of all i would like to thank you for your quick response. I did some preliminary testing and that seems to confirm your conclusions about unsupported cloud type stratus(3).

-- if you try one which has no graphics defined for it, crash.

There are probably more ways to crash FS with erroneous data than you can shake a stick at! ;-)

okay, that is useful information! I didnt realize not all the types were implemented (copied the options as listed in MSFS and figured those were the supported ones.). I will have to check which types are valid and which are not. Then just limit the options I supply to the user.

Can you tell me if this is the case for only cloud types or are there other items which aren't (fully) supported (that you know of)?

My plan is to set weather directly via MSFS, read out the actual weather via the WeatherSet2 application and spot the differences. (those which MSFS changed from invalid to valid). This should result in a list of all valid and invalid options.

In the WideServer logfile I sometimes see this message. (The length is not always 25)

334907 **** ERROR! Sumcheck or length fails on received socket 2388 block, len=25 (time=22831891)

That is most definitely a problem on your Network. The data is checked thoroughly on reception to ensure no rubbish is seen and obeyed.

I wouldnt expect troubles on the network since it is a very simple setup. All fixed ip, no router/gateway (no internet either!). But I will look into this. Maybe have a check with a network sniffer (etherreal) to see what is going on.

I didn't want to restrict experimentation. The consequence is that you have to check the data because FSUIPC isn't babysitting you on this.

Good to know. I'm going to impose restrictions myself to make sure the set is valid.

thanks again for your useful and quick response,

Sincerely,

E. van Nooijen.

Posted

I will have to check which types are valid and which are not. Then just limit the options I supply to the user.

Can you tell me if this is the case for only cloud types or are there other items which aren't (fully) supported (that you know of)?

Well, the known safe ones are those which were supported in FS2002 and FS2000 -- cirrus=1, stratus=8, cumulus=9. I think these are even the same codes as used in FS95 and FS98! ;-). Oh, yes, there's storm clouds too, 10 I think (cumulonimbus).

I think, then, you get graphics variations based on things like altitude, thickness (top - base), cloud top shape (maybe?) and deviation.

I don't know a lot about it but folks like Chris Willis who've done a lot of work on cloud types do know a lot about this stuff and what you can do. That's why the weather produced by programs like ASV looks so good.

Regards

Pete

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.