Changes since 1.8RC14: *Updated EOF's title bar to reflect that the difficulty level after "Unbeatable" will not export to BEATABLE format. *Updated the note controls panel to only show the shortcuts for open/pedal/sizzle hi hat and rim shot statuses when the Phase Shift drum track is active, as the regular drum track doesn't support these features. *Improved the arpeggio and handshape unmark functions to also remove the ghost chord that was automatically created at the start position of the arpeggio/handshape. *Updated the menu logic to hide incompatible menu functions in the Track menu when the active track is in BEATABLE mode. *Improved GP import to correctly handle tie notes that follow a note that has slide in from above/below status. *Updated many parts of the code where grid snap positions are handled to honor the "Prefer MIDI friendly grid snaps" preference, to better ensure grid snap consistency. *Changed the minimum note distance preference default to 1/32 measure. *Fixed a bug with the parsing of ID3 tags where if a string of metadata was longer than 127 bytes, the import would malfunction. *Added a "Note>Delete>Delete w/ FHP" function that will remove any fret hand positions defined at the timestamp of selected notes in addition to deleting the notes themselves. This function will be triggered by SHIFT+Del if any notes are selected, otherwise if no notes are selected the shortcut performs "Track>Rocksmith>Fret hand positions>Delete effective" as it previously did. *Likewise updated "Note>Delete>Delete w/ lower diffs" function to delete any fret hand positions defined at the timestamp of notes that are deleted. *Fixed a crash that would occur when adding tech notes to a track that has more tech notes than normal notes. *Fixed a crash that would occur when importing a MIDI when no project was open. *Fixed a bug with setting time signature changes via the "Beat>Time Signature" menu functions where grid snapping could be lost on the project's notes. *Fixed a bug where note highlighting wasn't immediately updated after changing the time signature. *Adds a "Beat>BPM>Summarize at each measure" function that will delete tempo changes on beats other than the first beat of each measure so that the tempo changes only once per measure. Optionally leaves each of these beats an anchor regardless of whether it reflects a tempo change from the previous beat. Beats that are not within the scope of a time signature are not modified. If the "Note auto-adjust" preference is enabled, affected notes will have their grid-snapping re-applied automatically in the case they are moved. *Corrected the Rocksmith panel checks to display warnings/errors about the first instance of each issue instead of the last. *Added a check to the Rocksmith panel for lyric lines that begin with a lowercase letter. *Fixed a crash that could occur when the Rocksmith panel is shown when a track containing more tech notes than normal notes is active and tech view is in effect. *Fixed a bug where the correct note might not be selected for editing when placing a tech note in a track having more tech notes than normal notes. *Added a Rocksmith panel check for lyric lines being more than 40 characters long. *Improved the rendering of the Information panel to not draw outside of its border, such as if a long lyric is selected. *Updated the information panel to display the fret value of a muted string of the selected note as (#)X, if it is defined. *Fixed some bugs where certain checks in the Rocksmith panel could cause a crash when tech view was in effect. *Improved "Paste From>Catalog" to retain grid snap for pasted notes. *Fixed a bug where the correct minimum note distance wasn't enforced on a note that extends up to a note occuring on a time signature change. *Added support for v5 of the BEATABLE chart format's mapper (chart author) field. *Updated Rocksmith import to set the bonus arrangement, alternate arrangement and picked bass status based on the imported file. *Added a Rocksmith panel check for lyrics containing punctuation marks other than a hyphen, apostrophe or period. *Added a "Beat>Rocksmith>Place RS moveR Phrase" function to add/edit a "moveR" phrase on the selected beat. This is a mechanism used in DLC Builder to work around EOF's limitation of only being able to place Rocksmith sections/phrases on beat marker positions, by indicating that the moveR phrase itself and any RS sections on the same beat are moved later by the specified number of notes (ie. moveR2 moves it to the position two notes later into the track). *Updated the piano roll rendering so that "moveR" phrases are not displayed as the effective RS phrase above a beat marker. *Improved lyric validation logic to delete empty lyric lines. *Re-assigned the ALT+Pg Up/Dn shortcuts to seek to previous/next anchor. *Added render logic to reflect when a "moveR" phrase displaces a phrase/section by drawing a dotted line from the beat containing the event to the note position where it will be moved to by Rocksmith DLC Builder. *Added a File>Export>LLPLUS function to export the current track difficulty in the MIDI format used by the game Lightners Live Plus (AKA "LLPLUS"), which is a fan-made recreation of the 2 lane Guitar Hero style mini game in Deltarune. *Updated MIDI import to be able to recognize MIDIs in the format of Lightners Live Plus, which will import into the easy difficulty of PART GUITAR. *Added some logic during save to cancel the remaining Rocksmith track exports if one of them is canceled by the user. *Changed the middle click logic so that only the note that is clicked on will be modified when the "Edit pro guitar note" or "Edit note frets/fingering" dialog is launched, and any manually selected notes will remain unaltered. *Improved the "Edit note frets/fingering" and "Edit note fingering" dialogs to initialize the input focus to the first field (on the lowest numbered string) where a fingering definition is missing, or otherwise in the first defined fret or finger field, respectively. *Updated the naming of the preview WAV file created with "File>Export>Preview audio" to be songname_rocksmith_preview.wav when Rocksmith 1 or 2 export is enabled, to better match the Rocksmith WAV file name so it is found easily by DLC Builder. *Corrected the end of slide value for chords that slide in from above/below during GP import. *Updated several imports to reflect that the resulting project is unsaved at the end of import. *Improved the new chart wizard to be able to read metadata from a WAV file that is chosen as the chart audio. *Fixed a crash that would occur when creating a new chart specifying an invalid MP3 file. *Updated BEATABLE authoring logic to allow slide notes to overlap notes on any lane, even the one they start in (ie. an L2 note that slides to L1 and overlaps an L2 tap note before ending). *Added sliders in "Song>Audio cues" to control the volume and pan (left/right channel) of MIDI tones. *Added a slider in "Song>Audio cues" to control the chart audio's pan (left/right channel). *Added the ability to customize the rendering of grid lines by editing eof.cfg while EOF is not running. The color is defined by eof_color_grid_lines as a RRGGBB hex color code. The transparency is defined by eof_grid_line_opacity as a value from 1 (barely visible) to 100 (opaque). To configure the grid lines to draw as dashed lines, define eof_grid_line_solid as the number of contiguous number of pixels to draw and eof_grid_line_gap as the contiguous number of pixels to skip while drawing. *Fixed bugs where the "Note>Pro guitar>Arpeggio>Erase all" function would also erase handshapes and the "Note>Rocksmith>Handshape>Erase all" function would also erase arpeggios. *Improved the "Note>Pro guitar>Arpeggio>Erase all" and "Note>Rocksmith>Handshape>Erase all" functions to remove any ghost chords placed at the beginning of each removed phrase, as would be done when manually unmarking each. *Added an Edit function to the fret hand positions list dialog that will seek to the selected FHP and open its edit dialog. Pressing Esc will close the edit and list dialogs, but hitting Enter or clicking the OK or Cancel buttons on the edit dialog will return to the list dialog. *Added <- and -> buttons to the set/edit fret hand position dialog to move the target timestamp for the FHP to the previous or next note's position. *Updated the notes panel check for lyric lines exceeding a desired length to not count hyphens as counting against the character limit, since they are for syllable grouping and are not actually displayed. *Updated the "Configuring EOF" portion of the manual with the various eof.cfg settings that are not editable in a dialog within EOF and must be set by changing them in a text editor. *Updated the Guitar Pro import prompt about importing a bass track into a guitar track or vice-versa to have an option to cancel the import. *Added a separate "Make lyric tails clickable" preference that is on by default. *Assigned a unique menu accelerator to "Note>Move by millisecond" (which replaces the "Note>Grid snap" menu when grid snap is disabled). *Added logic to fix/recover errors when changing between normal and tech note sets. *Added a "GP import beat text as techniques" import preference where if enabled when a Guitar Pro file is being imported, bass notes with a text notation of "T" or "S" have slap technique applied, bass notes with notation of "P" have pop technique applied and guitar notes with notation of "T" have tap technique applied. *Added a "Help>Reload config" function to reload any changes to eof.cfg (ie. if you customize the grid line or waveform colors and wanted to see the changes without having to relaunch EOF). *Suppressed the "There isn't an empty measure after COUNT phrase" Rocksmith panel message while a beat marker is being clicked and dragged. *Added an eof_gp_import_slide_in_beat_interval manual eof.cfg entry to define the placement of linked notes inserted to recreate slide in from above/below status during GP import, where each inserted note will be 1/# beats away from the start position of the slide in note. The default value is 4 (ie. 1/16 measure in 4/4 meter). *Added logic so that Rocksmith exports drop the sustain from single notes that have less than 5ms of sustain, because it's suspected that the game's pitch detection doesn't work well on these. The Rocksmith panel now complains if a note requires sustain due to an applied technique but has less than 5ms of sustain. *Improved MIDI import to not import notes from non rhythm game related tracks into PART GUITAR. The only exception is the old Freetar Editor logic where if the MIDI has all notes and tempo changes in a single track, it will import to PART GUITAR. *Added an eof_gp_import_slide_in_fret_count manual eof.cfg entry to define how many frets a slide in from above/below note is interpreted to be during GP import. The default value for this is 1 fret. *Added an eof_gp_import_slide_out_fret_count manual eof.cfg entry to define how many frets a slide out and up/down note is interpreted to be during GP import. The default value for this is 2 frets. *Suppressed the warning during save about notes extending beyond the chart audio if the offending notes are in a non pro guitar track but no applicable game exports are enabled. *Added logic to check for and correct errors in the tech note set for each pro guitar track when loading a project. *Commented out the Rocksmith panel warning for when there is no defined END phrase, since DLCB will add it automatically. *Corrected the behavior of the "Track>Rocksmith>Fret hand positions>Copy" function. *Fixed a bug where arpeggio/handshape phrases from copied notes weren't being correctly created when pasting the notes at a position that didn't start on a beat marker. *Fixed a couple instances of the "This information will be applied to the existing gems of all selected notes" prompt where the O and C hotkeys indicated on the buttons didn't answer the prompt accordingly. *Improved paste to be able to recreate fret hand positions from the time range of the copied notes when copying and pasting normal notes between pro guitar tracks. The clipboard format has changed, so make sure to copy again before using paste or it will malfunction. *Fixed a bug with "Beat>Delete anchor" where if the anchor that immediately follows the deleted anchor has the same tempo, it is incorrectly modified. *Added a warning to the IMMERROCK panel if no chart audio is loaded. *Added a warning during IMMERROCK and Drums Rock exports if no chart audio is loaded. *Changed the "Edit pro guitar note" dialog so that EOF only offers to apply the name to/from matching notes if the last selected note is a chord. *Added logic so that when tech notes or FHPs are recreated during paste, they are automatically grid snapped if the source tech notes or FHPs were grid snapped. *Added ALT+, and ALT+. as alternate shortcuts for zoom out and zoom in, ie. for keyboards that don't have a numpad. *Added a Note>Dance>Mine menu, with functions to define mine notes in the dance track, which have an "M" tab notation and render in the piano roll as black notes and in the 3D preview with their own mine graphic. *Added a Note>Dance>Roll menu, with functions to define roll notes in the dance track, which have an "R" tab notation and render in the piano roll with a white background. *Added Note>Drum>Accent>Toggle>All and Note>Drum>Ghost>Toggle>All menu functions. *Added Stepmania import logic (using File>Import>Stepmania or by command line), to import dance-single (4 lanes) type charts, including tap, hold, roll and mine notes. As this chart format defines all note timings as subdivisions of measures, imported notes are resnapped to the tempo map to ensure accuracy. If the tempo map is locked, the notes are allowed to import but the project's existing tempo map is not altered. *Updated precise select like so that bend notes must have the same bend strength and slide notes must have the same end of slide position to be considered a match. *Fixed a bug with project load where if a chart had an INI entry that is missing an equal sign, a corrupted INI entry would be added to the project. *Added an Edit button to the "File>Default INI settings" and "Song>INI settings" dialogs. *Removed old FoFiX related MIDI export behavior that caused up to 5ms of padding to be inserted between the start of each lyric phrase and the first lyric in the phrase, causing the timing of the first lyric of each phrase to be altered. *Improved the Guitar Pro import logic for slides. If the Guitar Pro file defines a slide to fret 0, it is now imported as an unpitched slide to fret 1. If the Guitar Pro file defines a chord with open notes that slides up, it now defines the slide end position more accurately by only evaluating strings that were fretted at the beginning of the slide. *Changed the "GP import truncates short chords" preference to be disabled by default, which is preferred for Rocksmith authoring. *Changed Guitar Pro import to not automatically remove the sustain from a chord that is string or palm muted. The "GP import truncates short chords" preference is still allowed to affect such muted notes though. *Improved IMMERROCK export so that if the project has no song title or artist name defined in Song>Properties, the files are exported into a subfolder called "IMMERROCK" instead of directly to the project folder. *Updated precise select like so that two notes that have different lengths but otherwise are the same are allowed to match as long as both have sustain or both have no sustain. *Fixed a bug where the "GP import remove accent from staccato notes" preference wasn't saved to and loaded from the configuration file. *Added a "GP import events to track only" import preference that will cause imported text events to be assigned to the destination track only instead of being project-wide. *Changed the tone list dialog to show the timings as mm:ss.ms. *Added CTRL+M as a shortcut for Note>Dance>Mine>Toggle>All when the dance track is active. *Fixed a bug where the information panel would not take the capo into account when displaying the selected pro guitar note's tone names if the default "Ignore tuning/capo" track setting is in use. *Improved the handling of the "Make note tails clickable" and "Make lyric tails clickable" preferences so that they don't cause notes to be altered when they are as far as half a grid snap away from the mouse. *Added error checking for when the selected OGG file is incompatible and not properly loaded in EOF. *Added a CTRL+, shortcut to toggle overdrive on selected lyric lines. *Fixed a bug with paste logic that could cause it to malfunction, such as not recreating FHPs at the correct positions. *Updated the Rocksmith panel to display errors if there is a tempo of less than 40BPM or more than 300BPM. *Added a warning during normal save if Rocksmith export is enabled and any tempo changes are below 40BPM or above 300BPM. *Added an error to the Rocksmith panel for when a track uses more than 4 tone names. *Updated Feedback import to load the album, year and genre tags if present. *Added a "Beat>Events>Copy From" menu allowing the text events specific to the active track to be replaced with those from another track. *Improved CTRL+click so that when a note is deselected, the first note that remains selected is made the new "last selected" note, so the remaining selected notes can be easily edited together with more complex functions like "Edit pro guitar note". *Added logic so that if Guitar Pro import fails or is canceled, EOF will undo any changes made. *Improved the audio loading logic so that if the audio fails to load, the import/project is allowed to remain open with no chart audio in use. *Added the ability to link to ffmpeg.exe using the "File>Link to>FFMPEG" function. When selected chart audio fails to load when creating a new project and FFMPEG is linked, EOF will try to use FFMPEG to encode the audio to OGG format and try loading it again. If FFMPEG is linked, the new chart wizard will use it to offer converting more audio formats to OGG. *Improved the Rocksmith panel by suppressing the most CPU intensive checks during chart playback, so they don't cause the program to lag and affect the playback. *Updated IMMERROCK export to export the manually defined track name (imported from Rocksmith file or set by Track>Rename) to Info.txt. The IMMERROCK panel will display the active track's custom name, if one is defined. This name for the arrangement will display in-game when the song is selected in the song list. *Updated save logic so EOF's program window title bar will reflect when the project is saving, since complex projects may take several seconds to save depending on which exports are enabled. *Updated IMMERROCK export to write chart comments to Info.txt, which is defined as the "Song Comment" field in Song>Properties. This comment will display in-game when the song is selected in the song list. *Updated IMMERROCK export to write lead, rhythm and bass arrangement comments to Info.txt, which are defined using the "Track>IMMERROCK>Comment>" menu functions and stored into the project as INI settings that can be manually edited with "Song>INI settings". These comments will display in-game when the song is selected in the song list. *Changed the labeling of the loading text field in Song Properties to clarify it's also used as a song comment field for various games. *Updated the undo system to reflect that a new project is unsaved when it is first created. *Assigned CTRL+SHIFT+R as a shortcut for "Place RS moveR phrase". *Added a "CTRL+TAB skips empty tracks" preference that causes the CTRL+TAB and CTRL+SHIFT+TAB shortcuts to skip past empty tracks when changing to the next/previous track. *Added a "Don't import LLPLUS MIDI content" import preference that will prevent the MIDI import function from looking for LLPLUS chart content, since that game's chart format is ambiguous and there can be unwanted content that imports into the PART GUITAR track. *Corrected the behavior of IMMERROCK export to save to the new project path when "Save as" is being performed. *Added the ability to place more than one vocal note during playback when Classic or Hold input mode is in use. *Added logic to GP import so that a short note that is linked to by a legato slide will not have its length removed by the "GP import truncates short notes" preference. *Added an "Auto rebuild arpeggio/handshape base chords" pro guitar preference that will cause the ghost chord at the start of each arpeggio/handshape phrase to be deleted and recreated automatically to reflect any changes made to the phrase's notes. *Improved the behavior of "Note>Lyrics>Lyric lines>Re-mark" when combining lyric lines. *Improved RBN MIDI export logic so that any automatically placed [end] event matches up with the end of an automatically created BEAT track so that it passes Magma's validation. *Improved the solo, star power and slider min/max/mean note statistics in the Clone Hero panel to be specific to the active track difficulty. *Added a Rock Band notes panel. Several related notes panel macros were added. *Fixed a rare math rounding error that could occur and cause disagreement between different grid snap mechanisms (ie. "Highlight non grid snapped notes" versus "show grid lines"). *Fixed a bug where changing the checkboxes in the edit event dialog didn't properly modify the event. *Updated the Note Counts panel to display 3 gem chords with a red error if the active track is the dance track (since this is not playable with two feet). 4 gem chords were already displayed with a red error. *Suppressed the "At least one note is too close to another" warning during save for vocal track content unless Fof/GH/Rock Band exports are enabled, since other game formats don't have scored vocals. *Added logic to resnap the end position of notes/lyrics when clicking and dragging beat markers to move them, when the note auto-adjust preference is enabled. *Added logic so that if a lyric line is shortened to enforce the 2ms minimum gap between lyric lines, the last lyric in that line is shortened to match (if possible). ***Fixed a bug with the parsing of metadata from the source audio file when creating a new project. *Updated the Information Panel to show the beat and measure information of the seek position. *Updated the note counts panel to display the number of notes and gems that have mine or roll status in the active dance track difficulty. *Added logic to GP import to prevent adding duplicate text events at the same beat position, such as when importing different arrangements from the same Guitar Pro file multiple times and allowing the events to be imported each time. *Added logic to GP import to apply disjointed status to tech notes that are at the same timestamp but have differences in technique (ie. a chord whose strings bend different amounts) to prevent the fixup logic from merging them and causing differences to be lost. This status will be indicated with the letter D on tech notes. *Fixed a bug where the input field for the set bend strength dialog wasn't correctly populated when a tech note with a bend strength of 0 is selected. *Added logic to the "Edit pro guitar note" function so that if selected notes' fret values are altered, their fingering definitions are removed because it is assumed they no longer are accurate. *Updated the note counts panel to display the number of 6 note chords in the active track difficulty. *Added logic for the Mac build to invoke lame and oggenc from /usr/local/bin/ as this is where the audio conversion tools are expected to have installed them. *Updated the note counts panel to display the number of notes that have up/mid/down strum directions defined in the active pro guitar track. *Updated the note counts panel to display the number of left snap, right snap and clap notes in the active BEATABLE track. *Updated the Rock Band panel to display a notice if the [end] event is defined in the active project. *Updated the manual to describe EOF's use of the "multiplier_note = 116" song.ini entry to resolve the conflict between MIDI note 103 being used to define star power in Guitar Hero and instead being used to define solos in Rock Band. *Corrected the behavior of the Note>Dance>Roll>Clear>All function. *Moved the Disjointed status menus to Note>Disjointed and added logic to allow this to be used in pro guitar tracks, to allow gems of a chord to be individually editable. *Changes to satisfy Cppcheck.