hendrikgit / nwn_sqlite

Extracts information from a Neverwinter Nights module and saves it to a sqlite3 database
14 stars 1 forks source link

How to extract the information running on Windows #2

Closed lord-kryos closed 9 months ago

lord-kryos commented 2 years ago

Sorry for this noob question, but I cannot run the command on Windows due to a long names in the folders (containing spaces)

nwn_sqlite -o:DB_name.sqlite3 '.\Users\username\Documents\Neverwinter Nights\modules\module.mod' '.\Program Files (x86)\Steam\steamapps\common\Neverwinter Nights\lang\es\data\' '.\Program Files (x86)\Steam\steamapps\common\Neverwinter Nights\data\' '.\Users\username\Documents\Neverwinter Nights\tlk\' '.\Users\username\Documents\Neverwinter Nights\hak' Not found: '.\Users\username\Documents\Neverwinter

I tried too nwn_sqlite -o:DB_name.sqlite3 "C:\Users\username\Documents\Neverw~1\modules\module.mod" "C:\Progra~1\Steam\steamapps\common\Neverw~1\lang\es\data\" "c:\Progra~1\Steam\steamapps\common\Neverw~1\data\" "C:\Users\username\Documents\Neverw~1\tlk\" "C:\Users\username\Documents\Neverw~1\hak" Not found: c:\Progra~1\Steam\steamapps\common\Neverw~1\lang\es\data"

Could anyone help me? Thanks in advance

lord-kryos commented 2 years ago

My apologies, finally, I found the sentence... with double quotes and the long names in each folder nwn_sqlite -o:_DB_name_.sqlite3 "C:\Users\_username_\Documents\Neverwinter Nights\modules\_module_.mod" "C:\Program Files (x86)\Steam\steamapps\common\Neverwinter Nights\lang\es\data" "C:\Program Files (x86)\Steam\steamapps\common\Neverwinter Nights\data" "C:\Users\_username_\Documents\Neverwinter Nights\tlk" "C:\Users\_username_\Documents\Neverwinter Nights\hak"

But now, in every module that I tried to extract information, I received this error message: Error: module.ifo not found in module. The file might be corrupt.

I'm using version 8193.34

lord-kryos commented 2 years ago

But now, in every module that I tried to extract information, I received this error message: Error: module.ifo not found in module. The file might be corrupt.

I'm receiving this error message with all my module's files and the mods predefined in game.

tinygiant98 commented 2 years ago

@lord-kryos I did a fresh installation of nwn_sqlite to check this out and can't reproduce this error. The modules I'm attempting this on were built with .34 and earlier versions of the toolset. If you'd like, you can find me on the vault discord (if you use it). I'd be happy to take a look at your mod and see if I can reproduce the error there. That way we can determine if it's a module issue or an environment issue.

If you run the nwn_sqlite command against only your hak/talk folders (no module), does it work correclty?

lord-kryos commented 2 years ago

Ok, I tried several things without clues about the issue.

@lord-kryos I did a fresh installation of nwn_sqlite to check this out and can't reproduce this error. The modules I'm attempting this on were built with .34 and earlier versions of the toolset.

I did a fresh installation of nwn_sqlite and nwnee (from Steam). I'm not suscribed to any workshop. Download again several haks (CEP 2.68, CTP and RTC) from vault. The modules are old but I edited with the toolset, updated some areas and other things and saved them. The first run with nwn_sqlite, I didn't received error and created my database, but when I tried to update and include more areas, the next command returned error message. In this moment, I tried to do with other old module, but I received error message. I create a new module today, but I received the error message (Error: module.ifo not found in module. The file might be corrupt.)

If you'd like, you can find me on the vault discord (if you use it). I'd be happy to take a look at your mod and see if I can reproduce the error there. That way we can determine if it's a module issue or an environment issue.

I don't use discord, thank you

If you run the nwn_sqlite command against only your hak/talk folders (no module), does it work correclty?

My surprise, I run against these folders and I received an error in the hakpack RTC, I excluded them and run without errors

Note: I'm trying to run this command in order to know which areas have I to update to reduce the number of haks, currently CEP includes almost the old hakpacks that I used in the past.

Thanks for your comments and help

tinygiant98 commented 2 years ago

@lord-kryos I'll do the same in an attempt to reproduce later today. Just to confirm,

1) Are all the errors you mentioned in your last post the same error each time (about the missing ifo) or are any other errors reported?

2) When you had the successful run, then an error, were the commands exactly the same between the runs (i.e. you ran the exact same command twice and the second time produced an error)? I understand that the module file itself changed between runs.

3) Are any errors reported when you attempt to document only the haks (no mod files involved)?

hendrikgit commented 2 years ago

Hello @lord-kryos, sorry for the late reply. I have recently become a parent for the first time and have not had time to respond. Realistically I also won't find time to investigate this much in the near future.

Having a quick look at the code it seems like that error really should only appear if there is a .mod module file found but it does not contain a module.ifo. It looks like a straight forward check on first glance. You can see here the error and the few lines before it for the checks being done https://github.com/hendrikgit/nwn_sqlite/blob/f5acc02b3123cdfe9d9846ace5775b75f999a3bd/src/nwn_sqlite.nim#L99-L109

Maybe you can provide somewhere the .mod file that gives you the error message and @tinygiant98 or I can have a look (although I can't promise I can do that soon in my case). You could also try other tools to extract your mod and check for the existence of module.ifo there perhaps. With the nwn_erf.exe from here for example https://github.com/niv/neverwinter.nim/releases/tag/1.5.5.

If something turns up that I can do or change quickly I'll do my best to get that done.

@tinygiant98 Thank you very much for responding and looking into this!

tinygiant98 commented 2 years ago

@hendrikgit Congrats on the kid! I remember those days, even though it was so long ago. I haven't heard any updates on this issue and I wasn't able to recreate it myself give the initial data provided by @lord-kryos. If we get any additional information, I'll try to run it down if I can. Enjoy the time with your new little one and don't sweat this stuff. It'll be here when you have time.

lord-kryos commented 2 years ago

First, my apologies for the late reply, I was busy in my real job and cannot answer.

1. Are all the errors you mentioned in your last post the same error each time (about the missing ifo) or are any other errors reported?

2. When you had the successful run, then an error, were the commands exactly the same between the runs (i.e. you ran the exact same command twice and the second time produced an error)?  I understand that the module file itself changed between runs.

First run, normally, without errors. I try to update with more options selected, and received .ifo error

3. Are any errors reported when you attempt to document only the haks (no mod files involved)?

Yes, The haks from the pack RTC (that is the reason to recover areas and their tilesets to update the module without that old hakpack)

All modules have been checked with nwn explorer and in all of them I found an entry with module.ifo I'll try to delete RTC hakpack, and run the command with other module, asap I'll keep inform you and of course, thanks for your help and support

Best regards

tinygiant98 commented 2 years ago

@lord-kryos I have been unable to reproduce this error. I might need to use the files you're using to do so. Please confirm the following and we'll see if we can get to the bottom of this:

1) Pick one file(s) that cause this issue and send me a link to get the same files you're using (assuming nw vault). 2) Let me know exactly which mod file you're attempting to update with the files that seem to cause the error. I'll need that mod file, also. If I can get it on the vault, send me a link. 3) Let me know excactly what changes you made to the mod file before re-attempting the nwn_sqlite command the results in the module.ifo error.

Alternately, you can create a shared git repo with the original (unchanged) files you're using and I can work with those directly.

Also confirm that after you made the changes, you used the toolset to successfully rebuild/recompile the module before attempting to run the subsequent nwn_sqlite command.

Sorry for not getting an answer to this sooner. This all seems very odd.

hendrikgit commented 9 months ago

Closing this since we haven't heard back in while.