Special screen not loading 100% [4.5.9 - Metroidvania]

K_diesel

New member
When I move too quickly between special screens, I sometimes encounter screens that are not fully loaded. Please let me know if this is a known issue or if I may have missed something in the tutorials. Thank you!
 

Attachments

  • Screenshot_19.png
    Screenshot_19.png
    7.2 KB · Views: 6

smilehero65

Active member
When I move too quickly between special screens, I sometimes encounter screens that are not fully loaded. Please let me know if this is a known issue or if I may have missed something in the tutorials. Thank you!
Just to clarify...
  1. How do you move between special screens? (Inputs/Warps)
  2. What are the settings of your special screens?
  3. How is the screen supposed to look in the UI?
Screenshots and scripts are appreciated. šŸ˜ƒ
 

smilehero65

Active member
I have an assumption; in those screens you should check the Left and Right Edge Flags at the same time. Assuming you're using the improved camera, you may add this piece of code at the start of the newcamerahandler.asm


Code:
;; Don't run this script on static screens (Left Edge + Right Edge) - by bbardi
LDA ScreenFlags00
AND #%00110000
CMP #%00110000
BNE +notStaticScreen
    RTS
+notStaticScreen:
 

K_diesel

New member
I'm using this code to warp to the next script on button press:

Code:
;;; This script can be used as a start game input script.
;;; It will take you to the first screen and set up new continue points based on
;;; that screen's info.

LDA screenUpdateByte
ORA #%00000100
STA screenUpdateByte

    LDA warpToMap

    STA warpMap
 
    LDA warpToScreen
    STA currentNametable
 
    LDX player1_object
    STA Object_screen,x
 
    LDA #$01
    STA screenTransitionType ;; is of warp type

 
    LDA gameHandler
    ORA #%10000000
    STA gameHandler ;; this will set the next game loop to update the screen.
    RTS
 

Attachments

  • Screenshot_20.png
    Screenshot_20.png
    50.8 KB · Views: 3

smilehero65

Active member
I'm using this code to warp to the next script on button press:

Code:
;;; This script can be used as a start game input script.
;;; It will take you to the first screen and set up new continue points based on
;;; that screen's info.

LDA screenUpdateByte
ORA #%00000100
STA screenUpdateByte

    LDA warpToMap

    STA warpMap
 
    LDA warpToScreen
    STA currentNametable
 
    LDX player1_object
    STA Object_screen,x
 
    LDA #$01
    STA screenTransitionType ;; is of warp type

 
    LDA gameHandler
    ORA #%10000000
    STA gameHandler ;; this will set the next game loop to update the screen.
    RTS
I can only think of the fix mentioned above for static screens, and maybe adding the Stop Scroll method suggested on the tile glitch bug on the input script before LDA warpToMap.
 

K_diesel

New member
The colors are correct. This occurs only 1 time out of 5 or so, and only when you are button mashing to skip to the next cutscene.
 
Top Bottom