SaintCoinach icon indicating copy to clipboard operation
SaintCoinach copied to clipboard

Unable to update definitions

Open atheistium opened this issue 4 years ago • 9 comments

`C:\Users\athei\OneDrive\Desktop\SaintCoinach.Cmd>SaintCoinach.Cmd.exe "C:\SquareEnix\FINAL FANTASY XIV - A Realm Reborn" Defined sheet CustomTalkDynamicIcon is missing. Defined sheet MasterpieceSupplyDuty is missing. Defined sheet MasterpieceSupplyMultiplier is missing. Defined sheet Purify is missing. Game version: 2021.12.24.0000.0000 Definition version: 2021.11.28.0000.0000 Update is available, perform update (Y/n)? y

**Unhandled Exception: System.IO.DirectoryNotFoundException: Attempted to access a path that is not on the disk. at SaintCoinach.IO.PackCollection..ctor(DirectoryInfo dataDirectory) in D:\a\SaintCoinach\SaintCoinach\SaintCoinach\IO\PackCollection.cs:line 30 at SaintCoinach.ARealmReversed.Update(Boolean detectDataChanges, IProgress1 progress) in D:\a\SaintCoinach\SaintCoinach\SaintCoinach\ARealmReversed.cs:line 366 at SaintCoinach.Cmd.Program.Main(String[] args) in D:\a\SaintCoinach\SaintCoinach\SaintCoinach.Cmd\Program.cs:line 50**

I've noticed a similar pathing issue on a few open issues here on github with it trying to obtain files from: _D:\a\SaintCoinach\SaintCoinach\SaintCoinach_

To try alliviate this, I downloaded the master file and created the exact same pathing to match this but it doesn't seem to access it at all.

Pretty stumped how to fix this.

Other things tried:

  • Full blank release re-downloaded
  • Moving directory a few times.
  • Making sure files are unblocked.
  • Running CMD in admin

atheistium avatar Jan 04 '22 10:01 atheistium

The game.ver file needs to be updated. Copy the value (2021.12.24.0000.0000) and paste it into your game.ver file in Saint Coinach and it'll work. You should only need to do this until someone pushes an updated game.ver file.

This goes without saying you'll have make the change and then rebuild the SaintCoinach library. This is normal post-update behavior ... for now.

CrimsonOrion avatar Jan 04 '22 13:01 CrimsonOrion

Awesome - did that and no error or option to update! ty

I get the below -

Defined sheet CustomTalkDynamicIcon is missing. Defined sheet MasterpieceSupplyDuty is missing. Defined sheet MasterpieceSupplyMultiplier is missing. Defined sheet Purify is missing.

Any way for me to update this? :)

atheistium avatar Jan 04 '22 14:01 atheistium

Hmm... It still should have given you the option to update since it needs to recreate the SaintCoinach.History.zip file. You can work around this by deleting the .zip file and see if it re-creates it from the new .DAT file, or overwrite the one in the zip file with the new one.

This is just a workaround until SaintCoinach is updated to reflect the changes with the recent patch, so forgive the manual work.

CrimsonOrion avatar Jan 04 '22 15:01 CrimsonOrion

Don't ever use the updater from within the program itself, I've had nothing but problems in the past when I've used it. It's literally cursed because it's somehow corrupted some sheets in the past and caused extractions to get alllllll screwed up every now and then o.O

Hezkezl avatar Jan 05 '22 06:01 Hezkezl

Don't ever use the updater from within the program itself, I've had nothing but problems in the past when I've used it. It's literally cursed because it's somehow corrupted some sheets in the past and caused extractions to get alllllll screwed up every now and then o.O

i actually dont know how else to update it :D

atheistium avatar Jan 05 '22 08:01 atheistium

Looks like something to work on. I'll see if I can't get something working between bashing my head against the wall in Savage. 🤦 For now, though, you can use the above method to simulate the update process.

CrimsonOrion avatar Jan 05 '22 13:01 CrimsonOrion

Tried your method again and still getting Defined sheet CustomTalkDynamicIcon is missing. Defined sheet MasterpieceSupplyDuty is missing. Defined sheet MasterpieceSupplyMultiplier is missing. Defined sheet Purify is missing.


Not sure the method @Hezkezl is referring to :) i actually dont know how else to update it outside of running the command? If you have a second, could you let me know? ♥

atheistium avatar Jan 05 '22 17:01 atheistium

We should either remove the updater/history system or make it optional. It slows down initialization and no one ever uses it, since there's other tools for sheet updates nowadays - so if we can't make it work, IMO it's best to get rid of it.

goaaats avatar Jan 05 '22 17:01 goaaats

@atheistium download the newest zip of the SaintCoinach.cmd.exe program from the /releases/ tab of this project, and use that instead. What I do every time there's a new update, is I'll go inside my "SaintCoinach.Cmd folder and start deleting things. Starting with the /Definitions/ folder, and then all of the individual files (MAKING SURE TO KEEP the old extracts, you know all the folders with pure numbers in them!) Then I'll take the newly downloaded .zip file and extract it in that folder where the old files were, and then run SaintCoinach.Cmd.exe and go from there.

You're getting those errors because there are no files in the /Definitions/ folder called CustomTalkDynamicIcon.json, MasterpieceSupplyDuty.json, MasterpieceSupplyMultiplier.json, or Purify.json and if you look on the repo here in the file section, they'll be listed. So that means you need to get the new definitions (and and other updated files that were changed in the mean time)... the only thing that the 'update' thing in the window does is try to use the history.zip file to try to find column shifts. It has absolutely nothing at all to do about connecting to the github and trying to download a new version or anything like that. It's completely useless for ACTUALLY updating the program.

I agree completely @goaaats! I don't think the updater/history system was ever really intended for the 'average user' to ever use...iirc it was mainly to try to help narrow down what columns were moved around, but it's not perfect. There are better tools for sheet updates these days (especially as they are now separate sheets instead of all being in one big json file like it used to be!), so this should definitely be disabled or deleted.

Some kind of message about checking the repo for new definition updates whenever a "Defined sheet" error pops up might be good too, since those usually get found out by one of the hard working contributors and a PR made to fix them pretty quickly.

Hezkezl avatar Jan 05 '22 22:01 Hezkezl