libminecraft
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.3 • Public • Published

    libminecraft

    Library for interacting with the Minecraft assets API, Forge website and for launching Minecraft.

    Usage

    Install from npm:

    npm install --save libminecraft

    And import:

    import { Install, Launch, ... } from 'libminecraft';

    Features

    • Download and install Minecraft
    let manifest = await GetVersionManifest(); // all functions are exported in index.ts
    let index = GetVersionIndex(manifest); // may be useful in some cases, creates id-version object
     
    let folder = new MinecraftFolder('path', 'to', 'resourceFolder');
    let meta = await GetVersionMeta(folder, index['1.12.2']);
     
    // install using the meta we selected
    await Install(folder, meta, /** optional */ (progress) => console.log(progress));
    // typescript types should give you all the info you need about progress
    • Launch Minecraft
    let resourcePath = new MinecraftFolder('.minecraft'); // assets, versions, etc
    let gameData = new MinecraftFolder('.game'); // saves, logs, etc
    let version = await GetVersionMeta(folder, '1.12.2'); // load version back up from disk
     
    // we can now launch
    await Launch({
      resourcePath,
      gameData,
      java: 'java', // path to java executable
      version,
      auth?: /** see below for getting an Account object */,
      resolution?: { width: 123, height: 123 }
    });
    • Install Forge Modloader
    let page = await GetForgeVersions('1.12.2'); // be sure to check if Forge supports the version
    let index = GetForgeIndex(page); // likewise we can get an index, if needed
     
    // install the Forge version, just install the first one we know of
    let folder = new MinecraftFolder('.minecraft');
    await InstallForgeVersion(folder, page.versions[0], /** optional */ (progress) => console.log(progress));
    // progress update is likewise available
    • Authenticate through Yggdrasil
    // simply pass credentials and an account object will be returned
    let account = await Authenticate('username', 'password');
     
    // account can be passed to Launch
    // you should probably save the account object instead of credentials
    // then later you can refresh it like so:
     
    let newAccount = await Refresh(account);
    // newAccount has a new accessToken hence you should overwrite the old account with this

    Install

    npm i libminecraft

    DownloadsWeekly Downloads

    3

    Version

    1.0.3

    License

    MIT

    Unpacked Size

    57.6 kB

    Total Files

    41

    Last publish

    Collaborators

    • insertish