<!-- TITLE: Mapping --> <!-- SUBTITLE: Too many anime maps? Not enough anime maps? Ready to take matters into your own hands? You've come to the right place. --> >There is an active project underway to expand this section of the BSMG wiki. Visit #mapping-discussion to get involved! {.is-info} **Many thanks to contributors from across the mapping community who have made this expanded wiki possible!** * [Frequently Asked Questions](/mapping/faq) * [Mapping Term Glossary](/mapping/glossary) # Mapping Quick Start Go from thinking about mapping to releasing your first map by following this checklist. > Additional links from this checklist to essential information are coming *very* soon. Check back often as we continue to build this out!{.is-warning} 1. [ ] Download the necessary tools for mapping: an [audio editor](https://www.audacityteam.org/) and a [map editor](/mapping#map-editing-resources). 2. [ ] [Set up your audio file](/mapping#audio-editing-resources) including finding and confirming the BPM and exporting to OGG format. 3. [ ] Set up your first song in your mapping editor (steps vary by which editor you choose). 4. [ ] Get mapping! Review [Basic Mapping practices](/mapping#tutorials-and-references) before you start. [Playtest](/mapping#playtesting) your own work early and often while mapping. 5. [ ] Get lighting! Review [Basic Lighting information](/mapping#lighting-practices). Simple manual lighting is easier than you think! 6. [ ] Get your map [playtested](/mapping/#playtesting)! Third-party playtesting via the BSMG Discord is highly recommended to get constructive feedback and to get past your own “map blindness.” 7. [ ] Once your song has been mapped, lighted, and playtested you’re ready to [release](/mapping/#publishing-songs) your song to the world on Beat Saver. # Tutorials and References ## Video Guides * [BennyDaBeast's Mapping Tutorials](https://bsaber.com/benny-custom-mapping/) **highly recommended** >NOTE: Benny uses a slightly older version of Mediocre Mapper in these tutorials. The UI and some processes have changed in the most recent MM/MMA version but the rest of the content is great! {.is-warning} * [Freeek's Mapping and Editor Tutorials](https://www.youtube.com/playlist?list=PLYeZR6d3zDPgDgWogOwMteL-5SQWAE14b) >NOTE: Freeek uses a very old editor called EditSaber in these tutorials. Many UI elements and processes have changed in newer editors but the rest of the content is great! {.is-warning} * [Megalon's Official Editor Tutorial](https://www.youtube.com/watch?v=5Ex6sOEVgrM) ## Written Guides * [Best Practices Guide](https://bit.ly/2LjbURw), by Awfulnaut **please for the love of all things good read this** * [Mapping Quickstart Guide](https://bsaber.com/mapping-quickstart-guide-ogg-bpm-offset-and-timing/), by SilentCaay * [OST Analysis Spreadsheet](https://docs.google.com/spreadsheets/d/13wyoviJAplYOrsMocOA7YNXJxVRHd74G7z4U2jhCZa4/edit#gid=0) * [Error Checking with MediocreMapper](https://docs.google.com/document/d/1IYIMQVHK75ZG1JV2VKCTagA_ty-tnzzR7yaFPHTiswg), by Helen Carnate * [Ultimate Mapping Guide](https://docs.google.com/presentation/d/1dG-MlY4GkqcRKzf6fPkDtyFyce1BQVnDREXqnCZ3Us0/edit#slide=id.g4c98ed3226_0_187) by Skyler Wallace > Take these guides with a grain of salt! They're not the holy bible of mapping - a lot of these are still opinions. Not everyone's shares the same vocabulary either (what on earth is "drumsticking"?) My advice is to follow these rules until you're comfortable with your skills, and then get creative, experiment and innovate! ## Ranking Criteria Maps that are ranked and worth PP need to adhere to the [ScoreSaber Ranking Critera](https://docs.google.com/document/d/1mtVihRO1LomyptXayoDNDTQYgX_TQPp6ZYDmtwR2jMI/edit). To learn more about the ranking process, visit the [ScoreSaber Discord](https://discord.gg/WpuDMwU). # Audio Editing Resources Before you can start mapping you need to choose a song, find some basic information about it, and set it up using an audio editor. The most commonly used editor is the free [Audacity](https://www.audacityteam.org/) utility. The rest of this audio section will reference how to use this tool to set up and edit your audio file. * [Basic Audio Setup](/mapping/basic-audio) * [Advanced Audio Editing](/mapping/advanced-audio) # Map Editing Resources There are both official and community-developed editors available and preference is highly personal and frequently shifting as new official and community-developed tools come and go. ## Community Editors Community editors are often a source of innovation with a lot of beneficial quality of life features for mappers, and can be used by mappers without VR. However, they may also be incomplete, unstable, or unpredictable at times so use with caution. > Interested in making your own editor or converter? You may find the [SongCore readme page](https://github.com/Kylemc1413/SongCore/blob/master/README.md) and [this additional link](https://pastebin.com/cTPGrxWY) helpful! {is.info} ### Mediocre Map Assistant A fork of a fork of a fork... the most feature rich 3D editor used by the majority of the mapping community, now stripped of memes and all the fun stuff. RIP Bongo cat. Uses the new 2.0 song format and updated BeatSaver data schema. [Mediocre Map Assistant 2 Download](https://github.com/Assistant/MediocreMapAssistant2/releases/latest) * Check out the (almost finished) [Mediocre Map Assistant User Guide](/mapping/mediocre-mapper) for info on installation, initial setup, song setup, basic controls, error checking, and more. ### BeatMapper.app A new web-based 3D beat saber editor using the new 2.0 song format. Runs in the browser so it's platform agnostic. [BeatMapper Website](https://beatmapper.app/) ## Official Editor The official editor is developed and supported by Beat Games and pre-installed with the Steam VR or Oculus PC versions of the game. It makes playtesting very convenient with one-click access to your work-in-progress in-game. The official editor is 2D and requires good visualization skills to translate well to a 3D play space, which can be challenging for new mappers. The vast majority of mappers use a [Community Editor](https://bsmg.wiki/mapping#community-editors). * To access, launch the editor from within Beat Saber in your HMD or use fpfc launch parameters to open directly from your PC * Megalon's [Official Editor Tutorial Video](https://www.youtube.com/watch?v=5Ex6sOEVgrM) ## Additional Mapping Resources * [BeatMapperTools](https://monroeworld.com/beatmapper-tools/) by Darkuni A utility for users of Mediocre Mapper Mk4.0 and earlier to easily convert, test, and package their maps. * [Tempo Changer](https://skystudioapps.com/mapping-tools/#tempo-changer) by Rabbit A utility for mappers who need to change the BPM of their entire map that will correctly shift block placements. **Works on new format .dat files** * [BPM Saber](https://github.com/zevdg/bpm-saber), by Zevdg A utility for mappers who need to change the BPM of their entire map that will correctly shift block placements. **Only works on old format .json files** * [BPM Saber](https://bsaber.com/bpmsaber/), by Elliotttate A utility for finding the BPM of a song * Fayhe's [osu! Editor Timing Tutorial](https://www.youtube.com/watch?v=nIX0koHzW8c&t) # Lighting Practices A map is not considered complete without some form of lighting included. Lighting can range from very basic to incredibly detailed using additional mods to enable more features. * [Beginner's Guide to Lighting](https://docs.google.com/document/d/1wpZgBeOD1-UbJpXf-b6gX5ICNYygCd6UK6LOPm-t5QM/edit) by Puds * [Lighting Environment Guide](https://bsaber.com/creating-lighting-environment-guide/) by ManDynasty * [Using Flash & Fade Lighting Events](https://bsaber.com/creating-lighting-how-flash-fade-notes-actually-work-in-game/) by ManDynasty * [Side Laser Speed Guide](https://docs.google.com/spreadsheets/d/1tIERmSyFI4ssjDkE-oJjBBvUZUJ7eoVhCQyM3_BsJwE/edit?usp=sharing) by LittleAsi **Lightmap** A tool to automatically generate lighting events for a custom song by Freeek and Recrudesce! Get it here: https://github.com/recrudesce/lightmap/releases Explanation video and examples: https://www.youtube.com/watch?v=ImO9cFW5vyQ&t # Playtesting Testing your work is a critical part of mapping. Playing your own maps as you work helps you adjust for major playability issues and get a feel for your map. Third-party or “outside” playtesting is when someone other than yourself tests your pre-release map and provides constructive feedback and is helpful in highlighting issues to which you may be "map blind." >You **do not** need to upload your map to Beat Saver in order for you or anyone else to test.{.is-warning} * If your map is using the 1.0 song format (your files are .json and .ogg) you must convert your map using one of several available tools like [Songe Converter](https://github.com/lolPants/songe-converter) by lolPants or [BeatMapper Tools](https://beatmappertools.com/index.php) by Darkuni. * If your map is using the 2.0 song format (your files are .dat and .egg) you’re ready to test. ## Testing on a PC Follow these steps to test any of your maps made with a community editor using PC-based VR. 1. If your WIP song folder isn’t already in Beat Saber_Data\CustomWIPLevels then place a copy there. 2. Access your map in-game via the CustomWIPLevels category in the bottom song pack menu. Use practice mode to play (the small button next to the yellow play button). ## Testing on a Quest Follow these steps to test any of your maps made with a community editor using an Oculus Quest. You must have [SideQuest](https://sidequestvr.com) and [BMBF](https://github.com/kihecido/BMBF/releases/latest) installed. 1. Create a compressed .zip file of the individual song files (not the song folder). 2. Drag and drop the .zip file onto the BMBF upload window. 3. Click “Sync to Beat Saber.” 4. Access your map in-game via the CustomWIPLevels category in the bottom song pack menu. Use practice mode to play (the small button next to the yellow play button). ## Community / Third Party Testing The #testplays channel in the Beat Saber Modding Group discord makes it easy to have your work checked by knowledgeable mappers. Playtesters will provide constructive feedback on how to improve your map in either video or text format in the #mapping-discussion channel. 1. Create a compressed .zip file of the individual song files (not the song folder). 2. Upload your map to #testplays using the following format: **Map:** The name and artist of your map **Length:** The length of the song **BPM:** The BPM of the song **Difficulty:** Which difficulties are included **Feedback:** Any requests for feedback (specific difficulties to be tested, things to look for etc.) **Status:** What state is the map in? (i.e., First draft complete, no lights; 1:45 mapped; release candidate w/ lighting; etc.) 3. Testers will usually look at your map within 24-48 hours and will use a number of reaction emojis (listed in #testplays pinned posts) to track testing status. You can use the following code to copy and paste into Discord: ``` **Map:** **Length:** **BPM:** **Difficulty:** **Feedback:** **Status:** ``` # Publishing Songs One your song has been mapped, lighted, and playtested and it’s a finished product you’re ready to release it to the world on [BeatSaver](https://beatsaver.com). >Please **do not** upload an incomplete WIP map to BeatSaver; Uploading to BeatSaver equates to "Putting it on the store shelf" and should only be your final version. Anyone who plays your WIP without Practice Mode will create a new leaderboard for that map. See the [Playtesting](/mapping#playtesting) section for instructions.{.is-danger} ## BeatSaver BeatSaver is the public repository for all custom Beat Saber maps. Songs must be in the 2.0 song format (files are .dat and .ogg/.egg) to be compatible. ### BeatSaver Data Schema Change - October 27, 2019 BeatSaver now enforces a schema in order for your maps to be uploaded, of which public MediocreMapper is not compliant with. The most breaking change happened in the difficulty data files, where MM-specific fields were moved inside a `_customData` object. >**Resolution #1:** Switch to the [Mediocre Map Assistant 2](https://github.com/Assistant/MediocreMapAssistant2/releases/latest) editor (a fork of Mediocre Mapper). Open each difficulty file and save it to correct the schema. Use MMA2 going forward. {.is-success} >**Resolution #2:** Use the [Schema Updater Utility](https://skystudioapps.com/mapping-tools/#schema-fixer) by **Rabbit** to fix your files before uploading. {.is-success} **Resolution #3** (AKA "The Hard Way") If you wish to fix this yourself, here is a quick template which shows you where everything should go in order for your map to be compliant with BeatSaver's new schema. Alternatively, since `_customData` is **NOT** a required field, you can go ahead and remove everything that would be placed in there, and upload that result. ``` { "_version": "2.0.0", "_notes": [], "_obstacles": [], "_events": [], "_customData": { "_bpmChanges": [], "_bookmarks": [], "_time": 0 } } ``` To be compliant with the new schema, please also find and remove or fill in any **blank fields** in your `info.dat` or difficulty files. ### How to Release a Map 1. [Create an account](https://beatsaver.com/auth/register) on BeatSaver. 2. Click the “Upload” button in the top-right nav bar. 3. Add your BeatSaver map name and map description. Only the map name is searchable so be sure to include song name, song artist, and other terms that might make it easier to find your map. >Use “tags” like (Chroma), (OneSaber), or (Mapping Extensions) if your map uses some special modifications or characteristics you want to highlight.{.is-info} 4. Add your .zip file and click “Upload.” >Map files cannot currently be updated on BeatSaver. If you need to upload a new version of your map you will need to delete the old one and re-post.{.is-warning} ## BeastSaber [BeastSaber](http://www.bsaber.com) is a song review and curation site with a social side for member profiles, forums, news, and tutorials. All songs published on BeatSaver are mirrored to BeastSaber within 10-15 minutes. # "Mappers" role on the Beat Saber Modding Group Discord If you'd like to apply for the Mappers role on the Beat Saber Modding Group Discord, use the following google form. https://goo.gl/forms/KM71UKjQpbCesWNg2 You will be contacted when your application is looked at, but due to the limited staff and higher priority tasks to get to, the wait could be long.