OTOGE DB is an unofficial database for viewing song information served in SEGA's arcade music games 'Ongeki', 'Chunithm', 'maimai DX'. Building on top of the public data provided from the official SEGA websites and extra information available on various different community contributed sites, OTOGE DB allows convenient lookup of latest song information through the thoughtfully designed web interface.
OTOGE DBはSEGAの音ゲー「オンゲキ」「CHUNITHM」「maimaiでらっくす」の非公式収録曲データベースサイトです。公式サイトで公開されているデータを基にして、Wikiなどウェブで入手できる情報を集めて一箇所で楽に見れるようにする目標で作られました。
- You'll need Python 3.12+ to run scripts on command line.
- Setup virtual environment (if required)
python3 -m venv .venv - Activate venv
source .venv/bin/activate - Install requirements
or
pip install -r requirements.txtpip3 install -r requirements.txt
-
yarn fetch-songs: Download new song and images from serverArguments for all scripts:
Argument Description --ongeki--chunithm--maimai(Required) Run script for specified game (Set only one at a time) --nocolorsDon't print colors to terminal messages --markdownPrint messages in Github flavored markdown format (for PR messages) --escapeEscape unsafe characters for git message output (Song titles with symbols, etc) --no_timestampDon't print timestamps on message output --no_verboseOnly print significant changes and errors -
yarn fetch-intl: Fetch international version song availability & date info from SilentBlue (remywiki)Script specific-arguments:
Argument Description --strictStrict match songs by checking levels for all charts (If not set, script will proceed to update songs by just matching song title and artist names.) -
yarn fetch-wiki: Fetch extra song data from wikiScript specific-arguments:
Argument Description --dateSet specific date to target songs. (Example: --date 20230101)
If unset, script fetches for the latest datestamp in music-ex.json file.--date_fromSet start of date range to target songs. (Example: --date_from 20230101)
If unset, script fetches for the latest datestamp in music-ex.json file.--date_untilSet end of date range to target songs. (Example: --date_until 20231231)
If unset, script fetches for the latest datestamp in music-ex.json file.--idRun script for a single song. Can't be used together with the date target arguments above. (Example: --id 2524)--allRun script for all songs. (Warning: may cause heavy traffic load to the wiki sites so may get you banned temporarily. Be careful especially when using with --noskipoption!!)--noskipDon't skip items that already have URL --overwriteOverwrite keys that already have values -
yarn fetch-const: Fetch song constantsScript specific-arguments:
Argument Description --dateSet specific date to target songs. (Example: --date 20230101)
If unset, script fetches for the latest datestamp in music-ex.json file.--date_fromSet start of date range to target songs. (Example: --date_from 20230101)
If unset, script fetches for the latest datestamp in music-ex.json file.--date_untilSet end of date range to target songs. (Example: --date_until 20231231)
If unset, script fetches for the latest datestamp in music-ex.json file.--idRun script for a single song. Can't be used together with the date target arguments above. (Example: --id 2524)--overwriteOverwrite keys that already have values --clear_cacheClears local cache on run --legacyMatch with legacy sgimera format -
yarn fetch-chartguide: Fetch chart guide links from sdvx.inScript specific-arguments:
Argument Description --dateSet specific date to target songs. (Example: --date 20230101)
If unset, script fetches for the latest datestamp in music-ex.json file.--date_fromSet start of date range to target songs. (Example: --date_from 20230101)
If unset, script fetches for the latest datestamp in music-ex.json file.--date_untilSet end of date range to target songs. (Example: --date_until 20231231)
If unset, script fetches for the latest datestamp in music-ex.json file.--idRun script for a single song. Can't be used together with the date target arguments above. (Example: --id 2524)--overwriteOverwrite keys that already have values --clear_cacheClears local cache on run
yarn build: minify+concat JS files, builds LESS stylesheet, runs PostCSS and minify.yarn watch: watches changes to stylesheet for local development
Just open index.html and refresh manually. Simple as the good old year 2000.
Or, you can also do python3 -m http.server to quickly run a local server.
- This webpage is hosted and run entirely on Github Pages without any additional backend servers attached.
{game_name}/data/music.jsonandmaimai/data/maimai_songs.json: Copy of original JSON file provided by SEGA as-is{game_name}/data/music-ex.json: Augmented JSON file containing additional data not provided by the official website{game_name}/data/music-ex-intl.json: Augmented JSON file containing song information for International version{game_name}/data/music-ex-deleted.json: JSON file containing deleted song information for archive purposes
- @mantou1233 : Bug reporting, data contributions, PR reviews, feature development
- @ssankim : Wiki fetch script & Github Actions workflow help
- @kiding : Script for updating datestamps after fetch
- @Ryudnar : Early script foundation for song data downloading
- @u7gisan, @TSUBAKI_ONGEKI, @RKS49019722, @Rinsaku471, @46189_ext, @hikkey7th, @suoineau_ac, @hayato_ongeki
- SEGA Official Music Data : base JSON file
- オンゲキ攻略wiki : BPM, Enemy type, Enemy Lv, Chart note details, Chart designer
- オンゲキ譜面保管所 : BPM, Chart designer, Chart guide links
- オンゲキbright MEMORY Act.3 譜面定数表 : Chart constants (譜面定数)
- SEGA Official Music Data : base JSON file
- CHUNITHM攻略wiki : BPM, Chart note details, Chart designer
- CHUNITHM譜面保管所 : BPM, Chart designer, Chart guide links
- CHUNITHM LUMINOUS 譜面定数表 : Chart constants (譜面定数)
- CHUNITHM VERSE 譜面定数表 : Chart constants (譜面定数)
- SEGA Official Music Data : base JSON file
- maimai 攻略wiki : BPM, Chart note details, Chart designer
- maimai DX PRiSM譜面定数表 : Chart constants (譜面定数)
- 内部Lv.の表 PRiSM ver.(sgimera) : Chart constants (譜面定数)
- MIT License for all code in this repository.
- All vector image assets used in this website have been produced independently from scratch, however intellectual rights for the original designs remain to SEGA.
- ONGEKI, CHUNITHM, maimai でらっくす and the respective logos are trademarks of SEGA.
- All song jacket images are owned by SEGA and/or their respective owners.
- OTOGE DB is a fan project. It is not afilliated with nor endorsed by SEGA in any way.
- OTOGE DBは非公式ファンメイドプロジェクトです。株式会社セガもしくは他の関連会社との関係はありません。