Multiplayer Syncing Tool
Posted: 01 Feb 2015, 09:04
Installation instructions at the bottom.
Update: 06-02-15 - updated tool. There is now a screen while it is starting up which informs you of its progress. The last step is pre-syncing and is the likeliest to take awhile. Because of this likelihood, there is now also a checkbox to disable that function.
Update: 04-02-15 - updated tool. It should now behave when launched from a shortcut, will properly tell you if it fails or succeeds (it would say it failed to remove a problematic file from your game folder, but then tell you it succeeded because it didn't check again if the problematic files were gone), and it will temporarily move non-multiplayer wads to a temp directory in your Game Folder. Also, changing your name is now done through the New button.
Most of what you really need to know can be found in the More General Description and Installation Instructions sections. However, before you ask me any questions, please read the entire post.
Multiplayer is one thing that has always suffered from a distinct lack of modding support. If you happen to have the exact same wads installed as your opponent, you're good to go. Otherwise, you and that person can't play together. And with all of the wads and decks floating around, that wasn't something that was going to happen by chance, you have to set it up with the person beforehand.
This is a tool I've just finished and will need some testing by others to let me know what works and what doesn't. I've tested it and it worked for me, but that was one test with one other person, and that's not a very big sample size. Like with the Community Wad, this will probably have some hiccups at first, but I'll do my best to get them sorted out.
Program Desciprtion
Most of this is fully or partially automated.
More General Description
Basically, once this program is installed, you'll be able to play with any of your decks like normal. This utility is just to help you sync your Game Folder with other people's Game Folders so you can play together. Grab the Community Wad, make some decks with Riiak's Deck Builder, drop those decks into your My Games folder, and find someone else with this tool to play against. Feel free to post in here if you're looking for people to play against. I will say, I don't play multiplayer much, but I hope a few people can find this helpful. At the very least, it'll be VERY easy to convert to 2015 should we ever manage to mod it properly.
If you add a deck, please consider posting it here.
Some notes.
Installation
Before you actually use the program, you'll need the Community Decks Folder on your computer inside your Google Drive folder. Open the link, and add it your drive (top right). This will put it in your root Google Drive folder. If you want to move it to a subfolder, that's fine. Once that's done, make sure Google Drive is actually running on your computer. Once it is, wait for it to finish syncing that folder. If you have already added the main Community Wad folder to your Google Drive, then this step has already been performed and you can move on. Just check your folders on your computer and make sure you've got it.
To "install" this, you just need to drop the file somewhere on your computer and run it. The only restriction about where you put the program is that it must be able to write files there (its ini/settings file). That means it cannot go in your Program Files folder. It needs to write files to your Game Folder which means it, too, needs to be not in your Program Files folder. If it is, move steam to another folder (mine is in C:\Games\Steam). (If you've already run the program and then moved Steam, just hit Reset and it'll try finding the folders again automatically.)
When you run the program, it will attempt to find the three paths it needs and give you an ID. If it can't find one of them, type/paste it in (without quotes and without the final backslash). If you want to use a particular ID or name, click Import and type it in. If you haven't already made your My Decks folder, it will ask you if you want it to do that for you. Open that folder and copy/move into it all of your decks (all wad files except for the core files and the CW files that you are using; no files larger than about a MB, preferably [decks are usually smaller than that]). In the program, press Sync. This will make sure all of your deck files are in the CW Decks folder and your Game Folder. Check for Google Drive to finish uploading these, and then you should be good to go. Type in someone's ID, press Sync, wait for it to finish, and then start the game to play against them.
Update: 06-02-15 - updated tool. There is now a screen while it is starting up which informs you of its progress. The last step is pre-syncing and is the likeliest to take awhile. Because of this likelihood, there is now also a checkbox to disable that function.
Update: 04-02-15 - updated tool. It should now behave when launched from a shortcut, will properly tell you if it fails or succeeds (it would say it failed to remove a problematic file from your game folder, but then tell you it succeeded because it didn't check again if the problematic files were gone), and it will temporarily move non-multiplayer wads to a temp directory in your Game Folder. Also, changing your name is now done through the New button.
Most of what you really need to know can be found in the More General Description and Installation Instructions sections. However, before you ask me any questions, please read the entire post.
Multiplayer is one thing that has always suffered from a distinct lack of modding support. If you happen to have the exact same wads installed as your opponent, you're good to go. Otherwise, you and that person can't play together. And with all of the wads and decks floating around, that wasn't something that was going to happen by chance, you have to set it up with the person beforehand.
This is a tool I've just finished and will need some testing by others to let me know what works and what doesn't. I've tested it and it worked for me, but that was one test with one other person, and that's not a very big sample size. Like with the Community Wad, this will probably have some hiccups at first, but I'll do my best to get them sorted out.
Program Desciprtion
Most of this is fully or partially automated.
- Community Decks Folder - Automatically retrieved. This is the path to your copy of the Community Decks Folder available through Google Drive. This folder will eventually contain all of the decks used by those using this tool. You can add your own decks, not just use the ones already in there (explained in Sync). It also contains a subfolder of Deck Lists (not very typically relevant to those using the system).
- Your Decks Folder - Automatically retrieved. This is the path to a folder you create which contains all of the decks you use. The best place for this folder is in your game folder. If you name it "Your Decks", "My Decks", or "Decks", then the tool will find it for you. This should ONLY contain deck files, no full mods. These will be distributed to everyone else using the system, so any large files will harshly impact people's drive space. Just make the folder, drop your deck wads in it, and start the tool.
- Your Game Folder - Automatically retrieved. This is the path to the folder containing DotP_D14.exe called Magic 2014.
- Your ID - Automatically generated/retrieved (fully customizable). When you first run the utility, it will generate a random six digit number that isn't already in use. It will generate a new number when you start the utility for the first time, click New (optionally), or start it for the first time after deleting your ini file (either manually or with the Reset button). You ID refers to the name of your Deck List, which contains nothing more than a list of files in your "My Decks" folder.
- Copy - Copies your ID to your clipboard so you can paste it without having to type it.
- New - Will ask you to type in a new ID to use. This is how you setup your username to use. If you press OK while it's blank, it should force it to generate a new, random, 6-digit ID. Letters, numbers, and spaces are accepted. If it's forgotten your ID for some reason and you type it in, it'll tell you a Deck List already exists with that ID. Just choose yes to use it anyway.
- Import - Opens a dialogue into which you can type an ID. If a Deck List already exists with this ID, it will backup your current decks in your My Decks folder (by moving them into a subfolder) and then copy the Deck List you specified into your My Decks folder and sync it to your Game Folder and Deck List file without changing what ID you are actually using. If you see someone's Deck List and want to use it, type in their ID through Import.
- Opponent 1's ID - This is where you type the ID you opponent tells you so the tool can sync their decks to your Game Folder.
- Opponent 2/3's ID - You can sync multiple people's deck lists so you can play against more than one person. This could also be useful for you and two or three other people to prepare to play together in one-vs-one matches amongst each other without having to restart the game. (Just because you sync their deck list doesn't mean you HAVE to play against them immediately or anything.)
- Save - This will prompt the tool to save the fields you have filled in. It does this automatically when you sync or exit, but the button was made before the exit-save, so I just left it intact.
- Sync - This is the magic button. Press it to export your My Decks folder to the Community Decks folder so others can get your decks when the enter your ID. Press it while you have one or more opponents entered and it will find their deck lists and import those decks into your game folder (it will always sync your My Decks folder, whether your have opponents entered or not). If it fails, it should tell you which deck couldn't be synced. If it succeeds, it will tell you that as well.
- Clean - This button will remove all deck wads from your Game Folder except those found in your My Decks folder. Use this after playing multiplayer when you want to go back to only your decks being available. This is automatically done when you press Sync. - I may later include the option of performing this when the program is closed.
- Reset - This button will delete your settings file and and relaunch itself to recreate the settings file from scratch. The only thing retained is your ID. This means that if you want to to try and find your folders again, you can simply click reset to make do that. If your settings file somehow becomes corrupted, this is an easy fix for that. If your ID is what's corrupted (shouldn't be possible, but just in case), close the program, manually delete the settings file (it'll be next to this program wherever you put it during installation), and then relaunch the program. Note that if you get a new ID without the old one being properly deleted, the file will still exist in the Deck Lists subfolder of the CW Decks folder. That means you will not be able to use that ID/Username through Import unless you first manually delete that file.
- PreSync? - Unchecking this will prevent the program from syncing your My Deck folder to your Deck List when the program runs. This operation may be somewhat slow if you have many decks but is only mildly important. Disable it at your own risk if it is taking too long to start up.
More General Description
Basically, once this program is installed, you'll be able to play with any of your decks like normal. This utility is just to help you sync your Game Folder with other people's Game Folders so you can play together. Grab the Community Wad, make some decks with Riiak's Deck Builder, drop those decks into your My Games folder, and find someone else with this tool to play against. Feel free to post in here if you're looking for people to play against. I will say, I don't play multiplayer much, but I hope a few people can find this helpful. At the very least, it'll be VERY easy to convert to 2015 should we ever manage to mod it properly.
If you add a deck, please consider posting it here.
Some notes.
- Upon launching it will do stuff. When you run the program, it'll sync your current My Decks folder to your Deck List file on Google Drive. It'll also remove any wads from your Game Folder except base game wads and your My Decks wads. They're put into a subdirectory in your Game Folder, and they're moved back to your Game Folder when you close the program. This way, you can start up the program and immediately get into multiplayer without having to worry if you forgot a new wad in your folder. Nothing is deleted, only moved, so it should all be safe.
- Google Drive might mess up. One issue I ran into was Google Drive not uploading my Deck List file. This is a problem with Google Drive that I can't fix from my end. You can see if this is the problem by opening the folder in your browser, finding your deck list file there, and seeing if it is the newest copy. If it is not and your Google Drive program won't find and upload it, try deleting the file, watch for GD to catch THAT, and then restore the file (ctrl-z works for this in Windows 8, possibly earlier), and let GD try it again.
- If you generate a new ID file, it will delete the old one. This is to avoid having hundreds of ID files and only ten people using the system.
- This can not truly distinguish between decks and other wads. Therefore, any wad you place in your My Decks folder will be synced. Furthermore, any wads you have in your Game Folder that aren't in your My Decks folder will cause problems. It will only delete a file if it also exists in the Community Decks folder, so if you have a custom wad, it won't delete it. This also means it won't delete the core game wads. (In addition to this, I added in an explicit exception for those files, so they're extra protected from being deleted.) In other words, to use this properly, put in ANY wad you're using, even if it's not a deck file. Just don't put in large files. This is intended to be used with the Community Wad, so you should only need that and RiiakShiNal's Manual Mana functions mod if you want to play with those. Just keep in mind that if you use Manual Mana, you'll be forcing everyone you play against to also use it.
- This does NOTHING AT ALL with directories. If you have a loose wad directory in your Game Folder that someone else doesn't have or that they have a different version of, you will not be able to play against them.
- It will (try to) automatically retrieve your folders.
- Ignore this | Open
Installation
Before you actually use the program, you'll need the Community Decks Folder on your computer inside your Google Drive folder. Open the link, and add it your drive (top right). This will put it in your root Google Drive folder. If you want to move it to a subfolder, that's fine. Once that's done, make sure Google Drive is actually running on your computer. Once it is, wait for it to finish syncing that folder. If you have already added the main Community Wad folder to your Google Drive, then this step has already been performed and you can move on. Just check your folders on your computer and make sure you've got it.
To "install" this, you just need to drop the file somewhere on your computer and run it. The only restriction about where you put the program is that it must be able to write files there (its ini/settings file). That means it cannot go in your Program Files folder. It needs to write files to your Game Folder which means it, too, needs to be not in your Program Files folder. If it is, move steam to another folder (mine is in C:\Games\Steam). (If you've already run the program and then moved Steam, just hit Reset and it'll try finding the folders again automatically.)
When you run the program, it will attempt to find the three paths it needs and give you an ID. If it can't find one of them, type/paste it in (without quotes and without the final backslash). If you want to use a particular ID or name, click Import and type it in. If you haven't already made your My Decks folder, it will ask you if you want it to do that for you. Open that folder and copy/move into it all of your decks (all wad files except for the core files and the CW files that you are using; no files larger than about a MB, preferably [decks are usually smaller than that]). In the program, press Sync. This will make sure all of your deck files are in the CW Decks folder and your Game Folder. Check for Google Drive to finish uploading these, and then you should be good to go. Type in someone's ID, press Sync, wait for it to finish, and then start the game to play against them.