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)
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)