I wanted to take a trip down memory lane and play a browser game from when I was in school. It turns out that game a Java applet. I changed my security settings so that I could play it and now it attempts to load, but it crashes instantly. I'm guessing this is because it runs on an old version of Java which is incompatible with the version on my machine.
I would like a general answer about techniques to play old Java Applets in general. But I am specifically trying to play Heavy Cannon which appears to be from 2003. I have the 64-bit and 32-bit versions of Java 8, Update 20 (1.8.0_20) installed. The error I get is
ClassFormatError: Name index 0 in LocalVariableTable has a bad constant type in class file hc. I get this error in both Chrome and Firefox.
It looks like if I want to go back in time and recreate a 2003 browsing experience I need to run Java 4 with Phoenix 0.5 (an old version of Firefox) on Debian 3.0. I tried to create a virtual machine in Virtual Box set up like this, but I couldn't get through the OS install. That could be user error or it might be complex/impossible to set up old OS's on Virtual Box.
I have also tried running the oldest versions of Firefox Portable (version 2.0, which has Firefox 5) and JPortable (which has Java 6, Update 23). All applets would not load because a plugin (ie, Java) performed an Illegal Operation).
I am trying to avoid installing an old version of Java directly on my machine if at all possible. It does not seem trivial to switch my browser between the old and new versions and I don't know what kind of compatibility problems it will create. But if anyone has success with this method I am all ears.