Skip to main content

Vertical Scrolling Rhythm Game Package

Project description

Reamber (Py)

pip install reamber

This is a simple package to handle VSRG file, useful if you'd want to manipulate data such as offset, column, bpm, etc.

This doesn't provide complex algorithms, only the base dataclasses and helpful basic algorithms

Wiki

Visit the wiki for more info

Info

Motivation

A growing amount of osu!mania players are becoming interested in programming. The best way to learn is to relate it to something that you're familiar with. That's why I'm making a library for most common VSRG (Vertical Scrolling Rhythm Game) types.

WIIFY (What's in it for you)

Picking it up

Everything is in Python, a very easy to pick up language. Installing it is as easy as:

  1. Installing pip
  2. Run pip install reamber

Easy Typing

The library heavily focuses on Typing for explicit returns and arguments. This is at an expense of slower processing speed.

I recommend using PyCharm or any other python editor that supports hinting. Hinting is where the editor hints you available functions, variables, etc.

Piping

Inspired by R Lang %>% operator.

Piping is the act of chaining multiple functions together.

# Grabbing the notes in between 1s and 2s in columns 1 and 3

# Without Piping
Notes(Notes(notes.after(1000)).before(2000)).inColumns([1, 3])

# With Piping
notes.after(1000).before(2000).inColumns([1, 3]).data()

This library supports it, to retrieve the list, just call .data()

List, Pandas Support

This library also supports exporting multiple classes as a list or pandas.DataFrame via .data() and .df() respectively.

So you don't need to feel limited to just the current interfaces.

Examples

Load in a osu! map

Grab the sorted holds in columns 1 & 2 in between 1s and 2s as a list

from reamber.osu.OsuMapObject import OsuMapObject

m = OsuMapObject()
m.readFile("map.osu")
print(m.notes.holds.sorted().inColumns([1, 2]).between(1000, 2000, includeEnds=False).data())

Load in a Quaver map

Grab the SV multiplier values as a list

from reamber.quaver.QuaMapObject import QuaMapObject

m = QuaMapObject()
m.readFile("map.qua")
print(m.svs.multipliers())

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

reamber-0.0.9.tar.gz (31.6 kB view details)

Uploaded Source

Built Distribution

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

reamber-0.0.9-py3-none-any.whl (68.4 kB view details)

Uploaded Python 3

File details

Details for the file reamber-0.0.9.tar.gz.

File metadata

  • Download URL: reamber-0.0.9.tar.gz
  • Upload date:
  • Size: 31.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.7

File hashes

Hashes for reamber-0.0.9.tar.gz
Algorithm Hash digest
SHA256 d0c4fb98be804c96748d11544c6d4515fef8ed7555cfd34fa873f8e2b5d3f5e2
MD5 fc6d9e3dee5abdd63c70055575c278ab
BLAKE2b-256 499f8b54f8d58836acc37dfddfd52720fcf18079c4a73e6ab18fa39952cc7001

See more details on using hashes here.

File details

Details for the file reamber-0.0.9-py3-none-any.whl.

File metadata

  • Download URL: reamber-0.0.9-py3-none-any.whl
  • Upload date:
  • Size: 68.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.7

File hashes

Hashes for reamber-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 8bc9ce275f71371bbd430923f1d819eb327b303c3c2e2468d5dab2971723e737
MD5 15ea526d16061fcdb0c314d83fbe1706
BLAKE2b-256 bffbf28c717b8010133822201fc1d6f60afeb9795f2ddf8dcbef2546377e72d5

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