Kizari / Flagrum

Flagrum is an all-in-one solution for modders, artists, and players of Final Fantasy XV and Forspoken.
GNU General Public License v3.0
75 stars 9 forks source link

autobuild.earc based mods not working #139

Closed chrcoluk closed 4 months ago

chrcoluk commented 7 months ago

Describe the bug I am not sure this is a bug with flagrum, but I have done my best to try and rule out other causes of the problem.

Three mods.

Rebalanced Ascension Mod native flagrum version. Rebalanced Ascension mod legacy version. Lost Treasures.

Rebalanced Ascension flat out doesnt do anything, either version of it when loaded into flagrum, I dont load both at once, and even only tried the legacy version just prior to this bug report out of curiosity, I can confirm manually replacing autobuild.earc in the game directory from the legacy version on nexusmods works.

Lost Treasure, this mod added the items to my inventory, that are auto added, however all of its gameplay elements appear to not be functioning, the easiest one to test being the galdin quay shop as its early game, the outfits are not available to buy there. This mod seems to also patch autobuild.earc.

All my other flagrum mods appear to function correctly and by coincidence none of them patch autobuild.earc.

I have of course verified files in steam and then ran regenerate file index and there was no difference in behaviour.

To Reproduce Install FF15 Install Flagrum Install either rebalanced acsenscion or lost treasures. Doesnt work.

Expected behavior Mods to work

Crash logs No crash

Screenshots n/a

Additional context Flagrum seems to have no logs or debug mode, so not sure of what other info I can provide.

chrcoluk commented 7 months ago

sha1 hash of autobuild.earc 16DA9E1942EBD87E4C6FDBE28EC646B36DBA864E hash of ffxv-s.exe 86266C33415A4686708BC10CD1646E9A63A4AA9C

Kizari commented 7 months ago

This one is very confusing. Your hashes for both ffxv_s.exe and autobuild.earc match mine exactly, yet the ascension rebalance mod and lost treasures both work fine for me (just tested them again right now on Flagrum 1.5.11 to be sure). What's especially odd is that some of them seem to work partially, which means it's clearly not a case of the mod loader failing to apply to the game or anything.

I do wonder if perhaps one of the threads in the mod build process is crashing silently because I forgot to observe it or something, which could be leaving you with a half-complete setup. With just the ascension mod (FMOD version from CurseForge) and nothing else enabled, I end up with:

May be worth checking that you get the same output.

chrcoluk commented 7 months ago

Both files my SHA1 matches yours. Please let me know if you need anything else from me.

Also yep I use various other mods like soft lights, faster title menu, increased snapshot limit, and photo contest removal, those are definitely working as their effects are obvious. From what I can tell none of those mods modify autobuild which is why I suspected that might be the problem.

Kizari commented 7 months ago

I'm wondering if it may be the combination of mods that is somehow causing issues. I have had several reports about the light/shadow mods breaking things for people when used in combination. If you disable all mods and only apply the ascension mod by itself for example, does it work on its own?

chrcoluk commented 7 months ago

Thats how all my testing was today and last night, just with the mods by themselves or even just one mod on its own. I also have now tested with no steam workshop mods loaded as well. But sadly it didnt affect anything.

On my current save at the campsite on the beach, I test ascension mod by checking a 999 AP ability node, to see if it is 333, when it is the only mod loaded, and I test lost treasures by running from there to the shop and is no key items for sale, and this is when it is the only mod loaded.

Kizari commented 7 months ago

That's incredibly bizarre. Identical executable, identical applied mods, presumably same operating system...how could this even behave differently? One other thing I can think to check—when you have at least one mod applied, what is the SHA1 of hid.dll in the same directory as ffxv_s.exe?

chrcoluk commented 7 months ago

Hmm I dont have a hid.dll but cthid.dll is 56972C6D1CE60414F1D1138B737DD61C00D50244

chrcoluk commented 7 months ago

What I can do, probably in about an hour or two is try this on a separate machine, I have already installed ff15 on another machine, I will just install skip prologue and ascension so I can check as quick as possible the ascension grid.

Kizari commented 7 months ago

Hmm I dont have a hid.dll

Not even when one or more mods are currently enabled?

chrcoluk commented 7 months ago

Oh its appeared after I enabled a mod.

The hash is 02F4F7B86A07CC44EF74B50751A2457C5C459397

Ok so I just tested on the other machine.

The other machine was only ever used to allow myself to play with myself on comrades for daily mission, its never had a mod installed prior. No workshop mods.

What I noticed is when I fired up steam, there was an update for the game, even though I only installed the game a few weeks ago. The update was almost instant, so probably only a very small change.

It has the latest flagrum from github, prologue skip and rebalanced ascension, and the AP is still 999 for the most expensive abilities. (the prologue skip is working perfect, fast title screen and I was taken straight to pushing the car).

chrcoluk commented 7 months ago

I thought I did have a workaround at least by packaging a new autobuild.earc to copy over the game file with lost treasure replacements, but it looks like the internal assets themselves are only patches not complete, so thats not doable, game closes itself on title screen.

Is this possibly timing related? Like things on my system might be running too slow or fast and the autobuild.earc memory patch is done too late/early to take effect? I am assuming the game itself handles the memory patching? as flagram isnt required to be running when starting the game.

I looked for a discord link to see perhaps if I could debug on chat, but seems there isnt one. But if there is one please let me know and I will join on there.

Motivated to figure out whats wrong as I really want to use lost treasures.

Kizari commented 7 months ago

Seems your hash for hid.dll is identical to mine as well. Really have no idea what's tripping it up then, since we don't seem to have a single point of difference except for our hardware. There isn't a Discord anymore unfortunately, I withdrew from the public about 8 months ago due to ongoing poor treatment from the fandom. You may be right about the timing or at least on the right track though. I recall having issues trying to get an altered experimental version of the mod loader going where the mods wouldn't load at all unless I randomly logged some messages to a file during the mod loader process. The only way that made any kind of sense to me is if the logging caused a tiny delay and that affected the timing. I wonder if it's possible that this issue wasn't unique to that experimental version, and that it's just less prevalent on the current release version?

chrcoluk commented 7 months ago

I am going to see if I can try and manipulate things like by slowing down my system.

Some info for you.

This PC is a 13700k. Windows 10 64bit 21H2 LTSC, RTX 3080, game on fast NVME Other Machine is a 9900k. Windows 10 64bit 22H2 Pro, GT 1030, game on SATA SSD.

If you end up making some kind of experimental build with timing changes, I am happy to try it, also if I do discover anything I will update this thread.

No worries on the discord and its understandable.

Kizari commented 7 months ago

It's worth noting that on the experimental build I mentioned, no mods were working at all. Not even very basic ones that don't go anywhere near autobuild. Still, I don't have a better lead on this issue right now, and with everything else the same it's about all that makes much sense. Will be very difficult to diagnose or fix without the ability to reproduce on my system, but will take another look at how the mod loader is doing things and see if I can work something out.

Kizari commented 4 months ago

Unfortunately after several more attempts and many hours since this was first reported, I've still had no luck with any kind of lead or solution. It's just not really viable to track down and fix the problems since the issues are occurring in the game's code rather than Flagrum's. The only way I see forward on this front would be to ditch the current system and create a fully custom mod loader that doesn't rely on the game's internal systems at all (which would take months of development), or to look for a totally different approach altogether. For the sake of moving forward, I'm closing this issue while I consider the best way to work with this, and I'll pick it up once I've figured something out.