quick pyffi questions

Post » Wed Dec 14, 2011 3:23 pm

Hi mod users/ modders who are way smarter than me :icecream:

I'm trying to optimize my vanilla GoTY with SI and Knights before installing like 70 mods with wrye bash and all the complicated lovely stuff. i have the latest version of pyffi.

edit:
1) is Qskope related to pyfft because i think pyfft's installer put it on my dektop. whe n i run qkope it says i'm missing PyGt4
2) Since for an unknown reason I can only utilize right-click-optimize, should i do that for all mesh folders? If not, can you explain why with an example? <--sorry for my newbishness

However, after right-click-optimizing (2.1.10 latest pyffi) the meshes folder extracted from Knights.bsa, the folder size went from 7.7mb to 7.2mb.

1) Isn't it supposed to get bigger?
2) what does a NIF accompanied by EGM or TRI mesh look like? Basically, I want to know what i can't use right-click-optimize on.
3) what's a Roothavok mesh?

taken from pyffi FAQs:
"- Any meshes with FaceGen files attached to them (that is, any NIFs that are accompanied by an EGM or TRI mesh). These should not be optimized, or visual anomalies (E.G. tears in the model) might result.
- The Roothavok meshes. It is currently unknown why these don't optimize properly."


Lastly, any links to beginner-friendly guides on installing mods wit wrye bash and making simple and complex packages? I have no programming/ modding/ command prompt experience and tescosi sometimes leave out obvious steps (which aren't obvious to me).

Thanks, y'all.
User avatar
chinadoll
 
Posts: 3401
Joined: Tue Aug 22, 2006 5:09 am

Post » Wed Dec 14, 2011 2:42 am

However, after right-click-optimizing (2.1.10 latest pyffi) the meshes folder extracted from Knights.bsa, the folder size went from 7.7mb to 7.2mb.

Not sure if right-clicking is the recommended method to totally safe pyffi-fication. At least in the old days (say one year ago) it was not.

Out of habit and conviction, I always do it via the toaster "in" and "out" folders. Now with version 2.1.10 if you do it this way, there is a "oblivion_optimize.bat" file (if memory serves me right) in the toaster directory. Just run this after you dumped the meshes in the "in" folder, it makes three passes automatically. As I understand this is the safest and most up-to-date approach to pyffie any meshes.

Then recombine the stuff from the "in" folder and the "out" folder: Copy everything from "in" to the "out" folder BUT DO NOT OVERWRITE THE NEWER FILES IN THE OUT FOLDER (obviously) and repack the BSA in uncompressed format for the best performance.

Final step is to manually set the file date of the new BSA to the same date as the original BSA file. Use a tool for that (google for "SetFileDate" if memory serves).

Always keep a copy of the original BSA and store it in a dry, safe place. :)

Lastly, any links to beginner-friendly guides on installing mods wit wrye bash and making simple and complex packages? I have no programming/ modding/ command prompt experience and tescosi sometimes leave out obvious steps (which aren't obvious to me).

There is a Wrye Bash guide in pictures by Alt3rnity that is often referred to. Otherwise Tescosi is really good.
User avatar
Michelle Serenity Boss
 
Posts: 3341
Joined: Tue Oct 17, 2006 10:49 am

Post » Wed Dec 14, 2011 3:50 am

Usually, it does get bigger... but badly optimized meshes can be smaller. When I did the Oblivion Meshes BSA, for example, it went from 640 MB to 600 MB. Likewise, my Shivering Isles BSA got a lot smaller.

PyFFI 2.1.10 will automatically ignore .tri and .egm files. I was wondering myself, so I tried right-clicking directly on an .egm file - the pyffi option didn't turn up.

And yes, you should always keep a backup copy of the BSA (or, as I do, zip up the loose files - it's a lot smaller). You also might want to rename the new BSA (for me, I just add a "1" after the name), so if you ever have to uninstall/reinstall, you won't overwrite your BSA. Keep in mind, though, that if you ever want to use the CS with resources from that BSA, you'll have to rename it back to the original name, or you'll have lots of missing meshes. :)
User avatar
james kite
 
Posts: 3460
Joined: Sun Jul 22, 2007 8:52 am

Post » Wed Dec 14, 2011 12:05 pm

Copy everything from "in" to the "out" folder BUT DO NOT OVERWRITE THE NEWER FILES IN THE OUT FOLDER (obviously) and repack the BSA in uncompressed format for the best performance.


Wait, "In" contains the original un-pyffi'd files and "Out" the pyffii'd, right? So if I copy everything from the "In" to the "Out" and repack the things in the "Out", won't the new BSA have duplicate files: one set un-pyffi'd and another identical but pyfii'd? What i did was to right-click optimize the meshes folder extracted from Knights.bsa (also extracted "sounds" and "textures"), then repacked the pyffi'd "meshes" with the un-pyfii'd "textures" and "sounds". Gotta change the date though.

I'm using right-click because my oblivion_optimize.bat doesn't work (more on that way below)

You also might want to rename the new BSA

Why is that? Won't the game be unable to recognize the pyfii'd BSA and get errors?
edit: nvm, I'm an idiot

Again thank you oh wise sages :D

--------
when i try oblivion_optimize.bat on my Vista 64b home (everything oblivion-related and python are on c:/games and c:/python27) a black box appears. I tried on an admin account and same occurs. At the time, the In folder had "Meshes", "Textures" and "Sounds" from DLC Knights.bsa. Black box says:

Running PyFFI optimize ...
Done.
Pass 2 -General optimization :
running pyffi optimize ...
Done.
Pass 3 - Fixing texture paths:
Running PyFFI fix_texturepath ...
Done.
You can close this window now.

This takes like 1 sec and nothing's in Out and no file size changes are detected.
mine: c:/games/oblivion tools/pyffi/utilities/toaster/in
User avatar
oliver klosoff
 
Posts: 3436
Joined: Sun Nov 25, 2007 1:02 am

Post » Wed Dec 14, 2011 12:29 pm

Wait, "In" contains the original un-pyffi'd files and "Out" the pyffii'd, right? So if I copy everything from the "In" to the "Out" and repack the things in the "Out", won't the new BSA have duplicate files: one set un-pyffi'd and another identical but pyfii'd? What i did was to right-click optimize the meshes folder extracted from Knights.bsa (also extracted "sounds" and "textures"), then repacked the pyffi'd "meshes" with the un-pyfii'd "textures" and "sounds". Gotta change the date though.

I'm using right-click because my oblivion_optimize.bat doesn't work (more on that way below)


Why is that? Won't the game be unable to recognize the pyfii'd BSA and get errors?

Again thank you oh wise sages :D

--------
when i try oblivion_optimize.bat on my Vista 64b home (everything oblivion-related and python are on c:/games and c:/python27) a black box appears. I tried on an admin account and same occurs. At the time, the In folder had "Meshes", "Textures" and "Sounds" from DLC Knights.bsa. Black box says:


Running PyFFI optimize ...
Done.
Pass 2 -General optimization :
running pyffi optimize ...
Done.
Pass 3 - Fixing texture paths:
Running PyFFI fix_texturepath ...
Done.
You can close this window now.

This takes like 1 sec and nothing's in Out and no file size changes are detected.
mine: c:/games/oblivion tools/pyffi/utilities/toaster/in



Take a look at the document of Oblivion Optimize text document right below the Oblivion Optimize ini file. See what it says. Not sure what the problem is. Also, do not I repeat do not install your mods all at the same time. Go with the small simple mods first and test the game first. Make sure it works before installing more mods but one or few at a time.
User avatar
Gavin Roberts
 
Posts: 3335
Joined: Fri Jun 08, 2007 8:14 pm

Post » Wed Dec 14, 2011 2:17 am

oblivion_optimize_01.ini? Says

Spoiler

[main]
spell = optimize

[options]
; any patterns of files that should be skipped, being as conservative as possible
; (without quotes, separate different regular expressions by a space)
; at the moment:
; - skipping hair nifs (vertex ordering!)
; - skipping roothavok nifs (not sure why, investigating)
; - skipping any nif that is known to have an egm or tri associated with it
; find . -name "*.egm" -or -name "*.tri" | sed 'sX.*/XXg' | sed 'sX.tri$XXg' | sed 'sX.egm$XXg' | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/' | sort | uniq | xargs
; (not necessary if all egm files are included, such as in vanilla Oblivion,
; but some mods only include nifs without egm files, and this makes sure
; these cases are handled as well)
skip = (?i)(?


I see the statue foundation thing so i assume it's correct. in all honesty, all i know is that if i add (?!)xxx then it'll skip xxx.

Go with the small simple mods first and test the game first. Make sure it works before installing more mods but one or few at a time.

Can you elaborate? Should I see if the new content is there or just walk around the world a bit to make sure nothing crazy occurred? I just don't want to spoil the contents of some quests and the location of custom armor if i have to go investigate the contents of each mod.

Thanks bud!
User avatar
~Amy~
 
Posts: 3478
Joined: Sat Aug 12, 2006 5:38 am

Post » Wed Dec 14, 2011 3:12 am

oblivion_optimize_01.ini? Says

Spoiler

[main]
spell = optimize

[options]
; any patterns of files that should be skipped, being as conservative as possible
; (without quotes, separate different regular expressions by a space)
; at the moment:
; - skipping hair nifs (vertex ordering!)
; - skipping roothavok nifs (not sure why, investigating)
; - skipping any nif that is known to have an egm or tri associated with it
; find . -name "*.egm" -or -name "*.tri" | sed 'sX.*/XXg' | sed 'sX.tri$XXg' | sed 'sX.egm$XXg' | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/' | sort | uniq | xargs
; (not necessary if all egm files are included, such as in vanilla Oblivion,
; but some mods only include nifs without egm files, and this makes sure
; these cases are handled as well)
skip = (?i)(?


I see the statue foundation thing so i assume it's correct. in all honesty, all i know is that if i add (?!)xxx then it'll skip xxx.


Can you elaborate? Should I see if the new content is there or just walk around the world a bit to make sure nothing crazy occurred? I just don't want to spoil the contents of some quests and the location of custom armor if i have to go investigate the contents of each mod.

Thanks bud!


I meant the text document right below the ini file. It should show you the result of optimization process. I just did the process myself with my KoN mod. As for the mods what I'm saying is that installing mods at the same time will eventually cause conflicts, errors, graphic glitches etc etc. How could you find out what mod is causing the problem if you installed 50 mods at the same time? It makes easier for you if you install small amount of mods first, check to see if the game is stable and everything looks good. Just a suggestion you know and this is something everybody here recommends and by my experience.
User avatar
Ross Thomas
 
Posts: 3371
Joined: Sat Jul 21, 2007 12:06 am

Post » Wed Dec 14, 2011 2:51 am

Roger that^
funny thing, i just ran oblivion_optimize.bat (as admin, didn't work) and there is no .txt, just .bat and .ini
I think I'll resign myself to right-click-optimzie as that seems to work.
User avatar
Celestine Stardust
 
Posts: 3390
Joined: Fri Dec 01, 2006 11:22 pm

Post » Wed Dec 14, 2011 4:36 am

Wait, "In" contains the original un-pyffi'd files and "Out" the pyffii'd, right? So if I copy everything from the "In" to the "Out" and repack the things in the "Out", won't the new BSA have duplicate files: one set un-pyffi'd and another identical but pyfii'd?

Well, you copy everything, but when prompted to overwrite any files in "out" with any files from "in", then you obviously have to NOT overwrite these files in "out". Otherwise you overwrite the newly pyffied ones with the original, un-pyffied ones. I think I wrote that quite clearly in my earlier reply.

Generally, for convenience sake you can dump ALL files and directories from any BSA into "in" and start the pyffie .bat run. Pyffie is smart enough to process only mesh files that it finds in "in". So it is not necessary to manually sort out the unpacked BSA prior to dumping mesh stuff into "in" for treatment. Everything that is not pyffie-able, PyFFie will ignore in the run. After the run, you have to copy everything (meshes and non-meshes) into "out" prior to rebuilding the BSA, otherwise the new BSA will be incomplete and contains less files than originally, producing errors in-game of course.

Then, in most cases not all mesh files from "in" will get pyffied. This is because certain meshes must not be pyffied (.egm associated and stuff), and Pyffie will "know" from the exclusion strings in the various .ini files which ones not to treat. Untreated ones will always remain in "in" untouched, and hence need to be manually copied over to "out" after the run in order to make the file count of the new BSA complete.

Or to put it differently, Immediately after the pyffie run, in "out" will be only those mesh files that got actually treated. Any un-treated meshes plus any non-mesh files will still sit in "in", untouched and ignored by PyFFie.

As to why you have problems with running the oblivion_optimize.bat file under Vista, I really have no idea. I have never had Vista, I went from XP directly to Win 7 (see my sig). In my Win 7, the .bat file runs perfectly fine; I have Administrator rights and I have disabled the UAC completely.
User avatar
Dean
 
Posts: 3438
Joined: Fri Jul 27, 2007 4:58 pm

Post » Wed Dec 14, 2011 5:44 am

And yet no one has piped up with a documentation link. For shame.

Read this if you haven't already and make sure to follow the relevant documentation links in the post:

http://www.gamesas.com/index.php?/topic/1172342-relzwipzpyffi-python-file-format-interface

There's the documentation :)
User avatar
x_JeNnY_x
 
Posts: 3493
Joined: Wed Jul 05, 2006 3:52 pm

Post » Wed Dec 14, 2011 2:25 pm

:brokencomputer: = me and vista
Thanks Tommy, that cleared up my confusion. I thought PyFFi copied curable files to "Out" then treats them which made be believe that moving everything would create duplicates
Deaths_soul,
haha every fibre of my being screamed "RUN" when you mentioned documentation but I'll give it another look now that understand pyFFi better.

I think all my questions are answered. Thanks guys, hopefully my adding OOO, UL, MMM, and more (w/ wrye or OBMM and one at a time to check for stability) will be less tumultuous
User avatar
Chris BEvan
 
Posts: 3359
Joined: Mon Jul 02, 2007 4:40 pm

Post » Wed Dec 14, 2011 2:47 am

:brokencomputer: = me and vista
Thanks Tommy, that cleared up my confusion. I thought PyFFi copied curable files to "Out" then treats them which made be believe that moving everything would create duplicates
Deaths_soul,
haha every fibre of my being screamed "RUN" when you mentioned documentation but I'll give it another look now that understand pyFFi better.

I think all my questions are answered. Thanks guys, hopefully my adding OOO, UL, MMM, and more (w/ wrye or OBMM and one at a time to check for stability) will be less tumultuous


I have a general policy of reading all documentation for everything around 5 times thoroughly before I even use what it's for. It helps ensure that I will have as few problems as possible. It helps. It probably also helps that I have a general understanding of things for other reasons, but that's another matter >.>

Don't fear documentation. It's your friend.
User avatar
Queen of Spades
 
Posts: 3383
Joined: Fri Dec 08, 2006 12:06 pm

Post » Wed Dec 14, 2011 3:22 pm

Kwally, this may sound incredibly silly to tell you, but for the .bat file to run, you must do the following:

1. dump your stuff in the "in" folder as discussed previously
2. in the Toaster directory, just double-click (or right-click "open") on the the oblivion_optimize.bat

That's it, this will start the run. A DOS prompt window will open (is this the black box that you mention earlier?) where it says something like "Pass 1 under way..." Nothing happens visually until it's finished with the first pass, but in the windows task manager you can see after some initialization period (30sec about) that the CPU is working at full load on all cores... :) When it's all finished, after Pass 3, in that window you will get the prompt that you may close the window now. Again, sorry if you know all that.
User avatar
Emma-Jane Merrin
 
Posts: 3477
Joined: Fri Aug 08, 2008 1:52 am


Return to IV - Oblivion