All April – August 2009 Posts

Aug 1-2 2009: Major steps. NetFlightSE replaces initial UDP only plugin. Old server, map, and plugins now obsolete and no longer supported. New plugin has Control & Settings window now implemented. Saves everything and loads it at startup. Can disconnect or reconnect without having to restart plugin or X-Plane. Framework for crewed flight mode created. Pilot and Co-Pilot positions work (co-pilot just mirrored off center of gravity from pilot for side-by-side planes). 

July 22 2009: Minor tweaks to text window handling. Instead of just becoming invisible, chat window actually disappears allowing mouse clicks to work behind the window (whereas before it would capture them, annoying the heck out of Viking…).

July 20 2009: Wow! Crazy weekend. 

  • Fixed some bugs in handling the TCP packets, namely when the server combines messages into a single packet.
  • Also fixed the plane file problem (if you have the ACF in the same place it now opens it).
  • Added a menu item to toggle the Plane list (default off).
  • Plane list shows four network traffic indicators at top: TCP Tx and RX and UDP Tx and Rx (Tx, Tr, Ux, and Ur, respectively).
  • TAB key turns chat window on and off. Enter key goes back to toggling in-sim ATC.
  • Chat window wraps text, with room for two lines (don’t figure we’d need more than that per message); need to widen the spacing a bit.

All in all I’m pleased and think this will be the most stable SE version yet. Alas, I ran into the tile bug, but it isn’t along Lat/Lon seams. Couldn’t replicate it during replay <sigh>.

July 12 2009: Patched problems with the chat window fading out if you tried to type in it while the plane listing was hidden. Also think I fixed a callsign changing problem. Fixed server to remove the last disconnecting player (didn’t always happen). Tested on 8.64 and 9.22, OS X & Linux; all versions updated tonight.

July 2-3 2009: SE versions updated. Older style plugin is now deprecated. Old server will soon go away. Fixed dual chat window. Chat window automatically shows when a message has been received from the server. Chat window fades in and out (eye candy) and has a black border. Don’t forget they’re draggable/movable.

July 1 2009: The first incarnations of the split TCP/UDP client and server have been created. What does this mean? With TCP I can ensure the control signaling and text messages won’t get dropped. I can also more easily determine when pilots and viewers come and go. (Viewers are inactive “players” that don’t take up planes but can see what’s going on and can chat.) The actual plane position stream is kept as UDP since I don’t care if I lose a few frames here and there. (If I used TCP, the plane’s position updates would get queued up while the system retransmits blocked packets.)

A side effect of rewriting the server is that it now runs faster and doesn’t bog down the server hardware.

SE version of the plugin has been compiled for all platforms and awaits your testing eyes…

May 14 2009: Improved text windows in the client. Tab hides/shows both windows; windows are draggable (but position isn’t saved through reloads yet). Hitting “Enter” will enable typing. Hitting “Enter” again will send the message and return key presses to X-Plane. Yes, I’m stealing “Enter” away from ATC. ATC will have to be actuated from the drop-down menus. I’ll probably change it to “Shift+Enter” so ATC will work again as usual.

May 8 2009: Preliminary text chatting support added to client and server (UT version). Chat window visibility is same as Plane list window (toggle with TAB key). Not perfected yet but it works. Still have some hide/show/focus tweaks, as well as placement of the background and color variations to consider.

May 3 2009: Cosmetic update. The window has been resized to fit all 19 airplanes, and all plane names and callsigns are properly blanked out when the server notices a disappearing pilot. Minor updates to server should mean that plane file updates should happen properly (i.e. late-comers should more reliably get everyone’s planes). And tile crossing problem has been verified with 6+ planes online at the same time (a new record?!?!).

May 1 2009: All versions updated. Viking and I tested (on OS X) the tile crossing bug and it has been fixed. I recompiled the Windows and Linux plugins with the same patches, and they compiled cleanly but haven’t been tested. I’m going to assume they’re good unless someone tells me otherwise. 

On another note, the Windows version is apparently eating up RAM on some installations (has been all along?). It also requires the .NET framework for an unknown reason (probably because Visual C++ Studio 2008 compiles against the .NET headers…).

April 29 2009: Untested versions updated. This update is supposed to fix tile crossing problems. The symptom is when [a] fellow pilot[s] crosses a tile, their AI plane[s] disappear[s] until you’re on the same tile as they are. The plugin has been tested on Mac OS X for about 5 minutes near the Prime Meridian; successfully compiled for OS X and Windows; flown solo on both (haven’t tested on both platforms yet with other pilots). When verification is done, this version will move to “stable” and I’ll compile a Linux version.

April 14 2009: Support for up to 20 pilots total has been implemented. Cosmetics on text window for Planes 10-19 needs work.

April 4 2009: I have added rudimentary callsign/identification support. The plugin (currently OS X and Linux) looks for a file called “nfcall.txt” in the Resources/Plugin directory. The max it will load is the first 15 characters. Anything after that is ignored. Do not put any blank lines before your call. The call should be alphanumeric (i.e. your online handle or real plane call sign).

About the Author: Bryan Scott

Ever the dabbler, Bryan has been working on NetFlight since 2008. During the day, he builds high speed networks. At night, he helps mommy with seven little monsters. Somewhere in between there, he finds time to build web tools and iOS apps.