Hi.
I've volunteered to create a basic frontend for this using WPF. WPF is a built-in part of the .NET framework, so there should be no added requirements.
My main idea for the frontend is to do more or less the following:
Basically, attempt to automate the 8-step process currently outlined in readme.txt.
Idhrendur has added me to the list of devs at sourceforge (as "kwsdev"), already, and I'll get something checked in as soon as I figure out how. I'm not used to mercurial (or any distributed version control systems), so I'm still trying to mentally map all the operations to their TFS equivalents.
I have a few questions:
Known limitations:
I've volunteered to create a basic frontend for this using WPF. WPF is a built-in part of the .NET framework, so there should be no added requirements.
My main idea for the frontend is to do more or less the following:
- Attempts to locate game installation paths (using registry lookup)
- Let the user pick a save game using a normal windows file picker dialog.
- A wizard or configuration window that takes the user through all the configuration options currently in configuration.txt
- Do various error- and sanity checks
- Write configuration.txt to disk
- Copy/rename the chosen save game to the working directory
- Run the conversion tool as an external executable
- If successful, copy the converted save game to the eu3 save game directory.
- Launch EU3
Basically, attempt to automate the 8-step process currently outlined in readme.txt.
Idhrendur has added me to the list of devs at sourceforge (as "kwsdev"), already, and I'll get something checked in as soon as I figure out how. I'm not used to mercurial (or any distributed version control systems), so I'm still trying to mentally map all the operations to their TFS equivalents.
I have a few questions:
- Should I create a local repository to work against, or can I treat this as a non-distributed VCS if I want to?
- Does anyone have any strong opinions on whether I create a new branch to work with or work directly in, say, the minor branch?
- According to this post at least some of you guys work using Visual Studio 2010 Express Edition. I was thinking I should add a separate frontend project to the CK2ToEU3 solution, but since this will be a WPF Application/C# project, I suspect the C++ version of VSE might refuse to read it, and complain every time you open the solution. Is that a problem? Alternatively, I could just create a separate frontend solution. There will be no shared code, so it shouldn't really matter as long as the frontend knows where to find the converter .exe. I'm not sure how sourceforge updates the downloadable files based on the source code, but if it's automated, we might need to adjust some output paths or something to make sure the frontend .exe gets dumped in the same folder as the converter itself.
Known limitations:
- My current prototype successfully locates the game installation paths for both games assuming they've been installed through steam. It relies on the game's SteamID to do this, so if either game is released with another steamID, it won't work. I'm not sure how likely this is, but one could imagine that, say a standalone "Gold Edition" or something is created, that doesn't require the original game to run (thus presumably requiring a new steam id), in which case the frontend will be unable to identify it automatically without code changes. In a later version I might move these settings to a configuration file instead, but we'll see.
- I only own the steam versions of these games, so that's all that's located automatically at the moment. I'll try to add support for the non-steam versions as well, but probably not for the initial version.