-
Notifications
You must be signed in to change notification settings - Fork 244
Change Important Check Hints for Single-Location Areas #2516
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: Dev
Are you sure you want to change the base?
Change Important Check Hints for Single-Location Areas #2516
Conversation
|
Please also make sure this works in No Logic. It broke on no logic seeds previously and has since been fixed so this behavior can break that again. |
|
With minimal testing, no logic seeds seem to generate without issue |
specifically just use the important check hint distro. This generates one for every region. |
|
Okay they generate just fine but there is a slowdown in generation time due to converting the filter object to a list seems pretty taxing so I need to figure that out Other than that, nothing actually breaks for both glitchless and nologic |
might all well check the full trifecta with advanced lol a slowdown sounds really weird. It never did that before. Is it something to do with not being able to determine location locked items? |
|
Ah, I did miss that you were using My first recommendation is to not use Also if you are relying on the debugger to assess "speed of execution" I recommend figuring out how to set up a profiler for Python and use that to determine where the code hotspots are. Or at least rely on time logging in a non-debug environment. I don't really know how to set up a profiler for Python, my IDE just does all the backend work to set one up for me I'm pretty sure. |
Thanks for the suggestions. I set up cProfile (standard library) and snakeviz (prof visualizer). I ended up moving the 2nd will help if that condition is met EDIT: Yeah confirmed this fixes the issue |
flagrama
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You might even be able to get away with just the first assignment of filled_locations and use that in place of all of these world.get_filled_locations() calls since nothing here looks like it should be modifying what gets returned by that function to me. But I do only have the context of this small section of one file here.
Went with what you said yeah. It's definitely better. Had to write |


Closes #2501 if accepted
This PR does a couple things. First, a check has been added to ensure that areas that have all locations already hinted cannot be selected for an important check hint. Once the hinted location has been selected, it is then added to the
checkeddict directly (in addition toHintAreabeing added as well) to ensure that other hint types cannot hint that location.Testing
'Wasteland Chest'as an always hint on S9 settings. Checked to make sure thatHintArea.HAUNTED_WASTELANDwas not added totop_level_locations. Turned Overworld Skulls on and re-ran test to make sureHintArea.HAUNTED_WASTELANDwas now included.HintArea.HAUNTED_WASTELANDwith normal S9 settings without Wasteland being hinted already. Checked to make sure that'Wasteland Chest'was marked incheckeddict.