requidev / remodce Goto Github PK
View Code? Open in Web Editor NEWReMod Community Edition - A All-in-One VRChat mod to suit all your needs.
License: GNU General Public License v3.0
ReMod Community Edition - A All-in-One VRChat mod to suit all your needs.
License: GNU General Public License v3.0
CalibrationSavingComponent.cs:
if (MelonHandler.Mods.Any(i => i.Info.Name == "FBT Saver")) { ReLogger.Msg(ConsoleColor.Yellow, "Found FBT Saver Mod. Not loading Calibration Saver."); enabled = false; return; } else if (MelonHandler.Mods.Any(i => i.Info.Name == "IKTweaks")) // Added by Jdbye { ReLogger.Msg(ConsoleColor.Yellow, "Found IKTweaks Mod. Not loading Calibration Saver."); enabled = false; return; }
Due to VRC oddities in how the UI needs to be visible to be modified/updated, avatar history will never be automatically refreshed as the UI closes before changing avatar. I took the liberty of fixing it myself (seems like it is intended to function this way based on the function being named StartRenderElementsCoroutine)
using Il2CppSystem.Collections.Generic;
using MelonLoader;
using System.Collections;
using UnityEngine;
using VRC.Core;
namespace ReModCE.VRChat
{
internal static class VrcUiExtensions
{
public static void StartRenderElementsCoroutine(this UiVRCList instance, List<ApiAvatar> avaterList, int offset = 0, bool endOfPickers = true, VRCUiContentButton contentHeaderElement = null)
{
MelonCoroutines.Start(RenderElements(0.1f));
IEnumerator RenderElements(float delay)
{
while (!instance.gameObject.activeInHierarchy || !instance.isActiveAndEnabled || instance.isOffScreen ||
!instance.enabled)
yield return new WaitForSeconds(delay);
if (instance.scrollRect != null)
{
instance.scrollRect.normalizedPosition = new Vector2(0f, 0f);
}
instance.Method_Protected_Void_List_1_T_Int32_Boolean_VRCUiContentButton_0(avaterList, offset, endOfPickers, contentHeaderElement);
};
}
}
}
No avatar switching will work, either from different mods or from the stock favs/vrc+ favs, unless ReModCE's Avatar favorites is turned on. When disabled, attempting to switch avatars will fail (the main menu stays open and nothing happens). Nothing is logged to the melonloader console after this action, but the following can be found in VRChat's output logs that may be usefull:
2021.10.23 23:49:29 Log - [AssetBundleDownloadManager] Unpacking Download
2021.10.23 23:49:29 Warning - The referenced script (Unknown) on this Behaviour is missing!
2021.10.23 23:49:29 Warning - The referenced script on this Behaviour (Game Object 'prefab-id-v1_avtr_2a79a39b-8be7-4717-af7e-07fd7afa17c1_2369439933') is missing!
2021.10.23 23:49:29 Warning - The referenced script (PipelineSaver) on this Behaviour is missing!
2021.10.23 23:49:29 Warning - The referenced script on this Behaviour (Game Object 'prefab-id-v1_avtr_2a79a39b-8be7-4717-af7e-07fd7afa17c1_2369439933') is missing!
2021.10.23 23:49:29 Warning - The referenced script on this Behaviour (Game Object 'prefab-id-v1_avtr_2a79a39b-8be7-4717-af7e-07fd7afa17c1_2369439933') is missing!
Note that when the game is initially loaded, ReModCE's "favorite" button above the avatar preview is visible and will favorite avatars despite favorites being turned off. It will disappear for the duration of the game session if favorites are toggled on and back off, but this will not fix the problem with avatar switching, which will remain non-functional until ReModCE's favorites are turned back on.
Let me know if you need any more info. Thanks! :D
Describe the bug
While the game is in full screen and focused, the cursor will continue to other monitors.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Cursor to stay locked in the game.
Additional context
Sometimes takes a little time to happen but will keep happening.
im not sure what im supposed to enter for the ID when i go to the reset website, all i could think of using was my vrchat username and it didnt work >> not sure what to do please help ^__^
Player speed, just an option to move faster with a slider for adjustment.
ESP
Texture decimation for performance but only effect worlds and avatars, not the VRC menus and nameplates.
Probably not the right place for this but
How does the private version of this differ? Is there a way to get invited to it?
Instead of showing "PC" for both VR and Desktop how about a 3rd icon for "VR" and "PC" only show when on desktop?
it's already in the VRChat API and its normal information sent out and recieved from the game so why not add indication for desktop mode.
Update: This is apparently not possible to pull this information if they are not in the same room as you, I'll leave this open until you decide if there's a way.
:c
Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots/Logs
If applicable, add screenshots/logs to help explain your problem.
Additional context
Add any other context about the problem here.
the mod stops working in the new version of vr chat
ReModCE is not working on my end despite my multiple attempts to get it running, and I have run out of things to try
re-installed melonloader (re-install button, and also uninstall + install)
using the command "--melonloader.agfregenerate"
Verifying Files, ETC.
(P.S sorry if this is sloppy, this is my first time using Github)
I am new to this mod and when I try to search avatars it tells me to go to the quick menu, open avatars and then set a pin. When I click the set pin option it doesn't open. What do I do?
When clicking ton an avatar I search for it doesn't let me change into or favorite it.
Steps to reproduce the behavior:
More detailed ESP with toggleable options
ESP is nice for finding people and friends in the world but its so limited, could you update ESP to show peoples names, distance from you and avatar bones inside the bubble?
Problem:
It's frustrating when songs transition and the UI popup is directly in the center of my field of vision.
Possible solution:
UI for songs should be located towards the bottom or top of the player's FOV.
Other ESP options like bone ESP and polygon ESP for avatars as well as ESP for world objects and world triggers.
Expected behaviour: Ingame Log will work despite lots of text was already added.
Actual behaviour: Ingame log goes presumably out of RectMask2D bounds and becomes invisible.
Describe the bug
When looking up for an avatar in VRChat and selecting REMod CE as an option, it says that I needed to log in using a pin even though I never needed one or have created one prior, so when I went to my avatar settings as instructed and entered a pin that I would normally use it said it was invalid and now I can't search for avatars at all.
To Reproduce
Steps to reproduce the behaviour:
Expected behaviour
To have a reset pin and to have access to search up avatars again.
So the popout of choosing remodce or emm to search with appears when trying to search on socials and worlds which prevents the searches on worlds and socials
Everytime I try to search an avatar [after like 10 minutes of playing the game] with the search feature, nothing happens, the avatar that I searched for doesn't appear.
Maybe the problem is that I use emmVRC and ReMod at the same time and they are not compatible in some ways? But every time it happens I just need to restart the game and it works fine.
so when i try to search for avatars. it usually have a popup of what to search with but sometimes it broke and only use the remodce search. it seems to happen instantly when i use the emmvrc function on a profile to see author's avatar
Describe the bug
The mod doesn't show up in VRChat. Worked just fine earlier today. But when I restarted the game later on the mod disappeared.
To Reproduce
Just starting VRChat does it for me.
Expected behavior
I don't remember any differences from normal behavior. But the ReMod tab in the VRChat tablet menu is not there.
Screenshots/Logs
I guess you can see my other installed mods in the console screenshot.
I tried keeping my essential mods, as they are useful and help improve performance.
I'm new to Github, and this is my first bug report. So I hope that the information I've given can help troubleshoot this bug.
When using EmmVRC restart option and SettingsRestart, ReMod overrides that and just closes the game, would it be possible to make ReMod fast quit only when selecting Exit or Instant Exit in Emm.
Creates a list of people suspected of ripping and alerts user of suspected persons location in world. TOS breaking much?
I was wondering if there was a method to use the 3rd person while I'm using the VR, like some buttons combination or a setting
Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots/Logs
If applicable, add screenshots/logs to help explain your problem.
Additional context
Add any other context about the problem here.
Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots/Logs
If applicable, add screenshots/logs to help explain your problem.
Additional context
Add any other context about the problem here.
Looks like this is gonna need a rework
Apologies if this is trivial, I'm not very familiar with visual studio and such. When I go to import some of the references such as "DataModel.dll" or "II2CppSystem.dll" I get the error "The reference is invalid or unsupported", am I missing something, or is something going wrong? Thank you in advance. Also, I should note that I'm getting these from "VRChat\MelonLoader\Managed".
Describe the bug
this client will not compile in vscode without the reference files, which are not included in the repository, nor are there any directions on how to acquire them, ive spent hours searching for the dlls to compile this, as ive made changes to the code for the UI elements that i have personalized for myself, however the missing dlls kinda get in the way of me being able to test and use the fork ive made
/snap/dotnet-sdk/158/sdk/6.0.201/Microsoft.Common.CurrentVersion.targets(2301,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "Assembly-CSharp". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [/home/haxer/RiderProjects/ReModCE/ReModCE.Loader/ReModCE.Loader.csproj]
/snap/dotnet-sdk/158/sdk/6.0.201/Microsoft.Common.CurrentVersion.targets(2301,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "Il2Cppmscorlib". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [/home/haxer/RiderProjects/ReModCE/ReModCE.Loader/ReModCE.Loader.csproj]
/snap/dotnet-sdk/158/sdk/6.0.201/Microsoft.Common.CurrentVersion.targets(2301,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "UnhollowerBaseLib". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [/home/haxer/RiderProjects/ReModCE/ReModCE.Loader/ReModCE.Loader.csproj]
/snap/dotnet-sdk/158/sdk/6.0.201/Microsoft.Common.CurrentVersion.targets(2301,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "UnityEngine". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [/home/haxer/RiderProjects/ReModCE/ReModCE.Loader/ReModCE.Loader.csproj]
/snap/dotnet-sdk/158/sdk/6.0.201/Microsoft.Common.CurrentVersion.targets(2301,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "UnityEngine.CoreModule". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [/home/haxer/RiderProjects/ReModCE/ReModCE.Loader/ReModCE.Loader.csproj]
/snap/dotnet-sdk/158/sdk/6.0.201/Microsoft.Common.CurrentVersion.targets(2301,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "VRC.UI.Core". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [/home/haxer/RiderProjects/ReModCE/ReModCE.Loader/ReModCE.Loader.csproj]
/snap/dotnet-sdk/158/sdk/6.0.201/Microsoft.Common.CurrentVersion.targets(2301,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "VRC.UI.Elements". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [/home/haxer/RiderProjects/ReModCE/ReModCE.Loader/ReModCE.Loader.csproj]
/snap/dotnet-sdk/158/sdk/6.0.201/Microsoft.Common.CurrentVersion.targets(2301,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "VRC.UI.Shared". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [/home/haxer/RiderProjects/ReModCE/ReModCE.Loader/ReModCE.Loader.csproj]
/snap/dotnet-sdk/158/sdk/6.0.201/Microsoft.Common.CurrentVersion.targets(2301,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "VRC.Utility". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [/home/haxer/RiderProjects/ReModCE/ReModCE.Loader/ReModCE.Loader.csproj]
i have managed to get the melonloader dll myself, but can you please either include the reference dlls or at least point us somehow to acquire them?
Describe the bug
When going on vtchat the avatar history always crashes no matter how many times you restart the game
Please add the option to disable the "Show Quest" button in avatar menu as it is useless once you have already picked a Quest avatar.
Please add a button next to the refresh button under "Recent Avatars" to clear the current recent list.
I'll prefix this by saying that it might not be causing issues right now but as you make changes or extend the functionality of the mod you will likely run into this issue, as I did while I was trying to fix FlyComponent (it seems very buggy for me for some reason, maybe it's something I did so I was trying to fix it, but eh I digress) and noticed my OnPlayerJoined code was never triggering.
So it's not quite a bug, and not something that needs changing right away, just consider it an improvement.
That issue being, OnUiManagerInit (late) only gets called once the quick menu is opened, because Object.FindObjectOfType (in WaitForUiManager) only returns active GameObjects.
As InitializeNetworkManager is called there, the network manager also gets called late which means OnPlayerJoined/OnPlayerLeft events can be dropped which could manifest in strange ways. Especially if you want it to trigger when the local player joins, as it won't in the original code.
However, OnUiManagerInit (late) is not really needed. Anything in OnUiManagerInit can be moved to OnSceneWasLoaded.
Rather than moving everything and renaming methods in multiple places I did it the easier way:
public override void OnSceneWasLoaded(int buildIndex, string sceneName)
{
if (buildIndex == 2) OnUiManagerInit();
foreach (var m in Components)
{
m.OnSceneWasLoaded(buildIndex, sceneName);
}
}
And added a check in OnUiManagerInit itself just to make sure doesn't run more than once:
public void OnUiManagerInit()
{
if (initialized) return;
ReLogger.Msg("Initializing UI...");
...
initialized = true;
}
InitializeNetworkManager should be called as early as possible to make sure OnPlayerJoined/OnPlayerLeft always get called. Easiest to do by using a coroutine:
public override void OnApplicationStart()
{
...
MelonCoroutines.Start(WaitForNetworkManager());
}
private IEnumerator WaitForNetworkManager()
{
while (ReferenceEquals(NetworkManager.field_Internal_Static_NetworkManager_0, null)) yield return null;
InitializeNetworkManager();
}
Credit where credit is due, I borrowed that part from knah's mods.
There are a few caveats however:
These have relatively simple solutions by modifying QuickMenuEx.cs changing _quickMenuInstance = ... as well as MenuStateCtrl.
There is no need to use field_Protected_MenuStateController_0 since the MenuStateController is literally on the same GameObject, so that's an easy fix.
As for finding objects without using Object.Find, I locate the full path of the GameObject I'm looking for (or the parent GameObject of a Component as in this case) and use Transform.Find as below. UserInterface appears to always be active and Transform.Find will return inactive objects, so this works for retrieving any UI object no matter their state (in my testing so far), this is the way I do it in other mods, where I already use OnSceneWasLoaded for UI stuff.
I will say I didn't exactly come up with this, I saw other mods doing it this way although I didn't understand why until I ran into issues with UI stuff doing it another way. But this seems to be the most reliable/failsafe way of doing it.
public static VRC.UI.Elements.QuickMenu Instance
{
get
{
if (_quickMenuInstance == null)
{
_quickMenuInstance = UnityEngine.GameObject.Find("UserInterface").transform.Find("Canvas_QuickMenu(Clone)").GetComponent<VRC.UI.Elements.QuickMenu>();
if (_quickMenuInstance == null) MelonLogger.Error("QuickMenu is null"); // this didn't trigger even once, but I added it to troubleshoot MenuStateCtrl giving a null reference exception (which I fixed)
}
return _quickMenuInstance;
}
}
public static MenuStateController MenuStateCtrl => Instance.GetComponent<MenuStateController>();
It's possible I've forgotten some other changes I made because I made so many changes trying to fix the errors caused by just moving OnUiManagerInit/InitializeNetworkManager and changing nothing else and I'm not sure if I reverted all of them. But these are the main ones that took me a while to figure out.
Bug description:
AvatarSearchEnabled is disabled but the UI element still shows in the avatars menu.
Steps to reproduce the behavior:
Expected behaviour
The search UI elements should no longer be present on the avatar menu
Welp shiz broken
When favorites are turned off the favorites button does not disable itself like its supposed to, it will only go away after toggling favorites on and off but does not save the button being off when restarting VRChat.
Mod has clashing with Component Toggle
When enabling chair toggle (and other toggles that would eventually be added) it overrides each other
Please add compatibility with component toggle mod by making Remod component toggles disabled completely if Component toggle is detected.
I'm not sure why but I'm not receiving any search results whatsoever.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.