Krock 3e2c926ba8 Status update: high CPU load is back 4 mesi fa
..
110_data 2f2785d762 Move helpful research data to dev_tools 3 anni fa
suspend_start f3c46b6fc2 Clean up directory structure 3 anni fa
JOURNAL.md f3c46b6fc2 Clean up directory structure 3 anni fa
README.txt 3e2c926ba8 Status update: high CPU load is back 4 mesi fa
TOOLS.md 65a83adecd Scripts for 4.5.0 (no patch) 8 mesi fa
mhyprot2.md 2f2785d762 Move helpful research data to dev_tools 3 anni fa
network.md 1c88455b8c Scripts for 4.7.0 (no patch) 5 mesi fa

README.txt

This directory contains files relevant to the patch development.


Relevant game changes:

1.0.1
(accidental) 10 day "no-service" period

1.1.0
"sc stop" & "sc delete" are no longer run on login

1.2.0
xLua: Introduction of the sb_* check

1.3.0
xLua: lparser.c is no longer included
UserAssembly: Modified login function
UnityPlayer: Random crash on certain systems (patched)

1.3.2
UnityPlayer: Random crash fixed

1.4.0
(no relevant changes)

1.5.0
Patch: Removal of old/unnecessary patches. (checkout c50c174)
UnityPlayer: "10 second" delayed crash no longer happens
UnityPlayer: Various runtime and startup crashes

1.5.1
UnityPlayer: Crashes fixed

1.6.0
New library: HDiffPatch
Launcher: Obfuscated web request params
Removed crash logging of non-crashy events (startup)

1.6.1
(no relevant changes)

2.0.0
Crash report directory format changed from "crash_*" to "mihoyocrash_*"

2.1.0
2.2.0
(no relevant changes)

2.3.0
Patch: Removal of old/unnecessary patches. (checkout 32d6ee4)
xLua: sb_* check is not called any more

2.4.0
New library: mhypbase.dll (more anti-debugger code)
Introduction of "query_security_file"
UnityPlayer: "10 second" delayed crash occurs again, but on startup

2.5.0
Moved library: mhypbase.dll (exists temporarily only)
New binaries: mhyprot3.Sys (+ garbage), Plugins/crashreport.exe, Plugins/metakeeper.dll
UnityPlayer: delayed crash is gone again
Partial use of HDiffPatch for game updates

2.6.0
(no relevant changes)

2.7.0
Moved library: mhypbase.dll (exists again permanently)
Removed libraries: InControlNative.dll, XInputInterface64.dll
New binary: blueReporter.exe (BSoD reporter)

2.8.0
Removed libraries: d3dcompiler_43.dll, sqlite3.dll, widevinecdmadapter.dll
New libraries: MiHoYoMTRSDK.dll, vk_swiftshader.dll, vulkan-1.dll
-> Vulkan child window rendering breaks certain Wine versions
Patch: Correction of the computer system information.

3.0.0
Removed library: metakeeper.dll
New libraries: kcp.dll
Astrolabe.dll: telemetry and game logging (unused?, JSON HTTP POST)
Telemetry.dll: (almost the same library again)

3.1.0
Removed library: mhyprot2.sys
Unknown starting time of mhyprot3 -> add to registry regardless
Patch: Optional analytics server blocking. Removal of unused Unity3D block lists.
Patch: Secondary patch to reduce CPU usage on kernels with tick rates < 1 kHz

3.2.0
Patch: Removal of patches 2.1.0 - 3.0.0. (checkout dbfe761)
(no relevant changes)

3.3.0
New libraries: mailbox.dll, HoYoKProtect.sys
Patch process: CE approach broken

3.4.0
(no relevant changes)

3.5.0
Optional Kernel driver (?). Needs clarification.
CN server: device-specific "Data error, please log in again." upon login

3.6.0
(no relevant changes)

3.7.0
xlua.dll statically linked into UserAssembly.dll
xLua: sb_* check is not called any more
Game is playable patchless after a few days

3.8.0
Game is playable from day 0 via Wine/Proton/CrossOver

4.0.0
VRAM leak in menus
New "BundleDownload" progress logging to the uspider domain
New "UserBehavior" logging (system specifications)

4.0.1
Fixed VRAM leak

4.1.0
Removed mhyprot3.sys
Patch: Removal of patches 3.1.0 - 3.8.0. (checkout b404916)

4.2.0
New library: APMLog.dll
Removed bluereporter.exe

4.3.0
New library: xxHash (in UserAssembly.dll)
New file: Managed/Metadata/startup-metadata.dat
+ Native/Data/Metadata/startup-metadata.dat

4.4.0
(no relevant changes)

4.5.0
Launcher: "sophon_chunk" delta patching A/B test

4.6.0
(no relevant changes)

4.7.0
2024-06-11: High CPU usage returns due to a new security file (via HTTPS)

4.8.0
Deprecated "resource" JSON (launcher fade-out)
UnityPlayer.dll and UserAssembly.dll statically linked into the main game binary
2024-07-18: "query_security_file" on startup, yet no excessive CPU usage
2024-07-22: High CPU usage returns due to a new security file
"*.exe:GMS000000[NNN].log" is generated, "driverError.log" not updated.