Skip to content

Releases: tomsik68/mclauncher-api

Support for Minecraft 1.13

20 May 16:17
Compare
Choose a tag to compare

Minecraft 1.13 introduces a few changes to the existing JSON structure. Downloading natives for libraries is done differently, minecraft arguments now have 2 specifications etc.

If you use GlobalAuthenticationSystem and MinecraftLauncherBackend, no changes in your code are necessary to run the new Minecraft versions.

Update your maven/gradle configuration to build with 0.3.2!

MCLauncherAPI 0.3.1: Additional features for 0.3

29 Jun 08:35
Compare
Choose a tag to compare

0.3 Is great, stable and works very well. However, some features were missing in the API, so 0.3.1 adds some missing features to the API. Most of these features were suggested by SlipsWhitley who used the API to build a launcher.

Changes in 0.3.1

  • Fixed installation of MCAssetsVersion
  • Improved login error handling
  • IProgressMonitor.setStatus to see what the API is currently doing(e.g. installing a library, downloading asset file)
  • Latest version information from MinecraftLauncherBackend

Javadocs

Javadocs for the API are available at:

Get it from maven!

I'm using maven to deliver the mclauncher-api JARs, javadocs and sources.
Add this to your pom.xml to use the repository:

<project>
...
  <repositories>
...
    <repository>
      <id>sk_tomsik68</id>
      <name>Tomsik68's maven repository</name>
      <url>https://raw.githubusercontent.com/tomsik68/maven-repo/master/</url>
    </repository>
...
  </repositories>
...
</project>

To add the dependency, use:

<project>
...
<dependencies>
...
        <dependency>
            <groupId>sk.tomsik68</groupId>
            <artifactId>mclauncher-api</artifactId>
            <version>0.3.1</version>
        </dependency>
...
    </dependencies>
...
</project>

MCLauncherAPI 0.3 - Stable version

23 Jun 11:20
Compare
Choose a tag to compare

For this version, I've done mainly refactoring, hiding classes and small fixes, so it shouldn't significantly change the API you're used to. Many things were changed in core, but also from the outside, so you'll definitely need to update your launcher. I'll also try to update the documentation on github wiki within a week... :)
Check javadocs in the maven repository to find out more. Oh! I've started using maven to build and deploy mclauncher-api so if you're a fan of maven, you can use it too. The JAR attached to this release is the same as the one in maven repo...

Features

  • Login with password or session
  • Load & Save login credentials the minecraft way
  • Install MC to any directory
  • Launch MC from any directory
  • LAN server discovery
  • Fully migrated to maven
  • Now works on MAC OS X too!

Most fatal changes that will most likely break compatibility

  • changes around MinecraftInstance
  • launch minecraft was changed to getLaunchCommand (8036fc1)
  • URLs were moved away from MCLauncherAPI.URLS(5149185)
  • class Library is now package-visible only(adfeca0)
  • IProgressMonitor.finish was removed. You need to tell your progress monitor dialog/window to close yourself.

Other changes

  • Minecraft launching should now work on windows
  • Minecraft installation now also works on Mac OS X!
  • Added "MinecraftLauncherBackend" and "GlobalAuthenticationSystem" to simplify launching even more!
  • Added server storage, which allows reading/writing .minecraft/servers.dat
  • Added IModdingProfile which can be used to change the way minecraft is launched
  • Improved error handling(some new exception types)
  • Added version inheritance resolving for MCDownloadVersions
  • Added IVersionList.getLatestVersionInformation
  • More log messages(mostly on level FINE)
  • Deployed to maven repository(https://github.com/tomsik68/maven-repo)
  • Lots and lots of refactoring

Javadocs

Javadocs for the API are available at:

Dependencies

json-smart 1.1.1.
flow-nbt 1.0.0
junit 4.11(only for testing)

MCLauncherAPI v0.2.1 - The quick fix

31 Aug 15:46
Compare
Choose a tag to compare

Previous versions had a bug where pathSeparator was set to ':' on windows, which caused problems. Now, I switched to cross-platform File.pathSeparator. The change is not fatal, so it's not 0.3.0 yet, so I just went with 0.2.1. This time, I'm attaching a javadoc too. Javadocs are useful, so if you know how to use one, my comments in code can assist you while coding :)

Features

  • Login with password or session
  • Load & Save login credentials the minecraft way
  • Install MC to any directory
  • Launch MC from any directory
  • LAN server discovery

Changes

  • Minecraft launching should now work on windows

Dependencies

MCLauncherAPI requires json-smart 1.1.1. You can download it here: https://code.google.com/p/json-smart/downloads/detail?name=json-smart-1.1.1.jar&can=2&q=

MCLauncherAPI v0.2

25 May 09:17
Compare
Choose a tag to compare

As people were sending PRs, issues and improvements, MCLauncherAPI has again come a little step in development.

Features

  • Login with password or session
  • Load & Save login credentials the minecraft way
  • Install MC to any directory
  • Launch MC from any directory
  • LAN server discovery

Changes

  • Library installation now works perfectly
  • Version installation works really good
  • Session login fixed
  • Added possibility to update YDAuthProfile with new session ID
  • Added server discovery (check test folder or wiki)

This version really provides something that actually works...
It doesn't use multiple threads, but that's up to you to implement that.

Dependencies

MCLauncherAPI requires json-smart 1.1.1. You can download it here: https://code.google.com/p/json-smart/downloads/detail?name=json-smart-1.1.1.jar&can=2&q=

First Release!

30 Dec 11:53
Compare
Choose a tag to compare

First release of MCLauncher-API. I'm really glad I got this out before 2014! :)

Features

  • Login with password and unreliably with session
  • Load & Save login credentials the minecraft way
  • Install MC to any directory
  • Launch MC from any directory

Bugs

  • Library installation sometimes fails
  • Version installation problems
  • Session login sometimes fails
  • It's impossible to update YDAuthProfile with new session id

Basically, it's enough to create your own launcher. It doesn't use multiple threads, but that's up to you to implement that.

Dependencies

MCLauncherAPI requires json-smart 1.1.1. You can download it here: https://code.google.com/p/json-smart/downloads/detail?name=json-smart-1.1.1.jar&can=2&q=