Skip to content

Failed to initialize REPL environment #68

Closed
@mricher-git

Description

@mricher-git
Contributor

Getting the following issue in Railroader:
[RuntimeUnityEditor] [Warning] Failed to initialize REPL environment - The type initializer for 'Mono.CSharp.SkipVisibilityExt' threw an exception.

Seems https://github.com/5rog/Explorer has the same issue with mcs and commented out the constructor. I tried commented it out, REPL loads but then I get:

error CS0060: Inconsistent accessibility: base class RuntimeUnityEditor.Core.REPL.REPL' is less accessible than class <InteractiveExpressionClass 4>'

Unsure if the two are related.

Activity

ManlyMarco

ManlyMarco commented on Feb 7, 2024

@ManlyMarco
Owner

Yes, the class in the error is specifically to fix accessibility issues like the one you've got.

mricher-git

mricher-git commented on Feb 8, 2024

@mricher-git
ContributorAuthor

Due to the issue we're having with Railroaders, I moved Mono.* MonoMod.* to Railroader_Data\Managed. That removed the error during REPL init regarding SkipVisibilityExt but surprisingly continues to complain about the inconsistent accessibility. If we can sort out why the .dll's aren't being resolved, I suspect this issue will fix itself.

Edit: can confirm if I copy all .dll's to Managed (Mono.*, MonoMod.*, RuntimeUnityEditor.Core.dll), REPL works fine.

mricher-git

mricher-git commented on Apr 9, 2024

@mricher-git
ContributorAuthor

I have no idea what makes this tick, but I moved to a new PC and:
error CS0060: Inconsistent accessibility: base class RuntimeUnityEditor.Core.REPL.REPL' is less accessible than class <InteractiveExpressionClass 4>'

is back, but without the exception being thrown as mentioned in my first post. Placed all dlls in the Managed folder, same as before, but it still doesn't work.

[RuntimeUnityEditor] Version '5.3'. Loading.
[RuntimeUnityEditor] Active.
[Manager] FINISH. SUCCESSFUL LOADED 5/5 MODS.
[Manager] Spawning.
[RuntimeUnityEditor] Successfully initialized 14/14 features: CursorUnlocker, WireframeFeature, ContextMenu, Taskbar, MouseInspect, ReplWindow, ObjectViewWindow, ProfilerWindow, ObjectTreeViewer, Inspector, ClipboardWindow, ChangeHistoryWindow, DnSpyHelper, GizmoDrawer
[Manager] Checking updates.
[RuntimeUnityEditor] [UnityInput] Using LegacyInputSystem
[RuntimeUnityEditor] Full GameObject list refresh finished in 2ms
[RuntimeUnityEditor] Full GameObject list refresh finished in 0ms
[RuntimeUnityEditor] [REPL] Found 512 public namespaces
ManlyMarco

ManlyMarco commented on Apr 9, 2024

@ManlyMarco
Owner

Did you try making RuntimeUnityEditor.Core.REPL.REPL public?

mricher-git

mricher-git commented on Apr 10, 2024

@mricher-git
ContributorAuthor

Isn't it already?

namespace RuntimeUnityEditor.Core.REPL
{
    /// <summary>
    /// C# REPL environment. Everything in here can be called directly in the REPL console.
    /// </summary>
    public class REPL : InteractiveBase
    ```
ManlyMarco

ManlyMarco commented on Apr 10, 2024

@ManlyMarco
Owner

Oh, that's right, no idea then. I don't think OS has any effect on it, the game must be set up differently.

mricher-git

mricher-git commented on Apr 11, 2024

@mricher-git
ContributorAuthor

In 5.3 UMM flavor there is both a RuntimeUnityEditor.UMM.dll and a RuntimeUnityEditor.Core.dll.

From dnSpy, the UMM dll:

namespace RuntimeUnityEditor.Core.REPL
{
	// Token: 0x0200002A RID: 42
	internal class REPL : InteractiveBase
	{

From the .Core.dll:

namespace RuntimeUnityEditor.Core.REPL
{
	/// <summary>
	/// C# REPL environment. Everything in here can be called directly in the REPL console.
	/// </summary>
	// Token: 0x0200001F RID: 31
	public class REPL : InteractiveBase
	{

Edit: I deleted the ILRepack.targets from the UMM folder and re-compiled, and now have no issues.
FYI: Seems latest UMM (0.27.14) solved the issue of not loading additional referenced DLLs from mod folder, so this workaround is no longer required anyway.

ManlyMarco

ManlyMarco commented on Apr 11, 2024

@ManlyMarco
Owner

So this commit can be safely reverted now? 55252e7

added a commit that references this issue on Apr 11, 2025
70d5282
added a commit that references this issue on May 4, 2025
39baf4d
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @ManlyMarco@mricher-git

        Issue actions

          Failed to initialize REPL environment · Issue #68 · ManlyMarco/RuntimeUnityEditor