Skip to content

refactor: profile-driven, version-neutral IL2CPP architecture - #207

Draft
mleem97 wants to merge 58 commits into
mainfrom
refactor/il2cpp-version-neutral
Draft

refactor: profile-driven, version-neutral IL2CPP architecture#207
mleem97 wants to merge 58 commits into
mainfrom
refactor/il2cpp-version-neutral

Conversation

@mleem97

@mleem97 mleem97 commented Jul 28, 2026

Copy link
Copy Markdown
Owner

Ziel

Dieser PR führt eine profilgesteuerte, versionsneutrale IL2CPP-Architektur ein, ohne die aktuelle MelonLoader-Referenz auf main abrupt zu ersetzen.

Vorherige PR-Migration

Vor Erstellung dieses Branches wurden alle zuvor offenen PRs geprüft. Die unterschiedlichen Sicherheits- und Performance-Änderungen wurden konsolidiert nach main übernommen; redundante automatisierte Duplikate wurden anschließend geschlossen. Der Branch basiert auf dem bereinigten Main-Commit 4d9f222e3b550f27e4e51be96c1745c2102c57ed.

Enthalten

  • maschinenlesbare Kompatibilitätsprofile für Game, Unity, IL2CPP, Loader, Plattform und Referenz-Fingerprints
  • Safe Mode bei unbekannten oder abweichenden Laufzeiten
  • vollständige, profilabhängige IL2CPP-Hook-Signaturen (Manifest v2)
  • Legacy-Manifest-Migration ohne stilles Entfernen nicht auflösbarer Parameter
  • Lazy Hook-Aktivierung und Subscriber-Checks
  • ein Harmony-Patch pro Game-Methode/Patch-Typ mit Fan-out auf stabile greg-Hook-IDs
  • zentralisierte, idempotente IL2CPP-Class-Injection
  • strukturierte Signatur- und Kompatibilitätsdiagnose
  • stabile AssemblyVersion für binär kompatible 1.x-Releases
  • loader-neutrale Contracts und reale Projektgrenzen für die schrittweise Modularisierung
  • konfigurierbare Reference Packs und opt-in Deployment
  • keine automatischen Version-Bumps, Tags oder Releases bei normalen Pushes
  • manuelle, profilgebundene Releases mit Maintenance- und immutable Archive-Branches
  • Releasesperre ohne exakte Unity-Patchversion, SHA-256 aller Pflichtreferenzen und passenden Hook-Manifest-Hash
  • Public-API-Baseline und Backward-Compatibility-Policy
  • Python-/PowerShell-/Bash-Werkzeuge für Profile, Hooks und Branches
  • Windows-/Linux-CI sowie verwaltete Kompatibilitätstests
  • korrigierte Dokumentation: BepInEx wird nicht mehr durch bloßes Umverpacken derselben MelonLoader-DLL als unterstützt ausgewiesen

Aktuelle Referenz

  • Data Center 1.0.50.15
  • Unity-Linie 6000.5
  • MelonLoader 0.7.x
  • Windows/Linux x64

Die exakte Unity-Patchversion und SHA-256-Werte bleiben absichtlich offen, bis sie aus einer verifizierten lokalen Installation aufgenommen und ein In-Game-Smoke-Test ausgeführt wurden. Das Profil darf daher noch keinen verifizierten Release erzeugen.

Branch-/Release-Modell

  • main: aktuelle Referenz
  • compat/u<unity>/game-<game>/gc-<major>.<minor>.x: gepflegte Linie
  • archive/u<unity>/game-<game>/gc-<version>: exakte, unveränderliche Kombination
  • u<unity>-game<game>-gc<version>: kanonischer Release-Tag

Diese Refs werden erst nach Profil- und Build-Verifikation atomar durch den manuellen Release-Workflow erzeugt. Unbestätigte historische Kombinationen werden nicht erfunden.

Verifikationsstatus

Der PR bleibt Draft. Die aktuellen GitHub-Actions-Jobs terminieren auf Runner-Ebene vor Checkout beziehungsweise vor dem ersten ausgeführten Schritt. GitHub liefert für diese Jobs weder Steps noch Logs; dadurch wurden Build und Tests nicht gestartet. Siehe docs/IMPLEMENTATION_STATUS.md.

Vor Ready-for-Review erforderlich:

  • funktionierende GitHub-Actions-Runner und vollständig grüne Windows-/Linux-Matrix
  • exakte Unity-Patchversion und lokale SHA-256-Fingerprints
  • In-Game-Smoke-Test für Class Injection und Hooks
  • separater, gepinnter BepInEx-IL2CPP-Host, bevor BepInEx als unterstützt gilt

mleem97 added 30 commits July 28, 2026 09:42
@codacy-production

codacy-production Bot commented Jul 28, 2026

Copy link
Copy Markdown

Not up to standards ⛔

🔴 Issues 1 high · 22 medium

Alerts:
⚠ 23 issues (≤ 0 issues of at least minor severity)

Results:
23 new issues

Category Results
BestPractice 12 medium
Security 1 high
Complexity 10 medium

View in Codacy

🟢 Metrics 200 complexity · 2 duplication

Metric Results
Complexity 200
Duplication 2

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant