https://wiki.vg/api.php?action=feedcontributions&user=QuanticRealm&feedformat=atom
wiki.vg - User contributions [en]
2024-03-28T10:11:34Z
User contributions
MediaWiki 1.34.4
https://wiki.vg/index.php?title=Microsoft_Authentication_Scheme&diff=18005
Microsoft Authentication Scheme
2023-02-22T07:03:48Z
<p>QuanticRealm: /* Sample Implementations */ Add Rust library</p>
<hr />
<div>Minecraft is moving to Microsoft accounts. Starting December 2020, all new Accounts already use the new system, old accounts will be migrated later, see [https://www.minecraft.net/en-us/article/java-edition-moving-house this blog post]<br />
<br />
There are multiple steps and different tokens required, but in the end, you get a normal Minecraft token back. Launching the game itself hasn't changed.<br />
<br />
== Microsoft OAuth2 Flow ==<br />
<br />
Prior to any of these steps, you will first need to obtain an OAuth 2.0 client ID by [https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app creating a Microsoft Azure application]. You will ''not'' need to obtain a client secret.<br />
<br />
You can then use the [https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-auth-code-flow OAuth2 authorization code flow] to obtain an access token. You'll need to present the user with a login page that, once completed, will redirect to a specified URL with the token in the query parameters. In non-web applications this typically involves spinning up a temporary HTTP server to handle the redirect. If you'd rather not do that, consider using the (slightly less automatic) [https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-device-code device code flow] instead.<br />
<br />
In any case, you'll need to include <code>XboxLive.signin</code> in the <code>scope</code> parameter of the authorization request; otherwise the next endpoint will complain, and not in a helpful way.<br />
<br />
<i>Note: You <b>must</b> use the <code>consumers</code> AAD tenant to sign in with the <code>XboxLive.signin</code> scope. Using an Azure AD tenant ID or the <code>common</code> scope will just give errors. This also means you cannot sign in with users that are in the AAD tenant, only with consumer Microsoft accounts.</i><br />
<br />
== Authenticate with Xbox Live ==<br />
<br />
Now that we are authenticated with Microsoft, we can authenticate with Xbox Live.<br />
<br />
To do that, we send<br />
<br />
<syntaxhighlight lang="json" line='line'><br />
POST https://user.auth.xboxlive.com/user/authenticate<br />
{<br />
"Properties": {<br />
"AuthMethod": "RPS",<br />
"SiteName": "user.auth.xboxlive.com",<br />
"RpsTicket": "d=<access token>" // your access token from the previous step here<br />
},<br />
"RelyingParty": "http://auth.xboxlive.com",<br />
"TokenType": "JWT"<br />
}<br />
</syntaxhighlight><br />
<br />
Again, it will complain if you don't set <code>Content-Type: application/json</code> and <code>Accept: application/json</code>.<br />
It will also complain if your SSL implementation does not support SSL renegotiations.<br />
<br />
The response will look like this:<br />
<br />
<syntaxhighlight lang="json" line='line'><br />
{<br />
"IssueInstant":"2020-12-07T19:52:08.4463796Z",<br />
"NotAfter":"2020-12-21T19:52:08.4463796Z",<br />
"Token":"token", // save this, this is your xbl token<br />
"DisplayClaims":{<br />
"xui":[<br />
{<br />
"uhs":"userhash" // save this<br />
}<br />
]<br />
}<br />
}<br />
</syntaxhighlight><br />
<br />
== Obtain XSTS token for Minecraft ==<br />
<br />
Now that we are authenticated with XBL, we need to get a XSTS token, we can use to login to Minecraft.<br />
<br />
<syntaxhighlight lang="json" line='line'><br />
POST https://xsts.auth.xboxlive.com/xsts/authorize<br />
{<br />
"Properties": {<br />
"SandboxId": "RETAIL",<br />
"UserTokens": [<br />
"xbl_token" // from above<br />
]<br />
},<br />
"RelyingParty": "rp://api.minecraftservices.com/",<br />
"TokenType": "JWT"<br />
}<br />
</syntaxhighlight><br />
<br />
Again, set content type and accept to json and ensure SSL renegotiation is supported by your client.<br />
<br />
<blockquote><br />
''Note:'' When trying to get the XSTS token for the '''[[Bedrock_Realms|bedrock realms]] API''', you need to change the following: <br />
<syntaxhighlight lang="json">"RelyingParty": "https://pocket.realms.minecraft.net/"</syntaxhighlight><br />
<br />
also you can stop at this point, as the [[Bedrock_Realms|bedrock realms]] API uses the XSTS token directly instead of a seperate auth scheme.<br />
</blockquote><br />
<br />
Response will look like this:<br />
<br />
<syntaxhighlight lang="json" line='line'><br />
{<br />
"IssueInstant":"2020-12-07T19:52:09.2345095Z",<br />
"NotAfter":"2020-12-08T11:52:09.2345095Z",<br />
"Token":"token", // save this, this is your xsts token<br />
"DisplayClaims":{<br />
"xui":[<br />
{<br />
"uhs":"userhash" // same as last request<br />
}<br />
]<br />
}<br />
}<br />
</syntaxhighlight><br />
<br />
The endpoint can return a 401 error with the below response:<br />
<br />
<syntaxhighlight lang="json" line='line'><br />
{<br />
"Identity":"0",<br />
"XErr":2148916238,<br />
"Message":"",<br />
"Redirect":"https://start.ui.xboxlive.com/AddChildToFamily"<br />
}<br />
</syntaxhighlight><br />
<br />
The Redirect parameter usually will not resolve or go anywhere in a browser, likely they're targeting Xbox consoles.<br />
<br />
Noted XErr codes and their meanings:<br />
<br />
* '''2148916233''': The account doesn't have an Xbox account. Once they sign up for one (or login through minecraft.net to create one) then they can proceed with the login. This shouldn't happen with accounts that have purchased Minecraft with a Microsoft account, as they would've already gone through that Xbox signup process.<br />
* '''2148916235''': The account is from a country where Xbox Live is not available/banned<br />
* '''2148916236''': The account needs adult verification on Xbox page. (South Korea)<br />
* '''2148916237''': The account needs adult verification on Xbox page. (South Korea)<br />
* '''2148916238''': The account is a child (under 18) and cannot proceed unless the account is added to a Family by an adult. This only seems to occur when using a custom Microsoft Azure application. When using the Minecraft launchers client id, this doesn't trigger.<br />
<br />
== Authenticate with Minecraft ==<br />
<br />
Now we can finally start talking to Minecraft. The XSTS token from the last request allows us to authenticate with Minecraft using<br />
<br />
<syntaxhighlight lang="json" line='line'><br />
POST https://api.minecraftservices.com/authentication/login_with_xbox<br />
{<br />
"identityToken": "XBL3.0 x=<userhash>;<xsts_token>"<br />
}<br />
</syntaxhighlight><br />
<br />
Response:<br />
<syntaxhighlight lang="json" line='line'><br />
{<br />
"username" : "some uuid", // this is not the uuid of the account<br />
"roles" : [ ],<br />
"access_token" : "minecraft access token", // jwt, your good old minecraft access token<br />
"token_type" : "Bearer",<br />
"expires_in" : 86400<br />
}<br />
</syntaxhighlight><br />
<br />
This access token allows us to launch the game, but, we haven't actually checked if the account owns the game. Everything until here works with a normal Microsoft account!<br />
<br />
== Checking Game Ownership ==<br />
<br />
So let's use our mc access token to check if a product licence is attached to the account.<br />
GET https://api.minecraftservices.com/entitlements/mcstore<br />
<br />
The access token goes into the auth header: <code>Authorization: Bearer <Minecraft Access Token></code>. (Keep in mind that <code>Bearer </code> is actually the prefix you must include!)<br />
<br />
If the account owns the game, the response will look like this:<br />
<br />
<syntaxhighlight lang="json" line='line'><br />
{<br />
"items" : [ {<br />
"name" : "product_minecraft",<br />
"signature" : "jwt sig"<br />
}, {<br />
"name" : "game_minecraft",<br />
"signature" : "jwt sig"<br />
} ],<br />
"signature" : "jwt sig",<br />
"keyId" : "1"<br />
}<br />
</syntaxhighlight><br />
<br />
The first jwts contain the values:<br />
<syntaxhighlight lang="json" line='line'><br />
{<br />
"typ": "JWT",<br />
"alg": "RS256",<br />
"kid": "1"<br />
}.{<br />
"signerId": "2535416586892404",<br />
"name": "product_minecraft"<br />
}.[Signature]<br />
</syntaxhighlight><br />
<br />
the last jwt looks like this decoded:<br />
<br />
<syntaxhighlight lang="json" line='line'><br />
{<br />
"typ": "JWT",<br />
"alg": "RS256",<br />
"kid": "1"<br />
}.{<br />
"entitlements": [<br />
{<br />
"name": "product_minecraft"<br />
},<br />
{<br />
"name": "game_minecraft"<br />
}<br />
],<br />
"signerId": "2535416586892404"<br />
}.[Signature]<br />
</syntaxhighlight><br />
If the account doesn't own the game, the items array will be empty.<br />
<br />
Note that Xbox Game Pass users don't technically own the game, and therefore will not show any ownership here, but will indeed have a Minecraft profile attached to their account.<br />
<br />
Note that the signature should always be checked with the public key from Mojang to verify that it is a legitimate response from the official servers:<br />
<syntaxhighlight><br />
-----BEGIN PUBLIC KEY-----<br />
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtz7jy4jRH3psj5AbVS6W<br />
NHjniqlr/f5JDly2M8OKGK81nPEq765tJuSILOWrC3KQRvHJIhf84+ekMGH7iGlO<br />
4DPGDVb6hBGoMMBhCq2jkBjuJ7fVi3oOxy5EsA/IQqa69e55ugM+GJKUndLyHeNn<br />
X6RzRzDT4tX/i68WJikwL8rR8Jq49aVJlIEFT6F+1rDQdU2qcpfT04CBYLM5gMxE<br />
fWRl6u1PNQixz8vSOv8pA6hB2DU8Y08VvbK7X2ls+BiS3wqqj3nyVWqoxrwVKiXR<br />
kIqIyIAedYDFSaIq5vbmnVtIonWQPeug4/0spLQoWnTUpXRZe2/+uAKN1RY9mmaB<br />
pRFV/Osz3PDOoICGb5AZ0asLFf/qEvGJ+di6Ltt8/aaoBuVw+7fnTw2BhkhSq1S/<br />
va6LxHZGXE9wsLj4CN8mZXHfwVD9QG0VNQTUgEGZ4ngf7+0u30p7mPt5sYy3H+Fm<br />
sWXqFZn55pecmrgNLqtETPWMNpWc2fJu/qqnxE9o2tBGy/MqJiw3iLYxf7U+4le4<br />
jM49AUKrO16bD1rdFwyVuNaTefObKjEMTX9gyVUF6o7oDEItp5NHxFm3CqnQRmch<br />
HsMs+NxEnN4E9a8PDB23b4yjKOQ9VHDxBxuaZJU60GBCIOF9tslb7OAkheSJx5Xy<br />
EYblHbogFGPRFU++NrSQRX0CAwEAAQ==<br />
-----END PUBLIC KEY-----<br />
</syntaxhighlight><br />
See the JWT standard[https://auth0.com/docs/tokens/json-web-tokens/validate-json-web-tokens] for more details.<br />
<br />
In case the public key ever changes, it can be extracted from the launcher library:<br />
<br />
<syntaxhighlight lang="bash"><br />
strings ~/.minecraft/launcher/liblauncher.so > launcher-strings.txt<br />
</syntaxhighlight><br />
<br />
The created file <code>launcher-strings.txt</code> will include 2 strings which begin with <code>-----BEGIN PUBLIC KEY-----</code> and end with <code>-----END PUBLIC KEY-----</code>.<br />
The first key seems to be the one used for the JWT tokens, use of the second key is unknown.<br />
<br />
== Getting the profile ==<br />
<br />
Now that we know that the account owns the game, we can get their profile in order to fetch the UUID:<br />
GET https://api.minecraftservices.com/minecraft/profile<br />
<br />
Again, the access token goes into the auth header: <code>Authorization: Bearer token</code><br />
<br />
The response will look like this, if the account owns the game:<br />
<br />
<syntaxhighlight lang="json" line='line'><br />
{<br />
"id" : "986dec87b7ec47ff89ff033fdb95c4b5", // the real uuid of the account, woo<br />
"name" : "HowDoesAuthWork", // the mc user name of the account<br />
"skins" : [ {<br />
"id" : "6a6e65e5-76dd-4c3c-a625-162924514568",<br />
"state" : "ACTIVE",<br />
"url" : "http://textures.minecraft.net/texture/1a4af718455d4aab528e7a61f86fa25e6a369d1768dcb13f7df319a713eb810b",<br />
"variant" : "CLASSIC",<br />
"alias" : "STEVE"<br />
} ],<br />
"capes" : [ ]<br />
}<br />
</syntaxhighlight><br />
<br />
Else it will look like this:<br />
<br />
<syntaxhighlight lang="json" line='line'><br />
{<br />
"path" : "/minecraft/profile",<br />
"errorType" : "NOT_FOUND",<br />
"error" : "NOT_FOUND",<br />
"errorMessage" : "The server has not found anything matching the request URI",<br />
"developerMessage" : "The server has not found anything matching the request URI"<br />
}<br />
</syntaxhighlight><br />
<br />
Note that Xbox Game Pass users who haven't logged into the new Minecraft Launcher at least once will not return a profile, and will need to login once after activating Xbox Game Pass to setup their Minecraft username.<br />
<br />
You should now have all necessary data (the mc access token, the username and the uuid) to launch the game. Well done!<br />
<br />
== Sample Implementations ==<br />
<br />
A fully working kotlin implementation can be found [https://gitlab.bixilon.de/bixilon/minosoft/-/blob/master/src/main/java/de/bixilon/minosoft/util/account/microsoft/MicrosoftOAuthUtils.kt] here using device tokens.<br />
<br />
A rough sample implementation in Java (using javafx and its webview) [https://github.com/MiniDigger/MiniLauncher/blob/master/launcher/src/main/java/me/minidigger/minecraftlauncher/launcher/gui/MsaFragmentController.java here].<br />
<br />
An implementation in Go [https://gist.github.com/rbrick/be8ed86864fc5d77aa6c979053cfc892 here]. <br />
<br />
An implementation in JS can be found [https://github.com/PrismarineJS/node-minecraft-protocol/blob/master/src/client/microsoftAuth.js here] and one using JS/TS [https://gist.github.com/Plagiatus/ce5f18bc010395fc45d8553905e10f55 here]<br />
<br />
An implementation in Python can be found [https://gitlab.com/JakobDev/minecraft-launcher-lib/-/blob/master/minecraft_launcher_lib/microsoft_account.py here]<br />
<br />
An implementation in Rust can be found [https://gist.github.com/OverHash/a71b32846612ba09d8f79c9d775bfadf here].<br />
<br />
A Kotlin library (JVM + JS) can be found [https://github.com/TheNullicorn/ms-to-mca here].<br />
<br />
A C# library using webview and [https://github.com/AzureAD/microsoft-authentication-library-for-dotnet MSAL.NET] can be found [https://github.com/CmlLib/CmlLib.Core.Auth.Microsoft here].<br />
<br />
A Rust library can be found [https://crates.io/crates/minecraft-msa-auth here].</div>
QuanticRealm
https://wiki.vg/index.php?title=Library_List&diff=14479
Library List
2018-12-12T20:27:35Z
<p>QuanticRealm: Updating Ozelot version</p>
<hr />
<div>{{ToolsNavbox}}<br />
This is a rather incomplete list of Minecraft related libraries finished or currently in development.<br />
{| class="wikitable sortable" style="width: auto; text-align: center;"<br />
|-style="background:#eee"<br />
!Name<br />
!class="unsortable"|Description<br />
!Author(s)<br />
!Language<br />
!License<br />
!Last Version Supported<br />
|-<br />
! [https://github.com/Toranktto/CraftProtocol CraftProtocol]<br />
| Open source partial implementation of Minecraft network protocol and NBT in Python 2.7.<br />
| [https://github.com/Toranktto Toranktto]<br />
| {{Python}}<br />
| {{MIT}}<br />
| {{yes|1.8.x, 1.10.x, 1.12.2}}<br />
|-<br />
! [https://github.com/JoshuaDoes/go-yggdrasil go-yggdrasil]<br />
| Allows usage of Mojang's Yggdrasil authentication system in Go<br />
| [https://joshuadoes.com JoshuaDoes]<br />
| [https://golang.org/ Go]<br />
| {{MIT}}<br />
| n/a<br />
|-<br />
! [https://github.com/McEx/McProtocol McProtocol]<br />
| Packets, NBT, Login, Proxy<br />
| hansihe<br />
| [http://elixir-lang.org/ Elixir]<br />
| {{MIT}}<br />
| {{yes|1.9.2}}<br />
|-<br />
! [https://github.com/hawezo/MojangSharp MojangSharp]<br />
| .NET wrapper for Mojang API<br />
| [https://github.com/hawezo Enzo Innocenzi (Hawezo)]<br />
| {{C sharp}}<br />
| {{Apache}}<br />
| {{yes|All}}<br />
|-<br />
! [https://github.com/SirCmpwn/Craft.Net Craft.Net]<br />
| .NET Minecraft client, server, and data manipulation library<br />
| [https://github.com/SirCmpwn Drew DeVault (SirCmpwn)]<br />
| {{C sharp}}<br />
| {{MIT}}<br />
| {{yes|1.7.5}}<br />
|-<br />
! [https://github.com/dividuum/fastmc fastmc]<br />
| Python packet parser/writer & utility library<br />
| [http://dividuum.de Florian Wesch (dividuum)]<br />
| {{Python}}<br />
| {{MIT}}<br />
| {{yes|1.7/1.8}}<br />
|-<br />
! [https://github.com/PrismarineJS/node-minecraft-protocol node-minecraft-protocol]<br />
| npm install minecraft-protocol<br />
| [https://github.com/andrewrk andrewrk]<br />
| [http://nodejs.org/ node.js]<br />
| {{BSD}}<br />
| {{yes|1.7-1.12}}<br />
|-<br />
! [https://github.com/plushmonkey/mclib mclib]<br />
| C++ library for creating clients<br />
| [https://github.com/plushmonkey plushmonkey]<br />
| {{C++}}<br />
| {{MIT}}<br />
| {{yes|1.10-1.12.1}}<br />
|-<br />
! [https://github.com/ammaraskar/pyCraft pyCraft]<br />
| Python minecraft client library<br />
| [http://ammaraskar.com/ Ammar Askar (ammaraskar)], [https://github.com/dkkline Jeppe Klitgaard (Dkkline)]<br />
| {{Python}}<br />
| {{Apache}}<br />
| {{yes|1.13.2}}<br />
|-<br />
! [http://github.com/Steveice10/MCProtocolLib MCProtocolLib]<br />
| Java implementation of the Minecraft protocol.<br />
| Steveice10<br />
| {{Java}}<br />
| {{MIT}}<br />
| {{yes|1.6.4-1.11.2}}<br />
|-<br />
! [https://github.com/C4K3/Ozelot Ozelot]<br />
| Rust implementation of MCMODERN networking<br />
| C4K3<br />
| {{Rust}}<br />
| Public domain<br />
| {{yes|1.13.2}}<br />
|-<br />
! [https://github.com/ags131/SharpMinecraftLibrary SharpMinecraftLibrary]<br />
|<br />
| ags131, electronicboy<br />
| {{C sharp}}<br />
| {{unknown}}<br />
| {{no|1.6.2 (Partial)}}<br />
|-<br />
! [https://github.com/pdelvo/Pdelvo.Minecraft Pdelvos Protocol Implementation]<br />
| .NET client/server protocol library with support for several versions.<br />
| pdelvo<br />
| {{C sharp}}<br />
| {{MIT}}<br />
| {{no|1.5.2}}<br />
|-<br />
! [https://github.com/shoghicp/Minecraft-PHP-Client-2 Minecraft PHP Client 2]<br />
| PHP client and protocol library. With events, actions and API<br />
| [https://twitter.com/shoghicp shoghicp]<br />
| {{PHP}}<br />
| {{WTFPL}}<br />
| {{no|1.5.1}}<br />
|-<br />
! [https://github.com/deoxxa/libmcnet libmcnet]<br />
| Event based, zero-copy, portable Minecraft network protocol parser<br />
| deoxxa<br />
| {{C}}<br />
| {{BSD}}<br />
| {{no|1.4}}<br />
|-<br />
! [https://github.com/deoxxa/node-mcnet node-mcnet]<br />
| Node.JS bindings to [https://github.com/deoxxa/libmcnet libmcnet]<br />
| deoxxa<br />
| {{JavaScript}}, [http://nodejs.org/ node.js]<br />
| {{BSD}}<br />
| {{no|1.3.2}}<br />
|-<br />
! [https://github.com/Maincraft/MCPackets MCPackets]<br />
| Java Minecraft protocol library<br />
| main()<br />
| {{Java}}<br />
| {{unknown}}<br />
| {{no|1.2.5}}<br />
|-<br />
! [https://github.com/axus/libmc--c libmc--c]<br />
| World representation data structures and OpenGL drawing functions.<br />
| axus<br />
| {{C++}}, {{OpenGL}}<br />
| {{GPLv3}}<br />
| {{no|1.1}}<br />
|-<br />
! [https://github.com/mave/mcproxy mcproxy]<br />
| Minecraft Proxy (and bot) framework in C++<br />
| mave<br />
| {{C++}}<br />
| {{GPLv3}}<br />
| {{no|1.1}}<br />
|-<br />
! [https://github.com/fragmer/fNbt fNbt]<br />
| Reading, writing, and manipulating NBT files and streams, for .NET<br />
| [http://matvei.org/ Matvei Stefarov (fragmer)]<br />
| {{C sharp}}<br />
| {{BSD}}<br />
| n/a<br />
|-<br />
! [https://gist.github.com/Jckf/7872337 Yggdrasil.php]<br />
| Interfacing with Mojang's Yggdrasil authentication system.<br />
| [http://www.jckf.no/ Jim C K Flaten (Jckf)]<br />
| {{PHP}}<br />
| {{unknown}}<br />
| n/a<br />
|-<br />
! [https://github.com/umby24/libMC.NET libMC.Net]<br />
| .NET Minecraft interaction library<br />
| [http://umby.d3s.co/ umby24]<br />
| {{C sharp}}<br />
| {{MIT}}<br />
| {{yes|1.7.4}}<br />
|-<br />
! [https://github.com/MineLib/MineLib.Network MineLib.Network]<br />
| .NET Minecraft network client interaction library.<br />
| [https://github.com/Aragas Aragas (Aragasas)]<br />
| {{C sharp}}<br />
| {{MIT}}<br />
| {{yes|1.8}}<br />
|-<br />
! [https://github.com/Evil-Co/NBT-Lib NBT-Lib]<br />
| Allows reading, writing and modification of NBT files and streams.<br />
| [http://www.evil-co.org Evil-Co]<br />
| {{Java}}<br />
| {{Apache}}<br />
| n/a<br />
|-<br />
! [https://github.com/DarkStorm652/DarkBot DarkBot]<br />
| Minecraft client, automation (AI) platform, and modular protocol library<br />
| [https://github.com/DarkStorm652 DarkStorm]<br />
| {{Java}}<br />
| {{BSD}}<br />
| {{yes|1.5.2-1.7.9}}<br />
|-<br />
! [https://bitbucket.org/socolin/nbtfield/ NBTField]<br />
| Another NBT library in C++<br />
| [https://bitbucket.org/socolin/ Socolin]<br />
| {{C++}}<br />
| {{MIT}}<br />
| n/a<br />
|-<br />
! [https://github.com/Kronos666/mclaunch-util-lib mclaunch-util-lib]<br />
| Yggdrasil library in Java, has handy features for launchers.<br />
| [https://github.com/Kronos666 Kronos]<br />
| {{Java}}<br />
| {{MIT}}<br />
| n/a<br />
|-<br />
! [https://github.com/Litarvan/OpenLauncherLib/ OpenLauncherLib]<br />
| Minecraft launching library written from scratch<br />
| [https://github.com/Litarvan/ Adrien "Litarvan" Navratil]<br />
| {{Java}}<br />
| {{LGPL}}<br />
| {{yes|1.0.0-1.9.2}}<br />
|-<br />
! [https://github.com/Litarvan/S-Update/ S-Update]<br />
| Powerful and simple Java update system, with Minecraft support. Works with a PHP Server<br />
| [https://github.com/Litarvan/ Adrien "Litarvan" Navratil]<br />
| {{Java}}<br />
| {{LGPL}}<br />
| {{yes|1.0.0-1.9.2}}<br />
|-<br />
! [https://github.com/Litarvan/OpenAuth/ OpenAuth]<br />
| Yggdrasil library, with possibility to give an other authentication server, it also has its own auth server.<br />
| [https://github.com/Litarvan/ Adrien "Litarvan" Navratil, Valentin "Vavaballz"]<br />
| {{Java}}<br />
| {{LGPL}}<br />
| {{yes|1.0.0-1.9.2}}<br />
|-<br />
! [https://github.com/jamiemansfield/text text]<br />
| An open-source MIT-licensed library for working with text from Minecraft.<br />
| [https://www.jamierocks.uk/ Jamie Mansfield]<br />
| {{Java}}<br />
| {{MIT}}<br />
| {{yes|1.11.2}}<br />
|-<br />
! [https://github.com/to2mbn/JMCCC JMCCC]<br />
| A powerful open-source library for launching and downloading Minecraft.<br />
| [https://github.com/to2mbn/ to2mbn]<br />
| {{Java}}<br />
| {{MIT}}<br />
| {{yes|All}}<br />
|-<br />
|}<br />
<br />
[[Category:Minecraft Modern]]</div>
QuanticRealm
https://wiki.vg/index.php?title=Client_List&diff=13404
Client List
2017-11-07T00:42:47Z
<p>QuanticRealm: Rust again...</p>
<hr />
<div>{{ToolsNavbox}}<br />
This is a rather incomplete list of Minecraft clients that users have worked or are working on. This page only lists clients written from scratch; for mods and wrappers, see the [[Utility List]].<br />
<br />
The column ''Game Graphics'' asks if your client displays in-game activity at a graphical level, such as world chunks, people or mobs moving, or any of that sort. If you are simply displaying things as text, that does '''not''' count. You can also optionally tell us the library you're using for your game graphics while providing your answer.<br style="clear:both;" /><br />
<br />
{| class="wikitable sortable" style="text-align: center;"<br />
|-<br />
! Name<br />
!class="unsortable"| Features<br />
! Author(s)<br />
! Language<br />
! License<br />
! Threaded<br />
! Game Graphics<br />
! Last Version Supported<br />
|-<br />
! [https://github.com/andrewrk/mineflayer mineflayer]<br />
| Create Minecraft bots with a powerful, stable, and high level JavaScript API.<br />
| [https://github.com/andrewrk andrewrk]<br />
| [http://nodejs.org/ node.js]<br />
| {{MIT}}<br />
| {{no}}<br />
| {{no}}<br />
| {{yes|1.8-1.12}}<br />
|-<br />
! [https://github.com/ammaraskar/pyCraft pyCraft]<br />
| Work in progress client, displays chat at the moment<br />
| Ammar Askar, resba<br />
| {{Python}}<br />
| {{Apache}}<br />
| {{yes}}<br />
| {{no}}<br />
| {{yes|1.12.1}}<br />
|-<br />
! [https://github.com/ORelio/Minecraft-Console-Client/tree/Indev Minecraft Console Client]<br />
| Command-line chat client with C# bot support<br />
| [https://github.com/ORelio ORelio]<br />
| {{C sharp}}<br />
| [http://opensource.org/licenses/CDDL-1.0 CDDL-1.0]<br />
| {{yes}}<br />
| {{no}}<br />
| {{yes|1.12.2}}<br />
|-<br />
! [https://github.com/Litecrafty/Litecraft Litecraft]<br />
| Work in progress, concurrent and Multi-Render backend.<br />
| [https://github.com/Litecrafty/ Litecraft Team]<br />
| [https://www.rust-lang.org/ Rust]<br />
| [http://www.apache.org/licenses/LICENSE-2.0.html Apache 2.0]<br />
| {{yes}}<br />
| {{yes}}<br />
| {{yes|1.12.2}}<br />
|-<br />
! [https://github.com/Thinkofname/steven steven]<br />
| Compiles<br />
| [https://github.com/Thinkofname/ Thinkofname]<br />
| [https://www.rust-lang.org/ Rust]<br />
| [http://www.apache.org/licenses/LICENSE-2.0.html Apache V2]<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|1.10.2}}<br />
|-<br />
! [https://github.com/JavaProphet/Osmium Osmium]<br />
| Rendering Client in C<br />
| [https://github.com/JavaProphet JavaProphet]<br />
| {{C}}<br />
| [http://www.gnu.org/copyleft/gpl.html GPLv3]<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|1.9.4}}<br />
|-<br />
! [https://github.com/Thinkofname/steven-go steven-go]<br />
| Compiles<br />
| [https://github.com/Thinkofname/ Thinkofname]<br />
| [http://golang.org/ Go]<br />
| [http://www.apache.org/licenses/LICENSE-2.0.html Apache V2]<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|15w32c}}<br />
|-<br />
! [https://github.com/PistonDevelopers/hematite Hematite]<br />
| Render singleplayer worlds (most blocks supported, no entities)<br />
| [http://www.piston.rs/ Piston] developers<br />
| [http://www.rust-lang.org/ Rust]<br />
| {{MIT}}<br />
| {{unknown}}<br />
| {{yes}}<br />
| {{no|1.8.8}}<br />
|-<br />
! [https://github.com/SpockBotMC/SpockBot SpockBot]<br />
| SMP Bot framework, based on BarneyGale's protocol implementation<br />
| [https://github.com/SpockBotMC/SpockBot/graphs/contributors The SpockBot Project]<br />
| {{Python}}<br />
| {{MIT}}<br />
| {{no}}<br />
| {{planned|Planned with plugin}}<br />
| {{no|1.8.7}}<br />
|-<br />
! [https://github.com/woder/torchbot TorchBot]<br />
| Work in progress standalone bot written from scratch in java, currently supports key features of game(movement, chat, world handling) and plugin system!<br />
| woder22<br />
| {{Java}}<br />
| {{GPLv3}}<br />
| {{yes}}<br />
| {{no}}<br />
| {{no|1.11}}<br />
|-<br />
! [http://reticle.mc-atlantida.eu/wiki Reticle]<br />
| Advanced minecraft bot system - Multi-server, API, Plugin system etc<br />
| Encorn<br />
| {{Java}}<br />
| Closed source, binaries {{MIT}}<br />
| {{yes}}<br />
| {{yes|Yes, using Bundle plugin}}<br />
| {{no|1.8}}<br />
|-<br />
! [https://github.com/phase/minekraft minekraft]<br />
| Minecraft remade in Kotlin. It will soon have all the features of Minecraft and more.<br />
| [https://github.com/phase Phase]<br />
| [https://github.com/jetbrains/kotlin Kotlin]<br />
| {{MIT}}<br />
| {{planned|Maybe}}<br />
| {{planned|OpenGL Planned}}<br />
| {{no|1.8}}<br />
|-<br />
! [https://github.com/phase/phasebot PhaseBot]<br />
| A bot that can move, interact with blocks, and loads of other things.<br />
| [https://github.com/phase Phase]<br />
| Java<br />
| {{no|No License}}<br />
| {{planned|Maybe}}<br />
| {{no|Controlled through chat}}<br />
| {{no|1.8}}<br />
|-<br />
! [https://github.com/DarkStorm652/DarkBot DarkBot]<br />
| Bot framework with an easy-to-use API, full world representation, path finding, AI via tasks (mining, farming, combat), and modular protocol handling<br />
| [https://github.com/DarkStorm652 DarkStorm]<br />
| {{Java}}<br />
| {{BSD}}<br />
| {{yes}}<br />
| {{no}}<br />
| {{no|1.7.9}}<br />
|-<br />
! [https://github.com/umby24/Minebot C# Minebot]<br />
| Work in progress standalone bot<br />
| Umby24<br />
| {{C sharp}}<br />
| {{MIT}}<br />
| {{yes}}<br />
| {{no}}<br />
| {{no|1.6.4}}<br />
|-<br />
! [https://github.com/Dav1dde/BraLa BraLa]<br />
| Minecraft (S)MP-Client, slogan: "Minecraft on a lower (WTF?) level"<br />
| Dav1d<br />
| {{D}}<br />
| {{GPLv3}}<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|1.6.2}}<br />
|-<br />
! [https://github.com/DavidEGrayson/redstone-bot2 redstone-bot2]<br />
| Wheat farming, supersonic flying speed, general awareness of world, but no documentation.<br />
| DavidEGrayson<br />
| {{Ruby}}<br />
| TBD<br />
| {{yes}}<br />
| {{no}}<br />
| {{no|1.6.2}}<br />
|-<br />
! [https://github.com/SpoutDev/Spout Spout] (with [https://github.com/VanillaDev/Vanilla Vanilla] plugin)<br />
| Open source, multi-threaded voxel game framework and platform that opens the doors for infinite possibilities. Features infinite height worlds, infinite content, advanced modeling support, and more!<br />
| [http://www.spout.org Spout LLC] and community<br />
| {{Java}}<br />
| [http://spout.in/licensev1 Spout License v1]<br />
| {{yes}}<br />
| {{yes|Yes, using [http://www.lwjgl.org LWJGL]}}<br />
| {{no|1.5.2}}<br />
|-<br />
! [https://github.com/lukleh/TwistedBot TwistedBot]<br />
| bot and proxy, up to date information in readme on github<br />
| [https://twitter.com/lukleh lukleh]<br />
| {{Python}}, {{Twisted}}<br />
| {{BSD}}<br />
| {{no}}<br />
| {{no}}<br />
| {{no|1.5.2}}<br />
|-<br />
! [https://code.google.com/p/mc-bot mcbot]<br />
| Minecraft NPC emulator<br />
| Shagrat<br />
| {{Pascal}} Delphi XE2<br />
| {{Unknown}}<br />
| {{yes}}<br />
| {{Yes|Debug 2.5 D}}<br />
| {{no|1.5.2}}<br />
|-<br />
! [https://github.com/shoghicp/Minecraft-PHP-Client-2 Minecraft PHP Client&nbsp;2]<br />
| Complete rewrite of "Minecraft PHP Client". Has events and actions, and it's modular. Supports online mode and Spoutcraft<br />
| [https://twitter.com/shoghicp shoghicp]<br />
| {{PHP}}<br />
| {{WTFPL}}<br />
| {{no}}<br />
| {{planned|Convert Map to PNG}}<br />
| {{no|1.5.1}}<br />
|-<br />
! [https://github.com/Charged/Miners Charged Miners]<br />
| Minecraft Viewer, can connect to classic servers.<br />
| Wallbraker et al.<br />
| {{D}}, {{Lua}}<br />
| {{GPLv2}}<br />
| {{no}}<br />
| {{yes}}<br />
| {{no|1.3.2}}<br />
|-<br />
! [http://www.planetminecraft.com/project/new-c-driven-minecraft-client-461392/ Revolutional RedStone]<br />
| Partial Redstone support<br />
| RevolutionalRedstone<br />
| {{C++}}, {{Lua}}<br />
| {{Unknown}}<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|1.3.2}}<br />
|-<br />
! [https://github.com/shoghicp/Minecraft-PHP-Client Minecraft PHP Client]<br />
| "- Superseded by Minecraft PHP Client 2 -" It can move and do other things. [http://shoghicp.wordpress.com/2012/04/08/minecraft-php-client/ Spanish Website]<br />
| [https://twitter.com/shoghicp shoghicp]<br />
| {{PHP}}<br />
| {{LGPL}}<br />
| {{yes|Yes, but only linux}}<br />
| {{no}}<br />
| {{no|1.2.5}}<br />
|-<br />
! [https://github.com/Vijfhoek/Sharpcraft Sharpcraft]<br />
| Work in progress SMP (might add SSP) client.<br />
| [https://github.com/Vijfhoek Vijfhoek] and [https://github.com/F16Gaming F16Gaming]<br />
| {{C sharp}}<br />
| {{GPLv3}}<br />
| {{yes}}<br />
| {{yes|Yes, using [http://en.wikipedia.org/wiki/Microsoft_XNA XNA]}}<br />
| {{no|1.2.5}}<br />
|-<br />
! [https://github.com/axus/libmc--c mc--c]<br />
| Draw the map. Can't talk or move.<br />
| axus<br />
| {{C++}}<br />
| {{LGPL}}<br />
| {{no}}<br />
| {{yes}}<br />
| {{no|1.1}}<br />
|-<br />
! [https://github.com/espes/esbot esbot]<br />
| dependency gathering and other awesomeness<br />
| espes<br />
| {{Python}}, {{Twisted}}<br />
| {{GPLv3}}<br />
| {{no}}<br />
| {{no}}<br />
| {{no|Beta 1.8.1}}<br />
|-<br />
! [http://truecraft.io TrueCraft]<br />
| Beta 1.7.3 client for Linux and Windows (and OS X, somewhat)<br />
| SirCmpwn and [https://github.com/SirCmpwn/TrueCraft/graphs/contributors others]<br />
| {{C sharp}}<br />
| {{MIT}}<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|Beta 1.7.3*}}<br />
|-<br />
! [http://hg.sitedethib.com/mcclient/ mcclient]<br />
| Work in progress SMP client<br />
| ThibG<br />
| {{Python}} with {{C}} extension<br />
| {{GPLv3}}<br />
| {{no}}<br />
| {{yes}}<br />
| {{no|Beta 1.7.2}}<br />
|-<br />
! [https://github.com/jrupac/minecraft-opengl minecraft-opengl]<br />
| Draw the map, move around, break stuff, gather stuff, etc.; doesn't appear to have networking<br />
| Rohan Bansal, Dmitry Drutskoy, Ajay Roopakalu, Sarah Tang<br />
| {{C++}} with {{OpenGL}}<br />
| {{all rights reserved}}<br />
| {{no}}<br />
| {{yes}}<br />
| {{no|Beta 1.6.6}}<br />
|-<br />
! [https://github.com/zerowidth/golem golem]<br />
| ruby 1.9/eventmachine client, acts as a standalone bot or transparent proxy<br />
| zerowidth<br />
| {{Ruby}}<br />
| {{MIT}}<br />
| {{no}}<br />
| {{no}}<br />
| {{no|Beta 1.4}}<br />
|}<br />
<br />
* TrueCraft is being actively developed against beta 1.7.3 and intentionally does not support newer versions<br />
<br />
[[Category:Minecraft Modern]]</div>
QuanticRealm
https://wiki.vg/index.php?title=Client_List&diff=13390
Client List
2017-10-21T03:41:11Z
<p>QuanticRealm: Litecraft is now written in DLang</p>
<hr />
<div>{{ToolsNavbox}}<br />
This is a rather incomplete list of Minecraft clients that users have worked or are working on. This page only lists clients written from scratch; for mods and wrappers, see the [[Utility List]].<br />
<br />
The column ''Game Graphics'' asks if your client displays in-game activity at a graphical level, such as world chunks, people or mobs moving, or any of that sort. If you are simply displaying things as text, that does '''not''' count. You can also optionally tell us the library you're using for your game graphics while providing your answer.<br style="clear:both;" /><br />
<br />
{| class="wikitable sortable" style="text-align: center;"<br />
|-<br />
! Name<br />
!class="unsortable"| Features<br />
! Author(s)<br />
! Language<br />
! License<br />
! Threaded<br />
! Game Graphics<br />
! Last Version Supported<br />
|-<br />
! [https://github.com/andrewrk/mineflayer mineflayer]<br />
| Create Minecraft bots with a powerful, stable, and high level JavaScript API.<br />
| [https://github.com/andrewrk andrewrk]<br />
| [http://nodejs.org/ node.js]<br />
| {{MIT}}<br />
| {{no}}<br />
| {{no}}<br />
| {{yes|1.8-1.12}}<br />
|-<br />
! [https://github.com/ammaraskar/pyCraft pyCraft]<br />
| Work in progress client, displays chat at the moment<br />
| Ammar Askar, resba<br />
| {{Python}}<br />
| {{Apache}}<br />
| {{yes}}<br />
| {{no}}<br />
| {{yes|1.12.1}}<br />
|-<br />
! [https://github.com/ORelio/Minecraft-Console-Client/tree/Indev Minecraft Console Client]<br />
| Command-line chat client with C# bot support<br />
| [https://github.com/ORelio ORelio]<br />
| {{C sharp}}<br />
| [http://opensource.org/licenses/CDDL-1.0 CDDL-1.0]<br />
| {{yes}}<br />
| {{no}}<br />
| {{yes|1.12.2}}<br />
|-<br />
! [https://github.com/Litecrafty/Litecraft Litecraft]<br />
| Work in progress, concurrent and Multi-Render backend.<br />
| [https://github.com/Litecrafty/ Litecraft Team]<br />
| [https://dlang.org/ D]<br />
| [http://www.apache.org/licenses/LICENSE-2.0.html Apache 2.0]<br />
| {{yes}}<br />
| {{yes}}<br />
| {{yes|1.12.2}}<br />
|-<br />
! [https://github.com/Thinkofname/steven steven]<br />
| Compiles<br />
| [https://github.com/Thinkofname/ Thinkofname]<br />
| [https://www.rust-lang.org/ Rust]<br />
| [http://www.apache.org/licenses/LICENSE-2.0.html Apache V2]<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|1.10.2}}<br />
|-<br />
! [https://github.com/JavaProphet/Osmium Osmium]<br />
| Rendering Client in C<br />
| [https://github.com/JavaProphet JavaProphet]<br />
| {{C}}<br />
| [http://www.gnu.org/copyleft/gpl.html GPLv3]<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|1.9.4}}<br />
|-<br />
! [https://github.com/Thinkofname/steven-go steven-go]<br />
| Compiles<br />
| [https://github.com/Thinkofname/ Thinkofname]<br />
| [http://golang.org/ Go]<br />
| [http://www.apache.org/licenses/LICENSE-2.0.html Apache V2]<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|15w32c}}<br />
|-<br />
! [https://github.com/PistonDevelopers/hematite Hematite]<br />
| Render singleplayer worlds (most blocks supported, no entities)<br />
| [http://www.piston.rs/ Piston] developers<br />
| [http://www.rust-lang.org/ Rust]<br />
| {{MIT}}<br />
| {{unknown}}<br />
| {{yes}}<br />
| {{no|1.8.8}}<br />
|-<br />
! [https://github.com/SpockBotMC/SpockBot SpockBot]<br />
| SMP Bot framework, based on BarneyGale's protocol implementation<br />
| [https://github.com/SpockBotMC/SpockBot/graphs/contributors The SpockBot Project]<br />
| {{Python}}<br />
| {{MIT}}<br />
| {{no}}<br />
| {{planned|Planned with plugin}}<br />
| {{no|1.8.7}}<br />
|-<br />
! [https://github.com/woder/torchbot TorchBot]<br />
| Work in progress standalone bot written from scratch in java, currently supports key features of game(movement, chat, world handling) and plugin system!<br />
| woder22<br />
| {{Java}}<br />
| {{GPLv3}}<br />
| {{yes}}<br />
| {{no}}<br />
| {{no|1.11}}<br />
|-<br />
! [http://reticle.mc-atlantida.eu/wiki Reticle]<br />
| Advanced minecraft bot system - Multi-server, API, Plugin system etc<br />
| Encorn<br />
| {{Java}}<br />
| Closed source, binaries {{MIT}}<br />
| {{yes}}<br />
| {{yes|Yes, using Bundle plugin}}<br />
| {{no|1.8}}<br />
|-<br />
! [https://github.com/phase/minekraft minekraft]<br />
| Minecraft remade in Kotlin. It will soon have all the features of Minecraft and more.<br />
| [https://github.com/phase Phase]<br />
| [https://github.com/jetbrains/kotlin Kotlin]<br />
| {{MIT}}<br />
| {{planned|Maybe}}<br />
| {{planned|OpenGL Planned}}<br />
| {{no|1.8}}<br />
|-<br />
! [https://github.com/phase/phasebot PhaseBot]<br />
| A bot that can move, interact with blocks, and loads of other things.<br />
| [https://github.com/phase Phase]<br />
| Java<br />
| {{no|No License}}<br />
| {{planned|Maybe}}<br />
| {{no|Controlled through chat}}<br />
| {{no|1.8}}<br />
|-<br />
! [https://github.com/DarkStorm652/DarkBot DarkBot]<br />
| Bot framework with an easy-to-use API, full world representation, path finding, AI via tasks (mining, farming, combat), and modular protocol handling<br />
| [https://github.com/DarkStorm652 DarkStorm]<br />
| {{Java}}<br />
| {{BSD}}<br />
| {{yes}}<br />
| {{no}}<br />
| {{no|1.7.9}}<br />
|-<br />
! [https://github.com/umby24/Minebot C# Minebot]<br />
| Work in progress standalone bot<br />
| Umby24<br />
| {{C sharp}}<br />
| {{MIT}}<br />
| {{yes}}<br />
| {{no}}<br />
| {{no|1.6.4}}<br />
|-<br />
! [https://github.com/Dav1dde/BraLa BraLa]<br />
| Minecraft (S)MP-Client, slogan: "Minecraft on a lower (WTF?) level"<br />
| Dav1d<br />
| {{D}}<br />
| {{GPLv3}}<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|1.6.2}}<br />
|-<br />
! [https://github.com/DavidEGrayson/redstone-bot2 redstone-bot2]<br />
| Wheat farming, supersonic flying speed, general awareness of world, but no documentation.<br />
| DavidEGrayson<br />
| {{Ruby}}<br />
| TBD<br />
| {{yes}}<br />
| {{no}}<br />
| {{no|1.6.2}}<br />
|-<br />
! [https://github.com/SpoutDev/Spout Spout] (with [https://github.com/VanillaDev/Vanilla Vanilla] plugin)<br />
| Open source, multi-threaded voxel game framework and platform that opens the doors for infinite possibilities. Features infinite height worlds, infinite content, advanced modeling support, and more!<br />
| [http://www.spout.org Spout LLC] and community<br />
| {{Java}}<br />
| [http://spout.in/licensev1 Spout License v1]<br />
| {{yes}}<br />
| {{yes|Yes, using [http://www.lwjgl.org LWJGL]}}<br />
| {{no|1.5.2}}<br />
|-<br />
! [https://github.com/lukleh/TwistedBot TwistedBot]<br />
| bot and proxy, up to date information in readme on github<br />
| [https://twitter.com/lukleh lukleh]<br />
| {{Python}}, {{Twisted}}<br />
| {{BSD}}<br />
| {{no}}<br />
| {{no}}<br />
| {{no|1.5.2}}<br />
|-<br />
! [https://code.google.com/p/mc-bot mcbot]<br />
| Minecraft NPC emulator<br />
| Shagrat<br />
| {{Pascal}} Delphi XE2<br />
| {{Unknown}}<br />
| {{yes}}<br />
| {{Yes|Debug 2.5 D}}<br />
| {{no|1.5.2}}<br />
|-<br />
! [https://github.com/shoghicp/Minecraft-PHP-Client-2 Minecraft PHP Client&nbsp;2]<br />
| Complete rewrite of "Minecraft PHP Client". Has events and actions, and it's modular. Supports online mode and Spoutcraft<br />
| [https://twitter.com/shoghicp shoghicp]<br />
| {{PHP}}<br />
| {{WTFPL}}<br />
| {{no}}<br />
| {{planned|Convert Map to PNG}}<br />
| {{no|1.5.1}}<br />
|-<br />
! [https://github.com/Charged/Miners Charged Miners]<br />
| Minecraft Viewer, can connect to classic servers.<br />
| Wallbraker et al.<br />
| {{D}}, {{Lua}}<br />
| {{GPLv2}}<br />
| {{no}}<br />
| {{yes}}<br />
| {{no|1.3.2}}<br />
|-<br />
! [http://www.planetminecraft.com/project/new-c-driven-minecraft-client-461392/ Revolutional RedStone]<br />
| Partial Redstone support<br />
| RevolutionalRedstone<br />
| {{C++}}, {{Lua}}<br />
| {{Unknown}}<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|1.3.2}}<br />
|-<br />
! [https://github.com/shoghicp/Minecraft-PHP-Client Minecraft PHP Client]<br />
| "- Superseded by Minecraft PHP Client 2 -" It can move and do other things. [http://shoghicp.wordpress.com/2012/04/08/minecraft-php-client/ Spanish Website]<br />
| [https://twitter.com/shoghicp shoghicp]<br />
| {{PHP}}<br />
| {{LGPL}}<br />
| {{yes|Yes, but only linux}}<br />
| {{no}}<br />
| {{no|1.2.5}}<br />
|-<br />
! [https://github.com/Vijfhoek/Sharpcraft Sharpcraft]<br />
| Work in progress SMP (might add SSP) client.<br />
| [https://github.com/Vijfhoek Vijfhoek] and [https://github.com/F16Gaming F16Gaming]<br />
| {{C sharp}}<br />
| {{GPLv3}}<br />
| {{yes}}<br />
| {{yes|Yes, using [http://en.wikipedia.org/wiki/Microsoft_XNA XNA]}}<br />
| {{no|1.2.5}}<br />
|-<br />
! [https://github.com/axus/libmc--c mc--c]<br />
| Draw the map. Can't talk or move.<br />
| axus<br />
| {{C++}}<br />
| {{LGPL}}<br />
| {{no}}<br />
| {{yes}}<br />
| {{no|1.1}}<br />
|-<br />
! [https://github.com/espes/esbot esbot]<br />
| dependency gathering and other awesomeness<br />
| espes<br />
| {{Python}}, {{Twisted}}<br />
| {{GPLv3}}<br />
| {{no}}<br />
| {{no}}<br />
| {{no|Beta 1.8.1}}<br />
|-<br />
! [http://truecraft.io TrueCraft]<br />
| Beta 1.7.3 client for Linux and Windows (and OS X, somewhat)<br />
| SirCmpwn and [https://github.com/SirCmpwn/TrueCraft/graphs/contributors others]<br />
| {{C sharp}}<br />
| {{MIT}}<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|Beta 1.7.3*}}<br />
|-<br />
! [http://hg.sitedethib.com/mcclient/ mcclient]<br />
| Work in progress SMP client<br />
| ThibG<br />
| {{Python}} with {{C}} extension<br />
| {{GPLv3}}<br />
| {{no}}<br />
| {{yes}}<br />
| {{no|Beta 1.7.2}}<br />
|-<br />
! [https://github.com/jrupac/minecraft-opengl minecraft-opengl]<br />
| Draw the map, move around, break stuff, gather stuff, etc.; doesn't appear to have networking<br />
| Rohan Bansal, Dmitry Drutskoy, Ajay Roopakalu, Sarah Tang<br />
| {{C++}} with {{OpenGL}}<br />
| {{all rights reserved}}<br />
| {{no}}<br />
| {{yes}}<br />
| {{no|Beta 1.6.6}}<br />
|-<br />
! [https://github.com/zerowidth/golem golem]<br />
| ruby 1.9/eventmachine client, acts as a standalone bot or transparent proxy<br />
| zerowidth<br />
| {{Ruby}}<br />
| {{MIT}}<br />
| {{no}}<br />
| {{no}}<br />
| {{no|Beta 1.4}}<br />
|}<br />
<br />
* TrueCraft is being actively developed against beta 1.7.3 and intentionally does not support newer versions<br />
<br />
[[Category:Minecraft Modern]]</div>
QuanticRealm
https://wiki.vg/index.php?title=Client_List&diff=8372
Client List
2017-01-06T20:37:40Z
<p>QuanticRealm: Adding Litecraft</p>
<hr />
<div>{{ToolsNavbox}}<br />
This is a rather incomplete list of Minecraft clients that users have worked or are working on. This page only lists clients written from scratch; for mods and wrappers, see the [[Utility List]].<br />
<br />
The column ''Game Graphics'' asks if your client displays in-game activity at a graphical level, such as world chunks, people or mobs moving, or any of that sort. If you are simply displaying things as text, that does '''not''' count. You can also optionally tell us the library you're using for your game graphics while providing your answer.<br style="clear:both;" /><br />
<br />
{| class="wikitable sortable" style="text-align: center;"<br />
|-<br />
! Name<br />
!class="unsortable"| Features<br />
! Author(s)<br />
! Language<br />
! License<br />
! Threaded<br />
! Game Graphics<br />
! Last Version Supported<br />
|-<br />
! [https://github.com/ammaraskar/pyCraft pyCraft]<br />
| Work in progress client, displays chat at the moment<br />
| Ammar Askar, resba<br />
| {{Python}}<br />
| {{Apache}}<br />
| {{yes}}<br />
| {{no}}<br />
| {{yes|1.11}}<br />
|-<br />
! [https://github.com/ORelio/Minecraft-Console-Client Minecraft Console Client]<br />
| Command-line chat client with C# bot support<br />
| [https://github.com/ORelio ORelio]<br />
| {{C sharp}}<br />
| [http://opensource.org/licenses/CDDL-1.0 CDDL-1.0]<br />
| {{yes}}<br />
| {{no}}<br />
| {{yes|1.11}}<br />
|-<br />
! [https://github.com/Litecrafty/Litecraft Litecraft]<br />
| Renders models<br />
| [https://github.com/Litecrafty/ Litecraft Team]<br />
| [https://www.rust-lang.org/ Rust]<br />
| [http://www.apache.org/licenses/LICENSE-2.0.html Apache 2.0]<br />
| {{planned}}<br />
| {{yes}}<br />
| {{yes|1.11.2}}<br />
|-<br />
! [https://github.com/Thinkofname/steven steven]<br />
| Compiles<br />
| [https://github.com/Thinkofname/ Thinkofname]<br />
| [https://www.rust-lang.org/ Rust]<br />
| [http://www.apache.org/licenses/LICENSE-2.0.html Apache V2]<br />
| {{yes}}<br />
| {{yes}}<br />
| {{yes|1.10.2}}<br />
|-<br />
! [https://github.com/JavaProphet/Osmium Osmium]<br />
| Rendering Client in C<br />
| [https://github.com/JavaProphet JavaProphet]<br />
| {{C}}<br />
| [http://www.gnu.org/copyleft/gpl.html GPLv3]<br />
| {{yes}}<br />
| {{yes}}<br />
| {{yes|1.9.4}}<br />
|-<br />
! [https://github.com/Thinkofname/steven-go steven-go]<br />
| Compiles<br />
| [https://github.com/Thinkofname/ Thinkofname]<br />
| [http://golang.org/ Go]<br />
| [http://www.apache.org/licenses/LICENSE-2.0.html Apache V2]<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|15w32c}}<br />
|-<br />
! [https://github.com/PistonDevelopers/hematite Hematite]<br />
| Render singleplayer worlds (most blocks supported, no entities)<br />
| [http://www.piston.rs/ Piston] developers<br />
| [http://www.rust-lang.org/ Rust]<br />
| {{MIT}}<br />
| {{unknown}}<br />
| {{yes}}<br />
| {{no|1.8.8}}<br />
|-<br />
! [https://github.com/SpockBotMC/SpockBot SpockBot]<br />
| SMP Bot framework, based on BarneyGale's protocol implementation<br />
| [https://github.com/SpockBotMC/SpockBot/graphs/contributors The SpockBot Project]<br />
| {{Python}}<br />
| {{MIT}}<br />
| {{no}}<br />
| {{planned|Planned with plugin}}<br />
| {{no|1.8.7}}<br />
|-<br />
! [https://github.com/andrewrk/mineflayer mineflayer]<br />
| Create Minecraft bots with a powerful, stable, and high level JavaScript API.<br />
| [https://github.com/andrewrk andrewrk]<br />
| [http://nodejs.org/ node.js]<br />
| {{MIT}}<br />
| {{no}}<br />
| {{no}}<br />
| {{no|1.8.3}}<br />
|-<br />
! [https://github.com/woder/torchbot TorchBot]<br />
| Work in progress standalone bot written from scratch in java, currently supports key features of game(movement, chat, world handling) and plugin system!<br />
| woder22<br />
| {{Java}}<br />
| {{GPLv3}}<br />
| {{yes}}<br />
| {{no}}<br />
| {{no|1.8.3}}<br />
|-<br />
! [http://reticle.mc-atlantida.eu/wiki Reticle]<br />
| Advanced minecraft bot system - Multi-server, API, Plugin system etc<br />
| Encorn<br />
| {{Java}}<br />
| Closed source, binaries {{MIT}}<br />
| {{yes}}<br />
| {{yes|Yes, using Bundle plugin}}<br />
| {{no|1.8}}<br />
|-<br />
! [https://github.com/phase/minekraft minekraft]<br />
| Minecraft remade in Kotlin. It will soon have all the features of Minecraft and more.<br />
| [https://github.com/phase Phase]<br />
| [https://github.com/jetbrains/kotlin Kotlin]<br />
| {{MIT}}<br />
| {{planned|Maybe}}<br />
| {{planned|OpenGL Planned}}<br />
| {{no|1.8}}<br />
|-<br />
! [https://github.com/phase/phasebot PhaseBot]<br />
| A bot that can move, interact with blocks, and loads of other things.<br />
| [https://github.com/phase Phase]<br />
| Java<br />
| {{no|No License}}<br />
| {{planned|Maybe}}<br />
| {{no|Controlled through chat}}<br />
| {{no|1.8}}<br />
|-<br />
! [https://github.com/DarkStorm652/DarkBot DarkBot]<br />
| Bot framework with an easy-to-use API, full world representation, path finding, AI via tasks (mining, farming, combat), and modular protocol handling<br />
| [https://github.com/DarkStorm652 DarkStorm]<br />
| {{Java}}<br />
| {{BSD}}<br />
| {{yes}}<br />
| {{no}}<br />
| {{no|1.7.9}}<br />
|-<br />
! [https://github.com/umby24/Minebot C# Minebot]<br />
| Work in progress standalone bot<br />
| Umby24<br />
| {{C sharp}}<br />
| {{MIT}}<br />
| {{yes}}<br />
| {{no}}<br />
| {{no|1.6.4}}<br />
|-<br />
! [https://github.com/Dav1dde/BraLa BraLa]<br />
| Minecraft (S)MP-Client, slogan: "Minecraft on a lower (WTF?) level"<br />
| Dav1d<br />
| {{D}}<br />
| {{GPLv3}}<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|1.6.2}}<br />
|-<br />
! [https://github.com/DavidEGrayson/redstone-bot2 redstone-bot2]<br />
| Wheat farming, supersonic flying speed, general awareness of world, but no documentation.<br />
| DavidEGrayson<br />
| {{Ruby}}<br />
| TBD<br />
| {{yes}}<br />
| {{no}}<br />
| {{no|1.6.2}}<br />
|-<br />
! [https://github.com/SpoutDev/Spout Spout] (with [https://github.com/VanillaDev/Vanilla Vanilla] plugin)<br />
| Open source, multi-threaded voxel game framework and platform that opens the doors for infinite possibilities. Features infinite height worlds, infinite content, advanced modeling support, and more!<br />
| [http://www.spout.org Spout LLC] and community<br />
| {{Java}}<br />
| [http://spout.in/licensev1 Spout License v1]<br />
| {{yes}}<br />
| {{yes|Yes, using [http://www.lwjgl.org LWJGL]}}<br />
| {{no|1.5.2}}<br />
|-<br />
! [https://github.com/lukleh/TwistedBot TwistedBot]<br />
| bot and proxy, up to date information in readme on github<br />
| [https://twitter.com/lukleh lukleh]<br />
| {{Python}}, {{Twisted}}<br />
| {{BSD}}<br />
| {{no}}<br />
| {{no}}<br />
| {{no|1.5.2}}<br />
|-<br />
! [https://code.google.com/p/mc-bot mcbot]<br />
| Minecraft NPC emulator<br />
| Shagrat<br />
| {{Pascal}} Delphi XE2<br />
| {{Unknown}}<br />
| {{yes}}<br />
| {{Yes|Debug 2.5 D}}<br />
| {{no|1.5.2}}<br />
|-<br />
! [https://github.com/shoghicp/Minecraft-PHP-Client-2 Minecraft PHP Client&nbsp;2]<br />
| Complete rewrite of "Minecraft PHP Client". Has events and actions, and it's modular. Supports online mode and Spoutcraft<br />
| [https://twitter.com/shoghicp shoghicp]<br />
| {{PHP}}<br />
| {{WTFPL}}<br />
| {{no}}<br />
| {{planned|Convert Map to PNG}}<br />
| {{no|1.5.1}}<br />
|-<br />
! [https://github.com/Charged/Miners Charged Miners]<br />
| Minecraft Viewer, can connect to classic servers.<br />
| Wallbraker et al.<br />
| {{D}}, {{Lua}}<br />
| {{GPLv2}}<br />
| {{no}}<br />
| {{yes}}<br />
| {{no|1.3.2}}<br />
|-<br />
! [http://www.planetminecraft.com/project/new-c-driven-minecraft-client-461392/ Revolutional RedStone]<br />
| Partial Redstone support<br />
| RevolutionalRedstone<br />
| {{C++}}, {{Lua}}<br />
| {{Unknown}}<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|1.3.2}}<br />
|-<br />
! [https://github.com/shoghicp/Minecraft-PHP-Client Minecraft PHP Client]<br />
| "- Superseded by Minecraft PHP Client 2 -" It can move and do other things. [http://shoghicp.wordpress.com/2012/04/08/minecraft-php-client/ Spanish Website]<br />
| [https://twitter.com/shoghicp shoghicp]<br />
| {{PHP}}<br />
| {{LGPL}}<br />
| {{yes|Yes, but only linux}}<br />
| {{no}}<br />
| {{no|1.2.5}}<br />
|-<br />
! [https://github.com/Vijfhoek/Sharpcraft Sharpcraft]<br />
| Work in progress SMP (might add SSP) client.<br />
| [https://github.com/Vijfhoek Vijfhoek] and [https://github.com/F16Gaming F16Gaming]<br />
| {{C sharp}}<br />
| {{GPLv3}}<br />
| {{yes}}<br />
| {{yes|Yes, using [http://en.wikipedia.org/wiki/Microsoft_XNA XNA]}}<br />
| {{no|1.2.5}}<br />
|-<br />
! [https://github.com/axus/libmc--c mc--c]<br />
| Draw the map. Can't talk or move.<br />
| axus<br />
| {{C++}}<br />
| {{LGPL}}<br />
| {{no}}<br />
| {{yes}}<br />
| {{no|1.1}}<br />
|-<br />
! [https://github.com/espes/esbot esbot]<br />
| dependency gathering and other awesomeness<br />
| espes<br />
| {{Python}}, {{Twisted}}<br />
| {{GPLv3}}<br />
| {{no}}<br />
| {{no}}<br />
| {{no|Beta 1.8.1}}<br />
|-<br />
! [http://truecraft.io TrueCraft]<br />
| Beta 1.7.3 client for Linux and Windows (and OS X, somewhat)<br />
| SirCmpwn and [https://github.com/SirCmpwn/TrueCraft/graphs/contributors others]<br />
| {{C sharp}}<br />
| {{MIT}}<br />
| {{yes}}<br />
| {{yes}}<br />
| {{no|Beta 1.7.3*}}<br />
|-<br />
! [http://hg.sitedethib.com/mcclient/ mcclient]<br />
| Work in progress SMP client<br />
| ThibG<br />
| {{Python}} with {{C}} extension<br />
| {{GPLv3}}<br />
| {{no}}<br />
| {{yes}}<br />
| {{no|Beta 1.7.2}}<br />
|-<br />
! [https://github.com/jrupac/minecraft-opengl minecraft-opengl]<br />
| Draw the map, move around, break stuff, gather stuff, etc.; doesn't appear to have networking<br />
| Rohan Bansal, Dmitry Drutskoy, Ajay Roopakalu, Sarah Tang<br />
| {{C++}} with {{OpenGL}}<br />
| {{all rights reserved}}<br />
| {{no}}<br />
| {{yes}}<br />
| {{no|Beta 1.6.6}}<br />
|-<br />
! [https://github.com/zerowidth/golem golem]<br />
| ruby 1.9/eventmachine client, acts as a standalone bot or transparent proxy<br />
| zerowidth<br />
| {{Ruby}}<br />
| {{MIT}}<br />
| {{no}}<br />
| {{no}}<br />
| {{no|Beta 1.4}}<br />
|}<br />
<br />
* TrueCraft is being actively developed against beta 1.7.3 and intentionally does not support newer versions<br />
<br />
[[Category:Minecraft Modern]]</div>
QuanticRealm