Launcher: Difference between revisions

From xiv.zone
Jump to navigation Jump to search
Add launcher images
Fix various formatting sins
Line 9: Line 9:
=== 1.x ===
=== 1.x ===


This is the launcher used for 1.x, before A Realm Reborn. This screensot is [a recreation by Ioncannon](http://ffxivclassic.fragmenterworks.com/), as I can't find the original login page anywhere online.
This is the launcher used for 1.x, before A Realm Reborn. This screensot is [http://ffxivclassic.fragmenterworks.com/|a recreation by Ioncannon], as no one took a screenshot of the original login page I guess.


[[File:Ffxivlauncher-10.png|600px]]
[[File:Ffxivlauncher-10.png|600px]]
Line 19: Line 19:
[[File:Ffxivlauncher-old.png|600px]]
[[File:Ffxivlauncher-old.png|600px]]


=== 6.5+ ===
=== 6.x ===


This is the current iteration of the launcher, and the old launcher can no longer be used and all users must use the new design
This is the current iteration of the launcher, and the old launcher can no longer be used and all users must use the new design as of 6.x.


[[File:Ffxivlauncher-new.png|600px]]
[[File:Ffxivlauncher-new.png|600px]]
Line 34: Line 34:
== Debugging ==
== Debugging ==


Run C:\Windows\System32\F12\IEChooser.exe while the launcher is running. Or if you're using the WebView2 backend, set WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS="auto-open-devtools-for-tabs"
Run <code>C:\Windows\System32\F12\IEChooser.exe</code> while the launcher is running. Or if you're using the WebView2 backend, set <code>WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS="auto-open-devtools-for-tabs"</code>.


== Native Communication ==
== Native Communication ==


To communicate with native code, it uses window.chrome.webview.postMessage. This is shortened to window.external.user with this function:
To communicate with native code, it uses <code>window.chrome.webview.postMessage</code>. This is shortened to <code>window.external.user</code> with this function:


<pre>
window.external.user = function (e) { window.chrome.webview.postMessage(e); }
window.external.user = function (e) { window.chrome.webview.postMessage(e); }
</pre>


=== Functions ===
=== Functions ===
Line 66: Line 68:
==== requestDP ====
==== requestDP ====


<code>{"id": 1}</code>
<pre>{"id": 1}</pre>


==== requestConfig ====
==== requestConfig ====


<code>{"lang":"en","region":2,"eula":0,"startup":0,"issteam":0,"query":"none","ver":"2025.03.10.0000.0001(11500960)","skip_confirm_expansion_install_dialog":"0","installedExVersions":"","dx11available":"1","dx11enabled":"1","maxex":"-1","characreation":"0","is64bit":"1","product":"-1","browser":"2","ie11available":"1","theme":"0","dataCenter":"0","productization":"-1","product_ex":"0"}</code>
<pre>{"lang":"en","region":2,"eula":0,"startup":0,"issteam":0,"query":"none","ver":"2025.03.10.0000.0001(11500960)","skip_confirm_expansion_install_dialog":"0","installedExVersions":"","dx11available":"1","dx11enabled":"1","maxex":"-1","characreation":"0","is64bit":"1","product":"-1","browser":"2","ie11available":"1","theme":"0","dataCenter":"0","productization":"-1","product_ex":"0"}</pre>


==== requestDisplaySettings ====
==== requestDisplaySettings ====


<code>{"bg":"{\"v\":700,\"d\":[1,0,0,0,0,0]}"}</code>
<pre>{"bg":"{\"v\":700,\"d\":[1,0,0,0,0,0]}"}</pre>


==== requestResumeInfo ====
==== requestResumeInfo ====


<code>{"state":0,"ID":9}</code>
<pre>{"state":0,"ID":9}</pre>


== User Agent ==
== User Agent ==


Example: SQEXAuthor/2.0.0(Windows 7; ja-jp; 5fd2faa332)
Example: <code>SQEXAuthor/2.0.0(Windows 7; ja-jp; 5fd2faa332)</code>


Windows: "sqex"
=== Other Possible User Agents ===
macOS: "macsqex
 
PS4: "playstation 4"
* Windows: "sqex"
PS5: "playstation 5"
* macOS: "macsqex
XBox: "xbox"
* PS4: "playstation 4"
* PS5: "playstation 5"
*XBox: "xbox"


== Build Paths ==
== Build Paths ==


"c:\\ws\\ver_720_winbuild\\branches\\ver_720\\trunk\\prog\\patch\\Build\\LauncherWin"
<pre>
c:\\ws\\ver_720_winbuild\\branches\\ver_720\\trunk\\prog\\patch\\Build\\LauncherWin
</pre>

Revision as of 21:20, 20 April 2025

The FFXIV Launcher.

The launcher basically display webpages.

History

Since FFXIV has been around for a long time, it's went through several launcher redesigns.

1.x

This is the launcher used for 1.x, before A Realm Reborn. This screensot is recreation by Ioncannon, as no one took a screenshot of the original login page I guess.

2.x

This launcher design was launched with A Realm Reborn and had been in service until Endwalker.

6.x

This is the current iteration of the launcher, and the old launcher can no longer be used and all users must use the new design as of 6.x.

Browser Engines

The launcher supports two browser engines:

  • MSHTML (Internet Explorer 11) which is BrowserType 0, 1
  • WebView2 (Chrome) which is BrowserType 2

Debugging

Run C:\Windows\System32\F12\IEChooser.exe while the launcher is running. Or if you're using the WebView2 backend, set WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS="auto-open-devtools-for-tabs".

Native Communication

To communicate with native code, it uses window.chrome.webview.postMessage. This is shortened to window.external.user with this function:

window.external.user = function (e) { window.chrome.webview.postMessage(e); }

Functions

systemConfig

Opens the system config program.

requestExit

Exits the launcher.

requestReboot

Despite the name, the launcher doesn't come back from quitting. Maybe used on console?

link

Opens an external URL in your default web browser.

eulaOk

Sets the EulaAgreement in your FFXIV_BOOT.cfg to 1.

requestDP

{"id": 1}

requestConfig

{"lang":"en","region":2,"eula":0,"startup":0,"issteam":0,"query":"none","ver":"2025.03.10.0000.0001(11500960)","skip_confirm_expansion_install_dialog":"0","installedExVersions":"","dx11available":"1","dx11enabled":"1","maxex":"-1","characreation":"0","is64bit":"1","product":"-1","browser":"2","ie11available":"1","theme":"0","dataCenter":"0","productization":"-1","product_ex":"0"}

requestDisplaySettings

{"bg":"{\"v\":700,\"d\":[1,0,0,0,0,0]}"}

requestResumeInfo

{"state":0,"ID":9}

User Agent

Example: SQEXAuthor/2.0.0(Windows 7; ja-jp; 5fd2faa332)

Other Possible User Agents

  • Windows: "sqex"
  • macOS: "macsqex
  • PS4: "playstation 4"
  • PS5: "playstation 5"
  • XBox: "xbox"

Build Paths

c:\\ws\\ver_720_winbuild\\branches\\ver_720\\trunk\\prog\\patch\\Build\\LauncherWin