Skip to content

Releases: stepmania/stepmania

StepMania 5.0.8

11 May 00:47
Compare
Choose a tag to compare

StepMania 5.0.8; release notes compiled and Markdown formatted by @kyzentun:

This is divided into two sections:

  • Player visible changes: New configuration options players should try out,
  • Themer visible changes: New (optional) screens that themes can support, new metrics or lua functions, or fixes for existing functions.

Items are roughly grouped into the general part of StepMania they fit into.

Compiling:

Cmake is now the only method supported for compiling Stepmania. Read Build/README.md for instructions.
Some Linux users may need to pass -DWITH_LIBVA=ON and/or -DWITH_CRYSTALHD_DISABLED=ON to cmake when compiling.
There is a binary package for Linux which was built on amd64 debian. If it doesn't work, compile from the source instead.

Player visible changes:

Service Menu:

Entries in service menu rearranged to hopefully organize them better.
Test Input, Input Options, and Calibrate Machine Sync are now under Input Options.
Appearance Options, Set BG Fit Mode, and UI Options are now under Display Options.

Edit Mode:

  • Added submenus to the timing edit menu to allow shifting, copying, and
    pasting any or all timing segments in the selected region or after the
    current cursor position.
  • Shifting menus in edit mode now have choices for 1, 2, or 4 measures or 2
    beats.
  • Revert From Disk actually works now.
  • Fixed bug that made alter menu choices prompt for clearing.

Gameplay:

  • Holding Select on gameplay now skips the current song in course or endless
    mode. This is meant to address the problem some people had where they were
    unable to skip songs in endless mode.
  • Toasty animation can now occur multiple times during gameplay. The
    Allow Multiple Toasties preference controls whether it is played
    multiple times.

Bug fixes:

  • Fixed bug in screen filter in default theme that made it not appear under
    the field when a solo file was played without Center1Player.
  • Fixed crash on OS X for certain dance pads when in Japanese locale.
  • Scoring bug fixes related to radar calculation.
  • Scores on edit charts should now be loaded correctly. Before, they were
    only loaded after the chart had been played in the current session.
  • Fixed bug that made steps on the same row as a stop and a bpm change
    unhittable. (and possibly other weird edge cases of multiple timing segments
    on one row, nothing should accidentally cause unhittable steps now)
  • Joining on Select Music when on Extra Stage is disabled to prevent
    crashing on Evaluation Summary.
  • "Do not show again" button on missing texture dialog works now.
  • If the background or banner file for a song doesn't exist when the song is
    cached, the cache file will have a blank path so Stepmania won't try to load
    the nonexistent banner or background.
  • Default key configuration for beat game type slightly tweaked, space is
    now the default scratch key, key7 is now mapped to right instead of key3.
  • Backwards and shuffle chart mods in beat now ignore the scratch column.
  • The AxisFix preference has been added which might fix the axis problem
    for some people on windows or on linux using the event driver.

Themer visible changes:

Service Menu:

ScreenOptionsInputSub and ScreenOptionsDisplaySub added. Updating a theme
to show the options for the new screens should be a simple matter of
changing the LineNames entry for ScreenOptionsService to include
"InputOptions" and "SoundGraphics".

NoteColumnRenderer

Added handling for diffuse to make rainbow and related effects work.

RadarValues

Stream, Voltage, Air, Freeze, and Chaos are no longer capped at 1. Stream
and Voltage no longer count hold heads twice. RadarCategory_Notes added,
which counts all notes.

ScreenGameplay

The NoteField board is now underneath everything except the backgound. This
means underneath any custom actors on the underlay or overlay or decoration
layers, and also underneath the combo/judgment even when the ComboUnderField
metric is true.

ToastyAchievedMessageCommand

The parameter table broadcast with this message has changed it is now as follows:

{  
PlayerNumber= pn, -- the player number of the player that earned the
toasty  
ToastyCombo= number, -- the current number of W2/W1 in a row the player has  
Level= number, -- the number of toasties earned in a row  
}

Adding the Level parameter allows the themer to easily set off a different
effect based on how long the player has gone without breaking their toasty
combo.
See Docs/Themerdocs/Examples/Example_Actors/Toasty.lua for an example of
BGAnimations/ScreenGameplay toasty.lua that uses these parameters.

The Gameplay::ToastyTriggersAt metric can be a function now, or a number.
If the metric is a function, the function is passed the player number, and the player's current
toasty level, and the number it returns is the number of additional steps to
earn the next toasty.
If the metric is a number, it is the number of additional steps to
earn the next toasty.
This means that ToastyTriggersAt=250 and
ToastyTriggersAt=function(pn, level) return 250 end have the same
effect: Toasties will be awared at 250, 500, 750, and so on.

The Gameplay::ToastyMinTNS metric has been added for controlling the minimum
TapNoteScore needed to maintain toasty combo.

Bug fixes and new functions:

  • Attributes added are marked with [A].
  • Bug fixes are marked with [B].
  • Functions are marked with [F].

ActorSound:

  • [A] IsAction attribute added. If this is true, the sound will not be
    played if the MuteActions preference is true.

Global:

  • [F] commify
  • [F] convert_xml_bgs
  • [F] rec_print_children
  • [F] rec_print_table

XML converter

A converter has been added that takes care of the simple grunt work of converting an xml bg/fg file to lua for
SM5. Read Docs/Themerdocs/XmlToLua.txt for details.

A short digression about earning toasties

A toasty is a special award for achieving a certain number of W2 or W1 steps
in a row. In the default theme, this is 250 steps in a row, and W2 is known
as Perfect, and W1 is called Flawless. The number of toasties earned is
stored in the profile. Some themes show a special animation and play a
sound when a toasty is earned.
The current toasty combo is the progress towards this goal. Each note on a
row counts as one point in the toasty combo, thus jumps are two, and hands
are 3 or more.
Hitting a step with a judgment worse than W2 breaks the toasty combo,
resetting it to 0.
For many years, achieving 250 W2/W1 in a row, then 1 W3, then 250 more W2/W1
in a row would increment the toasty counter in the profile by 2, but only show the animation once. Earning 500 W2/W1 in a row was still only 1 toasty.
This behavior has been changed so that 500 W2/W1 in a row will increment the
toasty counter twice, and show the animation twice.

StepMania 5.0.7

01 Apr 05:30
Compare
Choose a tag to compare

StepMania 5.0.7; release notes compiled and Markdown formatted by @kyzentun:

This is divided into two sections:

  • Player visible changes: New configuration options players should try out,
  • Themer visible changes: New (optional) screens that themes can support, new metrics or lua functions, or fixes for existing functions.

Items are roughly grouped into the general part of StepMania they fit into.

Player visible changes:

Loading Time:

Simfile loading and caching has been changed internally to speed up loading
time. If you're using an SSD, or only have a few hundred songs, you probably
won't see any difference. People with large song collections who don't have
SSDs should be able to measure the difference.
Most of the changes are aimed at making StepMania read song data from the
cache and not look in the song folder until gameplay if the cache file
exists. To take full advantage of this, you should have the Fast Load
preferences set to true.
There are new things to help simfile authors deal with cases where the cache
file is out of date.
Because this release bumps the cache version, the first time you start up it will
rebuild the cache, which takes some time.

Reload current song:

Pressing Ctrl+Shift+R on Select Music will reload the currently selected song
from its song folder, updating any cached information.

Never Cache List preference:

The NeverCacheList preference has been added to Preferences.ini. You can use
it to set song group folders that should never be cached. The preference is
set to a comma separated list of group names. Because it disables the cache
for the songs in the groups listed, it should only be used sparingly, the
cache is important for loading quickly.
Example: NeverCacheList=work_in_progress,abandoned_in_progress
This will cause the songs in the work_in_progress and abandoned_in_progress groups to never be cached.

Delete songs from Select Music:

Pressing Ctrl+Backspace on the Select Music screen will prompt you to
permanently delete the currently selected song.
The Allow Song Deletion preference must be turned on in the Advanced Options section of the service menu for this to be enabled.

Edit Mode:

  • Autosave:

    The song is automatically saved every 5 minutes if there are any changes.

  • EditClearPromptThreshold:

    When clearing an area with the Alter menu, if the area contains at least
    EditClearPromptThreshold notes, you will be prompted. It's a preference
    that is settable in the Advanced Options section or in the Options in Edit
    Mode. Setting it to -1 means it will always prompt, setting it to 1000000
    will make it never prompt.

  • Per-chart music:

    Each chart in a simfile can have its own MUSIC tag, pointing to a music file
    to use instead of the normal song music. This does not change the logic for
    when the song ends in gameplay. The time of the last step of any chart is
    still used as the time to end the song in gameplay, so if you use per-chart
    music, make sure your music is the same length.

  • Preview tag:

    Simfiles can have a PREVIEW tag which tells StepMania to use a specific file
    for the preview instead of the song music file. When you set the preview tag, the length of the named file will be used to set the sample length. After that, the sample length can be adjusted as normal. The sample start is forced to 0 when the preview tag is used.

Preferences:

  • HarshHotLifePenalty:
    Normally, if your life bar is full (1.0), and you get a judgment that would
    decrease it, 0.1 is taken off your life bar even if the penalty would be less
    than 0.1. If HarshHotLifePenalty is false, then the penalty is used instead
    of 0.1.

General:

  • DX9 support:

    DX9 support improved, giving a large speed boost and fixing the problem that
    made people get stuck with 16bit color. [xwidghet]

  • Mutable actions:

    Pause/Break key now toggles "action" sounds off or on. There is also a
    button in the F3 debug menu for people that don't have a Pause/Break key
    (press A, there are so many that it is off the bottom).

CMake:

This only affects people building from source. StepMania has moved to using
CMake as the primary system for generating project files. This saves us the
trouble of keeping several different project files updated. Read
Build/README.md for instructions on using CMake to build.

Language changelog:

To make life slightly easier for translators, a language changelog has been
added in Docs/Changelog_language.txt.

Themer visible changes:

  • Bug fixes are marked with [B].
  • Functions are marked with [F].

ActorFrame:

  • [B] Fixed RemoveChild and RemoveAllChildren Lua functions to delete the
    children instead of leaking memory.

ActorFrameTexture:

  • [E] Example added to Themerdocs/Examples/Example_Actors/.
  • [B] Various bug fixes.

BitmapText:

  • [B] Place characters of right-to-left alphabets correctly.
    (untested) [roothorick]

Font:

  • [B] Asserts and other things that caused StepMania to crash on font
    mistakes now emit non-fatal errors.

Global:

  • [B] foreach_ordered lua function now works on tables that have both number
    and string keys. Number keys are iterated over first.

PaneDisplay:

  • [B] Changed to print an error when metrics or player number are omitted instead of
    crashing.

RageTexture:

  • [F] GetPath

Screen:

  • [B] Fixed crash when AddInputCallback is passed nil.

Song:

  • [F] GetPreviewMusicPath
  • [F] ReloadFromSongDir

StepMania 5.0.7 RC

10 Mar 05:24
Compare
Choose a tag to compare
StepMania 5.0.7 RC Pre-release
Pre-release

This is a release candidate

There have been some changes to file loading to speed up startup time, and autosave has been added to edit mode. With those two additions affecting critical features, it is possible that some detail was missed (maybe a particular rare tag in simfiles doesn't work anymore, or maybe files aren't saved or loaded correctly)

Thus, this release candidate build is so that people can test things on non-critical systems to make sure simfiles that worked fine in 5.0.6 also work fine with the changed loader. (non-critical systems just means don't go stick it on an arcade machine where someone might get pissed if a song doesn't load or there's a crash)
If you encounter any problems related to song loading or saving with this build post on the forum or submit an issue with as much info as you have. If it's a particular song that doesn't load right, that simfile will probably be needed to solve the problem.

Next release

If there are no serious bugs in this build, the next release will be in 3 weeks (April 1st), along with any changes that occur between now and then. Work on improving startup time is still ongoing.

Note on loading time

Because this release includes a cache version bump, the first time you load will take much longer than normal because it has to rebuild the song cache. After that, it should be measurably faster. People using SSDs or on modern hardware or with small song collections might not be able to see any difference in loading time.

Now for the notes on the other changes from the last few weeks:

Release notes

This is divided into two sections:

  • Player visible changes: New configuration options players should try out,
  • Themer visible changes: New (optional) screens that themes can support, new metrics or lua functions, or fixes for existing functions.

Items are roughly grouped into the general part of StepMania they fit into.

Player visible changes:

Edit Mode:

  • Autosave:

    The song is automatically saved every 5 minutes if there are any changes.

  • EditClearPromptThreshold:

    When clearing an area with the Alter menu, if the area contains at least
    EditClearPromptThreshold notes, you will be prompted. It's a preference
    that is settable in the Advanced Options section or in the Options in Edit
    Mode. Setting it to -1 means it will always prompt, setting it to 1000000
    will make it never prompt.

  • Per-chart music:

    Each chart in a simfile can have its own MUSIC tag, pointing to a music file
    to use instead of the normal song music. This does not change the logic for
    when the song ends in gameplay. The time of the last step of any chart is
    still used as the time to end the song in gameplay, so if you use per-chart
    music, make sure your music is the same length.

  • Preview tag:

    Simfiles can have a PREVIEW tag which tells Stepmania to use a specific file
    for the preview instead of the song music file. The preview length should
    be read from the preview music file, so cut it right.

Preferences:

  • HarshHotLifePenalty:

    Normally, if your life bar is full (1.0), and you get a judgement that would
    decrease it, 0.1 is taken off your life bar even if the penalty would be less
    than 0.1. If HarshHotLifePenalty is false, then the penalty is used instead
    of 0.1.

General:

  • DX9 support:

    DX9 support improved, giving a large speed boost and fixing the problem that
    made people get stuck with 16bit color. [xwidghet]

  • Mutable actions:

    Pause/Break key now toggles "action" sounds off or on. There is also a
    button in the F3 debug menu for people that don't have a Pause/Break key
    (press A, there are so many that it is off the bottom).

Themer visible changes:

  • Bug fixes are marked with [B].
  • Functions are marked with [F].

ActorFrame:

  • [B] Fixed RemoveChild and RemoveAllChildren Lua functions to delete the
    children instead of leaking memory.

BitmapText:

  • [B] Place characters of right-to-left alphabets correctly.
    (untested) [roothorick]

Font:

  • [B] Asserts and other things that caused StepMania to crash on font
    mistakes now emit non-fatal errors.

Global:

  • [B] foreach_ordered lua function now works on tables that have both number
    and string keys. Number keys are iterated over first.

PaneDisplay:

  • [B] Changed to print an error when metrics or player number are omitted instead of
    crashing.

Screen:

  • [B] Fixed crash when AddInputCallback is passed nil.

Song:

  • [F] GetPreviewMusicPath

StepMania 5.0.6

17 Feb 23:54
Compare
Choose a tag to compare

@kyzentun made a mistake when fixing a crash bug the night before release that broke bpm editing.
This fixes that mistake.

Other fixes:

  • Backslash key can be mapped.
  • Deleting steps no longer crashes.

Also, if you didn't see 5.0.5, you should read the release notes for it.
https://github.com/stepmania/stepmania/releases/tag/v5.0.5

StepMania 5.0.5

13 Feb 10:07
Compare
Choose a tag to compare

StepMania 5.0.5; release notes compiled and Markdown formatted by @kyzentun:

This is divided into four sections:

  • Player visible changes: New configuration options players should try out,
  • Themer visible changes: New (optional) screens that themes can support, new metrics or lua functions, or fixes for existing functions.
  • Prominent bug fixes: Bugs that seem prominent and aren't solely relevant to themers. Listing every tiny little bug would make these notes far longer than they already are, so most bugs are left out.
  • Preemptive problem solving: Problems that might commonly occur and have a known good solution.

Items are roughly grouped into the general part of Stepmania they fit into.

Player visible changes:

Edit Mode:

  • Play song:

    Ends when the song ends, or when the notes end, whichever is later.

  • Key configuration:

    See Docs/Mapping_keys_for_edit_mode.txt

  • Record Hold Time:

    When recording steps in Record Mode, a button that is held more than 0.3
    seconds is recorded as a hold. This amount of time can now be adjusted up
    or down with Q/W or set to 120 seconds with R or reset to 0.3 with E.

  • Record Mode Lead In Time:

    Preference for setting the number of seconds before the selected section
    comes up in record mode. Should be settable on the options screen in edit
    mode in default theme.

Preferences:

  • DefaultFailType:

    Internal mechanism changed again, set the preference to what you want again
    and report if it doesn't stick. (side note: It's stored in the
    DefaultModifiers preference, which is different for every game mode, so
    you'll have to set it for every game mode you play)

  • MinTNSToHideNotes:

    This preference controls the tap note score you must get on a note for it
    to disappear. Normally, any note that you score great or better on
    disappears, and the rest stay visible. Change this preference to miss, and
    even notes you miss will disappear. Change it to checkpoint, and not even
    fantastic will make a note disappear.

    There is also a modifier for this, to allow players to have different
    settings if the theme provides a way to set the modifier.

  • Previously hidden preferences:

    A bunch of useful preferences weren't settable through the service menu.
    InputDebounceTime was added to the Input Options section. The rest in the
    list were added to the Arcade Options section. They might not show up in
    custom themes that change the service menu. They all have help text
    explaining them, so visit them on the options screen.

    • AllowMultipleHighScoreWithSameName
    • ComboContinuesBetweenSongs
    • Disqualification
    • FailOffForFirstStageEasy
    • FailOffInBeginner
    • LockCourseDifficulties
    • InputDebounceTime
    • MaxHighScoresPerListForMachine
    • MaxHighScoresPerListForPlayer

Profile:

  • Profile merging

    Profiles can be merged together now, to import scores from an old profile
    into a new one. Merging does not delete the old profile, you must do that
    step separately.

    When merging a local profile into the machine profile, you
    can choose to skip merging the totals (step count, songs played, and
    similar)

  • Profile types

    Guest and Test profile types added. All existing and new profiles are
    Normal.

    If a profile is changed to Guest through the profile management screen, it
    will always show at the top of the list. A profile set to Test will always
    be at the bottom of the list.
    Profiles can be moved around in the list.

Misc:

  • Added auto-mappings for D-Force dance pads.

ScreenMapControllers:

  • Forced sanity checking

    Start, MenuLeft, MenuRight, and Operator keys must be mapped.

  • Reset key mappings option

    The debug menu now has a menu option for resetting the key mapping to the
    default. Hold F3 and press P and your current keymap will be wiped away.

    This is for recovering from an unusuble keymap without needing to find and
    delete KeyMaps.ini.

ScreenSelectStyle:

The Select Style screen changed a bit internally to simplify adding new
choices and make sure all game modes had the correct style choices
available. This is only visible in default theme because the _fallback
theme still uses the old system for backwards compatibility.

ScreenOptions:

Player nameplates added with bpm info.

Translations:

Dutch translation updated by Kevin O. (Thumbsy).
Spanish translation updated by Alejandro G. de la Muñoza.
Polish translation updated by Jarosław Pietras.
Japanese installer translation by hanubeki.
Partial French translation by Grégory Doche.

Videos:

webm and wmv added to list of supported video formats.

Themer visible changes:

Functions for new actor classes are not listed here, it is assumed that you will look at Lua.xml to see what is in them.

If a function is explained sufficiently by its entry in Docs/Luadoc/Lua.xml, it won't have a detailed entry.

  • Bug fixes are marked with [B].
  • Functions are marked with [F].
  • Metrics are marked with [M].
  • Sounds are marked with [S]
  • Thread variables are marked with [V]

Function Chaining:

All lua functions that didn't return something before now return the object they were called on.
Example: (yes I saw function chaining used in a certain gimmick noteskin)

    -- old style:
    self:zoom(.5)
    self:xy(_screen.cx, _screen.h-60)
    self:diffuse(color("#dc322f"))
    -- new style:
    self:zoom(.5):xy(_screen.cx, _screen.h-60):diffuse(color("#dc322f"))

Function Naming:

CubicSplineN, NoteColumnRenderer, NoteField, and NCSplineHandler list their functions with underscore style names. Camelcase style aliases exist for all their functions, use whichever naming style you prefer.

New Actor Classes:

  • NoteColumnRenderer:

    Each column in the NoteField is an actor that can be fetched and
    manipulated.

  • NoteField:

    The NoteField was just a normal(ish) ActorFrame before. Now it has all
    these functions and it's starting to get uppity. What is a callback
    anyway? It thinks we want it to call us back later when something happens?

  • NCSplineHandler:

    Each property of the note column has its own spline handler, which allows
    the splines to behave differently and be controlled independently.
    Position, rotation, and zoom are the three things that can be controlled
    by splines.

  • CubicSplineN:

    (not actually an actor, but there aren't any other new non-actors to put
    it with)

    This class provides an implementation of cubic splines. It's used by
    ActorMultiVertex and NoteColumnRenderer to control shape and note movement,
    but is also available in a standalone form for the rare case where you need
    a spline for something else.

New functions in old Classes:

Actor:

  • [F] Add/RemoveWrapperState
  • [F] bezier
    The bezier tween tended to get caught in an infinite loop before, which made it very unsafe to use. Now it won't loop forever when you set a bezier tween with random values.
  • [F] effectclock("timer") no longer crashes
  • [F] Get/SetFakeParent
  • [F] GetNumWrapperStates
  • [F] GetWrapperState

ActorFrame:

  • [F] GetUpdateRate

ActorMultiVertex:

  • [F] Add/RemoveState
  • [F] Add/RemoveQuadState
  • [F] ForceStateUpdate
  • [F] Get/SetDecodeMovie
  • [F] GetNumStates
  • [F] GetNumQuadStates
  • [F] GetSpline
  • [F] Get/SetQuadState
  • [F] Get/SetState
  • [F] Get/SetStateData
  • [F] Get/SetUseAnimationState
  • [F] SetAllStateDelays
  • [F] SetSecondsIntoAnimation
  • [F] SetStateProperties
  • [F] SetVertsFromSplines

Announcer:

  • [S] "evaluation full combo W3"
  • [S] "evaluation full combo W4"

BitmapText:

strokecolor is in the tween state now, so it can be tweened.

Game:

  • [F] GetSeparateStyles

GameState:

  • [F] ApplyPreferredSongOptionsToOtherLevels
  • [F] CanSafelyEnterGameplay
  • [F] Get/SetCurrentStyle changed
    In kickbox game mode, players can have different styles set, pass a
    PlayerNumber when using SetCurrentStyle or GetCurrentStyle. This does not
    break old code, if you don't care about whether your theme works in kickbox
    mode, you can ignore this.

Global:

  • [F] approach
  • [F] lerp
  • [F] lerp_color
  • [F] multiapproach

MusicWheel:

  • [M] HideActiveSectionTitle
    Defaults to true in _fallback. A bit unfortunate, but keeps backward
    compatibility with the existing behavior of OnlyShowActiveSection.
    If neither metric is true, wheel displays all titles plus the contents of the
    active section (if any).
    If OnlyShowActiveSection is true but HideActiveSectionTitle is false, wheel displays the active section title
    plus its contents, or all titles if no section is active.
    If both are true, wheel displays only the active section's contents, or all
    titles if no section is active.

Noteskins:

  • [V] Controller
  • [V] Player
    The Controller and Player variables now work for non-receptor arrows.
  • [M] NoteColorCount
  • [M] NoteColorType
    {PartName}NoteColorType will take Denominator or Progress.
    Denominator is classic style, colored by NoteType.
    Progress simulates DDR's Rainbow noteskin.
    {PartName}NoteColorCount is Number of Note Color
    You can reduce image size by reducing this value.

Player:

  • [M] ComboBreakOnImmediateHoldLetGo

PlayerOptions:

  • [F] MinTNSToHideNotes

PlayerState:

  • [F] ApplyPreferredOptionsToOtherLevels

Profile:

  • [F] GetPriority
  • [F] GetTotalDancePoints
  • [F] GetType

RageTexture:

  • [F] GetImageWidth/Height
  • [F] GetTextureWidth/Height
  • [F] GetSourceWidth/Height

RollingNumbers:

  • [B] Coloring and cropping during tweens fixed.
  • [B] Corner diffuse colors fixed.

ScreenEdit:

  • [M] OptionsScreen
  • [M] SetModsScreen
    The screens used to set options and mods in edit mode are no longer hardcoded, you can use these metrics to control what screens are used.

ScreenGameplay:

  • [M] MarginFunction
    Notefield positioning is handled a bit differently now.
    See comm...
Read more

StepMania 5 Beta 4a

20 Oct 01:01
Compare
Choose a tag to compare
StepMania 5 Beta 4a Pre-release
Pre-release

StepMania 5 beta 4a

"Apple forced our hand with OS X 10.10" Edition (unofficial tagline)

StepMania 5 beta 4a is now available, primarily for those who have upgraded to Mac OS X 10.10,
though there are bug fixes as well. Update notes copy/pasted from changelog and Markdown formatted by @freem.

Fixes

  • [Mac OS X] Allow StepMania to be built and run in Yosemite. (@jberney, pull request #324)
  • [BackgroundEffects] Fix error reporting messages coming up unnecessarily. (el @freem, fixes issue #337)

New Features

  • [NoteDisplay] Add two noteskin metrics, {PartName}NoteColorType and {PartName}NoteColorCount. View #328 for more information. (@hanubeki, pull request #328)
  • [NoteDisplay] Var Player and Var Controller work for non-receptor arrows. (@hanubeki, pull request #329)

StepMania 5 Beta 4

30 Sep 22:48
Compare
Choose a tag to compare
StepMania 5 Beta 4 Pre-release
Pre-release

StepMania 5 beta 4; release notes compiled by @kyzentun and Markdown formatted by @freem:

This is divided into three sections:

  1. Player visible changes: New configuration options players should try out,
  2. Themer visible changes: New (optional) screens that themes can support, new metrics or lua functions, or fixes for existing functions.
  3. Prominent bug fixes: Bugs that seem prominent and aren't solely relevant to themers.
    Each section will first list each of the items in it, then after the full list, each item will be discussed in detail.
    Items are roughly grouped into the general part of Stepmania they fit into.

Player visible changes

  • Arbitrary Speed Mods
  • Customize Profile
  • Error Reporting
  • CMods adjust for song rate.
  • Lowercase and longer ranking names. (if theme supports it)
  • New Swap Up/Down and Arbitrary Remap feature in Edit Mode
  • Extra Stage: Default theme's speed mod changed to 2x.

New Preferences:

  • BackgroundFitMode
  • ComboContinuesBetweenSongs
  • DebounceCoinInputTime
  • DefaultFailType
  • FastNoteRendering
  • ThreeKeyNavigation

Specifics

Arbitrary Speed Mods

In the default theme, speed mods are set in a new way.
The first element on the speed mod row tells you what your speed mod is currently set to. Call this the status element. It's underlined by the player's color the same way any other option that is set is underlined.
Next are elements for adjusting it up or down, in large or small increments.
Last are elements for changing the mode of the speed mod.
Hit start on an element to interact with it and change your speed mod by that increment or change the mode. The status element will update to tell you the new setting.
If there are two players joined, there are two status elements.
To change the sizes of the increments, go to the Advanced Options section of the Options in the default theme. "Speed Increment" adjusts the smaller increment that is used. "Speed Increment Large" adjusts the larger increment. 10 on this scale is equivalent to 0.1x on the XMod scale.
This replaces the old system where a speed mod was selected from a small set to allow you to set any speed modifier you might want without needing to worry about whether it's in the theme's small list.
SpeedMods.txt is no longer used by the default theme, though other themes can choose to support it.
This change was made because editing SpeedMods.txt often resulted in people making mistakes or editing the wrong one, or not knowing it existed, or having to add too many options and ending up with an absurd number of choices to scroll through.

Customize Profile

A profile customization screen now exists. This is for setting things like weight, birth year, and other calorie tracking stuff. If you're not using a theme that supports it, it's not relevant. Theme author instructions for adding support are in the Themer section.

To reach it, go to the Options screen from the main menu. Then go to Profiles. Pick the profile you want to customize. A menu will appear. Pick Edit. You'll see a menu of choices. Hit Start on a choice to change its value. The numpad should be self-explanatory.

This screen was added to allow setting the profile settings related to calculating how many calories were burned. Simply put, calculating calories purely off the number of steps hit and weight is inaccurate, so a new method for calculating off of heart rate, weight, age, gender and song duration was added. (shapesense's formula is the one that was used.)

VO2Max is optional, the internal code has a (less accurate) variant of the formula that is used if VO2Max is set to 0.

If you set the calorie calculation choice to use heart rate, then calories will not be added to the profile for every step. If the theme supports it, a screen for entering your heart rate will come up after gameplay and before evaluation. It will have a timer so you can measure your pulse and a numpad for entering the BPM of your heart. After you enter your heart rate, it'll be combined with the time to calculate the number of calories to add to the profile.

Error Reporting

This is really more of a themer feature, but so many themes have errors in them that it's going to be widely seen.
Errors in themes are now reported in dialog boxes and on screen much more than they previously were. (this is in addition to the Logs/log.txt reporting that has existed much longer)
This means that if you use a theme with errors in it, you'll be interrupted by dialog boxes and text on the screen reporting the errors.
There isn't a way to turn error reporting off, and there are no plans to add a way to turn it off. The solution is to use a theme that doesn't have errors, or fix them if a theme you made has errors. If you're a themer and you encounter an error you don't know how to fix, ask for help on the stepmania forums.

CMods adjust for song rate. Previously, if you used a rate mod, you'd have to pick a different CMod from normal to account for the rate. The CMod code now checks the song rate mod and adjusts appropriately. The same is true of MMods. Haste is not adjusted for because the sudden changes that can occur from haste would cause the arrows to jump disorientingly.

Lowercase and longer ranking names. The internal functions for storing ranking names were modified to allow mixed case and longer length. This only matters if the theme allows mixed case and/or longer length input.

Swap Up/Down and Arbitrary Remap in Edit Mode

New options have been added to the Alter menu.

Swap Up/Down swaps the Up/Down columns in the selected region. In double, this swaps Up and Down on both pads. In Pump, this swaps the front and back panels (UL is swapped with DL, UR is swapped with DR).

Arbitrary Remap provides a way to swap columns around arbitrarily. You will be prompted to enter a comma separated string of column numbers. After the remapping, each column will have a copy of the notes from the column number you entered. So entering "2, 1, 4, 3" will move down to left, left to down, right to up, and up to right. "1, 1, 1, 1" will copy the notes from left to every column.

Extra Stage

Default theme's speed mod changed to 2x.

New Preferences

BackgroundFitMode

Background stretching has been a problem for a while, so now there's a preference for setting it. In the default theme, select "Set BG Fit Mode" from the Options menu to go to the screen for setting it. The screen will show the various choices, and how a background of each of the three common aspect ratios will be cut off by the screen edges.
Some themes are known to override the internal lua functions that provide this feature, and it will not work in those themes.

ComboContinuesBetweenSongs

A minor preference for having ITG's feature of accumulating a large combo across multiple songs. You'll have to find Save/Preferences.ini and set it to 1 in that file to enable it.

DebounceCoinInputTime

A minor preference to cover the rare case where an arcade machine needs a different debounce time for coin input. This must be set by editing Save/Preferences.ini. Specifically, this was added to cover a case where someone had a bill acceptor added to their machine that worked by sending multiple coin insert inputs very quickly.

DefaultFailType

Kind of an internal thing, but you'll have to re-set your Default Fail Type preference.

FastNoteRendering

A minor preference for making note rendering faster. If you notice that your frame rate is low during very dense streams, you'll want to turn this on. It can be set in the Graphics/Sound section of the Options. The downside is that 3D notes will clip into each other instead of later notes being drawn on top of earlier notes.

ThreeKeyNavigation

A minor option for cabinets that only have Left, Right, and Start buttons. This can be set in the Input Options section. This forces the player options screen to have a down element for each row, so the cursor can no longer get stuck on rows that have multiple selections possible.

Themer visible changes

New stuff added to Docs/Themerdocs.
Metrics are marked with [M].
Functions are marked with [F].
Attributes (things you set inside the lua file when creating the actor with Def.whatever) are marked with [A].
Bug fixes are marked with [B].
If a function is explained sufficiently by its entry in Docs/Luadoc/Lua.xml, it won't have a detailed entry.

Actor

  • [F] GetDestX/Y/Z
  • [F] texturetranslate

Actor Classes

  • ActorMultiVertex
  • LogDisplay
  • NumPadEntry

ActorFrame

  • [B] diffuse/glow applied to BitmapText children
  • [F] GetChild, GetChildren improved

ActorScroller

  • [A] LoopScroller
  • [A] WrapScroller
  • DrawByZPosition fixed for looping.

BitmapText

  • [F] distort
  • [F] max_dimension_use_zoom
  • [A] Font (LoadFont obsoleted)

Classes/Namespaces

  • ArrowEffects
  • PlayerOptions
  • SongOptions
  • TapNote

ComboGraph

  • [M] BodyHeight

Common Metrics

  • [M] AfterThemeChangeScreen, AfterGameChangeScreen, AfterGameAndThemeChangeScreen

GameManager

  • [F] SetGame

GameSoundManager

  • [F] IsTimingDelayed
  • [F] PlayMusicPart
  • [F] StopMusic

GameState

  • [F] GetCurrentStage
  • [F] GetLastGameplayDuration
  • [F] GetStylesForGame
  • [F] HaveProfileToLoad/Save
  • [F] InsertCoin and InsertCredit
  • [F] JoinInput
  • [F] Load/SaveProfiles
  • [F] SetCurrentPlayMode
  • [F] SetCurrentStyle
  • [F] StoreRankingName

Global functions

  • [F] GetTimeSinceStart
  • [F] OldStyleStringToDifficulty
  • [F] SaveScreenshot

Judgment message

  • Notes and Holds parameters
  • HoldNoteScore_MissedHold

LifeMeter

  • LifeType, DrainType, BatteryLives
  • LifeMeterChanged message

LifeMeterBattery

  • [M] CourseSongRewardLives

MusicWheel

  • [F] GetSelectedSection

NoteSkinManager

  • [F] GetMetric, GetMetricForNoteSkin

PlayerStageStats

  • [F] GetComboList, GetLifeRecord

PrefsManager

  • [F] SavePreferences

Profile

  • Heart rate stuff
  • [F] SetLastUsed...
Read more

StepMania 5 Beta 3

24 Feb 09:04
Compare
Choose a tag to compare
StepMania 5 Beta 3 Pre-release
Pre-release

StepMania 5 beta 3

StepMania 5 Alpha 3

21 Feb 09:07
Compare
Choose a tag to compare
StepMania 5 Alpha 3 Pre-release
Pre-release

StepMania 5 Alpha 3

StepMania 5 Alpha 2

21 Feb 09:06
Compare
Choose a tag to compare
StepMania 5 Alpha 2 Pre-release
Pre-release

StepMania 5 Alpha 2