What is MCLauncher-API?
MCLauncher-API is a work-in-progress API for creating Minecraft launchers with ease. MCLauncher-API will take care of backend stuff like listing versions, downloading game, resources, libraries neccessary for minecraft, so your only job will be to create the GUI for the launcher. Basically, it's an SDK/API/framework for minecraft launchers.
Project goals
- Bring back simplicity to create MineCraft launcher
- Make people able to create custom launchers easily
- Make offline play possible for people without the internet I don't want to make cracking possible, since Mojang guys are nice and they don't deserve this.
- We all want more launchers to choose from
- Other people can learn about what is and what isn't neccessary to be in the minecraft launcher
- More security - the official launcher still doesn't save your password in the best way possible. Maybe there's someone else out there who can save it better?
- There's always a room for improvement - API is split up into several pieces which interact together through interfaces, so you can replace some parts of code by your own!
- Freedom - This API was written to be used. It doesn't provide any thread management code, GUI templates etc., everything is left up to you.
What languages is it available in?
Java
- OFFICIAL: @Tomsik68 - https://github.com/tomsik68/mclauncher-api/
Delphi
Python
I really appreciate if someone decides to rewrite API to another language. If you decide to do so, you can fork this repo or just toss me an e-mail with your repo so I can add it to the list above. Huge thanks to porters, because they're just programming using my wiki :)
How do I rewrite the API to other language?
You obviously need to know the language before rewriting the API ;) For more information, look at the documentation here: https://github.com/tomsik68/mclauncher-api/wiki#documentation
When rewriting the API to other language, consider writing API guides or at least some example code, so users know how to work with it.
How do I work with the API?
The official repo contains API Guides on wiki here ---> https://github.com/tomsik68/mclauncher-api/wiki/API-Guide If you're looking for API guides for a port, you need to ask their authors to write them, because I can't know all the programming languages.
Javadocs for the API are available at:
- https://tomsik68.github.io/mclauncher-api/javadoc/0.3.1
- https://tomsik68.github.io/mclauncher-api/javadoc/0.3
- https://tomsik68.github.io/mclauncher-api/javadoc/0.2.1
What's the latest version?
The latest version can be found in releases section on github --> https://github.com/tomsik68/mclauncher-api/releases
This project is so inactive...
No. That's certainly not true. I'm working on the project every week for at least half an hour, but some changes are really really small, so I don't commit them. Working on the project isn't just about commiting the code, you know. Please keep in mind I've also got to write wiki, which consumes time aswell and I'm also messing around with minecraft on openpandora and stuff. And on top of that, I've got plenty of other projects on my github, so you can go check them out.
RSS News
I've created 2 RSS threads for you:
Minecraft Launcher Updates - This is for people who port API to other languages: https://dl.dropboxusercontent.com/u/29628587/mclauncher-api.rss
MCLauncherAPI Changes - This is for people who write launchers and want to be notified when something changes in the API. https://dl.dropboxusercontent.com/u/29628587/mclauncherapi-changes.rss
Background
@Tomsik68 is junior java coder, who has been creating bukkit plugins for some time. He became interested in minecraft launchers by decompiling the official one and finding out how simple it is to write your own launcher(the old launcher only had around 5 classes, so it wasn't that complex). Before his launcher was released to the public, mojang changed their launching system, so that he was sad, because his launcher didn't work. With all this, he turned away from the project and threw source code of a working launcher away. However, he picked the project back up to bring that simplicity back. However, that's not so easy, so cross your fingers for him, please :)
At the moment, he's working on a page for one of his minecraft-related projects(mclauncherapi).
If you're interested in more facts about the author(me!), you can visit my personal page at http://tomsik68.github.io/ where you can find some interesting stuff like jekyll-based blog, programs I made when I was 12 and also few words about each of my project.
If you want to message the author, you can do so on twitter - https://twitter.com/tomsik68 or you can add me on skype: tomsik68
How can I support?
Well, I'd say you can donate, but I'm not good at accepting money, so there are only 3 things you can do:
- Add me on skype to say "Hi, your MCLauncher-API is awesome :)"
- Contribute to the project (improve the code, write some wiki)
- Share the project with your friends who might be interested, so it gets more famous :)
License
This project is now licensed under MIT license. You can find the whole license text in repository(https://github.com/tomsik68/mclauncher-api/)