Java Edition:Tutorials/Playing Old Versions

From Minecraft Discontinued Features Wiki
Jump to navigation Jump to search

The Java Edition of the game is practically the easiest to play on PC in terms of available software and support. However, as the game development goes back to 2009, players might run into difficulties while trying to launch some of the oldest versions or even finding them, as many have been lost over the course of the history of the game.

From version 24w14a onwards, a 64-bit system is required.

Java Software

Playing Minecraft: Java Edition requires Java to be installed on your system.

Different versions of Minecraft require different java versions:

  • Java 8 is recommended for versions from pre-classic to 1.16.5.
  • Java 16 or higher is required for 21w19a to 1.18-pre1.
  • Java 17 or higher is required for 1.18-pre2 to 24w13a.
  • Java 21 or higher is required for post 24w14a.

You can use the installers or manually set it up. Once it is downloaded you can point your launcher to the java or javaw location.

Versions

Omniarchive is most accurate source for old versions up to 1.8.9. For versions post 1.8.9, download the versions from the Minecraft Wiki.

Client

Pre-classic
Classic
Indev
Infdev
Alpha
Beta
Release

Server

Classic
Alpha
Beta
Release

Launchers

There are different launchers that allow for various Minecraft: Java Edition versions to be launched all with their own benefits and drawbacks.

Betacraft is recommended due to it having a complete list of archived Minecraft: Java Edition versions up to 1.5.2. It comes with skin, sounds and multiplayer fix as well as classic addons that allow for saving and full-screening.

Codex-Ipsa is recommended to due to having a complete list of all archived Minecraft: Java Edition versions. It also comes with easy JAR-modding support as well as the Betacraft proxy. It is however still experimental.

Minecraft Launcher

Minecraft Launcher

Platforms: Windows, Linux, MacOS

Minecraft Launcher Download

The Minecraft Launcher is the default launcher the majority of people have installed. If you don't like downloading 3rd party alternatives you can still play all the versions of Minecraft: Java Edition. This however does come at the cost of having to manually add missing versions into the launcher, not having classic save and potential specific hardware issues.

To access the launcher's selection of versions, please make sure you do the following:

  • Check the "Show historical versions of Minecraft: Java Edition in the Launcher" toggle in settings located at the bottom left of the launcher.
  • Check all three version toggles ("Releases", "Snapshots" and "Modded") under the installations tab.

After the following is done, you can click the "New installation" button in the installations tab and select the version in the drop down menu.

You may notice that a lot of versions are missing from the Minecraft Launcher, a list of what versions are available can be located on the [mcw:Java_Edition_version_history Java Edition version history] page on the Minecraft Wiki.
Versions can also be downloaded from the Minecraft Wiki. Alternatively if the Minecraft Wiki version downloads do not work, you can use the Omniarchive archive (Pre-Classic, Classic, Indev, Infdev, Alpha, Beta, Release).

  • To add new versions, you can download the JAR and copy the json from the Minecraft Wiki version pages. For this example, we will use 11w49a. It is located on the "Downloads" section of the version infobox.
  • Then locate the versions folder in .minecraft. For windows it is %appdata%/.minecraft. For linux it is ~/.minecraft. For MacOS it is ~/Library/Application Support/minecraft.
  • Create a new folder with the version name, this has to use a specific version name formatting used for the Minecraft launcher. For example, 1.7.10, 11w49a, b1.8, b1.8-pre2.
  • Move the JAR file downloaded from the Minecraft Wiki into that folder and also create a text document and paste the json you copied. Rename the JAR to (VERSIONNAME).jar and the json to (VERSIONNAME).json. For 11w49a it would be 11w49a.jar and 11w49a.json.
  • You can now reload the Minecraft Launcher and the version should be available in the versions drop down when creating a new instance.

If you notice that sounds, skins and Multiplayer is not working in older Minecraft versions, you can add the Betacraft proxy to the Java Arguments box in the instance's settings. -Dhttp.proxyHost=betacraft.uk

Betacraft

Betacraft Launcher

Platforms: Windows, Linux, MacOS

Betacraft Launcher Download

Betacraft is a launcher that intends to give the user the same experience as they would if they played way back when. It has all archived versions up 1.5.2 and includes fixes for sounds, skins, multiplayer and even includes classic addons that allows for full-screening and saving. Versions can be accessed by pressing the "Selection version" button and addons can be accessed in Edit instance>Select addons. To ensure that Betacraft runs properly, make sure you have java 8 installed. Betacraft is available on Windows (Including many older versions), Linux and MacOS. To launch Betacraft on Windows and MacOS its as simple as clicking on the application. On linux you can launch Betacraft via terminal entering java -jar <PATHTOLAUNCHERJAR>. There also is an experimental Betacraft 2.0 version that adds support for almost all versions of Minecraft up to latest. It also includes other new features such as JARmodding and automatic java switching/downloading.

Codex-Ipsa

Codex-Ipsa Launcher

Platforms: Windows

Codex-Ipsa Launcher Download

Codex-Ipsa is a launcher that allows you to play all archived versions of Minecraft: Java Edition and Minecraft Edu (other editions too!). It also includes the Betacraft proxy for skins, sounds and multiplayer fixes, JAR-modding support and also has a function that allows for downloading and installing Java versions automatically. Changing the game version is as simple as pressing "Edit Profile" and selecting the version you need in the list.

MineOnline

MineOnline Launcher

Platforms: Windows, Linux, MacOS

MineOnline Launcher Download

Warning: modifies version JARs

MineOnline is a launcher that features the majority of archived Minecraft: Java Edition versions up to Beta 1.9 Prerelease 6 (Also including 1.1 and 1.5.2). It adds skins, sounds, classic saving and multiplayer fixes. It also mods fov slider, gui scale and resource packs into versions that do not have it. To ensure that MineOnline functions properly, make sure that you have java 8 installed. To launch versions click on "Singleplayer" and select the version you need. Or alternatively, if you are playing on multiplayer, click "Multiplayer" and add the server and version needed.

MultiMC

MultiMC Launcher
Prism Launcher

Platforms: Windows, Linux, MacOS

MultiMC Launcher Download

PrismMC Launcher Download

MultiMC and its forks are one the the most commonly used 3rd party launchers for Minecraft: Java Edition. MultiMC however has the same limited selection of versions available on the Minecraft Launcher. Prism Launcher, a MultiMC fork, does include earlier snapshots too however is still limited. To ensure that MultiMC/Prism works properly, make sure you have java 8 installed for older Minecraft and Java 17 or higher installed for modern Minecraft.

  • To add missing versions to MultiMC/Prism, first press the "Add Instance" button on the top left.
  • Then under filter make sure you have all the version toggles enabled.
  • Then select the version closest to the one you are trying to play.
  • Once you have created the instance, you can then download the version jar needed. This can be done through the Minecraft Wiki or Omniarchive (Pre-Classic, Classic, Indev, Infdev, Alpha, Beta, Release).
  • Then click on the instance and press Edit located on the right sidebar.
  • Click "Replace Minecraft.jar" on the right sidebar and select the Minecraft version you downloaded.
  • You can now launch the version! If it fails saying that the Java version is not compatible, click on settings while in the edit instance menu and change the java installation path. Auto detect and be used to automatically detect Java versions.

If you notice that sounds, skins and Multiplayer is not working in older Minecraft versions, you can add the Betacraft proxy to the Java Arguments box in the instance's settings. -Dhttp.proxyHost=betacraft.uk

PojavLauncher

PojavLauncher

Plaforms: Android, IOS

PojavLauncher Google Play Download

PojavLauncher is a Minecraft: Java Edition launcher for Android and IOS. It has the same limited number of versions the Minecraft Launcher has but more can be added. On Android, PojavLauncher can be downloaded from the Google Play store. For IOS, you can follow PojavLauncher's guide on their website. To play versions you can click above the play button and press "Create new profile". You can then select the Minecraft: Java Edition version you want.

To add missing versions to PojavLauncher:

  • Make sure you have some form of file viewer and text file creator on your phone. Also make sure you have hidden files shown in your file explorer.
  • Download the version JAR and copy the json from the Minecraft Wiki version pages. For this example, we will use 11w49a. It is located on the "Downloads" section of the version infobox.
  • Then locate the versions folder in .minecraft. For Android it is Android/Data/net.kdt.pojavlauncher/files/.minecraft/versions. On IOS its /var/mobile/Documents/PojavLauncher/.minecraft/versions[test].
  • Create a new folder with the version name, this has to use a specific version name formatting used for the Minecraft launcher. For example, 1.7.10, 11w49a, b1.8, b1.8-pre2.
  • Move the JAR file downloaded from the Minecraft Wiki into that folder and also create a text document and paste the json you copied. Rename the JAR to (VERSIONNAME).jar and the json to (VERSIONNAME).json. For 11w49a it would be 11w49a.jar and 11w49a.json.
  • Reload the launcher and it should show in the "Create new profile" drop down.

If you notice that sounds, skins and multiplayer does not work in older versions, you can add the betacraft proxy by clicking on the settings icon in the top right> java tweaks> JVM Launch arguments and then paste -Dhttp.proxyHost=betacraft.uk at the end.

Fixes

Missing sounds, skins and multiplayer joining crash fix

The Betacraft proxy fixes all these issues by making sure the appropriate resources and links are used for old Minecraft.
The Betacraft proxy can be added into your launcher by entering the following into your launchers JVM argument box:

-Dhttp.proxyHost=betacraft.uk

You can also specify specific ports for different Minecraft versions by using -Dhttp.proxyPort=<port>
Ports:

11701 c0.0.13a - c0.0.23a_01

11702 c0.24_st - a1.1.2_01

11703 a1.0.8

11704 b1.3-demo

11705 a1.2.0-preview - b1.8.1

11706 b1.9-pre1 - b1.9-pre6

11707 1.0.0-rc1 - 1.5.2

Options.txt crash fix

Loading a version from 11w49a (1.1 snapshot) to 13w26a (1.6 snapshot) will often cause a crash. This is because of the options.txt in the .minecraft folder. The lang= parameter in the text file is expecting en_US, en_UK, or another uppercase language code but if the last played version was 16w32a (1.11 snapshot) or later the lang= parameter is changed to en_us, en_uk, or another lowercase language code. The options.txt during the aforementioned range cannot read this language and so causes a crash immediately after starting. To fix you can either enter the text file and change the lang= parameter to the capitalized version or just delete the options.txt file because a new one will be created and it is already basically reset in earlier versions (hence why Auto-Jump always turns back on for example). All that is contained in this file is the options of the player from the escape menu.

Loading the instance in 1.0.0[test] and then the desired version also fixes this issue.

13w16a-1 - 13w23a Crash fix

This fix applies to MultiMC launcher only. To fix the crash go to Edit Instance, Settings, Game Windows, check Game Window and Start Minecraft maximized? afterwards.
The Codex-Ipsa launcher also operates correctly.
Sounds will not be present on these versions.

WindowCrashFix.png

M1 Mac incorrect colours

On M1 Mac computers, colours will show up incorrectly in older Minecraft: Java Edition versions. The fix for this is using either Betacraft 2.0 or MineOnline.

"Comparison method violates its general contract!" crash

Entering -Djava.util.Arrays.useLegacyMergeSort=true in your launchers Java arguments box will avoid crashes while using Java 8.

Broken Textures

Broken textures is commonly caused by Intel integrated graphics. If you have both intel integrated graphics and a GPU, make sure that your Minecraft is using the GPU.

  • On windows this can be done by going to "Graphics settings".
  • Then press browse and locate your java that you use for Minecraft.
  • Once it is added, click on Options on the added application and change your graphics preference from "Let Windows decide" to "High performance".

If you do not have a GPU you can try downgrading your graphics driver. This is because intel drivers post November 2021 have this graphics issue with old Minecraft.
Please note that this could cause vulnerability issues and other possible unintended issues. This would not work if your Intel CPU is newer than November 2021. You can locate driver versions on the intel website.
Here is a driver version for Intel UHD 620 or similar integrated graphics.

Servers

Classic

Start-up BAT

The most common way to launch classic servers is by creating a BAT file to launch the jar.
This can be done by creating a regular text file, entering what is needed and renaming the file extension to .bat.

The typical classic start-up BAT file looks like this:

@echo off

java -Xms512M -Xmx512M -cp minecraft-server.jar com.mojang.minecraft.server.MinecraftServer

pause

However, classic servers used to have a "heartbeat" to the Minecraft.net servers. This would allow your server to verify usernames and also be visible on the server list if you wanted it to.
Due to that being shut down, this no longer occurs and you have to use verify-names=false in server.properties in order to join your classic server.
Luckily Betacraft has a soloution for that with their own heartbeat and server list.

To use the Betacraft heartbeat, use this in the Start-up BAT instead:

@echo off

java -Dhttp.proxyHost=betacraft.uk -cp minecraft-server.jar com.mojang.minecraft.server.MinecraftServer

pause

If you do not want your server to be public on the server list, make sure you have public=false in the server.properties.

Start-up directly via jar

This allows you to start up a classic server by directly launching the jar. This does require editing.

This is also useful if you are using a Minecraft server host provider.

  • Download Recaf and load it.
  • Press the file tab and then load. Locate the classic server jar and open it.
  • Expand files folder and then expand the META-INF folder.
  • Open MANIFEST.MF
  • Add "Main-Class: com.mojang.minecraft.server.MinecraftServer" on a new line.
  • Save with ctrl+s and click the file tab and export program.

OPTIONAL for Betacraft Heartbeat for online mode:

Adding Online-Mode to a0.1.1 - b1.7.3

Due to the old authentication servers going down, Online-Mode no longer works in a0.1.1 to b1.7.3 servers.
There is ways to fix this:

Betacraft Proxy

The Betacraft proxy can be used to proxy authentication to the correct link. This can be done by creating a start-up bat like this:
java -Dhttp.proxyHost=betacraft.uk -Xmx1024M -Xms2048M -jar minecraft_server.jar

To create the start-up bat, create a text file and enter what is above. After that rename the file extension to .bat.
The memory allocation can also be customized and make sure that you type the correct server JAR name.

Online-Mode without start-up BAT

The server jar can also be modified directly to add online mode. Here is how you do it:

See Also

  • Multiplayer Mods