Command Line Arguments In W4?

Eorzea Time
 
 
 
言語: JP EN FR DE
日本語版のFFXIVPRO利用したい場合は、上記の"JP"を設定して、又はjp.ffxivpro.comを直接に利用してもいいです
users online
フォーラム » Windower » General » Command line arguments in w4?
Command line arguments in w4?
 Leviathan.Comeatmebro
Offline
サーバ: Leviathan
Game: FFXI
user: Rairin
Posts: 6052
By Leviathan.Comeatmebro 2013-06-05 04:54:58  
I apologize if this has been answered already, I've spent the last 80 minutes searching through the forums and wiki and been unable to find anything on it. In windower 3.4, you could use the command line:
Code
cmd.exe /C start "" /affinity 0x?? "C:\Program Files (x86)\Windower4\Windower.exe" -c profilename.ini


to launch POL directly using a specific profile. However, Windower4 no longer uses individual files for profiles. I've tried:
Code
cmd.exe /C start "" /affinity 0x?? "C:\Program Files (x86)\Windower4\Windower.exe" -c Oversample


which will launch POL directly. However, it's pulling the default profile, not my profile named Oversample. When using just:
Code
cmd.exe /C start "" /affinity 0x?? "C:\Program Files (x86)\Windower4\Windower.exe"


windower will launch, but show default settings as if it's failing to get it's settings.xml.

From this, I've concluded that the method in which I'm launching it is causing a failure to load the settings file. So, my questions are:

Is there documentation on command line arguments anywhere? If not, am I using -c properly or is it just a leftover from 3.4 that isn't functional?

and

What should I change to be able to load settings and launch from command line? Even if -C isn't supported, I'd like to be able to launch from C# so I can have a one-click overwrite user file(I have more than 4 logins, trying to finally ditch XI-Util after I saw the sandboxing plugin in a thread yesterday).

Apologies for the long-winded post, wanted to include as much detail as possible. Thank you very much for any responses.
 Fenrir.Ruey
Offline
サーバ: Fenrir
Game: FFXI
user: Rueyy
Posts: 3
By Fenrir.Ruey 2013-06-05 05:33:51  
I've been wondering about this recently as well; I've just come back to FFXI and, noticing the (probably not that recent) release of the beta for ver.4 I've been thinking about the potential applications for CL arguments when first opening pol through Windower.

The specific answer that you're after, in short, is this -

The CLA to initiate a specific profile and boot into it, without any user interaction, is:
Code
%WindowerDirectory%\windower.exe -p $profile
Code
where $profile = profile name
; I didn't used double quotes but they may be required (or be of detriment) in the event of a profile name that includes a special character (space included).


I noticed the peculiar manner of starting Windower.exe from your earlier attempt. Was the use of the start utility's affinity argument generally required for 3.4 or is your usage specific to your own setup?
Code
cmd.exe /C start "" /affinity 0x??


If what I gather from your OP is correct, the equivalent argument for what I've demonstrated, in 3.4, was -c. I'm somewhat doubtful that it will be of any use to us here but might you know of any previously useful documentation for using CLA's with Windower 3.4? My thought is that reading what arguments were available may provide some insight into what to look for in the current build.
Having an idea of what you're looking for before you set out to find it is always a good idea - especially if the task involves grepping through thousands of table entries in many entirely different locations.
 Leviathan.Comeatmebro
Offline
サーバ: Leviathan
Game: FFXI
user: Rairin
Posts: 6052
By Leviathan.Comeatmebro 2013-06-05 05:41:08  
Very helpful, thank you. Yes, the equivalent was -c in 3.4. I use affinity to lock each character I play to it's own core, it's easier to have it in my startup than manually assign in task manager later.. I wrote a small application to back up and restore the login_w.bin file(stores saved characters/passwords) so that I can just select my character and click launch. It has preset cores for each character, but it doesn't seem capable of loading windower's settings even without additional arguments.. will try out -p and see if it resolves it. I'm assuming the problem is related to using start.

Yea, start is making it look for settings.xml in the directory my program is in, and that was causing -p to fail. Simple enough fix was to put it in the same folder as windower, and -p seems to work :) Thanks very much for your help!
 Fenrir.Ruey
Offline
サーバ: Fenrir
Game: FFXI
user: Rueyy
Posts: 3
By Fenrir.Ruey 2013-06-05 06:20:23  
Tangential, I know, but your reference to login_w.bin brought me to the realization that I don't currently have any tools which are capable of interpreting the data within FFXI's .bin files in a meaningful way. I made a quick effort with the tools I thought might be of value (7-Zip, PowerISO, PE-Explorer Suite) aswell as using a hex and ascii editor to see if any content was immediately readable. login_w was not the only file that I attempt to interpret because I assumed that it would have some form of encryption, however rudimentary.

So - what I hope I might get from you is the name of / link to some relevant software that you've been using to interact with FFXI's data. I suppose the question is more broad that simply opening those .bin files which contain text data, I'm also looking for the means to extract any data from the pol/ffxi client which may be usable in further applications.

I'm also interested in the form of the application you constructed - the idea that immediately comes to mind after your description is a program which had captured each account's login information and swaps it out before pol's booted up. The use of affinity for each account is clever, I assume the purpose is to optimize performance while running concurrent instances? It's been a long time since I dualboxed but, in thinking about it, that is just a very good idea.

As for your application's inability to open pol using Windower's settings I'll assume here that you mean the profile settings set from within the loader and assigned to a profile. I concede that my expertise of the program is lacking, so my answer here should not be understood as definitive, but I would think that with the current version of Windower the only way for a profile to be applied is by passing the argument I mentioned to the loader itself.
I'm not really sure if that's what you meant but, at the very least, with the "-p" argument the process is automated up until you get to the pol login screen. I don't suppose you've encountered a manner of automating the rest of the booting process? The ability to save the SE account pass would be wonderful.
 Leviathan.Comeatmebro
Offline
サーバ: Leviathan
Game: FFXI
user: Rairin
Posts: 6052
By Leviathan.Comeatmebro 2013-06-05 06:25:39  
Honestly, don't know much of what you're asking. POLUtils is open source, iirc, and interprets a large part of the game's dat files so that could be a good starting point.

My program just saves some settings and makes a copy of the current login_w. So, I add the one character's name to playonline along with the passwords/etc and log in once. Following that, I run my program and select my cores/windower profile/enter character name. I repeat that for each of my characters. When I launch one of them, it simply restores the backed up login file before opening windower. Nothing fancy, just a bit of a time saver. If anyone wants it, I don't mind sharing.
 Fenrir.Ruey
Offline
サーバ: Fenrir
Game: FFXI
user: Rueyy
Posts: 3
By Fenrir.Ruey 2013-06-05 06:31:07  
Ah - Crap. I made a mistake earlier; the argument syntax I gave you is wrong.
Code
-p=$profile

no space, separated by an "=" equal sign.

That's about what I thought for the capturing of login info.
I'd really be pleased to hear if there is a way to automate the login process once pol is initiated. Having to enter the password each time somehow seems less secure (and a lot like a time sink, in proper ffxi fashion) than keeping the password stored in an encrypted file.

Edit: I'd be glad to take a look at the source, it seems like a good place to start in establishing my own launcher setup.