From 0a2287943eb046b8742124bf6a7567733a45a621 Mon Sep 17 00:00:00 2001 From: flswld Date: Wed, 8 Mar 2023 11:19:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 11 +++ docs/mhypbase.dll.hook | Bin 0 -> 161280 bytes docs/mhypbase.ini | 215 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 226 insertions(+) create mode 100644 docs/mhypbase.dll.hook create mode 100644 docs/mhypbase.ini diff --git a/README.md b/README.md index b3f1f270..5e3df36f 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,17 @@ #### 客户端需要本地https代理和打破解补丁才能正常使用,详情请参考目前主流私服连接方法 +#### 可以使用新版补丁避免https代理,支持自定义密钥和连接任意地址的服务器,感谢[mhypbase](https://github.com/Jx2f/mhypbase) + +## 特性 + +* 原生的高可用集群架构,任意节点宕机不会影响到整个系统,可大量水平扩展,支撑千万级DAU不是梦 +* 玩家级无状态游戏服务器,无锁单线程模型,开发省时省力,完善的玩家数据交换机制(内存-缓存-数据库) + ,拒绝同步阻塞的数据库访问,掌控每一纳秒的CPU时间不是梦 +* 新颖的玩家在线跨服无缝迁移功能,以多人世界之名,反复横跳于多个服务器进程之间不是梦 +* 独创的网关服务器侧客户端协议代理转换功能,拒绝因协议号消息号混淆而带来代码改动的烦恼,不同协议版本客户端同时在线联机不是梦 +* 完整的密钥交换机制实现,安全性++,拒绝一个写死的随机数种子和XOR密钥文件用到天荒地老,搭建一个属于自己的别具一格的聊天渠道不是梦 + ## 编译和运行环境 * Go >= 1.18 diff --git a/docs/mhypbase.dll.hook b/docs/mhypbase.dll.hook new file mode 100644 index 0000000000000000000000000000000000000000..c00126c42beed2b7a265436f3c6c48f356dc1903 GIT binary patch literal 161280 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 Q?>}-rS=~IKf+KwX2V7}sfdBvi literal 0 HcmV?d00001 diff --git a/docs/mhypbase.ini b/docs/mhypbase.ini new file mode 100644 index 00000000..32157dc4 --- /dev/null +++ b/docs/mhypbase.ini @@ -0,0 +1,215 @@ +[Basic] +;;;;;; enable console logger, enabled by default. +EnableConsole = true +;;;;;; drop server-side RCE packets, dropped by default. +DropRCEPacket = false +;;;;;; start of the type index for method addresses dumping, default is -1 (disabled). +; TypeIndexStart = -1 + + +[Value] +;;;;;; here you can customize your own channel config: +;;;;;; 1) replace your own dispatch url; +;;;;;; 2) disable the extra log reporters; +;;;;;; 3) disable the beta watermark. +ConfigChannel = {"ChannelName":"OSRELWin","PreDefines":"GAIA_ADDON_TOOLS;GAIA_MULTI_TERRAINS;CTS_GAIA_RELOCATE;HOTFIX_ENABLE;UNITY_RELEASE_BUILD;AMPLIFY_SHADER_EDITOR;ODIN_INSPECTOR;ODIN_INSPECTOR_3;UNITY_POST_PROCESSING_STACK_V2;PROBUILDER_FBX_ENABLED","DispatchConfigs":[{"DispatchUrls":["https://hk4e.flswld.com/query_region_list"]}],"BaseTextLang":"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15","BaseAudioLang":"Chinese,English(US),Korean,Japanese"} +;;;;;; here you can customize your own sdk base url: +ConfigBaseUrl = https://hk4e.flswld.com +;;;;;; replace your rsa public key, the default one is from grasscutter. +;;;;;; this key is used to 1) verify the signature of the dispatched data, and 2) encrypt your account password. +PublicRSAKey = xbbx2m1feHyrQ7jP+8mtDF/pyYLrJWKWAdEv3wZrOtjOZzeLGPzsmkcgncgoRhX4dT+1itSMR9j9m0/OwsH2UoF6U32LxCOQWQD1AMgIZjAkJeJvFTrtn8fMQ1701CkbaLTVIjRMlTw8kNXvNA/A9UatoiDmi4TFG6mrxTKZpIcTInvPEpkK2A7Qsp1E4skFK8jmysy7uRhMaYHtPTsBvxP0zn3lhKB3W+HTqpneewXWHjCDfL7Nbby91jbz5EKPZXWLuhXIvR1Cu4tiruorwXJxmXaP1HQZonytECNU/UOzP6GNLdq0eFDE4b04Wjp396551G99YiFP2nqHVJ5OMQ==AQAB +;;;;;; or, the password encryption key can be set separately. +; RSAEncryptKey = +;;;;;; it's not recommended to overwrite the private key, unless you know what you are doing. +;;;;;; if you want to use another rsa private key, uncomment the following line and replace it with your own. +; PrivateRSAKey = + + +[Offset] +;;;;;; client version is automatically detected by default. +;;;;;; or, you can specify the version manually. +; ClientVersion = Offset +;;;;;; if you manually specify the client version, you alse need to specify the offsets manually. +; il2cpp_string_new = 0x0 +il2cpp_string_new_Pattern = 40 53 48 83 EC 50 48 C7 44 24 20 FE FF FF FF 48 83 +; System__Text__EncodingHelper_GetDefaultEncoding = 0x0 +System__Text__EncodingHelper_GetDefaultEncoding_Pattern = 40 55 48 83 EC 40 48 8D 6C 24 20 48 C7 45 08 FE FF FF FF 8B 04 24 48 83 EC 10 8B 04 24 C7 +; System__Text__Encoding_GetBytes = 0x0 +System__Text__Encoding_GetBytes_Pattern = 48 89 5C 24 08 48 89 74 24 10 57 48 83 EC 40 48 8B FA 48 8B F1 48 85 +; MiHoYo__SDK__SDKUtil_RSAEncrypt = 0x0 +MiHoYo__SDK__SDKUtil_RSAEncrypt_Pattern = 48 89 5C 24 08 48 89 74 24 10 57 48 83 EC 20 48 8B F9 48 8B F2 48 8B 0D ? ? ? ? E8 ? ? ? ? 48 8B C8 48 8B D8 E8 ? ? ? ? 48 85 DB 74 7B +; MoleMole__MoleMoleSecurity_GetPublicRSAKey = 0x0 +MoleMole__MoleMoleSecurity_GetPublicRSAKey_Pattern = +48 BA 45 78 70 6F 6E 65 6E 74 48 89 90 ? ? ? ? 48 BA 3E 3C 2F 52 53 41 4B 65 +; MoleMole__MoleMoleSecurity_GetPrivateRSAKey = 0x0 +MoleMole__MoleMoleSecurity_GetPrivateRSAKey_Pattern = +2F 49 6E 76 65 72 73 65 +; MoleMole__ConfigUtil_LoadJSONStrConfig = 0x0 ; before 3.4.0 +MoleMole__ConfigUtil_LoadJSONStrConfig_Pattern = +; UnityEngine__JsonUtility_FromJson = 0x0 ; after 3.4.0 +UnityEngine__JsonUtility_FromJson_Pattern = +; MoleMole__Miscs_GetConfigChannel = 0x0 +MoleMole__Miscs_GetConfigChannel_Pattern = +; MoleMole__Miscs_LoadChannelConfigBlk = 0x0 +MoleMole__Miscs_LoadChannelConfigBlk_Pattern = +; MoleMole__FightModule_OnWindSeedClientNotify = 0x0 +MoleMole__FightModule_OnWindSeedClientNotify_Pattern = +; MoleMole__PlayerModule_OnWindSeedClientNotify = 0x0 +MoleMole__PlayerModule_OnWindSeedClientNotify_Pattern = +; MoleMole__PlayerModule_OnReciveLuaShell = 0x0 +MoleMole__PlayerModule_OnReciveLuaShell_Pattern = + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;;;;; unless you know what you are doing, don't change the following values. +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +[MD5ClientVersion] +a1db328df8d382d2c5cdb350947f53e1 = OSRELWin3.2.0 +639903877207463f8c6b08a73235c14e = CNRELWin3.2.0 +702671865eba6bd49db2da707cf4b4ef = OSRELWin3.3.0 +3dce9fa8a7874c70575d38c4f839c229 = CNRELWin3.3.0 +16fb0ca97fea983fc44f9aba476e3658 = OSRELWin3.4.0 +001606dd78070aed0803536a2752459a = CNRELWin3.4.0 +db4b2ba49753be4833c481e8b701f040 = OSRELWin3.5.0 +2a047c49ea9e6f817208dcc1cddc41fc = CNRELWin3.5.0 + + +[OSRELWin3.2.0] +il2cpp_string_new = 0x027D31D0 +System__Text__EncodingHelper_GetDefaultEncoding = 0x08E3AE50 +System__Text__Encoding_GetBytes = 0x08F706E0 +MiHoYo__SDK__SDKUtil_RSAEncrypt = 0x09448080 +MoleMole__MoleMoleSecurity_GetPublicRSAKey = 0x05C00F50 +MoleMole__MoleMoleSecurity_GetPrivateRSAKey = 0x05BFF4A0 +MoleMole__ConfigUtil_LoadJSONStrConfig = 0x062FF2A0 +UnityEngine__JsonUtility_FromJson = 0x09684F80 +MoleMole__Miscs_GetConfigChannel = 0x05113970 +MoleMole__Miscs_LoadChannelConfigBlk = 0x0511F850 +MoleMole__FightModule_OnWindSeedClientNotify = 0x039188F0 +MoleMole__PlayerModule_OnWindSeedClientNotify = 0x030E2AC0 +MoleMole__PlayerModule_OnReciveLuaShell = 0x0530B900 + + +[CNRELWin3.2.0] +il2cpp_string_new = 0x027CA270 +System__Text__EncodingHelper_GetDefaultEncoding = 0x08F23CA0 +System__Text__Encoding_GetBytes = 0x0905A330 +MiHoYo__SDK__SDKUtil_RSAEncrypt = 0x09539E70 +MoleMole__MoleMoleSecurity_GetPublicRSAKey = 0x05CBE500 +MoleMole__MoleMoleSecurity_GetPrivateRSAKey = 0x05CBC9F0 +MoleMole__ConfigUtil_LoadJSONStrConfig = 0x063CCFA0 +UnityEngine__JsonUtility_FromJson = 0x09778D20 +MoleMole__Miscs_GetConfigChannel = 0x051A6000 +MoleMole__Miscs_LoadChannelConfigBlk = 0x051B22D0 +MoleMole__FightModule_OnWindSeedClientNotify = 0x0394F590 +MoleMole__PlayerModule_OnWindSeedClientNotify = 0x030FB280 +MoleMole__PlayerModule_OnReciveLuaShell = 0x053A5CA0 + + +[OSRELWin3.3.0] +il2cpp_string_new = 0x028BBE80 +System__Text__EncodingHelper_GetDefaultEncoding = 0x0890F980 +System__Text__Encoding_GetBytes = 0x08A3F7F0 +MiHoYo__SDK__SDKUtil_RSAEncrypt = 0x08EB3A30 +MoleMole__MoleMoleSecurity_GetPublicRSAKey = 0x04750780 +MoleMole__MoleMoleSecurity_GetPrivateRSAKey = 0x047510F0 +MoleMole__ConfigUtil_LoadJSONStrConfig = 0x05978F20 +UnityEngine__JsonUtility_FromJson = 0x0 +MoleMole__Miscs_GetConfigChannel = 0x04C95570 +MoleMole__Miscs_LoadChannelConfigBlk = 0x04C9F840 +MoleMole__FightModule_OnWindSeedClientNotify = 0x030FDBF0 +MoleMole__PlayerModule_OnWindSeedClientNotify = 0x045B5880 +MoleMole__PlayerModule_OnReciveLuaShell = 0x02DB3A00 + + +[CNRELWin3.3.0] +il2cpp_string_new = 0x028BF7E0 +System__Text__EncodingHelper_GetDefaultEncoding = 0x08911D30 +System__Text__Encoding_GetBytes = 0x08A41E00 +MiHoYo__SDK__SDKUtil_RSAEncrypt = 0x08EB43F0 +MoleMole__MoleMoleSecurity_GetPublicRSAKey = 0x04755EF0 +MoleMole__MoleMoleSecurity_GetPrivateRSAKey = 0x04756860 +MoleMole__ConfigUtil_LoadJSONStrConfig = 0x0597CC20 +UnityEngine__JsonUtility_FromJson = 0x0 +MoleMole__Miscs_GetConfigChannel = 0x04C9B420 +MoleMole__Miscs_LoadChannelConfigBlk = 0x04CA56F0 +MoleMole__FightModule_OnWindSeedClientNotify = 0x03102500 +MoleMole__PlayerModule_OnWindSeedClientNotify = 0x045BB270 +MoleMole__PlayerModule_OnReciveLuaShell = 0x02DB84E0 + + +[OSRELWin3.4.0] +il2cpp_string_new = 0x02C74710 +System__Text__EncodingHelper_GetDefaultEncoding = 0x090E7820 +System__Text__Encoding_GetBytes = 0x09267C60 +MiHoYo__SDK__SDKUtil_RSAEncrypt = 0x096F7C30 +MoleMole__MoleMoleSecurity_GetPublicRSAKey = 0x04FAA4B0 +MoleMole__MoleMoleSecurity_GetPrivateRSAKey = 0x04FAA8A0 +UnityEngine__JsonUtility_FromJson = 0x099B4470 +MoleMole__Miscs_GetConfigChannel = 0x048787D0 +MoleMole__Miscs_LoadChannelConfigBlk = 0x0487CEE0 +MoleMole__FightModule_OnWindSeedClientNotify = 0x03DD93B0 +MoleMole__PlayerModule_OnWindSeedClientNotify = 0x04E8A4C0 +MoleMole__PlayerModule_OnReciveLuaShell = 0x04E77F50 + +; &reinterpret_cast(klass)[4] is a magic for klass->byval_arg +; &reinterpret_cast(method)[0] is a magic for method->methodPointer +il2cpp__vm__MetadataCache__GetTypeInfoFromTypeDefinitionIndex = 0x02C6A250 +il2cpp__vm__Type__GetName = 0x02C67050 +il2cpp__vm__Class__GetMethods = 0x02C1D960 +il2cpp__vm__Method__GetNameWithGenericTypes = 0x02C67CC0 + + +[CNRELWin3.4.0] +il2cpp_string_new = 0x02C76D30 +System__Text__EncodingHelper_GetDefaultEncoding = 0x090D20A0 +System__Text__Encoding_GetBytes = 0x09252750 +MiHoYo__SDK__SDKUtil_RSAEncrypt = 0x096E29C0 +MoleMole__MoleMoleSecurity_GetPublicRSAKey = 0x04FA03C0 +MoleMole__MoleMoleSecurity_GetPrivateRSAKey = 0x04FA07B0 +UnityEngine__JsonUtility_FromJson = 0x0999FCF0 +MoleMole__Miscs_GetConfigChannel = 0x04870100 +MoleMole__Miscs_LoadChannelConfigBlk = 0x048747E0 +MoleMole__FightModule_OnWindSeedClientNotify = 0x03DD4A10 +MoleMole__PlayerModule_OnWindSeedClientNotify = 0x04E801E0 +MoleMole__PlayerModule_OnReciveLuaShell = 0x04E6DC70 + + +[OSRELWin3.5.0] +il2cpp_string_new = 0x0099AD10 +System__Text__EncodingHelper_GetDefaultEncoding = 0x073384B0 +System__Text__Encoding_GetBytes = 0x074E32B0 +MiHoYo__SDK__SDKUtil_RSAEncrypt = 0x078CDEF0 +MoleMole__MoleMoleSecurity_GetPublicRSAKey = 0x028D8DE0 +MoleMole__MoleMoleSecurity_GetPrivateRSAKey = 0x028D92C0 +UnityEngine__JsonUtility_FromJson = 0x07BD5DB0 +MoleMole__Miscs_GetConfigChannel = 0x03BF85C0 +MoleMole__Miscs_LoadChannelConfigBlk = 0x03BFF820 +MoleMole__FightModule_OnWindSeedClientNotify = 0x00F42F10 +MoleMole__PlayerModule_OnWindSeedClientNotify = 0x019108D0 +MoleMole__PlayerModule_OnReciveLuaShell = 0x01913330 + +; &reinterpret_cast(klass)[26] is a magic for klass->byval_arg +; &reinterpret_cast(method)[1] is a magic for method->methodPointer +il2cpp__vm__MetadataCache__GetTypeInfoFromTypeDefinitionIndex = 0x009907A0 +il2cpp__vm__Type__GetName = 0x0098D5B0 +il2cpp__vm__Class__GetMethods = 0x00943800 +il2cpp__vm__Method__GetNameWithGenericTypes = 0x0098E220 + + +[CNRELWin3.5.0] +il2cpp_string_new = 0x00991B10 +System__Text__EncodingHelper_GetDefaultEncoding = 0x073F89C0 +System__Text__Encoding_GetBytes = 0x075A4FC0 +MiHoYo__SDK__SDKUtil_RSAEncrypt = 0x079922B0 +MoleMole__MoleMoleSecurity_GetPublicRSAKey = 0x0292FDB0 +MoleMole__MoleMoleSecurity_GetPrivateRSAKey = 0x029302A0 +UnityEngine__JsonUtility_FromJson = 0x07C9E600 +MoleMole__Miscs_GetConfigChannel = 0x03C86890 +MoleMole__Miscs_LoadChannelConfigBlk = 0x03C8DC10 +MoleMole__FightModule_OnWindSeedClientNotify = 0x00F465F0 +MoleMole__PlayerModule_OnWindSeedClientNotify = 0x01935210 +MoleMole__PlayerModule_OnReciveLuaShell = 0x01937CE0 + +il2cpp__vm__MetadataCache__GetTypeInfoFromTypeDefinitionIndex = 0x00987590 +il2cpp__vm__Type__GetName = 0x009843D0 +il2cpp__vm__Class__GetMethods = 0x00983AE0 +il2cpp__vm__Method__GetNameWithGenericTypes = 0x00985060