I don't really know how much better to phrase the title, but what I'm wanting to do is fairly simple.
I want to install Age of Empires II. This installs itsself to a folder, and sets its install location in the registry.
I then want to install a second copy of it, along with some software called Voobly. Voobly checks the registry to see where the AoE2 install folder is, so I can't point it to a different copy of the game.
I then want to install a third copy which has a few varying mods and patches applied, but most of the installers for these mods again use the registry to check where the game is installed.
The obvious way for it to work in my head would be to have "containers" for each installation to isolate them from the main registry and from eachother. One that has just AoE2, one that has AoE2 and Voobly, and one that has AoE2 and all of the mods.
Obviously this could be done the horrendous way with a suite of virtual machines, but that's just silly. I figure there has to be a way to have an application and it's associated data and libraries in a self-contained unit.
I tried looking at Docker, but it's very obviously designed for uses that are a lot more complex than what I'm doing, and also looks to be designed to be intergrated into the source of whatever software uses it. I also have absolutely no idea what I'm doing with it. When I tried to do something with a windows image it ended up downloading a 4gb system image to somewhere and I can't find that now. It also seems a bit excessive to have a full 4gb image for a 200MB game, I figure there has to be a simpler solution to this.