Skip to content
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

Crash in ep5 with gap effect [spoiler] #93

Open
drojf opened this issue Aug 3, 2022 · 4 comments
Open

Crash in ep5 with gap effect [spoiler] #93

drojf opened this issue Aug 3, 2022 · 4 comments
Labels

Comments

@drojf
Copy link
Contributor

drojf commented Aug 3, 2022

We had a crash reported at this scene in episode 5:

20220803162506_1

Gaap says this, drops to the bottom of the screen (obviously meant to represent her putting a hole under herself) and then the application crashes. I can't seem to get past it. Any tips?

These are the text files the pinned messages said to post after having it crash in debug mode. I'm running it on Windows, and the laptop I'm using is an ROG Strix, if that's the name I should be looking for.

stderr(3).zip

langen:dwave_eng 0, "voice\32\53700095.ogg":^  ......Leave it to me.  I'll handle it."^\

textoff

ut_mld l,":b;sprites\gap\1\gap_a11_warai3.png",80

wait 500

mov %Free2,5
for %Free1 = 1 to 32
  msp msp_l,0,%Free2
  print 1
  inc %Free2
next

se1 52
mcl l,0
bg black,28
bg new_g1f_s1bp,0
_ld r,":b;sprites\bea\1\bea_a11_majime4.png",22

I thought this was due to the animation effect not having any delay in it. But with this code:

langen:dwave_eng 0, "voice\32\53700095.ogg":^  ......Leave it to me.  I'll handle it."^\

textoff

ut_mld l,":b;sprites\gap\1\gap_a11_warai3.png",80

wait 500

; mov %Free2,5
; for %Free1 = 1 to 32
;  msp msp_l,0,%Free2
;  print 1
;  inc %Free2
; next
se1 52
mcl l,0
bg black,28
bg new_g1f_s1bp,0
_ld r,":b;sprites\bea\1\bea_a11_majime4.png",22

it still crashes

This version ended up fixing it

langen:dwave_eng 0, "voice\32\53700095.ogg":^  ......Leave it to me.  I'll handle it."^\

; textoff

; ut_mld l,":b;sprites\gap\1\gap_a11_warai3.png",80

; wait 500

; mov %Free2,5
; for %Free1 = 1 to 32
;  msp msp_l,0,%Free2
;  print 1
;  inc %Free2
; next
; se1 52
mcl l,0
; bg black,28
; bg new_g1f_s1bp,0
; _ld r,":b;sprites\bea\1\bea_a11_majime4.png",22

(the mcl is to clear a sprite from earlier)

Most (some?) of the for loop animations in the game look like this:

 for %Free1 = 1 to 7
	resettimer
	add %Free3,%Free1
	sub %Free4,%Free1
	msp msp_l,%Free3,0
	msp msp_r,%Free4,0
	print 1
	waittimer 20
 next

Ideally, I'd go through and fix all the for loop animations to insert the wait. However it is strange that most people can play the game without crashing, even without the delay in for loop animations. BUt due to the above I don't think this is the real problem

@drojf
Copy link
Contributor Author

drojf commented Jan 9, 2023

We had another report of the same crash. here are their log files.

They were using the normal script with the experimental engine/exe.

stdout-stderr-2023-01-10.zip

  • My game is crashing in the same place repeatedly in Episode 4 when Dr Nanjo's sprite is quickly pulled to the bottom of the screen
  • The bug occurs just after ...Even Kyrie had no way of eluding Gaap's capture is shown on the screen and I click next to move to the next panel
  • My operating system is Windows
  • I installed the game 1 Month ago
  • I am running the Full Patch with the experimental bug fixer
  • I installed the game using the Automatic Installer
  • My computer is a Gaming Laptop

@drojf drojf changed the title Crash in ep5 [spoiler] Crash in ep5 and ep4 with gap effect [spoiler] Jan 9, 2023
@drojf drojf changed the title Crash in ep5 and ep4 with gap effect [spoiler] Crash in ep5 with gap effect [spoiler] Jan 9, 2023
@drojf drojf transferred this issue from 07th-mod/umineko-question Jan 9, 2023
@drojf
Copy link
Contributor Author

drojf commented Jan 16, 2023

Another report of this issue on the Experimental EXE:

  • The game crashes consistently in one spot
  • The bug occurs just after "Of course! ...I'll blow a hole through closed room tricks, alibis, and mysteries alike. ......Leave it to me. I'll handle it." is shown on the screen. Then I click forward, Gaap flies down off screen, and it freezes for a few seconds and crashes.
  • My operating system is Windows
  • I installed the game 1 month ago
  • I am running the Full Patch with the Experimental Engine
  • I installed the game using the Automatic Installer
  • My computer is a Gaming Laptop (i7 11800H, RTX 3060 Laptop)
    I included the save file this time, since when I had an error with the first game I overwrote it with someone else's fix before I was able to test the new fix.

save-and-logs.zip

0.zip

@drojf
Copy link
Contributor Author

drojf commented Jan 16, 2023

Since I couldn't reproduce it on my end, I asked the user to try some things. The following still crashed:

Adding a mcl

textoff
+mcl l,0
ut_mld l,":b;sprites\gap\1\gap_a11_warai3.png",80

Using lsp instead of ut_mld and using sprite slot 801:

textoff
mcl l,0
lsp 801,":b;sprites\gap\1\gap_a11_warai3.png",0,0

wait 500

 mov %Free2,5
 for %Free1 = 1 to 32
  msp 801,0,%Free2
  print 1
  inc %Free2
 next
se1 52
csp 801
bg black,28
bg new_g1f_s1bp,0
_ld r,":b;sprites\bea\1\bea_a11_majime4.png",22
advsetwindow "-1"

commenting out the bg commands and last ld command:

ut_mld l,":b;sprites\gap\1\gap_a11_warai3.png",80

wait 500

 mov %Free2,5
 for %Free1 = 1 to 32
  msp msp_l,0,%Free2
  print 1
  inc %Free2
 next
se1 52
mcl l,0
;bg black,28
;bg new_g1f_s1bp,0
;_ld r,":b;sprites\bea\1\bea_a11_majime4.png",22
advsetwindow "-1"

Commenting out just the animation part prevented the crash

textoff

;ut_mld l,":b;sprites\gap\1\gap_a11_warai3.png",80

;wait 500

; mov %Free2,5
; for %Free1 = 1 to 32
;  msp msp_l,0,%Free2
;  print 1
;  inc %Free2
; next
se1 52
mcl l,0
bg black,28
bg new_g1f_s1bp,0
_ld r,":b;sprites\bea\1\bea_a11_majime4.png",22
advsetwindow "-1"

@drojf
Copy link
Contributor Author

drojf commented Jan 17, 2023

I forgot to read my own comment from earlier about the missing waittimer.

I made the following changes, which worked:

  • Ensure the sprite never completely exits the screen (the last frame of the animation just has gap's head peeking out, then I clear the sprite after the animation finishes)
  • Add a waittimer
  • Compensate for the waittimer slowing the animation rate, by reducing the number of frames and increasing the amount of movement per frame

I set the waittimer to 30 which results in a choppy animation, just to be on the safe side, since I'm not sure if setting it too low results in the waittimer having no effect at all.

 ut_mld l,":b;sprites\gap\1\gap_a11_warai3.png",80

 wait 500

- mov %Free2,5
- for %Free1 = 1 to 32
+ mov %Free2,20
+ for %Free1 = 1 to 11
+  resettimer
   msp msp_l,0,%Free2
   print 1
-  inc %Free2
+  add %Free2,4
+  waittimer 30
  next
 se1 52
 mcl l,0
+print 1
 bg black,28
 bg new_g1f_s1bp,0
 _ld r,":b;sprites\bea\1\bea_a11_majime4.png",22
 advsetwindow "-1"

These changes have not yet been put into the script(s).

Also, there may be more animations like this in the answer arcs. I'm undecided whether I should try to fix them as well, as I don't think we've had reported crashes on those yet.

  • Update NVL script
  • Update ADV script
  • Merge changes into experimental scripts

@drojf drojf added the bug label Jan 17, 2023
drojf added a commit that referenced this issue Jan 17, 2023
# Conflicts:
#	0.utf
drojf added a commit that referenced this issue Jan 17, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant