-----
About
-----

PumpMania - Custom Stepmania Build

Last version is available at: http://bemaniclub.com

Based on StepMania 3.9 and NX theme from www.piusm.com

Codebase maintained by:
  - zmey, zmey@bemaniclub.com

Code contributions:
  - dino
  - phylosoph

------
Legend
------
[c] changes in code
[t] changes in theme

-----------
Open Issues
-----------

  - Cannot change speedmod from Player menu in Editor if using Player 2.

----
TODO
----

  - Highlighting of missed steps in Editor.

  - Switch from Gameplay Mode to Editor Mode using hotkey.

  - Allow configurable combo threshold.

  - Bind mods to inactive pad's buttons in one player mode in Editor when
    the song is playing.

  - Show combo at the end of play in Editor.

  - Different arrow highlight based on accuracy for perfect/great/good.

  - Show song description in song selection screen.

  - Switch Judgement using hotkeys.

  - Mute all sounds using hotkey.

---------
ChangeLog
---------

2008.11.08 - zmey

    - [c] Expand & compress Editor commands now process all BPM changes
      properly.

2008.07.07 - zmey - v 3.9.22

    - [c] Files and directories ending with ".svn" are ignored now.

2008.06.15 - zmey

    - [c,t] Speedmod can now be lowered using NX-2 "97975" combination,
    as well as old "13135" combination.

    - [c,t] Added Pump-style grading at Evaluation screen.
    Default values were set to resemble Arcade grading (although not
    completely accurate yet). Use the following settings in StepMania.ini
    for customization:
    - PumpGradePercentTier03=0.970000 // 97% or more: S
    - PumpGradePercentTier04=0.920000 // 92% or more: A
    - PumpGradePercentTier05=0.870000 // 87% or more: B
    - PumpGradePercentTier06=0.820000 // 82% or more: C
    - PumpGradePercentTier07=0.770000 // 77% or more: D, F otherwise.
    These settings specify song pass percent.
    When calculating song pass percent, the following weights are used
    for notes:
    - PumpGradeWeightMarvelous=10
    - PumpGradeWeightPerfect=10
    - PumpGradeWeightGreat=9
    - PumpGradeWeightGood=6
    - PumpGradeWeightBoo=3
    - PumpGradeWeightMiss=0
    100% is total number of tap and invisible hold notes in song multiplied
    by PumpGradeWeightMarvelous.

2008.06.14 - zmey
    [c,t] Now Judge difficulty can be overridden in Player options.
    Note that judgements are overridden temporarily: machine settings
    aren't changed!
    Possible values:
    - Default - use Machine settings for timings and JudgeWindowScale.
    - Zero/NX - use PumpZero* settings from StepMania.ini
    - Exceed - use PumpExceed* settings from StepMania.ini
    - DDR - use DDR* settings from StepMania.ini
    - ITG - use ITG* settings from StepMania.ini
    - 1 2 3 4 5 6 7 override only JudgeWindowScale with values
      corresponding to Machine settings presets in StepMania.

2008.06.13 - zmey

  - [c,t] Added NumberSetRainbow [0,1], NumberSetColor [0,1] and
    NumberColor [r,g,b,a] theme metrics to Combo section of metrics.ini.
    First metric enables rendering of Combo number text in rainbow
    colors; second metric assigns color defined by NumberColor
    to the text.
    For NX theme, NumberSetColor is 1 and alpha value of NumberColor
    is now set to 0.6 (semi-transparent).
    NumberSetRainbow metric is currently 0 in all themes. NumberSetRainbow
    can't work together with NumberSetColor and currently overrides it.

  - [c,t] Added HoldEarlyReleaseVisible theme parameter. When enabled, if
    hold is released earlier than it completes, the hold body will move
    up past stepzone before final blink. Disabled by default in all themes.
    Affects only Pump mode.

2008.06.12 - zmey

  - [c,t] Added ScorePadNumZeroes theme metric. -1 in default theme,
    5 in NX theme. Affects evaluation screen score padding.
    Added JudgementPadNumZeroes theme metric. -1 in default theme,
    3 in NX theme. Affects evaluation screen Judgement values padding.
    For these two metrics, -1 enables StepMania-style autodetect,
    0 disables padding. Other values specify number of zeroes to pad values
    with.

  - [c,t] Added ComboUnderField theme metric to control Combo drawing
    when playing. 1 (under playfield) in default theme, 0 (over arrows)
    in NX theme.

2008.06.11 - zmey

  - [c] Pump it Up style holds implemented in Pump mode.

  - [c] Jump score is now determined by minimum tap note score in Pump mode.
    In other modes it is still judged by last pressed button.

  - [t] EXCEED-SE and NX-2 noteskin hold tails shortened to resemble
    StepMania Classic noteskin.

2008.06.10 - zmey

  - [t] Added "select game" option to title screen to allow switching to
    different game modes.

  - [t] AutogenSteps is now disabled by default.

  - [t] Default noteskin changed to NX-2.

2008.03.22 - zmey - v 3.9.21

  - [c] Release builds will now be done in VS 2003 because VS 2005 binaries
    require updating to latest NET framework which is inconvenient for users.

  - [c] In Pump mode combo is now refreshed even if it's not increasing.

2007.11.20 - zmey - v 3.9.20

  - [c] Project moved into SVN (all the patches reapplied).
    Installer package created.

2007.10.18 - zmey

  - [c] Pump it Up Zero scoring added. Choose scoring type ZERO in options
    to enable it. It does not affect how grades are calculated, but never
    shows S if any misses were present. Scores are calculated as follows:
      Perfect: 1000 
      Great: 500 
      Good: 100 
      Bad: -200 
      Miss (Tap): -500 
      Miss (Hold): -300 // this does now work yet
    If your combo is > 50 and you got a perfect or great, add 1000. 
    If the step has 3 panels, multiply by 1.5. If there are 4 or more panels,
    multiply by 2. 
    Finally, if playing on Nightmare (Hard Double), add 500000 to your final
    score.
    If you S the song (any difficulty), add 100000 to the final score. 

2007.10.14 - zmey

  - [c] Good judgement no longer breaks combo in Pump mode.

  - [c] Combo is now increased by 1 for jumps (2 or more steps) in Pump mode.

2007.09.01 - zmey - v 3.9.19

  - [c] Bugfix: LeadIn AutoPlay now processes entire hold notes (not only
    their heads).

  - [c] It's now possible to choose Master Player in Editor Preferences.
    Works both for Single and Double Player modes.

  - [c] Editor menus are now always controlled using Player 1 controls
    (their controls were switched to Player 2 sometimes, even in original
    StepMania if Player 2 buttons were pressed during Play mode).

2007.08.31 - zmey - v 3.9.18

  - [c] CheckPoints support added. To add a CheckPoint, select a region
    in Editor then press CTRL-T. To remove a CheckPoint, place a pointer over
    it and press ALT-T. To play the song with CheckPoints, use ALT-CTRL-P,
    ALT-SHIFT-P and ALT-P hotkeys.
    CheckPoints are saved to SM file in #CHECKPOINTS tag.
    There may be multiple occurences of this tag in a single file. Each
    #CHECKPOINTS tag corresponds to a #STEPS tag which follows it.
    SM files are backwards compatible, but resaving them in older StepMania
    versions will erase all CheckPoints.
    Contrary to BPM changes, CheckPoints are saved separately for different
    song difficulties.

  - [c] CheckPoints Sudden Death mode added to Editor Preferences. When
    enabled, the song will rewind instantly to the start of a CheckPoint
    when an error is made. Otherwise, it will wait until the end of a
    CheckPoint area before rewinding. Song LeadOut time is added in both
    cases.

2007.08.30 - zmey - v 3.9.17

  - [c] Noteskins are now changed instantly in Editor after setting them in
    Player Options (no need to press P and return back to Editor).

  - [c] Bugfix: LeadIn Autoplay no longer picks wrong notes after Rate change.

  - [c] Rate Change in Editor's Play mode now works faster (removed all
    unneccessary reloading).

  - [c] Bugfix: Rate Change in Editor's Play mode no longer resets step
    statistics.

  - [c] Bugfix: Pressed holds no longer partially disappear after song rewind
    in Editor's Play mode.

2007.08.29 - zmey - v 3.9.16

  - [c] AutoRate feature added to Editor's Play mode (configured from Editor
    Preferences).

2007.08.19 - zmey - v 3.9.15

  - [c] Noteskin is no longer reset to default when entering Editor.

  - [c] Song rewind in Editor's Play mode now works faster. Song rate also
    changes faster and without visual glitches.

2007.08.18 - zmey - v 3.9.14

  - [c] Added Two Players mode to Editor.

  - [c] Bugfix: Assist Tick type selection in Options now works properly.

2007.08.12 - zmey - v 3.9.13

  - [c] In Pump gamemode tap arrows and holds drawing changed to match arcade.

  - [c] Now Assist Tick can be enabled using either F4 and F7 in both Editor
    and GamePlay modes.

  - [c] To switch song difficulty in Editor, use CTRL-F5/CTRL-F6 instead of
    F5/F6. BPM, Stop and Offset change keys (F7-F12) in Editor now only work
    if Shift is pressed to prevent occidental keypresses.

  - [c] KeyPress Sound feature added. It can be enabled using CTRL-F4/CTRL-F7
    in both Editor and GamePlay modes.

2007.08.06 - zmey - v 3.9.12

  - [c] Added AutoPlay on LeadIn/LeadOut option to Editor.

2007.08.05 - dino - v 3.9.11

  - [c] Offsync on non-1.0x speed rates fixed. Note that GlobalOffset must be
    set properly in stepmania.ini, otherwise offsync will stay.
    Use StepMania 4.0 to determine GlobalOffset for a given computer.

2007.08.05 - phylosoph - v 3.9.10

  - [c] Project ported to Visual Studio 2005.

2007.07.30 - zmey - v 3.9.9

  - [t] Marvellouses are now displayed correctly on Results screen.
    Still shown as Perfects during gameplay though.

2007.07.29 - dino - v 3.9.8

  - [c,t] Mirror, Left and Right mods now work properly for Pump single mode.
    Also, fixed Mirror mod for Pump double mode. Changed the theme to use
    Mirror mod when Mirror option is selected (it was using Right mod before).
    Added Left and Right mods to the theme.

2007.07.29 - zmey - v 3.9.7

  - [c] Speedmods are now taken from metrics.ini in Song select wheel when
    using codes to switch them (in Stepmania they were hardcoded).

2007.06.19 - zmey - v 3.9.6

  - [c] Optimization: removed unneccessary Editor TextInfo updates in Editor's
    play mode on every keypress and every 0.5 sec. Only Rate (which is shown
    during play) is updated now.

  - [c] Added optional Song Start Delay configurable from Editor Preferences.

2007.06.18 - zmey - v 3.9.5

  - [c] Added configurable song lead in and lead out to Editor preferences.

  - [c] Added keypad asterisk shortcut to show Editor Preferences menu.

  - [c] Added ability to loop songs configured in Editor preferences.

2007.06.17 - zmey - v 3.9.4

  - [c] Show Evaluation Screen option added to Editor preferences.
    If enabled, song scores will be displayed after play end.

2007.06.16 - zmey - v 3.9.3

  - [c] Draw BeatBars during Play option added to Editor preferences.
    Set to "No" to disable rendering of beat bars and some other miscellaneous
    editor elements which can distract from gameplay.

2007.06.15 - zmey - v 3.9.2

  - [t] Changed StopDrawingAtPixels from 480 to 440 as it seems to be enough -
    arrows still appear smoothly at the screen bottom with this value.

  - [c] Arrows now appear smoothly at the bottom of screen in Editor.
    There were StartDrawingAtPixels/StopDrawingAtPixels overrides in code
    for Edit mode which weren't working properly if ReceptorArrowsYStandard
    value wasn't set to 96. Changed to use theme values in this case.

  - [c,t] Speed rates can now be changed with 0.01 granularity. Theme updated
    to support 0.05 granularity. Resampled music quality seems to increase
    after this change.

  - [c] CurCombo stored in player's profile is no longer used in Editor, even
    when ComboContinuesBetweenSongs option is enabled.

  - [c] If judgements are drawn above arrows, the combo will now also be drawn
    above arrows. (Temporary commented out, need to find suitable font first).

  - [c] Fixed a bug in original StepMania when Hold Judgements were affected by
    Tap Note Judgement settings.

  - [t] Option names are no longer capitalized in Song Options menu.

  - [t] Edit Songs and Options menus at Title Screen swapped so Edit Songs
    comes first.

  - [c] Added assist tick precaching to Editor mode (was only in Game mode
    before).

  - [c] Fixed a bug in original StepMania where assist tick was not played for
    note at beat 0 of the song in Editor mode.

  - [c,t] Added assist tick TapCount mode. Selectable in Player/Song options.
    In TapCount mode different sounds are played based on number of notes
    pressed simultaneously. In Simple mode one and the same sound is always
    played.

  - [c] Confirmation is now required when creating a new stepchart for a song.

  - [c] Numpad arrows and PgUp/PgDn now also work in Editor.

  - [c] In Editor mode speed rate can now be changed using numpad +\-.
    This can also be done when a song is playing.

  - [c] Speed rate is now shown at the bottom right side of the screen when
    a song is playing in Editor mode.

2007.06.14 - zmey - v 3.9.1

  - [t] SMNX-MOD installed.

  - [t] Non-working TEST SCREEN menu entry hidden.

  - [t] Added 0.3 - 0.9 speed rates to Song Options menu.

  - [c] Ctrl-UP and Ctrl-DOWN in Edit mode will not skip 3x speedmod.

  - [c] Added combo display when playing songs in Editor.
