3. File Search Paths
There are four possible search paths, in order of which is searched first:
Name | Path | Requirement |
---|---|---|
deliver |
Y:\maimai_deliver\maimai\ |
Delivery is enabled, up to date, and valid |
extend |
W:\maimai\ |
W:\EXTEND_VER.txt is present and contains 1.97 |
extend2 |
V:\maimai\ |
V:\EXTEND_VER2.txt is present and contains 1.97 |
base |
Current working directory (X:\maimai\ ) |
Always used |
The following is list of different search paths and which folders will be searched:
Files matching | deliver |
extend |
extend2 |
base |
---|---|---|---|---|
data/acro/* |
Yes | Yes | ||
data/filters/* |
Yes | |||
data/font/* |
Yes | |||
data/movie/*.wmv |
Yes | Yes | Yes | Yes |
data/score/* |
Yes | Yes | ||
data/shader/* |
Yes | |||
data/sound/* |
Yes | |||
data/surfboard/* |
Yes | |||
data/surfboard_EN/* |
Yes | |||
data/tables/* |
Yes | Yes | ||
data/whiteboard/* |
Yes | Yes | ||
data/whiteboard2/* |
Yes | Yes | ||
data/whiteboard3/* |
Yes | Yes | ||
data/visualizer/%s.mvc |
Yes | Yes | ||
data/visualizer/%s.mmmf |
Yes | Yes | ||
data/visualizer/%s.spc |
Yes | Yes | ||
data/sprite/course_banner/event_%03d.dds |
Yes | Yes | Yes | |
data/sprite/course_banner_mini/event_%03d_mini.dds |
Yes | Yes | Yes | |
data/sprite/event_banner/event_%03d.dds |
Yes | Yes | Yes | |
data/sprite/event_banner_mini/event_%03d_mini.dds |
Yes | Yes | Yes | |
data/sprite/event_banner/present_event_%03d.dds |
Yes | Yes | Yes | |
data/sprite/event_banner_mini/present_event_%03d_mini.dds |
Yes | Yes | Yes | |
data/sprite/tips/%s.dds |
Yes | Yes | Yes | |
data/sprite/movie_thumbnail/%s_mmt_%s.dds |
Yes | Yes | ||
data/sprite/movie_selector/%s_mms_%s.dds |
Yes | Yes | ||
data/sprite/movie_selector_mini/%s_mms_%s.dds |
Yes | Yes | ||
data/sprite/collection_frame/frame%04d_%s.dds |
Yes | Yes | ||
data/sprite/collection_frame_mini/frame%04d_%s.dds |
Yes | Yes | ||
data/sprite/collection_icon/icon%04d_%s.dds |
Yes | Yes | ||
data/sprite/collection_deka_icon/icon%04d_%s.dds |
Yes | Yes | ||
data/sprite/collection_nameplate/namep%04d_%s.dds |
Yes | Yes | ||
data/sprite/* for other sprites |
Yes | Yes | ||
data/* for other files and misc folders |
Yes | |||
W:/EXTEND_VER.txt 3 |
Yes | |||
V:/EXTEND_VER2.txt 3 |
Yes | |||
* for other files, such as SystemConfig and EXEs |
Yes |
3.1 Observations
While charts can be pushed via delivery, pushing new music to the game requires an OTA update.
This is unfortunately also the case regarding surfboard files.
3.2 Details regarding lookup functions in the game
3.2.1 ExtendDataManager::locateFileWithExtend
Search paths:
Used by:
L"data/movie/%s.wmv"
3.2.2 ExtendDataManager::locateFile
Search paths:
deliver
1base
Used by:
- Visualizers
L"data/visualizer/%s.mvc"
L"data/visualizer/%s.mmmf"
L"data/visualizer/%s.spc"
- All files referenced by such, eg
data/acro
- Score files (
data/score/*
) - Table files (
data/tables/*
) - Whiteboards (
data/whiteboard*/*
)
3.2.3 findFileInDeliveryOrRelative()
data/tables/*
data/sprite/*
(if not account for elsewhere)
3.2.4 searchForFileIn3(base, extend, extend2)
L"data/sprite/course_banner/event_%03d.dds"
L"data/sprite/course_banner_mini/event_%03d_mini.dds"
L"data/sprite/event_banner/event_%03d.dds"
L"data/sprite/event_banner_mini/event_%03d_mini.dds"
L"data/sprite/event_banner/present_event_%03d.dds"
L"data/sprite/event_banner_mini/present_event_%03d_mini.dds"
L"data/sprite/tips/%s.dds"
3.2.5 searchForFileIn3(base, deliver, invalid)
L"data/sprite/movie_thumbnail/%s_mmt_%s.dds"
L"data/sprite/movie_selector/%s._mms_%s.dds"
L"data/sprite/movie_selector_mini/%s._mms_%s.dds"
L"data/sprite/collection_frame/frame%04d_%s.dds"
L"data/sprite/collection_frame_mini/frame%04d_%s.dds"
L"data/sprite/collection_icon/icon%04d_%s.dds"
L"data/sprite/collection_deka_icon/icon%04d_%s.dds"
L"data/sprite/collection_nameplate/namep%04d_%s.dds"
3.2.6 searchForFileIn3(extend, invalid, invalid)
L"W:/EXTEND_VER.txt"
3
3.2.7 searchForFileIn3(extend2, invalid, invalid)
L"V:/EXTEND2_VER.txt"
3