
        mprEdit version 0.4.0 beta
=========================================

Installation:
=============
Extract the contents of the release package into one directory. You just have
to make sure that the .dlls are located in the same directory as the 
executable.

Changes since 0.3.3 beta:
=========================

GUI changes:
- Change semantics of time display to match patch Z replay controls: The times are now always relative to the replay start, not to the race start. => A replay always starts at time 0:00.0, even if the actual race is already running before the replay started.
- Added event "Body damage" (NOT suspension/engine damage!)
- You can select different cars for start and end events
- Selecting events now updates the start and end time controls
- Splitting is now only happening based on time, not on event index anymore.
- disable GUI elements when no replay is loaded.
- add icon.
- dont add "replay start" and "replay end" event to players
- Add checkboxes to indicate if splitting should start with replay beginning / end with replay end.
- show also drivers that dont have any split time recorded
- add events SPECTATE and FORCED_SPECTATE to selectable events list.
- fix tab order
- enable/disable save button depending on the times set - if startTime < endTime saving is allowed.

Bugfixes:
- Add support for "Vote" Event. This fixes issue #7 - "Unhandled spectate Event" (http://mpredit.origo.ethz.ch/node/33). Not handling votes resulted in completely corrupt connection tables - I wonder why this has not been detected earlier ;-)
- Allow multiple events for one timeframe - This fixes some bugs when within one timeframe more than one driver got a "FORCED_SPECTATE" from the server/admin. Happens e.g. on CTRA servers where people are sent to spectate when joining mid-race.
- compact connectiontable after all events of a timeframe are handled. Fixes parsing of CD1.mpr, where in one timeframe a driver disconnects and another connects.
- Improve parsing of Driver changes - now driver change also recognized correctly when dedicated server is NOT used.
- Add, parse, interpret and set "isServer" char of SERVER_JOIN structure.
- Support events MODEL_UPDATE and HELMET_UPDATE. Drivers should now always be the correct model and wear correct helmet :)
- Filter duplicate timeframes from presplitevents (One timeframe can have multiple events - this resulted in duplicate timeframes before!
- Only get the last events of type SPLIT_FINISHED, MODEL_UPDATE, HELMET_UPDATE for the presplitevents. Should have the same result, but decreases leadtime of generated replays during playback A LOT.
- Store the last 3 split_finished events for each driver. So we are sure that the lap information and driver position is correct.
- Add basic session type (race/qualy/training) detection.
- Fix patch Z replay controls of created replays: Set the correct replay duration for generated replays.



Changes since 0.3.2 beta:
=========================
Fix bug #8 (http://mpredit.origo.ethz.ch/node/35). Splitting of replays 
containing driverchanges was basically broken with 0.3.2beta release...


Changes since 0.3.1 beta:
=========================
FEATURES:
- Add correct parsing of race time information. 
- Add option to split based on time to GUI.
- Filter special LFS codes (colors, codepage) from driver names.
- Implement suggestion by J.B.: Relabel "save" button to "save as...".
- Add support for InitialRaceState parsing. Currently implemented:
  -> Initial number of pitstops
  -> Initial number of laps done
- Fix Issue #3 (http://mpredit.origo.ethz.ch/node/29): Last used directory should be stored.

BUGFIXES:
- Small cleanups of parsing code.
- Fix off-by-one error for lap count.
- small GUI cleanups
- some more GUI rework. Finally resizing support :)
- GUI: Fix tab order


Changes since 0.3.0:
====================
BUGFIXES:
- add "CHANGE_CONTROLLER" Event handling and add it to PreSplitEvents. This fixes cars jumping around on track in splitted replay.
- Set the correct drivers to driverchange events. (target and initiator were sometimes exchanged)
- Include localdriverchange in the PreSplitEvents. Otherwise LFS would not recognize changed names.
- Restore dataEnd pointer after splitting a replay. This fixes the problem that you could only save once, subsequent replays would be missing 4 Bytes after the headerdata.
- Cancel all driverchange requests on a driver when he issues a dc request for ID 0. This fixes the issue of double Driver change in MoE24h replay (changing car 04 from Weingram top Arens, TimeStamp: 18442)
- Major changes to fix parsing of 24hr replay (Fix ID changing issues, Dont use drivername to connect car with driver)
- fix detection of players leaving race
- switch over to using shared_ptr instead of Car/Driver IDs whenever possible
- Introduce globally unique IDs for Cars and Drivers since the LFS IDs can repeat within a long replay (24hrs...)
- Don't read the whole file into memory at startup. Instead use memorymapped file access. Surprisingly simple thanks to the great boost library!
- Further improve memory footprint and parsing speed. Using mem-mapped file access now everywhere where it is possible.
- display the chat message about mprEdit AFTER the PreDatapackes. Otherwise it scrolls out of screen too fast.
 
FEATURES:
- add "EVENT_JUMP_TO_PITS" to event selection.
- Select the first player of PlayerCombo by default.
- resize and rearrange controls.
- fix tab-order.
- dont display save result in status area - This is done through messagebox anyway.
- Change order of split events so the "replay end" is the last event.
- Support driver change as selectable event
- sort drivercombobox alphabetically
- display all drivers of a car instead of only the first one

Changes since 0.2.x:
====================
 - Support players joining/leaving server at any time of the replay
 - Support players swapping cars during a pitstop
 - implement "method 2" of splitting to preserver the correct driver and
   connection IDs of all players.
   (See http://mpredit.origo.ethz.ch/wiki/How_to_split_a_replay for details)
 - Rewrite of parsing engine - it should not happen anymore that events
   are not recognized
 - display a chat line "replay created using mprEdit" when a splitted replay
   is played in LFS. 
 
Installation:
=============
Extract the contents of the release package into one directory. You just have
to make sure that the .dlls are located in the same directory as the 
executable.

