Page MenuHomeFeedback Tracker

Problem downloading mods after moving game with Steam to another drive
Awaiting internal Testing, NormalPublic

Description

This is NOT related to the "RHS - Staus Quo" download problem.

Basic problem: When trying to download ANY mod, this message pops up: "The response from the server took too long".
BUT it does not have anything to do with a timeout; Rather neglectfully bad error handling from BIs code.

The real culprit we find in the log files:
C:\Users\%username%\Documents\My Games\ArmaReforger\logs\logs_2024-04-13_20-55-02

In both console.log and error.log we found multiple entries like this:
21:00:16.885 BACKEND (E): Cannot move a file from C:\Users\sir_h\AppData\Local\Temp\addons/Shrapnel_59BA048FA618471A/537a77555bfae30ba2bf10c329aed8206bc9be604ddab74006aa1826e77ab5f5.jpg to G:\_steam\steamapps\common\ArmA/addons/Shrapnel_59BA048FA618471A/preview0_576x324.jpg

The problem is obvious, because ArmA Reforger is not installed in
G:\_steam\steamapps\common\ArmA/
but in
G:\_steam\steamapps\common\ArmA Reforger/

I SUSPECT that the problems stems from 2 1/2 factors:
a) I installed the game via Steam to drive J: (where all download worked find) and later moved it (Steam function) to drive G:, where now the problems occur.
Old dir: J:\_steam\steamapps\common\ArmA Reforger/
New dir: G:\_steam\steamapps\common\ArmA Reforger/
Contents match.

b) Windows pathnames create troubles when there are whitespaces in the name (like \ArmA Reforger\). Then they need to be escaped. So
G:\_steam\steamapps\common\ArmA Reforger/
should become
"G:\_steam\steamapps\common\ArmA Reforger/"
If you do not escape it, Windows might split it into 2 parts on library or app calls:

  1. "G:\_steam\steamapps\common\ArmA"
  2. "Reforger/

and interpret the 'reforger' as the next argument, thus losing part of the name.

Bonus problem c) You should not mix Windows path separator \ with Unix path separator / . While Windows native I/O can handle that, lots of apps/libs CANNOT handle that.

Summary: When I moved the installation from J: to G:, the Directory Name reference for the internal "ArmA Reforger Download Manager" "\ArmA Reforger\" was cut down to "\ArmA\" because of the whitespace character.
So even though the game was installed in
"G:\_steam\steamapps\common\ArmA Reforger/"
the Download Manager tried to work in
"G:\_steam\steamapps\common\ArmA/"
But that folder does not exist (AR is installed in
"G:\_steam\steamapps\common\ArmA Reforger\"

Once I created the folder
"G:\_steam\steamapps\common\ArmA/"
ALL DOWNLOADS were working fine.

BUT: Next problem now is, that the central game engine itself now has a problem finding those "activated mods", because it is looking in
"G:\_steam\steamapps\common\ArmA Reforger/addons/"
instead of
"G:\_steam\steamapps\common\ArmA/addons/"

Copying the files from
"G:\_steam\steamapps\common\ArmA\addons\"
to
"G:\_steam\steamapps\common\ArmA Reforger\addons\"
did not help, I get multiple errors when loading/starting a game. So the actual reason here is unknown, so in the meantime I cannot use mods.

So if any of the devs are here, please tell me where the target directory name for the internal downloads manager is stored (Registry, config files), so I can look it up and hunt it down, so we get to the bottom of this (I can then easily fix my problem without reinstalling and hoping it works, and you guys can prevent that this problem also occurs on other systems or even future releases, like ArmA 4).

And the other notes to the devs:
a) You should always write your code in such a way, that all parts of the code retrieve their paths via the same mechanisms (base method).
Clearly, the internal download manager and the central game engine do NOT.

b) You error handling in the internal download manager is bad, because the error that's happening is a File I/O error (File not found or cannot write file), not a network error (timeout) as you suggest. Do proper error handling, like the logfiles show, and not just drop any generic error into the UI.

Details

Severity
Minor
Resolution
Open
Reproducibility
Always
Operating System
Windows 10 x64
Operating System Version
Edition Windows 10 Pro Version 22H2 Installed on ‎2020-‎11-‎25 OS build 19045.4291 Experience Windows Feature Experience Pack 1000.19056.1000.0
Category
General
Steps To Reproduce
  1. Install AR to a drive via steam, so that at least one folder name has a space character in it. Example: "J:\_steam\steamapps\common\ArmA Reforger\"
  2. Use steam to move the installation to another disk, example: "G:\_steam\steamapps\common\ArmA Reforger\"
  3. Now start AR, head into the mod downloader, try to download any mod
  4. You will get a message about a net I/O timeout, but that is bogus: "The response from the server took too long"
  5. The logfiles (console and errors) will show something like

21:00:16.885 BACKEND (E): Cannot move a file from C:\Users\sir_h\AppData\Local\Temp\addons/Shrapnel_59BA048FA618471A/537a77555bfae30ba2bf10c329aed8206bc9be604ddab74006aa1826e77ab5f5.jpg to G:\_steam\steamapps\common\ArmA/addons/Shrapnel_59BA048FA618471A/preview0_576x324.jpg

Additional Information
  1. So it is obvious that the mod downloader gets handed the wrong path "...\ArmA\" instead of "...\ArmA Reforger\" from somewhere (registry, config files?)
  2. The reason probably has something to do with steam moving the installation

Event Timeline

JayC667 created this task.Sun, Apr 14, 1:32 AM
JayC667 updated the task description. (Show Details)
Geez changed the task status from New to Awaiting internal Testing.Mon, Apr 15, 12:48 PM