Oblivion:Map Exploration: Difference between revisions

From PRCLive 100% Speedrun Wiki
Jump to navigation Jump to search
No edit summary
Line 132: Line 132:


==Proposed Methods==
==Proposed Methods==
Here are some proposed strategy combinations that have been tried or are currently being developed:


===Original Horse Vectors===
===Original Horse Vectors===

Revision as of 20:23, 15 November 2021

Overview

For 100% Completion, one of the things we need to do is max out the Places Found statistic in the Accomplishments Tab. There are 367 map markers to discover on the map, broken down as follows:

  • Ob icon cave.png 89 Caves
    • Serpent’s Trail is not discoverable until you’ve reached stage 20 of the Lifting the Vale quest.
  • Ob icon gate.png 59 Oblivion Gates
    • The Bruma Gate is not discoverable until during the Bruma Gate main quest.
    • The Great Gate is not a discoverable location.
    • Aside from the Kvatch Gate, other Oblivion Gate locations will not be discoverable until later in the main quest. For the purposes of the speedrun, all gates aside from Bruma Gate are discoverable after completing the Dagon Shrine quest, at which point random Oblivion Gates will have the highest chance of spawning as well.
    • There are 20 fixed Oblivion Gates that are always in those locations on the map. There are 40 randomly spawning Oblivion Gates that can appear at 80 different potential locations.
    • After completing the Paradise main quest, all of the Oblivion Gates close automatically and you will be unable to find any remaining ones, preventing you from completing this objective.
  • Ob icon ruin.png 50 Ayleid Ruins
    • Discover Arpenia before starting the Azani Blackheart quest, or else you will never be able to discover it.
    • Discover Sedor before starting The Stone of St. Alessia quest, or else you will never be able to discover it.
  • Ob icon fort.png 50 Forts
  • Ob icon camp.png 32 Camps
  • Ob icon settlement.png 30 Settlements
    • Discover Cloud Ruler Temple before starting the Weynon Priory quest, or else you will never be able to discover it.
  • Ob icon mine.png 25 Mines
  • Ob icon shrine.png 15 Daedric Shrines
  • Ob icon landmark.png 9 Landmarks
  • Ob icon inn.png 8 Inns

Additionally there are several map icons which start out already discovered, which do not count towards the Places Found statistic:

  • Ob icon cave.png Imperial Prison Sewer
  • Ob icon settlement.png Weynon Priory
  • Ob icon inn.png All 8 Stables outside major cities
  • Ob icon city.png All City icons

To discover a location, the player must get near enough to a map marker, which can be imagined as an invisible sphere with a radius of about 1800 pixels around the location that discovers the place once you have entered it. It is worth noting that the actual map marker with the discoverable sphere around it is separate from the entrance to a location, and is often decently far away from the entrance itself.

The goal is to discover all of the locations on the map as quickly as possible, with a few key assumptions:

  1. We will ignore Bruma Gate until it is discovered during the Bruma Gate quest. This means we will be aiming to discover 366 locations instead of 367.
  2. We will have quest progress advanced far enough that Serpent’s Trail and all other Oblivion Gates are discoverable by the time we do map exploration.

The current route logic theory is that map exploration is best done in one sweep rather than breaking up the exploration to be done at relevant points during individual quests. Already having all the locations discovered before doing the bulk of the questing makes the flow of quest completion much smoother, allowing us to immediately jump between locations without doing dozens of extended travel sections. Additionally, there are tons of locations that are not relevant to any quests, which we would have to discover later anyway, so doing everything at once reduces the redundancy of whatever setup we use for exploring faster. Exploring the whole map all at once also gives us more routing options since we don’t need to worry about quest timing related to problematic locations like Arpenia or Cloud Ruler Temple.

Random Oblivion Gates add further complexity to solving map exploration. Random Gates have a chance of appearing at specific locations, and the chance seems to be rolled upon entering a loading zone containing a gate. Depending on which map exploration method we use, it may be better or worse to close Oblivion Gates as we find them. We may or may not want to prioritize Random Gate spawning while discovering other locations as well.

Additionally, there are other locations around the map that are not discoverable that may be worth doing if routing logic allows for it, such as getting the 9 Wayshrines, the 7 Heaven Stones, and all the outdoor Nirnroot, although these are not the primary focus.

Previous Methods

The V1 system of exploration was to simply follow an online map using hotkeyed Skooma. There was not routing, locations were picked up randomly in an improvised fashion. We opted for the strategy of closing Oblivion Gates as they were discovered. This proved very problematic for several reasons:

  • The original location count on the UESP was off by one, fixed gate locations were not known to exist, and the map we used had too many additional pieces of information.
  • Skooma caused the player to pass out frequently from jumping, and the damaged intelligence prevented us from farming magic skills during this part.
  • The player died extremely easily from fall damage given the steepness of the terrain combined with the high movement speed.
  • Given the lack of a clear route to pick up locations, the process felt largely aimless.
  • Missing random Oblivion Gates and having to revisit all the previous locations to find the missing ones wasted a lot of time.
The grid system. (V3 version)

The V2 system clarified several things, including making a more customized map with reduced/corrected information, and adding a grid system that gave a rough idea of how to tackle the map in sections. Overall the strategy was largely unchanged, although perma enchants allowed us to not use Skooma, making navigation of the map a little less tedious and allowing us to farm magic/acrobatics during this time. We still discovered Oblivion Gates as we closed them. There were some issues that still persisted:

  • We were still unaware of fixed gate locations at the time, so Oblivion Gate discovery was still inefficient.
  • The player still died extremely easily from fall damage.
  • The grid system helped give the runners a more systematic approach to map exploration, although it was still very vague and required the players to improvise the order they tackled sectors.
  • The random Oblivion Gates that didn’t spawn by the end of the route were still difficult to track down at the end.

The V3 system largely improved the communication of the materials rather than the exploration tech itself. The grid system was still used, and was not improved upon. The main improvements came from learning about fixed gate locations, double fame gates, and random layouts gates, which all made map exploration much more concrete and clear to the runner. Wayshrines were added to the exploration phase as well. Oblivion Gates were still closed as we found them, but with our new knowledge of fixed gates, we were able to create a system of tracking the random locations that gates didn’t appear at as we went, which made finding the missing gates much easier at the end. We also learned that we could force random Oblivion Gates to spawn by reloading a loading zone over and over, and that gates could spawn incidentally from crossing over a zone unknowingly, resulting in gates appearing at places we had already checked before. This system still had some problems:

  • The player still died extremely easily from fall damage.
  • The grid system was still vague and inefficient.

The completion of V3 marked what appears to be the maximum potential of this general system, indicating that it is time to completely rethink how we explore the map. Player speed is incredibly slow for how much map there is to cover, and things like fall damage make the exploration tedious and inefficient.

Strategies

Pathing Strategy

Calculated vectors programmatically generated by JustAFatYeti. Red circle regions are exclusionary zones that vectors cannot pass through.
A potential traveling salesman path programmatically generated by JustAFatYeti.
A potential curved vector path made by whathuh.

“Modern” map exploration methods are broken down into several categories of thought:

  • Vector Theory: The idea that running in calculated, straight lines will eliminate the tedium of map exploration and make it more consistent overall.
  • Traveling Salesman Theory: The idea that vectors have too much backtracking, and that manually exploring in an optimized path will yield the fastest time.
  • Curved Vector Theory: The idea that creating large sweeping paths that are largely straight will give the best of the other theories: The limitless pathing possibilities of Traveling Salesman and the semi-autonomous/consistent results of Vectors.

Speed Boost Strategy

Options for achieving high movement speed are broken down into two main categories:

  • Player Spell Stacking: Using a series Weakness to Magic spells reflected off of a summon, you can stack massive amounts of spell magnification onto yourself, resulting in a Speed spell on self that makes you move incredibly fast and an Endurance spell that makes you able to tank fall damage.
    • The player is more easily controlled and can farm skills while exploring, making them ideal for Traveling Salesman.
    • The player spell stacking setup is longer and more complex than the horse spell stacking strategy.
  • Horse Spell Stacking: Horses have an unusually high movement speed per point of speed and can tank fall damage naturally, so stacking Weakness to Magic on a horse and using a Speed spell on it will give it massive movement speed boosts relatively quickly.
    • The horse can scale steep slopes incredibly fast.
    • The horse uses tank controls, so it takes forever to turn and face a new direction, making it more ideal for Vectors/Curved Vectors than Traveling Salesman.
    • The horse spell stacking is much less complex than the current player spell stacking method, requiring less total setup time.

Map States

Additionally there is the concept of “Out of Bounds in a City” exploration vs. normal exploration:

  • Normal Exploration: The map is loaded normally and can be fast traveled around freely.
    • You can use either Player or Horse easily with this method.
    • Lots of terrain/buildings make Vector Theory largely impossible, and can trip up the other navigation methods.
    • If you move above 10k horse speed, the loading zones can overlap and cause crashes, making this strategy have a lower speed limit.
  • Out of Bounds Exploration: Getting outside of a city while in it will result in being able to explore the map without any enemies, rocks, trees, buildings, etc. spawning.
    • The biggest benefit of getting out of bounds is that loading zones do not occur when moving too fast, making the 10k horse speed issue we ran into no longer a problem.
    • Although we seem to have a way to do it with DLC, there is currently no known way to get a horse into a city, meaning this method requires the Player movement speed method.
    • No objects loaded in means Vectors are more viable, and exploration in general is less tedious.
    • We’d have to save all of the objectives (such as killing master trainers) until all of the exploration is done. This would include closing Oblivion Gates since entering them would require us to set up the out of bounds glitch again.
    • Random Oblivion Gates may not spawn when doing this, which could either be good or bad. This needs to be tested to confirm the spawning behavior.

Random Gate Discovery Strategy

The process of discovering Random Oblivion Gates can vary as well, and would affect pathing:

  • Simultaneous Unforced: Random Oblivion Gate locations are checked as you go, moving on if one does not appear at a location.
    • This makes the Vector Theory much more complicated, and makes Traveling Salesman go through more locations.
    • This creates a situation where you have to go back at the end and check previous locations where the gate didn’t spawn, since they sometimes spawn on your way out of the loading zone.
  • Simultaneous Forced: Random Oblivion Gate locations are checked as you go, forcing them to spawn by entering/exiting the loading zone until all 40 random gates appear.
    • We have a map of locations that exist near Oblivion Gates that can be used to enter/exit until the first 40 Random Gates spawn.
  • Separate Forced: Random Oblivion Gate locations are checked entirely separate after finding all of the other locations, forcing the first 40 to spawn by entering/exiting the loading zone until they appear.
    • A problem with this strategy is that some of the Random Gates could appear incidentally during the regular exploration, making this process not entirely consistent.

Gate Closing Strategy

Finally, there is the decision to close Oblivion Gates as we find them, or to ignore all of them until the end:

  • Instant: Close Oblivion Gates as you encounter them during the regular exploration.
    • This could interrupt the flow of certain strategies, such as Vector Theory.
    • This helps us avoid losing track of which Gate markers we’ve already closed or not.
  • Delayed: Close Oblivion Gates after finding all of the locations.
    • Allows us to use the Fevus Gate Glitch, which allows us to guarantee the gate layout of every random realm gate.

As you can see, there are tons of considerations and possible method combinations when developing the optimal strategy for exploring the map.

Proposed Methods

Here are some proposed strategy combinations that have been tried or are currently being developed:

Original Horse Vectors

  • Pathing: Vector Theory
  • Speed Boost: Horse Spell Stacking
  • Map State: Normal Exploration
  • Gate Discovery: Separate Forced
  • Gate Closing: Delayed

This was the first idea tested on stream. The obstacles in the terrain made the vectors near impossible to execute in most cases. This was determined to be not viable.

MrBosch's Theoretical Ideal

  • Pathing: Traveling Salesman Theory
  • Speed Boost: Player Spell Stacking
  • Map State: Out of Bounds Exploration
  • Gate Discovery: Simultaneous Forced
  • Gate Closing: Delayed

This setup is still a work in progress, with the spell stacking strategy being further optimized. Based on what we know is possible, this seems to be the theoretically ideal strategy.

Movement Optimizations

Map exploration poses several problems that need to be optimized:

  1. Given the large size of the map, movement speed is the top priority.
    • The setup time for getting a large amount of movement speed needs to be reduced as much as possible.
    • The refresh time per cycle of buffing movement speed is challenging to improve given that custom spells only last a maximum of 2 minutes. Glitch Archaeologists have discovered a spell duration bug that may prove useful.
  2. The map has a very uneven terrain, resulting in fall damage extremely often.
    • This means that max health needs to be sufficient for tanking very large amounts of fall damage at a time.
    • The frequency of smaller fall damage also means that we need a system of health restoration.
    • Fall damage reduction could also be a factor, although Acrobatics is not effective at reducing fall damage, so some other method would have to be discovered for this to be viable.
  3. The map's uneven terrain also results in several instances where we need to optimize the ability to scale steep hills.

Horse

Horse optimizations were effectively solved, with little more foreseeable room for improvement. Given the larger potential of player movement, this section is largely here for posterity.

Movement Speed

Fall Damage

Horses in general are able to sustain more fall damage than a lower level player, often taking several massive falls before dying. Horses do not natural regain health quickly, and it would be too tedious to manually monitor the horse's health to heal it as we explore. Of all the horses in the game, Shadowmere has the most health and has a unique ability. Unlike other horses, Shadowmere does not die when she runs out of health, she becomes unconscious. While she is unconscious, the player can put items in her inventory, including potions. When Shadowmere takes damage, she automatically will consume a potion in her inventory that restores health. She also has infinite carry weight, meaning you can put thousands of healing potions on her. This makes her the ideal horse for map exploration because she will heal herself automatically after every fall, and can take significant damage per fall. Even if Shadowmere goes unconscious, you can wait for her to wake up and resume map exploration, so there is much more room for error than with other horses.

A small note is that there is a bug with Shadowmere's potion drinking mechanic. In situations where she is wakes up from being unconscious, you may have to quicksave/quickload to get her to start drinking potions automatically again.

Scaling Hills

Horses were considered for map exploration because of their ability to scale steep hills. At these higher movement speeds, a horse can easily scale the steepest hills. In situations where the horse is stuck, slightly turning left and right repeatedly results in the horse moving up the hill again.

Player