Crate etterna

Source

Modules§

prelude

Structs§

BpmChange
Chartkey
Represents an Etterna chartkey
DifficultyParseError
FastestComboInfo
Information about a combo found by find_fastest_note_subset
FullJudgements
Judgement data, including mines and holds
Judge
Specification of a judgement level
MatchingScorer
Scoring system that assigns hits to notes by trying to find the optimal mapping between the two, instead of naively mapping notes to hits as they come (crate::NaiveScorer).
NaiveScorer
Replica of the naive straightforward scoring system as it’s usually implemented in mania rhythm games. It maps hits to notes linearly.
NoteAndHitSeconds
No guaranteess of any sorts about ordering or contents in general
NoteRow
Rate
Represents an Etterna chart rate (music speed).
RateParseError
Scorekey
Represents an Etterna scorekey
ScoringResult
Result of evaluating a ScoringSystem on a list of notes and hits (ScoringSystem::evaluate)
SkillTimeline
Representation of a player’s ratings over time. See skill_timeline
Skillsets7
Skillset information, excluding overall
Skillsets8
Skillset information, excluding overall
TapJudgements
Judgement data, only the basic tap judgements
TimingInfo
UserRank
Global ranks in each skillset category
Wife2
2nd revision of Etterna’s Wife scoring system
Wife3
3rd revision of Etterna’s Wife scoring system
Wifescore
Wifescore struct. Guaranteed to be a valid value, i.e. <= 100% and not NaN (may be negative infinity though)

Enums§

Difficulty
Chart difficulty enum
Hit
Represents a player hit of a single note
NoteType
Type of a note
ScrollDirection
Skillset7
Skillsets enum, excluding overall
Skillset8
Skillsets enum, including overall
SmBpmStringParseError
Snap
TapJudgement

Constants§

J1
Removed from Etterna in 0.69.0
J2
Removed from Etterna in 0.69.0
J3
Removed from Etterna in 0.69.0
J4
Default judge for official scoring
J5
Used by some as their go-to judge
J6
Sometimes used for accuracy training
J7
Half the timing window of J4. Common for accuracy training
J8
Half the timing window of J6
J9
Also called “Justice”. Originally added to the game as a joke

Traits§

ScoringSystem
Trait for a scorer that operates on a single column and evaluates all hits on that column. It needs the entire list of hits available to it at the same time
SimpleReplay
Wife
Trait that abstracts over wifescore algorithm - the algorithm that turns a hit deviation into a score percent

Functions§

calculate_player_overall
Calculate a player’s overall rating from the player’s seven individual skillset ratings.
calculate_player_skillset_rating
Calculate a player’s skillset rating from the individual scores’ skillset ratings
calculate_player_skillset_rating_pre_070
This is the pre-0.70 variant of calculate_player_skillset_rating.
calculate_score_overall
Calculate a score’s overall difficulty from the score’s seven individual skillsets.
find_fastest_combo_in_score
Find the fastest combo within the score. It searched only for combos whose lengths lie inside min_num_notes..=max_num_notes.
find_fastest_note_subset
This function finds the fastest note subset (where the number of notes in the subset is in min_num_notes..=max_num_notes). The function operates on a single lane only!
find_fastest_note_subset_wife_pts
This function finds the “best” note subset (where the number of notes in the subset is in min_num_notes..=max_num_notes). The function operates on a single lane only!
rescore
Calculates a wifescore from a list of notes per column and hits per column, plus the mine hits and hold drops. The wifescore algorithm and scoring algorithm used can be chosen via the generic parameters.
rescore_from_note_hits
Calculate a wifescore from a replay’s note hits, mine hits and hold drops.
skill_timelineDeprecated
wife2
Utility function to calculate a Wife2 score for a single hit deviation
wife3
Utility function to calculate a Wife3 score for a single hit deviation