øAslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&action=profile;u=363;area=showposts;start=15e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/indexbfd3-2.htmlslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&action=profile;area=showposts;u=363e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/indexbfd3-2.html.zx<–h^ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈà•¤ÓÌOKtext/htmlISO-8859-1gzip0|ÖÓÌÿÿÿÿÿÿÿÿWed, 11 Mar 2020 07:58:12 GMT0ó°° ®0®P®€§²ð®;–h^ÿÿÿÿÿÿÿÿ#ÓÌ Show Posts - 13375K31C43R

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - 13375K31C43R

Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 »
16
Final Fantasy V Research & Development / Re: FFV Viewer
« on: March 02, 2018, 12:03:29 PM »
First of all, great work on this!

Second, you know what I would absolutely love this to have? An event script editing mode. I know there's still some R&D to be done in the area of event scripts, and I have some important school stuff to get out of the way before I help with that, but please make it happen! :childish: :cookie:

17
perhaps the first Imp check is to stop Vanish status from guaranteeing a hit for magical attacks and skipping over the second check?

Astute; the target having Vanish status is a requirement to get to that point in the code. In fact, now that I think about it, Master ZED's Bug FAQ mentioned that if Imp was cast on a Vanished enemy, that enemy's graphic would change to Imp even if the enemy is immune to Imp status. Maybe that has something to do with it?

:edit:
After further testing, I can confirm this to be true.

any way you could post pseudocode of the relevant block(s)?  i sadly don't speak GBAese, let alone the ported game dialect of it, where 70% of instructions are nonsensical misdirects.  it'd make my head explode.

The whole structure of the port is to give it a SNES-like function as well as look. So, for instance, there are special addresses in RAM that the GBA uses for the "accumulator" and "X/Y registers". It also handles SNES processor flags manually instead of relying on its own processor flags which have largely the same purposes (e.g. Carry bit, Zero flag).

Since it's written that way, I think it would be most suitable to write the SNES equivalent to what is in the code.

Code: [Select]
LDA $B3
BPL no_vanish

LDA $3EE4,Y
BIT #$10
BEQ no_vanish

LDA $11A4
ASL A
BMI force_clear_vanish

LDA $11A2
BIT #$02
BEQ no_idp

LDA $3AA1,Y
BIT #$04
BNE force_clear_vanish

no_idp:
LDA $11AA
BIT #$20
BEQ check_physical

LDA $11A4
BIT #$04
BNE check_physical

LDA $331C,Y
BIT #$20
BEQ force_clear_vanish

check_physical:
LDA $11A2
LSR A
JMP miss_if_carry_set

force_clear_vanish:
LDA $3DFC,Y
ORA #$10
STA $3DFC,Y

no_vanish:
LDA $11A3
BIT #$02
BNE no_reflect

LDA $3EF8,Y
BPL no_reflect

REP #$20
LDA $3018,Y
TSB $A6
JMP miss_and_exit

no_reflect:
LDA $11A2
BIT #$02
BEQ no_idp2

LDA $3AA1,Y
BIT #$04
BNE force_miss

no_idp2:
LDA $11A2
BIT #$04
BNE no_dead_xor_undead

LDA $3EE4,Y
EOR $3C95,Y
BPL force_miss

no_dead_xor_undead
LDA $11AA
BIT #$20
BEQ no_imp

LDA $11A4
BIT #$04
BNE no_imp

LDA $331C,Y
BIT #$20
BEQ force_miss

no_imp:
LDA $B5
CMP #$00

That's as much as I'll include because the rest is detailed nicely in your bank C2 doc.

18
After a little more scrutiny, my best guess as to its real purpose is that it's meant to fix the "Rippler hits even when it misses" bug, because the special data byte that Terii Senshi's patch changes to fix that bug is not changed in the GBA version from the original SNES version.

re assassin: Yes, there is an Imp check in the same vicinity as an Instant Death Protection check. The one that actually causes this problem, though, is right after the "Dead XOR Undead" check. I don't know if the former even does anything at all because I don't know any spells that pay attention to IDP and Imp status at the same time (except I think there might be one that inflicts Countdown status, but who actually cares?).

19
In FF6 Advance, there's an extra bit of code that checks if a spell affecting Imp status without the "lift status" bit set is cast on a target that is immune to Imp status and, if so, makes the spell fail completely regardless of other effects. This check does not exist in the SNES version of the game.

This check seems unnecessary to me, and in fact it creates a bug with those spells. Specifically, the spells it affects are: Bad Breath/Sour Mouth, Rippler, Mind Blast, Diabolic Whistle/Evil Toot and Disaster. Those spells inflict statuses other than Imp, but don't do anything in the Advance version as long as the target is immune to Imp. Note that in the case of Rippler, the caster being immune to Imp does not matter, just the target. I can't think of any good reason why Square Enix would add this to the game.

20
Game Modification Station / Re: GBA LV reset glitch
« on: February 27, 2018, 10:38:21 AM »
Might seem a bit far-fetched, but the glitch being absent in the japanese version might have some connection with the menu that pops up after choosing new game (the menu asks if you want kanji to be used, or if everything should be written in hiragana). Obviously that would be obsolete for any non-japanese version, so it was cut out. Maybe by doing that, either a certain code was accidentaly erased as well or the shifted offsets caused the glitch. Just my thoughts.

That's exactly what it is. In fact, that menu's code is still there in the other versions, but it's never used (except maybe for the European release, which has a similar menu for language selection).

21
Game Modification Station / Re: GBA LV reset glitch
« on: February 27, 2018, 02:23:40 AM »
Never mind, I have debugged the Japanese version and I can confirm that this bug does not exist there.

So, I shall gladly release my new patch that fixes this bug in the US and European versions!

22
Game Modification Station / Re: GBA LV reset glitch
« on: February 27, 2018, 01:26:07 AM »
Sheesh, every time I ask for help with something, I end up doing it myself shortly afterwards... :eek:

Anyway, I figured out how to fix this glitch, but before I release the patch I want something confirmed: based on my testing, it seems the glitch exists in the US and European releases, but not the Japanese. Is this correct?

23
Game Modification Station / Re: New patch: Chain of Command Bug fix
« on: February 26, 2018, 07:30:20 PM »
:bump: GBA port!

24
Game Modification Station / GBA LV reset glitch
« on: February 25, 2018, 06:49:50 PM »
I've been investigating a fix to the "level reset glitch" in the Advance version of the game. By my understanding, there's a variable in both the SNES and GBA versions that tracks which save file was most recently loaded or saved. However, in the SNES version, the only way to return to the title screen is by using the Reset button; in the GBA version, there's a new Quicksave feature that lets you save (in a special slot) and quit your game and return to the title screen. You can then resume your game using the Continue option.

There's a glitch here that players on the GBA version can exploit. If you save your game in one of the three slots and then Quicksave, then start a new game and get annihilated without ever saving, the game will reload the previously saved game, but your characters (that you found in the new game) will have the same amount of Exp. that they had when you died. This essentially means that you can revert your level 99 characters in Dragons' Den to level 10 or so.

What's interesting is that when you start a new game, the Quicksave data gets erased. My guess is that somehow the "recent save" variable doesn't get cleared properly; however, my efforts to find the cause of the problem in the code have been fruitless. If anyone knows where to find the Quicksave and/or New Game functions, please let me know!

On a side note, I also discovered that the Chain of Command Bug (which I have fixed for SNES) also exists in the GBA version, but I cannot find the relevant code for that either. For that matter, I can't make sense of any of the menu code in the GBA ROM and trying to comparing it to the SNES version is not of much help.

25
Game Modification Station / Re: New patch: Half Knife Bug fix
« on: February 25, 2018, 05:06:55 AM »
:bump: New update!

26
Game Modification Station / Re: New patch: Throwback Glitch fix
« on: February 25, 2018, 05:04:16 AM »
:bump: Ported to GBA.

27
Game Modification Station / Re: C. V. Bug-Fix Comp and C. V. Script Fix
« on: February 22, 2018, 03:05:47 PM »
Fantastic!! Any chance we will get to see GBA bugfix compilation in the future?

Maybe. I'll have to find all of the GBA patches that are available in order to do that, though. To my knowledge, Novalia Spirit and I are the only ones that have developed them.

28
General Discussion / Re: State of the Sketcher
« on: February 22, 2018, 01:14:38 AM »
C'mon guys that is so obvious low productive ... that is even hard to explain.

...

Exactly the same is doing it with a hex editor. Sure you can still do the job, but the cost, the time, the probability to make error is more then 100%. Instead of focusing on the real thing like algorithm, you have to keep track for trivial things like: did I enter the right opcode? Did I used the right addressing? And when you want to insert a few bytes you have to manually reevaluate all relative branches ...

You're probably referring to assembly code, because for everything else I don't have much of a choice. And even for assembly code, I find it best to devise a working algorithm before I start editing, and by working, I mean it does the job the way it's meant to AND fits within the allowed space, or if free space is needed, uses as little as possible. That means I actually write the code in an accompanying text file, including the bytes that make up the commands, before I even start editing. That way I can visualize all the bytes that are there and make sure that the algorithm doesn't use too much space.

I just find that better than writing just an assembly file and using that to make a patch (I'm aware that there's a program out there that's written specifically for that purpose) because A) that means I have to learn the right/best way to write the assembly file to make it work as intended and B) I can't be entirely sure how big the fix is compared to how much space is allowed. Yes, counting and re-counting bytes may be tedious, but it's worth it to make sure it's done right. In most cases I even find it easier to follow, believe it or not, which is important when I manually step through it to check all possible routes that could be taken through the logic.

29
Game Modification Station / Re: C. V. Bug-Fix Comp and C. V. Script Fix
« on: February 22, 2018, 12:43:12 AM »
Hey CV, I just paid a visit to Leet?s page that has his ff3 bugfix patches, noticed that he just updated Stone Cold, as well as quite a few other patches in the last month or so.  Just a heads up

Edit: and I just noticed that he posted them here in the forums as well lol

Those updates over the last couple of months were (almost) all ports of my patches to the GBA version of the game. In most cases the SNES patches went untouched, so CV didn't have to update them in his comp.

30
Game Modification Station / Re: New patch: Hasty T-Rex Glitch fix
« on: February 20, 2018, 11:19:13 PM »
:bump: GBA port!

Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 »