Thread Tools Display Modes
06/29/14, 07:32 AM   #1
zgrssd
AddOn Author - Click to view addons
Join Date: May 2014
Posts: 280
Some data about the clients inner workings & patching both clients for cost of 1

The gameclients are of course rather large, as was to be expected. If you want to use NA and EU client, here are some test I made on how to speed up the patch/install process by just copying files from one client folder to the other.

At least as far back as 1.1.5, almost every file in both clients is identical on binary level. Only a handfull of really small files seem to actually identify the client to the launcher/patcher/repair processes.

When not started the 1.2.3 EU client folder with English Vioceovers measures 37.137.759.041 bytes.
Of those 36.245.544.062 bytes are contained in the .dat files.
6.029.064.792 bytes are the English Voice Files (they are put in a seperate directory from the other gamefiles; mostly a handfull large .dat files).
The bulk of the .dat files is under 400 MiB in size, propably to aid effective patching via difference. Only the voiceover .dat files are big with 1.4 GiB each. It is also noticeable that the Voiceover files are downloaded in a completely seperate step from the other game files (meaning another progress bar is used) and that when switching game language the old version is kept around.

In theory it should be possible to jsut copy the .dat files between clients to avoid having to download them again. Earlier versions of the client (up to about launch) had the built in ability to just copy some identical files from other clients instead of re-downloading them.
In practice the client will completely ignore the .dat files as it seems not aware of thier existance at first.
The trick is to simply cancel the download and order a repair scan on the client you copied the files too. That way the patcher learns of the existing files and only missing/older files have to be downloaded.
The non-dat files only make about 800 MiB download size.


I would strongly advise not to copy non-dat files along. Those seem to be what clearly identfies the client to the launcher. Having the wrong onces in place can lead to the game being unable to patch and even make a repair scan.

The easiest way to copy files on that scale on a windows is the robocopy command (or any other dedicated folder synching tool).
I used
Code:
robocopy "The Elder Scrolls Online EU" "The Elder Scrolls Online" /E *.dat
in a console from the directory I installed eso too, to quickly copy the .dat files.
While it does normally skip all files that have not changed, it does so by looking at change date and filesize. And the changedate of both clients are usually different by about a day.
If it would be possible to force it to ignore changedate and only go by filesize to determine difference (or use a tool that allows such finely graiend options), patching the EU client by just copying the .dat files from a already patched NA server client could speed up even content patches a lot.

I have no idea about copy/folder synching tools on a MAC, nor do I know if the structure is anywhere identical (but it is to be asumed that at least the .dat struture is the same).

Last edited by zgrssd : 06/29/14 at 08:34 AM.
  Reply With Quote
06/29/14, 08:28 AM   #2
zgrssd
AddOn Author - Click to view addons
Join Date: May 2014
Posts: 280
Made a new binary comparision.
In 1.2.3 every single file is identical between both client folders, except for those 5 files (wich are not even 30 KiB together):
\depot\depot.version
\game\game_player.version
\vo_en\vo_en.version
\game\client\AppSettings.txt
\game\client\Platforms.xml

Of course if other/additional languages have been installed, thier vo_[language].version has to be considered too.
It is noticeable that those are (almost) the only .txt, .xml and .version files in the entire game directory. So file-type based exclusion should be all that is needed to synch those folders non-cirtical content.

Last edited by zgrssd : 06/29/14 at 08:31 AM.
  Reply With Quote
08/08/14, 10:40 AM   #3
zgrssd
AddOn Author - Click to view addons
Join Date: May 2014
Posts: 280
Using some Hashsum generation tools we figured out that the depot between Mac and EU clients also seem to be absolutely identical:
forums.elderscrollsonline.com/discussion/125025/can-i-copy-game-files-from-mac-to-win8-pc

I also have to add that it is propably save to copy the .bik files too. They are the bigger ones of the non-dat files and it seems like the game downloads all language versiosn anyway. What is critical to identify the client seems to be purely minor text files.

Last edited by zgrssd : 08/09/14 at 11:03 AM.
  Reply With Quote
08/09/14, 11:38 AM   #4
Sasky
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 231
Originally Posted by zgrssd View Post
I also have to add that it is propably save to copy the .bik files too. They are the bigger ones of the non-dat files and it seems like the game downloads all language versiosn anyway. What is critical to identify the client seems to be purely minor text files.
Perhaps it downloads all the localization text files, but it doesn't download all localized assets by default. When I did an install of a second language, I seem to remember it was about 5-6 GB. This is probably all voice and the intro video.
  Reply With Quote
08/09/14, 05:03 PM   #5
zgrssd
AddOn Author - Click to view addons
Join Date: May 2014
Posts: 280
Originally Posted by Sasky View Post
Perhaps it downloads all the localization text files, but it doesn't download all localized assets by default. When I did an install of a second language, I seem to remember it was about 5-6 GB. This is probably all voice and the intro video.
The intro videos in all 3 langaues are part of the depot (depot\Video). Could be that only means localised text in teh video, of course (with the sound being in the vo_ folder). So you get all 3 downloaded regardless of language selected.
Afaik text localisation is also part of the depot. Addons can actually overwrite the text language (as defined by the launcher) and you can run the game without voiceover files (using direct exe link) and still have full text.

Voiceovers however, those are the big files in the vo_[language] folders. Those are 4 really big .dat files.
Also the old languages files are kept around if you change the language.
  Reply With Quote

ESOUI » General Discussion » Tech Chat » Some data about the clients inner workings & patching both clients for cost of 1

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off