The fluXis map editor is the built-in tool for creating and editing maps directly inside the game. It is organized into five tabs that each handle a distinct phase of map creation: setting up metadata and assets, placing hit objects, designing visual events, editing storyboard elements, and verifying map quality before upload. The editor loads asynchronously so the Charting and Design tabs show a spinner while their complex containers initialize — this is expected behavior, not a freeze.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/InventiveRhythm/fluXis/llms.txt
Use this file to discover all available pages before exploring further.
Interface Layout
The editor wraps all of its UI inside a single screen with three persistent chrome layers:- Menu bar (top) — File, Edit, View, Timing, Audio, and Wiki menus.
- Tab switcher — a row of icon buttons just below the menu bar that lets you jump between tabs; you can also press Ctrl + 1–5 to switch tabs by index.
- Bottom bar — displays the current playback position, BPM, and other at-a-glance information.
The Five Editor Tabs
Setup
Configure song metadata (title, artist, mapper, difficulty name, tags), assign audio/background/cover/video assets, pick a key mode, and set accuracy and health difficulty values. This is always the first tab shown when creating a brand-new map.
Charting
The main note-placement workspace. Displays a scrolling playfield with a waveform overlay, a toolbox on the left, and a sidebar on the right for timing points and lane-switch events. Loads asynchronously on first visit.
Design
A live-preview event editor that renders the full gameplay ruleset in the background while you place flash events, playfield animations, shaders, and more on a timeline sidebar. Also loads asynchronously.
Storyboard
A timeline-based editor for storyboard animations and script elements. Shows a live preview of the storyboard in the center with the animation list on the left and element settings on the right.
Verify
Runs automated checks across the entire map — metadata completeness, audio file presence, overlapping notes, unused assets, and more — and lists every issue with severity, category, timestamp, and a human-readable message.
Opening and Creating Maps
You can reach the editor in two ways:- Create new map — From the song-select screen, use the editor entry point. The editor opens on the Setup tab so you can fill in metadata before placing any notes.
- Edit existing map — Select any map you own in song select and choose “Edit”. The editor opens directly on the Charting tab.
.fsc (map chart) and .ffx (events) files inside your local maps storage folder. You can open that folder at any time via File → Open Song Folder.
Snap Settings
The snap divisor controls how notes and events align to the beat grid. It is a per-session value stored inEditorSettings and consumed by both EditorClock and EditorSnapProvider.
Available snap divisors
Available snap divisors
The Charting tab exposes the following divisors via the bottom bar or scroll wheel on the snap display:
The snap divisor range is 1–32, but the Charting tab’s toolbar only surfaces the eight values above directly.
| Divisor | Beat subdivision | Common use |
|---|---|---|
| 1 | Whole notes (1/1) | Very slow sections |
| 2 | Half notes (1/2) | Moderate rhythms |
| 3 | Triplets (1/3) | Triplet patterns |
| 4 | Quarter notes (1/4) | Standard snapping |
| 6 | Sextuplets (1/6) | Triplet sixteenths |
| 8 | Eighth notes (1/8) | Dense streams |
| 12 | Twelfth notes (1/12) | Complex polyrhythms |
| 16 | Sixteenth notes (1/16) | Very dense sections |
EditorSnapProvider.SnapTime walks forward or backward along the beat grid defined by the active timing point to find the closest snapped position. When allowNext is enabled the snapper also considers whether the next grid line is closer than the current one (within 30 % of a step) and prefers it, which prevents notes from snapping slightly behind the cursor.
The zoom level (0.5×–5×, default 2×) controls how many milliseconds are visible vertically in the charting playfield at once; it does not affect snap behavior.
The Editor Clock
EditorClock is the authoritative time source for the entire editor. It wraps a FramedMapClock and adds:
- Snapped seeking —
SeekSnappedquantizes the target position to the nearest beat grid line before seeking. - Smooth seeking —
SeekSmoothlyanimates the playhead position using anOutQuinteasing over 300 ms when the clock is paused; clicking anywhere on the waveform uses this path. - Step/beat callbacks —
OnBeatfires on every beat boundary and every four steps, allowing visual elements to pulse in sync. - Playback rate —
RateBindable(minimum 0.2×) lets you slow down or speed up the track for precise placement.
Saving Your Work
Manual save
Press Ctrl + S or go to File → Save. The editor validates that at least one timing point exists; if not, it rejects the save with a notification. On success it writes the
.fsc, .ffx, and storyboard files and shows a “Saved!” toast.Auto-save
Toggle File → Auto Save to enable automatic saving every 5 minutes in the background. The toggle state is persisted in the fluXis configuration file between sessions.
File and Difficulty Management
| Action | Location |
|---|---|
| Create a new difficulty | File → Create new difficulty… |
| Switch to another difficulty | File → Switch to difficulty (lists all other diffs in the set) |
| Delete a difficulty | File → Delete difficulty… (requires at least two diffs in the set) |
Export as .fms archive | File → Export |
| Upload or update online | File → Upload… (requires login; blocked if Verify has problematic issues) |
| Submit to ranking queue | File → Submit to Queue… (requires an online map ID) |
Audio Filters
The Audio menu provides two real-time filter toggles for monitoring your map while editing:- Low-pass filter — cuts high frequencies, useful for checking whether low-frequency rhythms are clear.
- High-pass filter — cuts low frequencies, useful for isolating high-frequency percussion.
Keyboard Reference
Global editor keybindings
Global editor keybindings
| Key | Action |
|---|---|
| Ctrl + S | Save |
| Ctrl + 1–5 | Switch to tab by index |
| Ctrl + Z | Undo |
| Ctrl + Y / Ctrl + Shift + Z | Redo |
| Ctrl + C | Copy selected notes |
| Ctrl + X | Cut selected notes |
| Ctrl + V | Paste at current time |
| Ctrl + A | Select all notes |
| Editor keymap binding | Open song folder |
| Editor keymap binding | Open wiki / help |
| Editor keymap binding | Seek to previous note |
| Editor keymap binding | Seek to next note |
