프로젝트 소개
MelonLoader는 Unity 게임용 모드 로더로, 유지관리자에 따르면 Il2Cpp 및 Mono 게임 백엔드와 모두 호환됩니다. Apache License 2.0에 따라 배포되며 LavaGang 조직에서 개발했습니다.
작동 방식: MelonLoader는 프록시 DLL을 사용하여 게임 시작 시 로더를 로드하도록 합니다. Windows에서 프록시는 호환 가능한 파일 이름 세트로 이름을 바꿀 수 있습니다(기본적으로 version.dll, 추가로 winhttp.dll, winmm.dll, dinput.dll, dinput8.dll, dsound.dll, d3d8/9/10/11/12.dll, ddraw.dll, msacm32.dll). 플러그인은 Plugins 폴더에, 모드는 Mods 폴더에 배치되며, 둘 다 게임 설치 디렉터리 내에 생성됩니다. 로그는 MelonLoader/Logs 폴더에 기록됩니다.
설치: Windows(.exe), Linux 및 macOS(.dmg)용 사전 빌드된 설치 프로그램이 제공됩니다. 수동 설치는 MelonLoader 폴더와 version.dll 및 dobby.dll을 게임 디렉터리로 추출하는 것을 포함합니다. 제거는 해당 파일을 삭제하고, 선택적으로 Plugins, Mods 및 UserData 폴더를 제거하는 것을 의미합니다. Il2Cpp 게임의 경우 .NET 6.0 Desktop Runtime이 요구 사항으로 나열됩니다(Windows에서 자동 설치됨).
구성: ./UserData/Loader.cfg의 TOML 구성 파일은 로더 비활성화, 디버그 모드, Unity 플레이어 로그 캡처, Harmony 로그 상세 수준, 강제 종료 수정, 시작 화면, 디버거 실행, 콘솔 테마, 콘솔 표시 및 항상 위 동작, 로그 보존 수, Mono 디버그 서버 주소/포트, Unity 버전 재정의 및 Il2Cpp 어셈블리 생성 제어(오프라인 생성, 정규식, 덤퍼 버전, 강제 재생성, Cpp2IL 프로세서)에 대한 옵션을 노출합니다.
시작 옵션: 명령줄 인수는 구성을 미러링하며, --no-mods, --quitfix, --melonloader.debug, --melonloader.hideconsole, --melonloader.hidewarnings, --melonloader.captureplayerlogs, --melonloader.harmonyloglevel, --melonloader.maxlogs, --melonloader.loadmodeplugins, --melonloader.loadmodemods, --melonloader.basedir, --melonloader.disablestartscreen을 포함하고, Unity 관련 옵션으로 --melonloader.unityversion, --melonloader.agfoffline, --melonloader.agfregenerate, --melonloader.agfregex, --melonloader.agfvdumper, --melonloader.disableunityclc, --melonloader.monosearchpathoverride, 그리고 Cpp2IL 옵션 --cpp2il.callanalyzer 및 --cpp2il.nativemethoddetector가 있습니다.
플랫폼 지원: Windows는 프록시 메커니즘의 주요 대상입니다. Linux 지원은 WINE, Steam Proton 및 네이티브 설정에 대해 문서화되어 있으며, Android/Oculus Quest 지원은 작업 진행 중으로 표시됩니다. 예제 프로젝트(TestPlugin, TestMod) 및 master, alpha-development 및 universality 브랜치용 nightly 빌드가 링크되어 있습니다.
라이선스 및 크레딧: 프로젝트는 Dobby, plthook, Mono, HarmonyX, MonoMod, Mono.Cecil, Newtonsoft.Json, TinyJSON, Tomlet, AsmResolver, SharpZipLib, Semver, Illusion Plugin Architecture, MuseDashModLoader, mgGif, AssetsTools.NET, AssetRipper.VersionUtilities, bHapticsLib, IndexRange, ValueTupleBridge, WebSocketDotNet, Pastel 및 Il2CppInterop을 포함한 수많은 타사 라이브러리를 번들하거나 참조하며, Cpp2IL 및 .NET Runtime과 같은 런타임 다운로드 도구도 포함합니다. README는 MelonLoader가 Unity Technologies의 후원을 받거나 제휴하지 않는다고 명시합니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.