Below is a list of resources for writing high-quality StepMania simfiles for pad play. A few of these resources apply specifically to “tech” charting or “stamina” charting, but most of them are advice or tutorials for general simfile creation.

Starting from Scratch

Select your music!

Every StepMania simfile is built on top of an audio file. When creating a simfile, the first step is to procure the music you want to use and prepare it for charting. A lossless source (WAV, FLAC) is ideal, but in a pinch, don’t hesitate to use a high-quality (256 kbps or more) MP3. Audio extracted from videos, such as those that appear on YouTube, should only be used as a last resort, since the video encoding often takes priority over the audio for that audience, and the audio track may suffer from low quality – or even time-stretching artifacts that cause sync issues later down the road.

Establishing the BPM of a track

Most electronically produced music has a constant BPM. To quickly gauge the BPM of a song, you can use tools like all8.com’s Tap for Beats Per Minute, or if you have the audio already on hand, open it up in ArrowVortex and use the Find BPM function in the Adjust Sync window (Tempo -> Adjust Sync…).

Cutting the audio

Most non-stamina-focused simfiles are set to tracks that are 2 to 2½ minutes long, a tradition established by the DDR discography. Stamina tracks may last much longer, sometimes tens of minutes, even hours! If your track is not the length you desire, you’ll need to cut your audio. It’s highly recommended to use a DAW (digital audio workstation) that has an inherent understanding of tempo and tempo changes for this process. If you haven’t used a DAW before, REAPER is free to download, and the tutorial below is written for it – but the general concepts can be applied in any DAW.

JNero’s audio cut-and-sync tutorial, Episode 1.
JNero’s audio cut-and-sync tutorial, Episode 2.

Encoding the audio

The current standard for simfile audio is the Ogg Vorbis format, since it’s the most compatible with various popular StepMania versions (as well as other simulators like Project Outfox) and conserves space over uncompressed formats. Generally, a quality setting of -q 6 (~192 kbps) is more than sufficient. MP3 isn’t recommended, especially variable bitrate MP3, because some editors and simulators have difficulty seeking to the correct time mid-track, making it difficult to create step patterns that match the music.

If you’re already working in a DAW to prepare your simfile audio, make sure that your export settings are set to OGG with the desired quality setting. If your simfile audio is already the correct length, and you just need to convert it to OGG, you don’t necessarily need a DAW for this step; pick up Audacity or foobar2000, do it directly in ArrowVortex, or use an online converter with a quality/bitrate setting.

Creating the simfile

A simfile is comprised of multiple files:

  • The audio track, cut to length and re-encoded if necessary;
  • The step data file (often simply referred to by its .sm or .ssc extension), which contains everything StepMania uses to present the simfile in song selection and replicate the appropriate step pattern in gameplay;
  • Optional files, such as graphics that appear during song selection or gameplay, lyric files, background videos (BGV/BGA), or Lua files that control various gameplay effects (also known as foreground changes, or simply “mods”).

StepMania has specific requirements for the directory structure of a simfile, as demonstrated below. The “Songs” directory in the StepMania install contains one or more “packs”, and a “pack” contains one or more “simfiles”. Simfile components placed in some other arrangement will be ignored by StepMania or cause errors.

Image showing the directory structure and file listing of a typical simfile.
The first few lines of a .ssc (step data) file showing track and author metadata, beat zero offset and BPM, and the beginning of a Challenge (a.k.a. Expert) chart.

Creating and modifying the step data file can be fully handled by most editors, so you should rarely have to edit it manually. The step data file contains the following:

  • track and author metadata (title, artist, origin, etc.)
  • sync information and timing map (beat zero offset, BPMs, stops, warps, scroll rates, etc.)
  • links to graphics that appear during song selection or gameplay
  • less common fields, such as title transliteration, links to lyric files or additional foreground/background changes
  • The step patterns (a.k.a. “charts”, sometimes “maps” or “[musical] scores” depending on community of origin). Each step pattern includes the following:
    • the difficulty slot – one of Beginner, Easy, Medium, Hard, Challenge, or Edit; these slots may have different names depending on the active StepMania theme
    • the numeric rating of the chart, often referred to as “block rating”, or even “foot rating” from the legacy DDR visual – this specifically refers to the difficulty of passing the chart compared to other step patterns on standard StepMania lifebar mechanics, and differs from DDR’s numeric rating scale
    • the chart metadata – name, author credit, description, style
    • the step pattern itself, encoded in a tracker-like format

To initiate a simfile, prepare a new simfile directory with the audio file, then open that audio in ArrowVortex, SMEditor, StepMania, or another editor of your choice. From there, follow the guides to creating a step pattern in your specific editor. You must set up the beat zero offset and the BPM (as well as any tempo changes) before placing any arrows! This is required to make sure the step pattern is synchronized with the music and to properly use StepMania’s rhythm notation.

Creating Step Patterns (“Charts”)

Many guides for writing step patterns exist, covering a wide range of topics in both tech and stamina paradigms. Some of the most popular ones are listed below.

Beginner tips for improving charts!

Once you’re familiar with your editor and can place arrows according to the rhythm of the music, you’re ready to consider how sequences of arrows create patterns and direct the player’s movement. This document covers various basic concepts such as doublesteps, ambiguity, and facing direction.

Intended for folks that already have some familiarity with playing and writing four-panel pad charts, and would like to improve the player’s physical comfort.

Charting Beyond The Basics

A sequel to the beginner’s tips guide, this document by BrotherMojo both expands the repertoire of the chart writer, by covering patterns such as brackets (one foot hitting two panels simultaneously), hold taps (the toe controls a hold and the heel taps additional notes, or vice versa), and footswitches (the same arrow is hit multiple times in a row, but by alternating feet).

The Cromulent Guide to Crossovers

Maintained by sorae, this document covers a broad category of patterns that require the player to use their left foot to hit the right arrow, or vice versa – in aggregate, these are known as “crossovers”. If wielded carefully, crossovers can vastly expand a chart writer’s range of pattern choices, providing ways to increase or decrease the intensity of phrases in the music, highlight or accent climaxes, and control the movement of the player to deepen the immersive experience of the chart.

Intended for chart writers that have read the beginner’s tips document above, or that are already familiar with concepts such as doublestepping and ambiguity.

In the technical charting community, brackets and footswitches (detailed in the Beyond the Basics guide) combine with crossovers to form the “Big Three” techniques, or BXF. Some combination of these three techniques is present for almost every chart in an International Timing League event or timing-focused tournament.

“It’s All Just Mindless Streams”

This recorded presentation from Zaia at StaminaCon 2019 actually runs for almost 2½ hours, and is not only the most comprehensive overview of stamina chart creation to this day, but much of the imparted advice can also be applied to technical chart composition, such as macro chart structure, layering, and internal consistency. It also touches on social aspects of chart writing such as replayability, target audience, and increasing your work’s visibility in the community.

Intended for pad chart writers who are already familiar with simfile creation and basic patterning, but once that’s accomplished, simfile creators at every level are highly encouraged to watch.

Writing Stamina: A modern guide for the stamina stepartist

This article by Rems takes a step back from the minutiae of chart creation, and shares his perspective as a longtime creator and curator. The first half of the document covers the motivations and mindset behind “becoming a step artist”, and is useful at any level of experience or tenure.

ITG Wiki

It’s also worth checking out the ITG Wiki, which has deep dives on topics such as:

  • The +9ms offset bias applied to “In the Groove customs” – its origin and why it still exists today;
  • Gimmicks, also known as “scroll variations”, which use StepMania mechanics to influence the speed of arrows as they travel toward the targets.

Editors and Other Tools

ArrowVortex

The most popular editor outside of StepMania itself. Developed by Fietsemaker, ArrowVortex or “AV” has a multitude of useful features, most notably:

  • Built-in song sync function, with highly accurate results for both BPM and beat zero offset
  • Waveform overlay and high-pass/low-pass filter
  • Assist tick (beat and note)
  • “Dancing bot” foot movement display that understands crossovers and footswitches
  • Highly configurable keyboard shortcuts

SMEditor

Despite its beta status, tillvit’s SMEditor is a great option for those looking for a browser-based solution. It’s modeled after ArrowVortex and shares a lot of the same features already.

nine-or-null

This standalone program by Telperion offers batch operations to verify the sync of simfiles (using a similar algorithm to ArrowVortex’s Sync Song function) both visually and computationally, and unify simfiles under +9ms or null bias paradigms.

Bermuda △ Triangle

Developed by bkirz and Ash Astral, this web-based utility offers two helpful functions:

  • Scroll normalization: counteract BPM changes with scroll rates so the whole chart appears to move at a constant speed
  • Make mines fake: envelop mines in short fake segments, making them unhittable but still visible as form cues or cosmetic elements

simfile-mods

Python scripts by Edward Ly that can perform batch operations on simfiles:

  • Swap between +9ms and null bias paradigms
  • Swap between DDR X-scale and ITG block rating

Creating Simfile Graphics

Simfile graphics aren’t required to make a great chart, but they help give your simfile identity, make it easier to spot or disambiguate at song select, and work together with your chosen StepMania theme to create an aesthetically appealing experience, so they’re highly recommended.

Simfile graphics usually incorporate the title and artist of the track, are saved in PNG format, and come in three resolutions. After creating the PNGs, copy them to the folder alongside the audio and step data files, and link them using the editor (or by editing the step data file manually).

  • Banner, displayed during song selection – 1024px × 400px is preferred. Pack banners are the same.
  • Background image, set behind the arrows during gameplay – HD 16:9 (1280px × 720px or 1920px × 1080px) or 4:3 (1280px × 960px) is preferred. StepMania will crop 16:9 to 4:3 or vice-versa when necessary, so care should be taken to center any text or focal elements of the image.
  • Jacket (optional), a.k.a. “album art” or “album cover” – 1:1 format, 512px × 512px is preferred. Some simfile creators like to use the actual album cover for this, if one is available. Not all themes have a use for jackets, and not all editors offer the ability to set this link in the step data file.
Example set of simfile graphics for AJURIKA – “SPEED ROCKER”, designed by sudzi781.

Some simfile artists also include a “CD title”, which is a small image (usually 64px high at most) representing either the simfile author or the album the track is from.

Short AVI or MP4 videos can also be provided as simfile graphics, but there are somewhat strict encoding requirements – see the Natron tutorial below. Most versions of StepMania do not load animated pack banners.

Creating simfile graphics is an open-ended process, but various tutorials and guides exist to help folks who are new at graphic design become familiar enough with the tools of the trade to realize their own vision:

Some tips on making graphics that draw the player’s attention:

  • Use a graphics program that provides anti-aliasing, and start from a higher resolution than your end goal, so that detail is not lost or blurred by upscaling late.
  • Use light text on a dark backdrop, or vice versa. Choose colors for the text that fit the palette of the backdrop.
  • Allow the text to stretch about 90% of the horizontal dimension, especially for banners.
  • Use fonts that are easy to read when small or far away, and learn how to tweak character spacing, to make fonts that have bad kerning rules look more natural.
  • Avoid high levels of backdrop detail around text.
  • Distinguish between title and artist using different fonts or different colors. Emphasize the title more than the artist, so that it’s clear which is which.
  • Double-check spelling and symbols, especially if any text is in a different language.

This generalized tutorial by sorae covers the strategy of making eye-catching graphics in more detail.

Sharing Your Simfile

ZIPs are the most common way to send simfiles. 7-zip is highly recommended, and make sure to zip the top-level folder of whatever you want to share (i.e. zip the pack folder or simfile folder, not the individual simfile folders or file components thereof). RAR is less common these days than ZIP, because many online storage sites don’t have preview tools that can look inside RAR files the way they can with ZIP archives.

If you want to get eyes on your new chart immediately, you can set up OBS Studio in local recording mode to take a video of the chart in action (use a slightly slower speed mod and set a neutral/popular noteskin to make the chart easier to read), then upload to streamable – or YouTube unlisted – and share the link to the audience of your choice…perhaps in the ITC discord server, under #stepfile-chat? 😉