EDIT: There seems to be some issues with Origin and/or punkbuster. When using this method the game will crash on startup much more often than when using the normal HDD. I'm guessing the SSD is fine and that it's the link that's causing problems. I'll investigate to find out more.
So, I've been playing Battlefield 3 for a while now and the one thing that's really getting on my nerves is the load times. Not exactly BF3's fault, but the levels are quite large and take about 30-60 seconds to load. Not fun.
So I went and bought myself a solid state drive (SSD) in one of those fancy black-friday deals (60$ for 60Gigs, OCZ Vertex 2). But the trick is how to get battlefield on it. There are three ways that I can think of off the top of my head:
- Install windows on the drive
- Uninstall BF3 off of my traditional HDD and reinstall it on my SSD
- Symbolic links!
Method 1 is what my buddy used and although it brings vast performance improvements to windows itself there are a couple issues. SSDs break down after a while, rendering the NAND flash unable to perform write operations. SSDs also don't come in particular large sizes without paying a significant amount more, and 60Gigs isn't a whole lot for Win7.
Method 2 should work barring any issues with BF3 being installed on a different drive to C. I've had problems like that before, very annoying. The major issue here is that BF3 is a large game and this will take quite a bit of time.
Method 3 is probably the craftiest way of going about this. It involves NTFS symbolic links, which rather than explain it I suggest you read the wikipedia article: https://en.wikipedia.org/wiki/NTFS_symbolic_link. I use linux at work (Xubuntu) and I'm very familiar with both hard and symbolic links. NTFS symbolic links are pretty much the exact same as the linux variety.
What we have to do is pretty simple, and boils down to the below steps. Note this only works on Win Vista and 7, and that I'm not responsible for any loss of data should you want to follow these steps ;).
- Copy the "Program Files/Origin Games" folder to your SSD. I made a new directroy on the SSD called "mnt" and copied the origin folder into there.
- Rename the "Program Files/Origin Games" folder on your HDD to something else for the time being (in case you mess the process up). I called mine "Origin Games old".
- Open up a command prompt as the admin. To do this in Win 7 press on the start/windows/circular thing and type "cmd" in the search box, then press Ctrl+Shift+Enter to run the cmd prompt.
- Goto your Program Files directory, just type the following in the cmd prompt followed by enter: cd "C:\Program Files"
- Make a link to the folder you copied to your SSD. You'll need to know the drive it's on, as well as the full path to the folder you copied to it. In my case the command is:
mklink /d "Origin Games" "D:\mnt\Origin Games"
And voila! You have a new directory link in Program Files that will automatically direct you to a folder on the SSD. Go ahead and try it out; navigate there with windows explorer, and most importantly run BF3 to see that it both works and that it loads extremely fast.
Some caveats: I'm not 100% sure but I don't think you can remove the directory properly in windows explorer. If you need to remove the link do what wikipedia says and remove it via 'rmdir' in the cmd prompt.
Other than that you should be able to quickly move any currently installed program to the SSD without wrecking your directory structure.


