-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Fix crash when trying to test map in the editor #34880
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
Conversation
|
very curious to hear why this is being pr'd 30 minutes after i self assigned the issue for investigation
please point out the exact mechanism of this failure, this text description is insufficient for my understanding of the issue |
Already answered on discord gonna skip over over that
there's 2 failure mechanisms here
|
|
|
972be5e to
689cc27
Compare
Running that there caused a test failure due to modifying drawables' transforms outside the update thread
…jects` and `markPreviousObjectsHit`
|
There was one more test failure due to a mismatch in which objects had a result applied and which ones were received by the score processor, which could lead to the score processor never receiving the results for some hitobjects and it's |
`LastOrDefault()` is arbitrary, and I hope this doesn't matter for anything, because if it does, then that's utterly *horrifying*.
bdach
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.
horrible hack but the previous code was already a hack so I'm not going to split hairs
peppy
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.
Just a minor one.
Co-authored-by: Dean Herbert <[email protected]>
fd193c4 to
4ed72ef
Compare
Closes #34846
Turns out the editor player was relying on the 1-frame delay before hitobject drawables would become alive prior to #34830.
Issue here was that with hitobjects becoming alive immediately, they already had a chance to update their state to "miss" before the player can manually set their result now.
This lead to a null pointer exception in the playfield's update look due to
JudgementResult.RawTimebeing null.Assigning a time to the result did fix the crash but the logic of marking the objectse was still broken, so tried to hook things up to update before the hitobject has a chance to update it's own state. Not 100% confident in this fix quality wise though so maybe reverting #34830 is a better option.