SA1_Chars icon indicating copy to clipboard operation
SA1_Chars copied to clipboard

Small Consistency Addition Issues

Open TheWonderFromDownUnder opened this issue 6 years ago • 8 comments

So, this is an evidently obscure issue that would understandably go unnoticed, but I still felt it was worth pointing out.

The consistency addition feature works as it should on a single save file, but should someone then go to a new save file, or otherwise revert the characters' upgrade status in the same session, the characters' jumpball models and textures will still appear with the upgrades even when they're not supposed to.

Screenshot (2261)

Screenshot (2264)

Also, not related to the above issue, but could be considered a consistency issue, Sonic's Light Speed aura doesn't have a part for his shoe stretch.

Screenshot (2273)

I imagine it wouldn't be a simple thing to add, as the aura doesn't seem to be split into parts like his main model is, but the addition of it would be appreciated.

TheWonderFromDownUnder avatar Jun 20 '19 13:06 TheWonderFromDownUnder

Re: the first issue, indeed the mod doesn't account for that. It checks whether Sonic's shoes are swapped in the main model every frame and replaces the jumpball accordingly, but it doesn't reset to the original jumpball even if the models change again. To resolve this, an "else"condition could be added to each of the OnFrame checks.

Also, rather than doing the replacements every frame I'd suggest using a boolean value and flipping it when the models are swapped. In addition, rather than checking the shoe model directly, one could check story flags, though that would require more conditions in OnFrame.

PiKeyAr avatar Jun 21 '19 04:06 PiKeyAr

The reason the code is in an OnFrame is because the shoe swapping is done in a way that's not really friendly to just having a normal check for it and still functioning the way I intend for it to. I tried before and it didn't work. Additionally, I'm avoiding using flags for checking because then the mod would not function correctly with the Disable Upgrades mod. OnFrame was the best way to handle it. I will add in the else checks since I didn't even think that'd be an issue when swapping save files though.

As for the Light Speed model being stretched, it could be done but that's gonna require another rewrite of the function for the stretchy shoes and...I'm still not sure how the morphs there work exactly. On top of that, since the LSDash model is handled a bit differently, I'm not sure throwing it into that function will work well either. I'll take a look at it because I'd love to add that in, but it may not be a feasible thing in the end.

ItsEasyActually avatar Jun 21 '19 10:06 ItsEasyActually

Doing the condition checks in OnFrame isn't a big issue, however you're also effectively changing pointers every frame, which I think is a little suboptimal. It would make sense to have the swapping done only once, after a change in the conditions is detected. If you want I can work out a solution for this during the weekend.

PiKeyAr avatar Jun 21 '19 12:06 PiKeyAr

Hey, so, the new update looks pretty good, but i just noticed Tails' upgrade jumpball has the wrong texture now?

Screenshot (2305)

TheWonderFromDownUnder avatar Jun 23 '19 18:06 TheWonderFromDownUnder

That's been fixed. Please update the mod.

I also want to point out that I'm a dingus and forgot to add in the else checks for the initial issue pointed out here. It'll be updated sometime soonish with those included. Currently in the process of fixing the entire repository after updating the submodule broke everything.

ItsEasyActually avatar Jun 23 '19 19:06 ItsEasyActually

Oh, yeah, it's fixed now. On the topic of the initial issue, another issue with model updating seems to have cropped up.

If the game loads Sonic's model with his pre-upgrade shoes first, Super Sonic's shoes will also appear as such, even when it's supposed to show the LS shoes.

Screenshot (2311)

Screenshot (2312)

TheWonderFromDownUnder avatar Jun 23 '19 20:06 TheWonderFromDownUnder

That's...huh. I'm not sure how to fix that behavior, but I'll definitely be looking into it. @PiKeyAr will likely fix it if he comes up with that alternative solution to the whole replacement stuff he mentioned earlier.

ItsEasyActually avatar Jun 23 '19 20:06 ItsEasyActually

I believe it's fixed with the else checks that I've had on my fork for a while, but I'm still not a fan of the overall implementation of these consistency additions, particularly the introduction of edited textures to the original texture archives and the switch to PVMX. As ItsEasyActually expressed no interest in making these optional or reverting to the previous setup, I'll be removing the consistency fixes in favor of original textures on my fork soon, so I'll submit a pull request before that.

PiKeyAr avatar Aug 04 '19 04:08 PiKeyAr