I got inspired by how this guy did his OOT map but I had ideas for features and bugs I could fix, mainly relating to parsing a spoiler log at the time. I went to his github and his code was all there, but he was missing the actual map files compiled together using Leaflet. These weren’t maps he made himself, and he was just piggybacking off these great maps from VGMaps.com.
After contacting the author and not getting a response quickly, I decided that I should just make my own version from scratch, I have a thing for scripting map events since it’s how I got my foot in the door in webdev all those years ago.
My version lets you generate and plot maps and paths. parses a spoilers.json, and lets you (I hope accurately) plot routes from A->B to/from every location in the game.
You can find the code/source files here.
Features:
- Completely zoomable/pannable OOT map (I tried to make it as reastically positioned as I could for routing reasons)
- Included scripts to it generates the map files for you, it will download and compile together all the maps from VGMaps.com, and cut them up into all the different zoom levels using sharp (I’ve reused this script for other mapping stuff since)
- Scripts to generate a map paths from a OOT Randomizer spoilers file JSON file (see madness above).
- Lets you connect two entrances together via map markers/routes.
- Ability to plot ‘best’ routes given 2 loading zones. This uses selectize.js for a fun autocomplete search.
TODO/Other notes:
- Item routing/adding logic for what you need to get to each entrance.
- Routing logic between two points might be random in terms of time, but it will try and at least pick the least number of loading zones to get to destination.