Codie Stella
- craftycodie
- JIRAUSER701497
- Europe/London
- Yes
- No
Hi!
I am a Software Engineer who has been working with this issue for quite some time! Over a year of on and off iteration, I've come up with what I think is the most effective solution to this issue, and it's pretty straight-forwardThis could be fixed with greater coverage via a change to the Minecraft Launcher, rather than the Website.
With Java, it's fairly easy to setup a custom HTTP handler, with which you can essentially patch these broken web requests on the client-side at your discretion, without using any hacky code.
Not only would this allow you to fix online-mode, but you could also fix broken skins in legacy versions which, to my understanding, would be impossible to do with back-end changes.
And, this fix is trivial. I personally implemented fixes for all of these broken URLs in my own launcher with a couple of hours of dev & testing.
Here are some examples:
- Example 1 - A fix implemented for Servers: https://github.com/craftycodie/OnlineModeFix
- Example 2 - A fix implemented for Clients via a launcher: https://github.com/craftycodie/MineOnline/blob/main/src/main/java/gg/codie/mineonline/protocol/MineOnlineURLStreamHandler.java
The solution would go as follows:
- Add a Legacy Protocol to the LegacyLauncher project following the provided examples and documentation.,
- Launch old versions with the Legacy Protocol registered and the LegacyLauncher jar on the classpath.
- -Djava.protocol.handler.pkgs=net.minecraft.launchwrapper.protocol -cp ...;launchwrapper.jar
Here's some relevant reading material:
If you have any questions drop me a line! I think this is the best option, as it's the only way you'll be able to sort out skins and sounds. Thanks for your time!
(the attached image demonstrates this fix using a third-party launcher, Example 2, with a complete clean, non-modded Minecraft Java Beta 1.1_02)
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Edit:
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Edit:
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Edit: please see this Pull Request for a fix for this issue. https://github.com/Mojang/LegacyLauncher/pull/33
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Edit: please see this Pull Request for a fix for this issue. https://github.com/Mojang/LegacyLauncher/pull/33
Summary of Issue
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Steps to Reproduce
- Open any modern launcher version.
- Ensure you are using a custom skin.
- Launch any Alpha or Beta Java Minecraft version.
- View your player via the inventory or third-person camera. Your skin will be missing. Alternatively join a server and view another player, they will also be missing skins.
Additional Resources
- Screenshots can be found in the comments.
- I have opened a Pull Request for Mojang's launchwrapper which fixes this issue. Please consider merging this fix.
https://github.com/Mojang/LegacyLauncher/pull/33
Summary of Issue
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show. This also includes Capes, which should appear in Beta.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Steps to Reproduce
- Open any modern launcher version.
- Ensure you are using a custom skin.
- Launch any Alpha or Beta Java Minecraft version.
- View your player via the inventory or third-person camera. Your skin will be missing. Alternatively join a server and view another player, they will also be missing skins.
Additional Resources
- Screenshots can be found in the comments.
- I have opened a Pull Request for Mojang's launchwrapper which fixes this issue. Please consider merging this fix.
https://github.com/Mojang/LegacyLauncher/pull/33
Summary of Issue
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show. This also includes Capes, which should appear in Beta versions.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Steps to Reproduce
- Open any modern launcher version.
- Ensure you are using a custom skin.
- Launch any Alpha or Beta Java Minecraft version.
- View your player via the inventory or third-person camera. Your skin will be missing. Alternatively join a server and view another player, they will also be missing skins.
Additional Resources
- Screenshots can be found in the comments.
- I have opened a Pull Request for Mojang's launchwrapper which fixes this issue. Please consider merging this fix.
https://github.com/Mojang/LegacyLauncher/pull/33
Summary of Issue
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show. This also includes Capes, which should appear in Beta versions.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can only be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Steps to Reproduce
- Open any modern launcher version.
- Ensure you are using a custom skin.
- Launch any Alpha or Beta Java Minecraft version.
- View your player via the inventory or third-person camera. Your skin will be missing. Alternatively join a server and view another player, they will also be missing skins.
Additional Resources
- Screenshots can be found in the comments.
- I have opened a Pull Request for Mojang's launchwrapper which fixes this issue. Please consider merging this fix.
https://github.com/Mojang/LegacyLauncher/pull/33
Summary of Issue
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show. This also includes Capes, which should appear in Beta versions.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can only be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Steps to Reproduce
- Open any modern launcher version.
- Ensure you are using a custom skin.
- Launch any Alpha or Beta Java Minecraft version.
- View your player via the inventory or third-person camera. Your skin will be missing. Alternatively join a server and view another player, they will also be missing skins.
Additional Resources
- Screenshots can be found in the comments.
- I have opened a Pull Request for Mojang's launchwrapper which fixes this issue. Please consider merging this fix.
https://github.com/Mojang/LegacyLauncher/pull/33
Summary of Issue
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show. This also includes Capes, which should appear in Beta versions.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can only be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Steps to Reproduce
- Open any modern launcher version.
- Ensure you are using a custom skin.
- Launch any Java Minecraft version before Release 1.7.8
(confirmed to affect up to beta 1.7.3, suspected to affect beyond)
- View your player via the inventory or third-person camera. Your skin will be missing. Alternatively join a server and view another player, they will also be missing skins.
Additional Resources
- Screenshots can be found in the comments.
- I have opened a Pull Request for Mojang's launchwrapper which fixes this issue. Please consider merging this fix.
https://github.com/Mojang/LegacyLauncher/pull/33
Summary of Issue
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show. This also includes Capes, which should appear in Beta versions.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can only be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Steps to Reproduce
- Open any modern launcher version.
- Ensure you are using a custom skin.
- Launch any Java Minecraft version before Release 1.7.8
(confirmed to affect up to beta 1.7.3, suspected to affect beyond)
- View your player via the inventory or third-person camera. Your skin will be missing. Alternatively join a server and view another player, they will also be missing skins.
Additional Resources
- Screenshots can be found in the comments.
- I have opened a Pull Request for Mojang's launchwrapper which fixes this issue. Please consider merging this fix.
https://github.com/Mojang/LegacyLauncher/pull/33
Summary of Issue
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show. This also includes Capes, which should appear in Beta versions.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can only be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Steps to Reproduce
- Open any modern launcher version.
- Ensure you are using a custom skin.
- Launch any Java Minecraft version before Release 1.7.8 (confirmed to affect up to beta 1.7.3, suspected to affect beyond)
- View your player via the inventory or third-person camera. Your skin will be missing. Alternatively join a server and view another player, they will also be missing skins.
Additional Resources
- Screenshots can be found in the comments.
- I have opened a Pull Request for Mojang's launchwrapper which fixes this issue. Please consider merging this fix.
https://github.com/Mojang/LegacyLauncher/pull/33
Summary of Issue
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show. This also includes Capes, which should appear in Beta versions.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can only be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Steps to Reproduce
- Open any modern launcher version.
- Ensure you are using a custom skin.
- Launch any Java Minecraft version before Release 1.7.8
(confirmed to affect up to beta 1.7.3, suspected to affect beyond)- View your player via the inventory or third-person camera. Your skin will be missing. Alternatively join a server and view another player, they will also be missing skins.
Additional Resources
- Screenshots can be found in the comments.
- I have opened a Pull Request for Mojang's launchwrapper which fixes this issue. Please consider merging this fix.
https://github.com/Mojang/LegacyLauncher/pull/33
Summary of Issue
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show. This also includes Capes, which should appear in Beta versions.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can only be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Steps to Reproduce
- Open any modern launcher version.
- Ensure you are using a custom skin.
- Launch any Java Minecraft version before Release 1.7.8
- View your player via the inventory or third-person camera. Your skin will be missing. Alternatively join a server and view another player, they will also be missing skins.
Additional Resources
- Screenshots can be found in the comments.
- I have opened a Pull Request for Mojang's launchwrapper which fixes this issue. Please consider merging this fix.
https://github.com/Mojang/LegacyLauncher/pull/33
Summary of Issue
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show. This also includes Capes, which should appear in Beta versions.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can only be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Steps to Reproduce
- Open any modern launcher version.
- Ensure you are using a custom skin.
- Launch any Java Minecraft version before Release 1.7.8
- View your player via the inventory or third-person camera. Your skin will be missing. Alternatively join a server and view another player, they will also be missing skins.
Additional Resources
- Screenshots can be found in the comments.
- I have opened a Pull Request for Mojang's launchwrapper which fixes this issue. Please consider merging this fix.
https://github.com/Mojang/LegacyLauncher/pull/33
Summary of Issue
In legacy versions of Minecraft (classic up to at least beta 1.7.3) skins currently don't show. This also includes Capes, which should appear in Beta versions.
This is because skins used to be hosted at http://s3.amazonaws.com/MinecraftSkins/
I see this as a launcher issue, as it can only be fixed with changes to the launchwrapper library, aka LegacyLauncher.
Steps to Reproduce
- Open any modern launcher version.
- Ensure you are using a custom skin.
- Launch any Java Minecraft version before Release 1.7.8
- View your player via the inventory or third-person camera. Your skin will be missing. Alternatively join a server and view another player, they will also be missing skins.
Additional Resources
- Screenshots can be found in the comments.
- I have opened a Pull Request for Mojang's launchwrapper which fixes this issue. Please consider merging this fix.
Proposed Fix
https://github.com/Mojang/LegacyLauncher/pull/33
I have opened a pull-request to fix this issue on GitHub. I have included a description of the fix and how to deploy it.
https://github.com/Mojang/LegacyLauncher/pull/33
This is not an issue. The behaviour is consistent with sand, gravel, anvils.
@Umija5895 Please do not remove affected versions. I have reproduced this bug on the latest launcher across Windows 10 and Mac OS including the new Windows 10 UWP launcher. I have not tried the legacy launcher, though it's probably broken too.
Reproduced on Mac OS Big Sur 11.6
Launcher version
10.16.0 2.2.7268
Tuesday, November 2, 2021, 6:51:10 PM
2d6a19b87068a5bdd5421a35af9fc8099844a748
Reproduced on Windows 11
Launcher version
Windows 10.0 2.2.7264
Tuesday, November 2, 2021, 6:47:49 PM
2d6a19b87068a5bdd5421a35af9fc8099844a748
@LaG
While it is true that 1.7.8 added UUIDs, this does not mean that skins have to be broken in legacy versions.
First off, usernames are unique, so a skin can be fetched by it's username.
Secondly, this isn't why skins are broken. Skins used to be hosted at https://s3.amazonaws.com/MinecraftSkins/. Mojang moved them to a new web address and stopped supporting the old one. It's still technically possible for Mojang to put skins at the old web address if they wish, though it would be technically difficult and costly (which is why I have attached a simple and free fix).
Finally. This is a bug is of the same nature of WEB-1429, which has been accepted and is scheduled for fix.
If this doesn't convince you, here's a link to the fix for this bug which has already been developed, and just needs to be accepted & released. This fix uses authlib, which is the same library, developed by Mojang, that release versions of Minecraft use to load skins. It loads them by UUID.
Also requesting reopen.
Also requesting reopen.
Reproduced again using Mac launcher 2.2.7956 with Minecraft 1.7.7
reproduced on latest
Hi Alex King,
I am the creator of MineOnline, a third-party launcher which was created to solve this bug. I have been working within the legacy Minecraft community for over three years on mods, server software and web services, so I believe I'm qualified to answer your question.
With that said, Axel is right, the issue is unaffected by Microsoft authentication.
Online-mode authentication works in two parts:
Whether you login with Microsoft or the legacy Mojang method, ultimately you will receive a Minecraft access token. So you can see, the migration process does not affect this issue at all.
I actually can't think of any potential issue this login change would cause. Nothing in game cares about how you get your access, it only cares that you got it.
Hope this helps.
Hi Mojang,
Unfortunately this bug should not be fixed as stated in the description. Old versions of Minecraft using the old URL use HTTP rather than HTTPS, they also pass the player's access token via the URL. By reimplementing this endpoint, you would be handling access tokens in HTTP.
A secure alternative would be to leverage your "LegacyLauncher" library to hook the web request in Java before it is sent, and redirect it at that point. I already have an open PR into LegacyLauncher to fix a similar issue with this solution, I encourage you to take a look.
I would even be happy to write the code for this myself
MC-255477
https://github.com/Mojang/LegacyLauncher/pull/33
Alex King - We do not need a "cracked infrastructure", we the community can already provide our own online-mode solutions leveraging the release server system.
As for doing ourselves, I have, repeatedly.
Here is a launcher which fixes this bug for every version https://github.com/craftycodie/MineOnline
You may also use many other popular third party launchers which support online-mode such as Betacraft.
Here is a server plugin, compatible with hmod bukkit and vanilla, fixing this bug for every version https://github.com/craftycodie/OnlineModeFix
You may also use other existing modded servers which fix online-mode.
In my previous comment I linked a PR into Mojang's own LegacyLaunch project which would fix online-mode.
Here is documentation on how to reimplement classic authentication via release authentication
https://docs.google.com/document/d/1EYi8pHoXFaxmcGTah09cKs3VAyx7n7OpJYmgBPok-jk/edit
The community have already moved, but solving this issue does not require "cracking" and piracy should certainly not be encouraged.
Jordan Adams - Unfortunately the http implementation doesn't matter. The server may return a redirect but it can only do so after the request has already been made, the access token is already in http at this point.
Hi Mojang,
As mentioned in my previous comment, I believe it is more appropriate to resolve this issue with an update to LegacyLauncher. So, I've opened a pull request there for your consideration. You can find more information in the PR description.
Pull Request
https://github.com/Mojang/LegacyLauncher/pull/33
And to everyone else, please don't bury this comment with 'never gonna happen' replies, you're not helping
Hi Mojang,
I believe it is more appropriate to resolve this issue with an update to LegacyLauncher, as old versions of Minecraft use http, and server authentication can only be made secure (https) by patching the game. So, I've opened a pull request there for your consideration. You can find more information in the PR description.
Pull Request
https://github.com/Mojang/LegacyLauncher/pull/33
I don't know who moved this from the MCL project to MC but per the report
Please consider moving this issue back.
Could a mod please move this back to the launcher project please? Thank you