Skip to main content

StepMania tools

Project description

sm_tools

Tools to interact with stepmania and it's related filetypes (.sm in particular)

Motivation

There has been desire to do Data Science projects on stepmania data, like song difficulty modeling. The first tool in this repo is a step_parser, which will extract a feature set from a song directory to build models off of.

How to use

With checked out repo:

git clone git@github.com:JaceTSM/sm_tools.git
cd sm_tools

python src/step_parser/cli.py \
    /path/to/your/stepmania/songs \
    --output /path/to/output.csv

If you don't pass --output, it will default to writing the output to step_parser_output_${unix_ts}.csv.

As package:

pip install sm_tools

step_parser /path/to/your/stepmania/songs --output /path/to/output.csv

In python:

import os
from step_parser import analyze_stepchart, batch_analysis

# Get DF for all songs in a dir (recursive search)
sm_song_dir = "/mnt/c/Games/StepMania 5/Songs"
batch_analysis(sm_song_dir)

# Get DF for single .sm file
sample_stepchart = os.path.join(
    sm_song_dir,
    "Jimmy Jawns/Dreadnought - [Aoreo]/Dreadnought.sm"
)
analyze_stepchart(sample_stepchart)

Manual Package Installation

Create python virtualenv however you want, then:

# from project root, build the package
python -m build

# then install the wheel directly (the version number may be different)
pip install dist/sm_tools-0.0.1-py3-none-any.whl

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sm_tools-0.0.3.tar.gz (10.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sm_tools-0.0.3-py3-none-any.whl (12.0 kB view details)

Uploaded Python 3

File details

Details for the file sm_tools-0.0.3.tar.gz.

File metadata

  • Download URL: sm_tools-0.0.3.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.6.9

File hashes

Hashes for sm_tools-0.0.3.tar.gz
Algorithm Hash digest
SHA256 d372e27f613b295494bbb35ed7d91a949d8e112630111a68fc169a261996f855
MD5 445d94f693148b314d24297dcc6980aa
BLAKE2b-256 1b9f2a1119273401562a000677cca917135bd42e0dfe52f68b55710d71ec62f2

See more details on using hashes here.

File details

Details for the file sm_tools-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: sm_tools-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 12.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.6.9

File hashes

Hashes for sm_tools-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 49720e7ce0246edaf265844b085e85cd330e1843f951a6bb58b250b73328bf2a
MD5 f2e3f8752bde55acdbe6c3e77fd99630
BLAKE2b-256 28a0d5dc5b40d8b6aef283b341137cebacbcb718108190a35050da3ec690462e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page