Commit Graph
100 Commits
Author SHA1 Message Date
ghorsington ec79ad057b Allow giving special versions to build script 2022-08-14 17:18:08 +03:00
ghorsington e473f08e0a ConfigFile: Fix visibility of Values
GetConfigEntries was obsoleted, but Values was never set to public (only explicitly implemented)
2022-08-09 21:23:17 +03:00
Geoffrey Horsington 9c2b17f3e4 Merge pull request #443 from TheLounger/master
Add unhollower RegEx rename config option
2022-07-13 18:34:20 +03:00
ghorsington 3a54f7eef8 Fix missing Microsoft.NETFramework.ReferenceAssemblies reference 2022-07-09 11:03:34 +03:00
ghorsington 3febd6a3ba WindowsPageAllocator: Fix allocation issues on macOS
On macOS (if using e.g. Crossover), VirtualQuery can report a memory address as free but still fail to reserve the memory with VirtualAlloc (fails with error code 0x170C240 for some reason).

To fix this, memory is now reserved directly in the loop to ensure it can be reserved. If reservation fails, the next address is tried.
2022-06-19 21:50:49 +03:00
ghorsington fbb856702f PageAllocator: fix allocation unit to correct value 2022-06-19 21:38:30 +03:00
ghorsington f2fde2db12 Bump Il2CppAssemblyUnhollower 2022-06-18 21:52:17 +03:00
ghorsington 686c956fa4 Fix VirtualQuery signature on x64
In WinAPI MEMORY_BASIC_INFORMATION is not a real struct but rather a macro that resolves either to _MEMORY_BASIC_INFORMATION32 or _MEMORY_BASIC_INFORMATION64, see

https://github.com/Leandros/WindowsHModular/blob/master/include/win32/io.h#L120-L147

Because of this, hooking might fail because some valid memory pages will get skipped or some invalid pages might be used.
2022-06-18 20:40:23 +03:00
ghorsington e4c9ae4115 Expose LoadPlugins(string[]) for 3rd party tools
This is a temporary solution until metaplugins are available
2022-06-05 19:03:08 +03:00
ghorsington 9cc85135dd Add temporary instance property to Unity and .NET chainloaders 2022-06-05 19:02:25 +03:00
ghorsington 5f13a91292 Bump Doorstop version 2022-06-05 17:28:39 +03:00
ghorsington 6b7405e46b WindowsConsoleDriver: Don't quit if console cannot be allocated 2022-06-05 17:16:51 +03:00
ghorsington 4f2226f1db Add UnhollowedAssembliesPath config option and similar --unhollowed-path CLI arg 2022-06-05 17:16:18 +03:00
ghorsington 5d77398a5c Bump Unhollower version 2022-05-24 20:42:10 +03:00
ghorsington bf37162544 Bump Unhollower version 2022-05-22 10:57:01 +03:00
Geoffrey Horsington 265107c6c5 Update build_pr.yml 2022-05-21 01:12:36 +03:00
Geoffrey Horsington 7747d531aa Update build_pr.yml 2022-05-21 01:07:46 +03:00
Geoffrey Horsington 9050742dc4 Merge pull request #415 from xKiraiChan/master
Update bleeding edge builds link to newer domain
2022-05-17 07:29:24 +03:00
Geoffrey Horsington 7a97bddc2b Merge pull request #412 from js6pak/fix-attributes-on-cpp2il
Run basic AttributeRestoration for cpp2il
2022-05-07 16:10:36 +03:00
ghorsington 5ff56c2ca5 WindowsPageAllocator: don't throw on invalid address resolving 2022-05-05 22:48:42 +03:00
ghorsington eaf38ef536 Bump package versions 2022-05-02 18:58:36 +03:00
ghorsington fba4461f0e Bump Il2CppUnhollower 2022-04-30 14:19:27 +03:00
ghorsington 5538981709 ProxyAssemblyGenerator: default to Cpp2Il, add DisposeAndCleanupAll 2022-04-28 22:32:06 +03:00
ghorsington 8b98fab59e Bump package versions 2022-04-28 22:30:00 +03:00
ghorsington da48b7710d Bump Unhollower version 2022-04-21 22:25:03 +03:00
Geoffrey Horsington 9ea3ee8e62 Merge pull request #403 from xKiraiChan/patch-1
Change visibility of ConfigEntryBase constructor to `internal protected` to allow for external implementations
2022-04-21 09:33:13 +03:00
Geoffrey Horsington d4d2abd3b0 Merge pull request #401 from Kasuromi/master
[Il2Cpp] Use UnityVersionHandler's Size Providers in Harmony Backend
2022-04-20 19:31:46 +03:00
ghorsington 4a290db876 ProxyAssemblyGenerator: fix to work with new Unhollower version 2022-04-17 18:38:18 +03:00
ghorsington 16a75479bb Bump package versions 2022-04-17 18:37:36 +03:00
ghorsington fa9b1ab9d1 CI: Only build for PRs and BEs for master 2022-03-25 00:06:49 +02:00
Geoffrey Horsington b50a18a3d9 Merge pull request #376 from Kasuromi/master
[Il2Cpp] Convert managed bool to byte in Native to Managed trampoline
2022-03-15 17:43:51 +02:00
ghorsington b7a05a61e1 Fix C# 10 CS8983 regression 2022-02-24 22:32:17 +02:00
ghorsington 4cc7ab0619 Bump Il2CppUnhollower and Cpp2IL versions 2022-02-24 22:13:30 +02:00
Geoffrey Horsington f2c0e0fa45 Update feature_request.yaml 2022-02-13 10:01:20 +02:00
Geoffrey Horsington f10a1f61d7 Update error_report.yaml 2022-02-13 10:00:46 +02:00
Geoffrey Horsington 0894d3552e Merge pull request #360 from BepInEx/feature-runparallel
Add ThreadingExtensions.ForEachParallel
2022-02-13 09:50:21 +02:00
ghorsington 1504d80c06 Bump HarmonyX and MonoMod 2022-02-03 19:06:36 +02:00
Geoffrey Horsington f590259156 Update build_be.yml 2022-02-02 18:46:45 +02:00
Geoffrey Horsington 86ead2cf4d Update build_be.yml 2022-02-02 18:43:25 +02:00
ghorsington 6daaa543f1 Update CI build URL 2022-01-31 19:41:04 +02:00
ghorsington 7669b6dbec Il2Cpp: Fix OnInstallUnityTlsInterface not being static
This causes crashes in some games (likely because of mono generating thisptr arg which could break the stack order on x86)
2022-01-22 19:44:57 +02:00
Geoffrey Horsington e21677f440 Merge pull request #352 from js6pak/bitness
Fix process bitness detection
2022-01-13 18:07:44 +02:00
ghorsington ce04a24fb2 ProxyAssemblyGenerator: Handle exceptions better 2022-01-12 20:56:12 +02:00
ghorsington 59c5adc982 Bump libraries
* Updated HarmonyX
* Updated MonoMod
* Updated Cpp2IL
2022-01-11 17:27:04 +02:00
Geoffrey Horsington 692fb86cfd Merge pull request #351 from miniduikboot/fix/artifact-description-wording
CI: Emphasize architecture of game instead of OS
2022-01-08 21:00:07 +02:00
ghorsington 39f6bf8415 Add temporary fix for crashes in some x86 games
At the moment, for some reason the game can crash after hooking il2cpp_unity_install_unitytls_interface unless DetourGenerator runs a little slower
2022-01-02 20:26:07 +02:00
ghorsington c76b09cc15 IL2CPPDetourMethodPatcher: Improve struct handling on x64
* Add correct return buffer when return value is a struct
* Use IntPtr for all parameters on x64 instead of a FixedStruct
2022-01-01 20:58:25 +02:00
ghorsington b7b8dd2d84 Add HarmonyBackend config to Il2Cpp as well 2022-01-01 13:37:48 +02:00
ghorsington cbae41071b IL2CPPDetourMethodPatcher: Revert to original argument handling in x64
Because on x64 the calling convention forces all structs to be passed as pointers, there is no need to handle it differently
2022-01-01 13:14:24 +02:00
ghorsington 82538d8ed1 Fix crash when logging some strings with long multi-byte characters 2022-01-01 11:13:18 +02:00
ghorsington 249a185aad Bump Il2CppAssemblyUnhollower 2021-12-22 22:09:50 +02:00
ghorsington 86549f5453 BepInExLogInterpolatedStringHandler: Fix typo 2021-12-22 17:01:41 +02:00
ghorsington 3fd5d68e3b ManualLogSource: Add string interpolation for Log* overloads; clean up logging 2021-12-21 19:40:15 +02:00
ghorsington 4bb48c502e Reformat project; apply code style 2021-12-21 18:55:05 +02:00
ghorsington 81141fcfc4 Add LogInterpolatedStringHandler overload for default logger 2021-12-21 18:49:07 +02:00
ghorsington 1987573c59 Mention .NET 6 requirement in building 2021-12-21 18:23:00 +02:00
ghorsington 325e0df14b Use C# 10, reformat project 2021-12-21 16:09:39 +02:00
ghorsington 62e27a96d3 CI: Build with .NET 6 2021-12-21 12:42:55 +02:00
ghorsington b57eac24a1 Update README 2021-12-21 12:39:00 +02:00
ghorsington acf2332cf0 Speed up build script by caching dependency downloads 2021-12-21 12:37:09 +02:00
ghorsington cc1db2c0d0 Bump CakeBuild to 2.0.0; clean up build script 2021-12-21 11:07:16 +02:00
ghorsington e3e944d042 Bump package versions 2021-12-21 10:41:53 +02:00
ghorsington 30a1089326 Update calls to RegisterTypeInIl2Cpp
The previous signatures are now obsolete
2021-12-07 22:22:13 +02:00
ghorsington 7562726305 Bump package versions 2021-12-07 22:16:30 +02:00
Geoffrey Horsington 4ed958472f Merge pull request #341 from ishitatsuyuki/linux
Fix the Linux launcher script
2021-12-07 19:23:23 +02:00
ghorsington 8b4a0f6ffc Remove unneeded logging 2021-12-07 18:13:33 +09:00
ghorsington 3ffea3d8d8 Attempt to resolve symlinks 2021-12-07 18:13:33 +09:00
ghorsington 8f6d04c621 Add error when using *nix build with Windows executable 2021-12-07 18:13:33 +09:00
Geoffrey Horsington 919d1ee0da Support new Steam bootstrapper on Linux 2021-12-07 18:13:33 +09:00
ghorsington a1cd9be252 Add IL2CPP.UpdateUnhollowedAssemblies configuration option
Allows to supply custom unhollowed assemblies
2021-12-04 23:31:56 +02:00
Geoffrey Horsington 8e9f1f3592 Merge pull request #338 from simonkellly/coroutines
Support returning Il2Cpp IEnumerators which had been compiler generated
2021-11-19 23:05:45 +02:00
ghorsington e66c15bdcb Add process path to mutex name 2021-11-14 20:37:27 +02:00
Geoffrey Horsington 87024c82b7 Merge pull request #332 from simonkellly/mutex
Mutex
2021-11-14 20:19:19 +02:00
ghorsington ed3c169e48 Il2Cpp: Check both GameAssembly and UserAssembly 2021-11-10 19:13:25 +02:00
Geoffrey Horsington e366c88640 Update README.md 2021-11-10 15:20:16 +02:00
Geoffrey Horsington 3182baa337 Update README.md 2021-11-10 15:19:14 +02:00
ghorsington f57f778500 Bump Il2CppAssemblyUnhollower 2021-11-08 21:13:24 +02:00
ghorsington 1571e91149 Bump Il2CppAssemblyUnhollower 2021-11-07 16:27:23 +02:00
ghorsington 5acf970d6d Il2CppManagedEnumerator: fix missing operand in ldloca 2021-11-07 16:18:33 +02:00
ghorsington 5a8dbe3018 Bump Il2CppAssemblyUnhollower and Cpp2IL 2021-11-05 18:59:38 +02:00
ghorsington 4530c98ab2 Il2Cpp: Add MonoBehaviour.StartCoroutine extension with managed IEnumerator 2021-11-04 22:49:05 +02:00
ghorsington 32d1be59a8 Il2Cpp: Add wrappers for Il2Cpp IEnumerator and IEnumerable interop 2021-11-04 22:49:04 +02:00
ghorsington 7cc5d8f397 Bump Il2CppAssemblyUnhollower, bump reference libs 2021-11-04 22:26:11 +02:00
ghorsington 990c0ec6af Don't pull last successful commit in forks 2021-11-02 22:04:51 +02:00
ghorsington bcedd3fc29 Don't try to push BE builds in forks 2021-11-02 21:58:30 +02:00
ghorsington 7f1f139aea Force .sh to LF EOF 2021-11-02 20:52:06 +02:00
ghorsington 1128b5f6c7 WindowsConsoleDriver: Fix console size checking 2021-11-02 20:17:24 +02:00
ghorsington 8ff2c1088b Clean up console listener logic 2021-11-02 20:16:50 +02:00
ghorsington dbe443d4fb Use PackageOutputPath 2021-11-02 18:51:33 +02:00
ghorsington fcadb806ad Bump Il2CppUnhollower 2021-11-01 00:24:16 +02:00
ghorsington f85b196dbf Update README 2021-11-01 00:16:39 +02:00
ghorsington 92a1d17509 Remove old CI script 2021-11-01 00:16:08 +02:00
Geoffrey Horsington 802e7d0a2a Update build_be.yml 2021-11-01 00:14:49 +02:00
Geoffrey Horsington 3f7b1d1f99 Create build.yml 2021-11-01 00:11:14 +02:00
ghorsington 22a568e726 Ensure build.sh is executable 2021-11-01 00:06:22 +02:00
Geoffrey Horsington 757be8f681 Create build_be.yml 2021-11-01 00:04:14 +02:00
Geoffrey Horsington 581d7e57b3 Update BepInEx.IL2CPP.csproj 2021-10-31 23:55:18 +02:00
ghorsington 556cb5fba4 ConsoleEncoding: fix buffer size computation
Instead of approximating with GetMaxByteCount and GetMaxCharCount, compute actual buffer size which is needed for variable-length characters (e.g. utf-8)
2021-10-31 19:53:59 +02:00
ghorsington a16d0fecfc WindowsConsoleDriver: check that Console.WindowWidth and WindowHeight exist 2021-10-31 19:52:37 +02:00
ghorsington ade701c2f5 Bump Il2CppUnhollower version 2021-10-31 17:21:31 +02:00