CmlLib
한국어 (v3)
한국어 (v3)
  • 🧊CmlLib Projects
  • [AD] 커스텀 런처 주문제작
  • 🚀CmlLib.Core
    • 홈
    • 시작하기
      • CMLauncher
      • 게임 경로 설정
      • 실행 옵션 설정
      • 이벤트 처리
    • 로그인과 세션
      • 마이크로소프트 엑스박스 계정
      • 예전 모장 계정
      • 오프라인 계정
    • 고급 기능
      • VersionLoader
      • Version
      • FileChecker
      • Downloader
    • 모드 로더 인스톨러
      • Forge Installer
      • Fabric Installer
      • LiteLoader Installer
    • 유틸리티
      • Minecraft Changelogs
    • 자료
      • 자주 묻는 질문
      • 알려진 문제
      • 예시 런처
      • 라이센스
  • 🔓Auth.Microsoft
    • 홈
    • CmlLib.Core.Auth.Microsoft
      • JELoginHandler
      • JELoginHandlerBuilder
      • JEAuthenticator
    • XboxAuthNet.Game
      • OAuth
      • XboxAuth
      • XboxAuthException
      • AccountManager
      • Accounts
    • XboxAuthNet.Game.Msal
      • ClientID
      • MsalClientHelper
      • OAuth
    • CmlLib.Core.Bedrock.Auth
    • 자료
  • 🌐MojangAPI
    • 홈
    • Mojang API
    • SecurityQuestion
  • ⚒️Installer.Forge
    • 홈
    • 지원되는 버전
    • 시작하기
    • MForge
    • ForgeVersionLoader
Powered by GitBook
On this page
  • 설치
  • 예시
  • 예시
Edit on GitHub
  1. Installer.Forge

시작하기

Previous지원되는 버전NextMForge

Last updated 1 year ago

설치

nuget 패키지 설치: .

예시

using CmlLib.Core.Installer.Forge;
using CmlLib.Core;
using CmlLib.Core.Auth;
using CmlLib.Core.Downloader;
using System.ComponentModel;
using CmlLib.Utils;

// 진행률 콘솔에 표시
void fileChanged(DownloadFileChangedEventArgs e)
{
    Console.WriteLine($"[{e.FileKind.ToString()}] {e.FileName} - {e.ProgressedFileCount}/{e.TotalFileCount}");
}
void progressChanged(object? sender, ProgressChangedEventArgs e)
{
    Console.WriteLine($"{e.ProgressPercentage}%");
}

// CMLauncher 초기화
var path = new MinecraftPath(); // 기본 경로 사용
var launcher = new CMLauncher(path);
launcher.FileChanged += fileChanged;
launcher.ProgressChanged += progressChanged;

// MForge 초기화
var forge = new MForge(launcher);
forge.FileChanged += fileChanged;
forge.ProgressChanged += progressChanged;
forge.InstallerOutput += (s, e) => Console.WriteLine(e);

// 1.20.1 에서 가장 좋은 포지 버전 설치
var versionName = await forge.Install("1.20.1");

// 특정 포지 버전 설치
// var versionName = await forge.Install("1.20.1", "47.0.35");

// 게임 실행
var launchOption = new MLaunchOption
{
    MaximumRamMb = 1024,
    Session = MSession.GetOfflineSession("TaiogStudio"),
};

var process = await launcher.CreateProcessAsync(versionName, launchOption);
process.Start();

예시

⚒️
CmlLib.Core.Installer.Forge
SampleForgeInstaller