Basic Questions and Answers Thread

Discussion in 'Discussion & Q&A' started by Malevolence, Jul 7, 2009.

  1. NayTheGamer

    NayTheGamer next release coming on 3rd of November 2023 In Limbo

    Joined:
    Sep 30, 2022
    Messages:
    83
    1. Pal_FadeFrom to PaletteFadeOut
    2. Pal_FadeTo to PaletteFadeIn
    3. DelayProgram to WaitForVBla
    4. EniDec.w to EniDec
    5. The art and mappings files (obviously)
    6. Playsound_Special With Sound having its capital letter (because my disassembly is quite fussy about capital letters and non capitals)
    7. ShowVDPGraphics to TilemapToVRAM
    thats it.
     
  2. faith

    faith Well-Known Member Member

    Joined:
    Aug 26, 2013
    Messages:
    1,212
    Okay, those look correct. Is your data compressed properly?
     
    Last edited: Dec 21, 2022
  3. NayTheGamer

    NayTheGamer next release coming on 3rd of November 2023 In Limbo

    Joined:
    Sep 30, 2022
    Messages:
    83
    sorry for the late reply.
    Yes because it try's to load the art but gets overwritten by the SSRG Screen Which is still in the VRAM
     
  4. NayTheGamer

    NayTheGamer next release coming on 3rd of November 2023 In Limbo

    Joined:
    Sep 30, 2022
    Messages:
    83
    this question is both related to rom hacking, the sonic retro splash screen and Sonic Retro itself :
    I Wonder if I could put in the Sonic Retro splash screen in my hack. I Have Both an Info account which is been around for a year, and I have A fourms account on sonic retro but that one is unverified so
    I'm not too sure :/
     
  5. RobiWanKenobi

    RobiWanKenobi Python Developer Member

    Joined:
    Sep 10, 2022
    Messages:
    35
    Location:
    United States
    You need to be a tech member on Sonic Retro to get the code, if you recreate it, that is fine. Basically what I am saying is the code isn't given out.
     
  6. NayTheGamer

    NayTheGamer next release coming on 3rd of November 2023 In Limbo

    Joined:
    Sep 30, 2022
    Messages:
    83
    ah ok (I'm no good at coding XD)
    EDIT: Actually I might be able to recrate it because you can just have the actual splash screen as the BG Then sonic or tails or whatever character as the FG (I Might just do a static one to save work)
     
  7. NayTheGamer

    NayTheGamer next release coming on 3rd of November 2023 In Limbo

    Joined:
    Sep 30, 2022
    Messages:
    83
    welp, here we go again.
    this Bug is were everything is fine but not for objects as shown in this screenshot (how can I Fix this Bug?)
    blastem_20221222_171907.png
     
  8. RobiWanKenobi

    RobiWanKenobi Python Developer Member

    Joined:
    Sep 10, 2022
    Messages:
    35
    Location:
    United States
    Change the mappings for the object, it uses the level art which you have changed, so it is out of order. SonMapED or flex 2 will help.
     
  9. NayTheGamer

    NayTheGamer next release coming on 3rd of November 2023 In Limbo

    Joined:
    Sep 30, 2022
    Messages:
    83
    oh alright
     
  10. faith

    faith Well-Known Member Member

    Joined:
    Aug 26, 2013
    Messages:
    1,212
    What's funny is that the link to the splash screen in the lounge is dead and the only way a techie can get it now is with a Sonic 2 port someone made lmao. It was due to be replaced, but it never happened.
     
  11. NayTheGamer

    NayTheGamer next release coming on 3rd of November 2023 In Limbo

    Joined:
    Sep 30, 2022
    Messages:
    83
    I could just recreate the code for it somewhere, but I'm no good at coding ASM Which is referring to me needing to learn ASM Language.
     
  12. Giovanni

    Giovanni It's Joevanni, not Geovanni. Member

    Joined:
    Apr 16, 2015
    Messages:
    280
    Location:
    Italy
    In an attempt to fix an error with Time Overs in my most recent hack, I found, quite possibly, one of the most bizarre errors.

    But anyway, disabling time overs. I figured "Hmm, let's stop the timer from updating!"

    So, I made it so that when the timer is at 9:59, it would stop updating, by clearing $FFFFFE1E, the time updating flag, but it comes with a flaw of its own: the signpost artwork won't load.

    broken signpost.gif

    So, I look at SignpostArtLoad, to find a check for $FFFFFE1E, and, sure enough, there's one!

    So I remove the check.

    upload_2023-1-10_13-7-3.png

    Somehow, removing the check will cause the pattern load cue for the Title Cards to just... not function. This will also happen if significant enough edits are made to the instruction (I haven't figured out the extremes, but just editing the RAM address of the tst.b instruction that checks for $FFFFFE1E may cause the bug to occur).

    I have managed to replicate the error in an otherwise blank Sonic 1 disassembly, so these are the only changes I made to the game to trigger this.
     
    Last edited: Jan 10, 2023
  13. faith

    faith Well-Known Member Member

    Joined:
    Aug 26, 2013
    Messages:
    1,212
    The reason for this is basically due to a clash with the boundary settings.

    When you first approach the signpost, the left boundary is set to the right boundary - 256. That is constantly checked as long as the timer is active. When you removed the timer check, you basically made it so that it's always applying that boundary once you've approached the signpost, no matter what. This boundary check also acts as a way to check if the signpost PLCs are already loaded, since if the boundary wasn't set, then the PLCs probably weren't loaded yet.

    When you touch the signpost, it clears the timer flag, updates the boundary again, at where the signpost is, and loads the title card PLCs. The timer flag check in SignpostArtLoad was supposed to prevent the new boundary setting here from being overridden. However, with the check gone, SignpostArtLoad will detect that the boundary is no longer at the right boundary - 256, and thus override the title card PLCs, while also messing up the left boundary.

    For a quick fix, in SignpostArtLoad, change the "beq.s" after the left boundary comparison to "ble.s". That way, even if the signpost overrides the boundary when touched, since the new value will be greater, the change to "ble" makes it so that the signpost PLCs won't get reloaded. AKA, it changes the check from if the left boundary is just set to that point to if the left boundary is set at that point OR BEYOND.
     
    Giovanni likes this.
  14. B.T.H Yeehaw!

    B.T.H Yeehaw! Newcomer Trialist

    Joined:
    Jun 20, 2020
    Messages:
    9
    Location:
    City Streets Zone
    EDIT: Ignore this entirely! Turns out that me deleting tiles was maddening GHZ's second art block, I just added more tiles on the first art block, which fixed up everything! If you want to read the rest of the stuff, go ahead.

    (Ignore the fact that for some reason the images are large, I'm new to this sort of thing, and I'll be on my last post after this one, so I don't think I'll be able to change it.)

    So, I'm editing Green Hill Zone to make a new Zone based off of it with a new palette, new tiles, new chunks, and to make some of the new tiles work, I decided to delete some of the unneeded tiles that, well, I didn't need, which would prove to screw me over later down the line. So after I finished fixing up some of the platforms to work with the deleted tiles, for SOME odd reason that I can't wrap my head around, the tiles and stuff look fine in SonLVL.
    (Don't mind that one screwed up tree, I haven't fixed it, yet.)
    SonLvlFHZPreview.png

    But ingame, most of the tiles are wonky and make NO sense!

    InGameFHZ.png

    What in the world is happening in game? It's like someone just put... EVERYTHING in a blender, if anyone who's smarter at this than me can figure this out, I would be most pleased.
     
    Last edited: Jan 25, 2023
  15. RobiWanKenobi

    RobiWanKenobi Python Developer Member

    Joined:
    Sep 10, 2022
    Messages:
    35
    Location:
    United States
    I think you have one of a few issues:
    1, you have too many tiles
    2, your compression for blocks are broken
    3, the level loader isn't working correctly
    4, GHZ is weird with art loading with it.
     
  16. Inferno

    Inferno Rom Hacker Member

    Joined:
    Oct 27, 2015
    Messages:
    128
    Location:
    Sky Base Zone, South Island
    May I suggest merging the art blocks? There's numerous tutorials to do so, and it will prevent issues like this in the future.
     
  17. Giovanni

    Giovanni It's Joevanni, not Geovanni. Member

    Joined:
    Apr 16, 2015
    Messages:
    280
    Location:
    Italy
    Word of warning! Deleting all unused tiles mindlessly can and will cause issues with objects that specifically use the unused tiles in question. Specifically for GHZ, objects you should be mindful of before deleting all unused tiles include the following:
    - Platforms (they use their own graphics, which are stored among the level graphics)
    - Crumbling platforms (use a LOT of otherwise unused art tiles)
    - The large moving platforms (however, I personally feel it is an object with little to no use case, so if you delete its VRAM to use it for something else, you're only doing good in my book)

    And possibly more. In general, level editors won't be able to detect if an object actually uses unused tiles, so it will just delete them along with the truly unused ones, leading to the above mentioned graphical issues.