Close
Page 1 of 10 1 2 3 ... LastLast
Showing results 1 to 10 of 93
  1. #1

    Default PowerShell script to create symbolically linked (mklink) copies of WoW

    There have been a couple of threads about creating copies of WoW using NTFS smybolic links (Vista mklink command). This approach has advantages over creating separate physical copies:
    • Reduced disk activity since the OS only loads the physical files once
    • Easier patching since only one physical copy of WoW needs to be patched
    • Easier add-on maintenance since all clones share the parent add-on directory
    • Why waste disk space if you don't have to?
    I found it kind of a pain and very error-prone (at least for me) to manually type the commands for 5x copies of WoW when I was setting up, so I wrote a PowerShell script to do it automatically. It creates links for all of the WoW binaries and all of the read-only data directories. It does not link the WTF directory (video settings, saved variables, macros, etc.) to avoid collisions between settings on different accounts. I tried linking invidiaul files within this directory, but I found it to be more trouble than it was worth.

    http://code.google.com/p/wow5box/sou...ts/New-Wow.ps1

    The file below should be saved locally as "New-Wow.ps1". Instructions are in the script header.

    If you get an error about the source directory not existing try using the -sourcePath parameter to specify your WoW directory.

    If you get an error "The term 'cmd' is not recognized as a cmdlet, function, operable program or a script file..." make sure that c:\windows\system32 is in your path. (Environment variable PATH in Control Panel->System and Maintenance->System->Advanced System Settings->Environment Variables.)

    One word of caution: Be careful if you *delete* a folder containing a symlinked sub-directory through Windows Explorer. On one occasion I somehow managed to delete the contents of the linked directories (all of my addons, etc.) by deleting a clone root directory. That's obviously a bug -- the links should be deleted, not the directories they point to -- and I haven't been able to reproduce it since. Still I have taken to deleting the linked directories individually (c:\wow1\Cache, c:\wow1\Data, etc.) rather than the root (c:\wow1) just to be safe.

    [4/4/08 - Updated version w/ minor fixes]
    [2/25/09 - Updated post w/ issues from thread below]
    [2/11/10 - Link to latest version on google code site]
    Last edited by Chorizotarian : 02-11-2010 at 12:23 PM Reason: Link to latest version on google code site
    All my codes r belong to you: wow5box

  2. #2

    Default

    Nice work for those who aren't as adept at cmd line tools .

    I've got all my folders linked, not the WTF so I retain settings but once you dig into WTF I linked the account\[accountname]\SavedVariables and the [Servername} folders at that same location... this gives me the ability to have shared settings between all mods that support it.
    [> Sam I Am (80) <] [> Team Doublemint <][> Hexed (60) (retired) <]
    [> Innerspace & ISBoxer Toolkit <][> Boxing on Blackhand, Horde <]
    "Innerspace basically reinvented the software boxing world. If I was to do it over again, I'd probably go single PC + Innerspace/ISBoxer." - Fursphere

  3. #3

    Default

    Thanks, hopefully someone will find it helpful

    WTF sharing didn't work for me primarily because of addons like Bongos that store their settings per-account. Changes from one WoW copy were constantly stomping on changes from another, so I gave up on it. Also there doesn't seem to be any good way to force clones to update their macros from offline changes without having to quit out of WoW.

    If anyone wants to use this script with WFT sharing they just need to change the following:

    Code:
        # Other linkable dirs -- ADD WTF HERE
    @( 'Cache', 'Data', 'Interface', 'WTF' ) | foreach { New-WowLink $_ }
        
    ...
        
    # Copy the WTF directory (settings) -- COMMENT THESE LINES OUT
    #$wtf = (join-path $sourcePath WTF)
    #copy-item $wtf WTF -recurse
    All my codes r belong to you: wow5box

  4. #4

    Default

    For those of us on XP who want to run do the same, you can use junction.exe from here http://www.microsoft.com/technet/sys.../Junction.mspx

    change line 83 from
    Code:
        cmd /c "mklink $d `"$link`" `"$target`"" > $null
    to
    Code:
        cmd /c "junction $d `"$link`" `"$target`"" > $null
    you must also remove line 124-126 as NTFS 5 does not seem to support reparsed files
    [align=center]AeineiA AeineiB AeneiC AenieD AeineiX
    All your soul are belong to us
    "They can't be bargained with. They can't be reasoned with. They don't feel pity, or remorse, or fear. And they absolutely will not stop, ever, until you are dead"
    The Wiki is your Friend
    [/align]

  5. #5

    Default

    Thanks for the script. I was just about to start running performance counters and was still working out the details of how to link it.
    Norgannon
    Paladin x 1 - Level 70
    Paladin x 4 - Level 26
    Shaman x 4 - Level 70
    Warlock x 1 - Level 62
    Warlock x 4 - Level 10
    Hunter x 1 Level 15
    Hunter x 4 Level 10

  6. #6

    Default

    This is all fascinating to me because I would not think linking to the files would give you any change in performance while loading because the exact same files are being hammered unless by linking it's causing it to be cached in memory differently?

    Also, the WTF are separated by accounts and I just browsed my WTF and I see no config files outside of each account folder so since you can only run 1 toon per account I would think that there should be no conflicts having all WTF in one place and bongos2, possessions should all work properly. Once I get a new system put together I'm going to link all account folders into one location but have the main Config.wtf separate since it contains resolution info and I'll have different sized windows running.

  7. #7

    Default

    Quote Originally Posted by 'Xar',index.php?page=Thread&postID=41423#post41423
    This is all fascinating to me because I would not think linking to the files would give you any change in performance while loading because the exact same files are being hammered unless by linking it's causing it to be cached in memory differently?.
    I assume that the OS resolves the links before deciding if it needs to reload the file or not. Empirically I can tell you that running 5x physical copies off 1 HD was much heavier disk usage than running them linked. Try it for yourself and see!

    Quote Originally Posted by 'Xar',index.php?page=Thread&postID=41423#post41423
    Also, the WTF are separated by accounts and I just browsed my WTF and I see no config files outside of each account folder so since you can only run 1 toon per account I would think that there should be no conflicts having all WTF in one place and bongos2, possessions should all work properly. Once I get a new system put together I'm going to link all account folders into one location but have the main Config.wtf separate since it contains resolution info and I'll have different sized windows running.
    Yeah, you can definitely do this, and the only thing you will have shard is the video settings. I was trying to share all 4 account WTFs to a single settings directory: WTF\account1 -> [clones], WTF\account2 -> [clones], etc. That let me share macros between my clones, but it also meant that the macros and the "account-wide" settings were stomping each other.
    All my codes r belong to you: wow5box

  8. #8

    Default

    Hi Guys -
    Thanks for the script Chorizotarian ! You just saved me about 40g of disc space and probably allowed me to play 5 copies off my single 7200 rpm disc :thumbsup: One thing to add: It probably depends on your user settings etc but i got and access denied error when i tried to run it. Running powershell as an admin got it working (right click the powershell icon and select "run as administrator" for anyone who doesnt know).

    Powershell is also kind of helpful in that it doesnt really tell you when its done anything :huh: If you're wondering (as i was) if it doesnt throw you a big red error, its done it ok

    Cheers again dude :thumbup:
    ~Currently Boxing~

    5-man PVE Team ~ Avg Level: 25 ~ EU - Deathwing

    Tankypanky [Pally] : Lolcoil [Warlock] : Fearbomb [Warlock] : Soulstoner [Warlock] : Kolmaar [Druid]

  9. #9

    Default

    I'm a moron. I can't believe I didn't say to run as admin. Sorry! You need admin priviliges to create the symbolic link at least, possibly for other stuff as well.
    All my codes r belong to you: wow5box

  10. #10

    Default

    Finally got around to needing this, amazing work. Very clean and even though I'm adept at the manual creation a great time saver!
    [> Sam I Am (80) <] [> Team Doublemint <][> Hexed (60) (retired) <]
    [> Innerspace & ISBoxer Toolkit <][> Boxing on Blackhand, Horde <]
    "Innerspace basically reinvented the software boxing world. If I was to do it over again, I'd probably go single PC + Innerspace/ISBoxer." - Fursphere

Similar Threads

  1. Replies: 4
    Last Post: 03-08-2009, 04:44 AM
  2. Powershell single wow folder killed by patch.
    By Arryth in forum Software Tools
    Replies: 4
    Last Post: 10-19-2008, 06:07 AM
  3. Keyclone- 2 wows not linked
    By Teracia in forum New Multi-Boxers & Support
    Replies: 1
    Last Post: 10-16-2008, 10:30 AM
  4. lol just been linked this in an email
    By Desolate in forum Movies
    Replies: 2
    Last Post: 10-08-2008, 11:51 AM
  5. How to create a delay in WoW?
    By Jmsgalla in forum Macros and Addons
    Replies: 5
    Last Post: 08-22-2008, 01:38 AM

Posting Rules

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •