Release Notes ============= Full lib documentation of the most recent version can always be found here: http://lfs.fullmotionracing.com/ 0.14b ----- - Added TextColor helper class - Fixed problem w/ TCP, if LFS closed down unexpectantly - Added InSimHandler.StateChanged to detect that the handler has lost its connection - Fixed bug with receiving a large number of packets at once - Code naming cleanup: - CarInfo.Position has been deprecated in favor of CarInfo.Location - CarInfo.RacePosition added toexpose the position of the car in the race ladder - All Race Track events that concern a particular player now are named in the RaceTrackPlayer* convention (with exception to the RaceTrackCar* events): - RaceTrackResult (event and event args) has been deprecated in favor of RaceTrackPlayerResult - RaceTrackSplitTime (event and event args) has been deprecated in favor of RaceTrackPlayerSplitTime - RaceTrackLapTime (event and event args) has been deprecated in favor of RaceTrackPlayerLap - Renamed the increasingly misleading RaceTrackNewPlayerJoinHandler to RaceTrackPlayerHandler 0.13b ----- CONTAINS BREAKING CHANGES - Full patch X2 compliance (compatible with X) - A number of types were changed to fit into overall framework changes - Some events lost or gained information as the underlying data structures changed - Added all new patch X features including: - LFS Button system - Many new race tracking events - TCP connection mode - Removed "asyncEventHandling" from InSimHandler. It had the potential to create to many insidious threading problems. 0.12b ----- - This is only a stop-gap test patch to move existing functionality to LFS 0.5X with the least API changes. These API changes are relatively solid, but a lot of API additions are scheduled for 0.13b - Moved to .NET 2.0 and Visual Studio 2k5 - Swapped out back-end for dealing with InSim packets to more closely resemble the native LFS formats and removed the intermediate Msg* classes (all internal changes) - Finally mostly functional Unicode support for LFS message in and out transfers - Updated existing functionality to work against patch X, with some breaking changes in what is available in Events and how that data is represented. - Full patch X protocol implemented, just not yet exposed, so new packets don't come across as unknown packets - New features of patch X are not yet exposed or implemented (notably no TCP) 0.11b ----- - Fixed OutSim and OutGauge handling when protocol ID is not set - Added OutSim form to Tester - Added Roll to OutSim (was missing) 0.10b ----- MAJOR REFACTORING - Changed assembly structure to bring InSim/OutSim/OutGauge into the same library so that InSim can be used to process OutSim and OutGauge events as well as have those two protocols work in - Changed namespace from LiveForSpeed.* to FullMotion.LiveForSpeed.* so as to not monopolize the LiveForSpeed namespace from other implementations of these protocols - Added new config options to the Configuration object and methods to InSimHandler to initialize and handle OutSim and OutGauge events within the InSim object. When used those packets are transmitted on the InSim channel and can be subscribed to like other InSim events. 0.09b ----- - InSim changes for Lfs Alpha S/T/U 0.08b ----- - BeginInvoke Fixes in Tester - Updates to get LFSLib to compile run under C# 2.0 - Updated log4net to 1.2.9 beta compiled for C# 2.0 0.07b ----- - Minor bug fixes - Changed Initialize to wait max 10 seconds - Added Initialize(wait) to control how long initialize should wait 0.06b ----- - added changes to the RaceTrackAckResult packet from the S2 Alpha 0.5P build - added Async event handling (Events are fired on their own threads) - added additional, separate events for every race tracking type, so you don't have to subscribe to all and then pick out the ones you really care about - added State fetching as a connection pre-requisite - added an additional two exceptions for initializaton failures - fixed bug in all 'Plate' Properties - change PlayerNum to byte in events.RaceTrackPlayer, events.RaceTrackLapTime, events.RaceTrackPlayerLeave, events.RaceTrackPlayerPits and events.RaceTrackSplitTime - Switched out manual xml config code for XmlSerializable objects - Added ability to embed xml config in Application Configuration settings or external XmlSerializable location - fixed Byte2String to return null on null input instead of throwing an exception - changed Configuration.TrackingInterval to be in milliseconds like the TrackingInterval method on InSimHandler. Updated InSimhandler to adjust tracking interval post connect to adjust for the second vs. millisecond resolution issue in the Init packet. 0.05b ----- - Initial Source Release - Considered feature complete, exposes all of InSim 0.01a ----- - first alpha of the InSim Library - can automatically handle ACKs for keep alive - receives all known insim messages, but does not currently expose them for usage - will auto-ack race tracking messages - retrieves Version at start-up - Only exposes two events publicly right now: - LFSMessage for normal and split messages - LFSState for state events