-
-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: Can't work VRChat #10
Comments
It appears to be starting bypassing EAC, but EAC seems to be working because of an access error to the protected memory area. Will other mods besides UE work correctly? |
nah, when you starting the game with what i was saying, the eac is not loaded, you can literally even attach with cheat engine, besides you cant be get in game since the game cant find the eac. |
Even if the EAC isn't activated, it appears that some defense mechanism is activated because the memory allocated by the VRChat that the UE tried to access is protected.
Are there any mods for VRChat that aren't generic mods that will work?
As long as MelonLoader that mod's loader can't support VRChat (and has given up), there is almost nothing I can do about it(Even if there is a means, accessing protected memory areas is tantamount to an act of hacking VRChat, it against the spirit of wholesome modding) |
Can you tell what is the behaviour like? is the il2cpp_runtime_class_init trying to init with unreadable memory? or maybe what you get from debugging?
I think no.
No, in fact is not, they're more like rage quits because vrchat doesn't care about the mod community,
Technically, 90% of mods cant leave the 'protected' memory when they using hook, you know patching .text is also trying to write on protected memory right? (.text is readable,executable but not writable)
Modding itself is a hack(same behaviours in anticheats eyes), the only thing that differs from cheating is that what it's trying to do is not provide unfair features. i know this not sounds good I still want your help, in vrchat's map development you can test any map locally (without any anti-cheat measures in local testing), I'm working on a mod to help people understand what's going wrong with their map script when the script halted. |
The following error exists in the log provided.
Looking at this error and the stack trace it appears that UE is trying to access and construct a Unity class when creating the GUI and it isn't working because the area is protected
I haven't read the code of this generic mod in much detail, but I suspect that the reason these mods work is one of the following
UE, by its nature, adds a lot of functionality, so it is possible that the above could work if rewritten natively as it is working.
It isn't possible to read the protected memory area, in fact, this issue occurs when trying to access the protected memory area for reading.
I think that bypassing what is protected and making it readable is almost like hacking... |
I don't know if you think this is an anti-cheat issue, but if so, i'm no offensive to say you may not knowing how native things work, this is understandable.
This is wrong, also e.g. attemp to write memory at non-writable memory zone, you get same exception when you do this. The literal 'protected' is not meaning protected by anticheat, like how UE can detect if there is anticheat running and know the memory is protected? the answer is no, it doesn't. So i would say better inspect what is the actually issue than say it's by like anticheat or other reasons.
It's hook, check source.
Let's say only in programming, changing protect attributes (read/write/execute) is very very normal thing. The
I think this maybe related to the internal structure changes since Unity 2022.3. I have seen similar issues talking about this in il2cpp related github repositories. in short, i dont like to trouble others, if you think there is no need to check, i total understand. |
First of all, this issues isn't an internal UE bug, but an internal issue that occurs when we call some ordinary C# code. So the solution is quite simple, just make this pointer-getting code something else, if I can ignore the fact that I can't find that other thing. |
If you want to say that the information passed in the above method is incorrect (e.g. 0x0000001, etc.), can you provide details of the obfuscated component, e.g. with images?(What is the name of the component and is there a component that works properly?) The current info alone doesn't give us any info beyond some protection has occurred and this issue is occurring.(It looks that way, including the fact that MelonLoader has given up on responding)(I'm telling you that.)
Can you give us more details about the issues? I'm not sure if it's a issue, but I'm sure it could help us solve it. |
I also tested other versions, but they produced different errors.
|
I wrote down how to test it when I opened this issue. The game is free, but I still provide you with screenshots. this is called
i understand
I'm not very good with the internals of il2cpp, I can only find a few things for you that I 'think' it's relevant: |
IL2Cpp is still incomplete in many parts and there are some time that need to be corrected through updates
Is it possible to retrieve information about Either way, since VRChat's community guideline's says that reverse engineering or bypassing anti-cheat is not allowed, I would judge that an fix that bypasses EAC and allows the use of UE would be against that(I don't want to get into trouble) |
From the Developer
VRChat's guidelines ban bypassing the EAC and reverse engineering.
Therefore, I will no action to VRChat as I think it's a conflict of this.
Original Ticket
Are you on the latest version of UnityExplorer?
Which release are you using?
MelonLoader IL2CPP CoreCLR
Which game did this occur on?
VRChat (Unity 2022.3.6.11724)
Describe the issue.
crashed when trying to access obfuscated component or any normal class including obfuscated class as member/variable.
how to trigger? inspect a gameobject and click on obfuscated component.
note: the game has eac, however, you can still use melonloader by launch the
VRChat.exe
in game folder. when in game, you might see error message but it doesnt matter, there will bePlayerManager xxx
in scene, it has a obfuscated component for you to inspect.i think this is not caused by obfuscate, this issue is starts from when VRChat switched to Unity 2022 from 2019 as far as i know.
thanks in advance.
Relevant log output
The text was updated successfully, but these errors were encountered: