ASF is AnyCPU binary which means it'll run fine on both 32-bit as well as 64-bit OSes.
Up to today 32-bit runtime was preferred for ASF, as it uses less memory and can be faster than 64-bit equivalent.
However, in very busy environments it's easily possible for ASF to require even more than 2 GB of memory, and in addition to that extending our userspace to 64-bit can bring benefits on more modern setups.
Therefore, keep being compatible on both 32-bit and 64-bit OSes, but on 64-bit ones use actual 64-bit runtime instead of preferred 32-bit one.
In addition to that, optimize some unused references and other things while we're at it.
After evaluation, it seems that more accounts have card drops restricted rather than not, and having it as true when in reality it's false results in less performance degradation than the other way
In general we should prioritize properties according to the ones user will want to modify first, but as it's unpredictable, we can only guess and do it more or less
This reverts commit b64491e284.
Didn't fix the issue as mcs.exe is bugged as well, I'll just live with Mono weekly being broken and unreliable ¯\_(ツ)_/¯
Indeed LibZ seems to not being functional on Mono, so we keep using ILRepack for Mono, and LibZ for Windows
Final binary is compiled on Windows anyway, and it seems to work properly on both Windows and Mono, so this is purely for making people using self-compiled binaries happy
We tried ILMerge, we tried ILRepack, so now maybe LibZ will do it's thing?
The objective is solving false-positives of AVs, it might get reverted if there is no improvement
Previously we had rather half-blind mechanism of trying to play given games, expecting a disconnect, and reconnecting in AccountPlayingDelay minutes. Now instead we have proper event-based handling - ASF listens on each PlayingSessionState event and updates availability of farming accordingly, not only resuming farming immediately after it's possible, but also limiting number of reconnects and other issues which could be caused by previous approach.
I bet this can be even further improved to not receive LoggedInElsewhere and disconnect error when user starts playing a game, but that's misc compared to gigantic improvement in this commit