• Content count

  • Joined

  • Last visited

Posts posted by seibaby

  1. Free space usage might be an issue, but that is pretty simple to work around since the source is available for the MSU-1 patch.

    I don't know how the extra music was added, but unless it changes the IDs of the other tracks, it should be fine. It'll just play with the SNES's sound chip like normal if the PCM audio is missing.


  2. Field palettes are set via event upon character creation or other events (merchant/soldier Locke, Gerad, etc). So yeah, you need to hex edit the event(s) that set Shadow's palette. He's first seen in South Figaro, but is not a guarantee that you first run into Shadow there. In fact is possible to skip ever seeing him until he joins you in Albrook.

    Have a perusal of the event script available at the FF6h wiki.



  3. You probably haven't bricked your ROM, but if you did, congratulations on taking the first step on the path of the modder. Now start clean and break some more stuff! :)

    Just FYI, the random encounter patch v3 is broken and doesn't work. I'll be updating the thread soon with v4 which should work as intended.




  4. 9 hours ago, kjinn22 said:

    Is that RNG patch being tested by anyone else? I actually don't have any problems with how it performs personally, but the 9 steps until encounter in dungeons part doesn't seem to be accurate. Sometimes it'll just be 4 or 5 steps until an encounter.

    Which dungeons have you observed this in?


  5. I have tried in the past to figure out how to set the parent map for Warp in Ancient Castle/Cave to the Figaro prison, to no success.

    Not to say it's impossible, but there may be another way; an event driven Warp point like the one in Phoenix Cave.


  6. It was inevitable, so here we go. While fixing my broken random encounter patch, I discovered a little bug with Random Number Good: overworld encounters are not using Think's RNG. What should have been a call to the RNG to determine whether an encounter should be triggered, is instead a static number, causing overworld encounters to happen with astounding regularity. I forgot how the vanilla RNG worked; it does in fact return a different number each time, but it's using a tainted version of vanilla's RNG system (since Think's code overwrites part of the random number table vanilla used). It may still be random "enough" for encounter purposes, but it's not what it should be.

    The fix is just one byte long, but I'll let think share an updated version of the patch here for inclusion in the next point release. I'll instead share a set of updated patches for the random encounter mod, with the fix baked in, so that it can be properly tested this time.

    Patches (updated to v4)


    Apply directly to your 1.9.

    EDIT: With Nowea's help, I re-jiggered some numbers and also went ahead and applied the encounter mod to the overworld as well. This should have the effect of setting the minimum number of steps before an encounter to 9 in dungeons and 5 on the overworld (excepting high encounter areas like forests and WoR deserts). Obviously, this will also fix the faulty overworld encounter logic, so you should notice a difference in overall encounter rate there (increased, according to Mishrak). Dungeon encounter rates should remain the same.


  7. That should work. Tthere might be other issues that crop up with the ending fix, since it clearly wasn't tested properly, but if that happens you can just switch ROM again. I don't think it should make any difference which patch you apply first, but I would apply BNW first and the PAL patch after. Note that the IPS changes a whole lot more than what is described in the code, so you're probably best off sticking with the code patch I posted.

    I'm not entirely sure what the issue is that the ending fix is supposed to fix. It disables the "wait for music" event command. My hypthesis is that, due to running the game in 50 Hz, the event queue and music becomes desynchronized, meaning that the "wait for music" event command hangs the game, or something. I've never seen the ending glitch in action. I'm not sure why disabling the command causes the Opera to hang, but who knows with FFVI.

    EDIT: re-reading that thread, I don't think the issue is that the Opera HANGS, so much as that the events don't follow the music because the "wait for music" event command is disabled. Desynchronization between music and cutscenes is to be expected from running the game in 50 Hz anyway, there's really not much that can be done about that except rewriting all the cutscenes to be shorter. :P


  8. You can remove the ending fix from the patch by commenting out the relevant code, namely lines 45-67.

    Also, seeing how it's easier for me to just rewrite the patch for compatibility with my favored assembler instead of learning how to use WLA-DX, I went ahead and did just that. :P
    You can copy the following into a new textfile and save it as xkas-palfix.asm (for example), then download xkas 0.06 from here and follow the above procedure, except you don't have to search documentation for commandline syntax. Just type "xkas xkas-palfix.asm ff3.smc" (assuming your ROM file is named ff3.smc).

    ; final fantasy 3 pal fix by d4s in 2005! YAY!
    	hirom                     ; Don't change this
    ;header                    ; Uncomment if your ROM has a header
    !freespaceC0 = $C0FEE8    ; Requires X bytes of free space in bank C0
    !freespaceC3 = $C3F6F0    ; Requires x bytes of free space in bank C3
    	; Fix menu bg layer 2
    org $C31454
      JSR Bg2MainScreenEnable
    	org !freespaceC3
      LDA #$17
      STA $212C
      JMP $D263
    	;Uncomment the following to enable the ending fix (breaks Opera?)
    ;org $C09A4C
    ;  dw CheckMusic
    	;org $C0B8BF
    ;  db $80                        ; $C0/B8BA A5 EB       LDA $EB    [$00:00EB]   A:0000 X:0188 Y:0000 P:envMxdiZc
                              ; Overwritten by the above (?)
    ;org !freespaceC0
    ;  LDA $213F
    ;  AND #$10
    ;  BNE AdvanceOneEvent        ; Dont check music if in PAL mode (will crash otherwise)
    ;  LDA $EB
    ;  CMP $2141
    ;  BEQ AdvanceOneEvent
    ;  RTS
    ;  JMP $B8C2


  9. I will maintain that, while the Dragon's Den was a shitty dungeon, the Soul Shrine, for all it's flimsy pretext, was a fun boss rush that brought something unique.

    I have it on record that BTB admits sequential fights are the most interesting fights in the game. So...


    staff pls put sole shrien in


  10. Don't worry, that comment just seems to be wrong. The assembler directive is correct; 48 banks times 64 kB = 3072 kB, or 24 Mbit.

    WLA-DX is an assembler. It's a program you use to transform human-readable assembly code like that text file into machine-readable byte code like what's in the ROM. Since you found the program and the documentation, you're well on your way to figuring out what to do. If you found only the source code for WLA-DX, I can understand your confusion. What you want is the compiled program, found here:

    Basically what you need to do, is put the WLA-DX exe, your ROM, and the .asm file all in the same folder, open up a command prompt (in explorer, shift-right click in the folder), and type in the command to tell WLA-DX to patch your ROM with the .asm file. I can't guide you step by step, because I've never used WLA-DX, but the command syntax should be explained in the documentation.


  11. That patch is unfortunately incompatible with BNW as-is. It requires free space in the menu code, which is used by BNW for its esper bank system. It can be solved by opening up the .asm file included in the archive in notepad, and changing the offset at line 31 from F091 to F6F0. Then use WLA-DX to assemble the patch. I don't believe it requires any other modifications to be compatible.