How do I keep two different versions of Minecraft installed?

Minecraft puts the data in %AppData%, so you can just make batch files which set %AppData% to some other location before running the game.

This is a trivial but flexible working example:

@echo off
set LAUNCHER=c:\games\minecraft\minecraft.exe
set SUPPLEMENT=.minecraft-supplemental
set APPDATA=%APPDATA%\%SUPPLEMENT%
%LAUNCHER%

This will make that launch of Minecraft keep and look for its data (including your saves and even mods) in %AppData%\.minecraft-supplemental\.minecraft\. (The extra level of folder structure is unnecessary but harmless, and it would be hard to eliminate it without breaking the sorts of things that the %AppData% convention was designed to avoid breaking.)

Note that this will keep everything separate -- remembered login, achievements, saves, Minecraft version, mods -- everything. As a bonus, this not only means that you can keep different versions of Minecraft installed, you can segregate different login names into their own installs with their own saves, useful for sharing a computer with other Minecraft players.

You can make multiple versions of that batch file and change the %SUPPLEMENT% variable to keep the copies' data separate. (Yes, it's currently set to a dumb name. Customize it to taste. I suggest .minecraft-[username].) You can even use different Minecraft launchers by changing the %LAUNCHER% variable, allowing different versions (or users) to use different launchers.


Might I suggest Sandboxie? Its original intentions were more along the lines of security, however, it should serve the purpose you are looking for. Any program run in sandboxie is forced to keep it's files separate of everything else in your system. As long as you run one version or another within Sandboxie always, you should be fine.