Skip to content

Weidu Mod Manager

JothayJothay Member Posts: 11
edited April 2013 in General Modding
Hi, if you have ever played World of Warcraft and made use of the Rawr Project (a character optimizer found at http://rawr.codeplex.com/) you might recognize my name. Thanks to the Overhaul team releasing this plethora of nostalgia that is BG:EE I'm coming back to this game 13 years after I last played it. I ran through BG:EE over the course of like 50 hours in 6 days, now I find out about this whole modding community for the game that I never knew existed!

After playing around with different mods and learning what a weidu installer is, I have found that there are literally dozens of different mods out there and a somewhat legitimate fear of one mod screwing up another if I'm not careful. My question to the community is: Has anyone made a mod manager for BG1, BGEE and/or BG2? I ask because if there isn't one, I would like to make one.

Something that will perform the following actions (at minimum):
1. Provide the user a list of all known mods (over various sites) including their detailed (maybe even more detailed than was originally written) descriptions, file sizes, compatibility impacts with different mods and versions of the game
2. Allow the user to download the mod directly from inside the program, or place it in a download queue with multiple mods once your decisions of what to include are made
3. Install the mod silently (no command prompts) with selected install options
4. Re-install and Uninstall mods and if that would create conflicts, re-install other mods as necessary to prevent in-game issues

Additional, optional actions:
1. Allow the user to select the install options for the mod, maybe even work with the original developers to break a large fix/pack etc mod up so that they can pick and choose the parts they want.
2. Provide a nice clean UI that breaks out every part of every mod so instead of selecting mods, you select what you want your game to do and it will install exactly what you want from that (so instead of having to look up The Long Road for Irenicus, the user would just select New Party Members > Irenicus and that would have details about where it came from, how it works, what you need to do in game to trigger it (like going to a specific zone) etc
3. Cross-Platform compatibility so it can be installed to Win/Mac/Linux. I have worked a lot with Qt4 projects (which is a cross-platform design kit) and can readily make Windows and Linux versions but Mac versions I'm a bit light on. I could do this with a Silverlight built (like how Rawr is made) but it would only work in Windows and Mac and there would be a lot of file access issues trying to touch your program files folder. I could whip this mother up pretty quickly in straight C# using a WPF executable but that would only work in Windows with a possibility of Linux users having Mono or something run it there.
4. Character and Save file editing. Credits to the Shadowkeeper and EE Keeper guys but I don't really like their UI and I would rather have something that also directly correlated with mods (showing how they made changes, single clicks to revert between vanilla, mod a, mod b, etc.)
5. Combining all the different "fix packs" that are included in various mods to be a single action for the end user so if they just want vanilla with bug fixes, they can do that

Side-note: While working on the source code, I will either GPL or MIT licence it and post it to Codeplex.com so that community developers can join in and work on it with me. I would even be willing to use that as a hosting point for source codes of community mods, allowing developers a place to save revisions of their code safely and ensure better cooperation between cdevs for cross-mod compatibility.

Comments

  • JothayJothay Member Posts: 11
    Forum Admins, if possible, could you add a Poll either to this thread or a related thread asking which platform would most benefit from having this as outlined in Optional #3 above?
  • JothayJothay Member Posts: 11
    reserved
  • JothayJothay Member Posts: 11
    edited April 2013
    Hmm... that certainly shows all the mods, lets you control the installs and gives basic descriptions but the list is so huge and broken out its really hard to figure out what all is in there. It does give me ideas though now that I have the true scope of how many mods there are out there.

    What I would probably do different is make a more clearly broken out "guided" install process like section 1: bug fixes, section 2: things that make the game easier, section 3: things that make the game harder, section 4: Major Campaigns (IWD inserts, BG1 inserts, etc), section 5: NPC Mods and so on

    This evening I've been messing around with character management GUI (see attached). I had to research a Dock Panel system for tool windows in WPF and then added an expression dark theme to it (still needs work so those white layout parts aren't white).
  • DarkersunDarkersun Member Posts: 398
    A Modtool like the Nexus Mod Manager would be awesome.
    Maybe with an option to check if Mods override strings or parts of each other.
  • GriegGrieg Member Posts: 507
    It would be really tremendous amount of work especially gathering all mods and making proper descriptions and keeping it up to date. It would be nice if you think about adding support of different languages.

    You could also check this out: http://forum.baldursgate.com/discussion/6100/creating-a-modding-tool/p1 it is modding tool hopefully not abandoned that while developed could be synchronized with your installer that automatically adds newest versions to your library it would be pretty handy and if you had everything in one program it would be really amazing.
  • TimTim Member Posts: 38
    Apparently Dabus the guy who is doing the Big World Setup for ages now is at the moment trying to implement BGEE into the BWS. The problem is though... many Mods I saw here are not working with Weidu. For example the Gui Mod from Archaic is working with an external installer when I see that correctly.

    All Mods within the BWS can be found in this linklist http://baldurs-gate.eu/bwpmods.php the description to every mod... is in german. So perhaps not the perfect way for all of you.

    This linklist is converted to the input files for Big World Setup automatically every 1 hour. So when the Kerzenburg Community stumbles upon a new Mod it will be entered there and with the next linkupdate of BWS you will also get that in the setup.

    Newest BWS can be found here: http://dabus.bplaced.net/BWP/bws.php or here: http://baldurs-gate.eu/downloads.php?id=2

    Cheers
    Tim
  • TimTim Member Posts: 38
    Yep... I would sign Kaelorees posting. Dabus wanted to resign work a couple of years ago and BWS was abandoned. We tried our best to maintain it ourselfs but we failed as noone was able to get the updates in it correctly so that it really worked. Luckily Dabus came in again and is motivated to go on. Perhaps get in touch with Dabus and work together on some neat addons to BWS. :)
  • revaarrevaar Member Posts: 160
    Fwiw, this sounds like a fantastic tool for fools like myself who can't seem to get mods installed by ourselves. I support you 100%!
  • [Deleted User][Deleted User] Posts: 0
    edited April 2013
    The user and all related content has been deleted.
  • smeagolheartsmeagolheart Member Posts: 7,963

    BWS, as great as it is, failed miserably when Gibberlings3 was down for a couple months. And what about how mod updates affect compatibility - e.g. when 1PP moved to v4 and it broke compatibility with Item Revisions...

    I wouldn't blame G3's long temporary unavailability of downloads on BWS by any stretch.

    Many mod authors complain if you try and host their mods on other than official sites AND this exactly happened when people tried to mirror the G3 mods. A difficulty us mod users had was G3 eventually put up an official G3 mirror which had mods that were sometimes several versions old on it while the main site is down.

    I ama long time BWS user and I think it's super great. Recently, it's added support for PST and IWD. How cool is that?
  • The user and all related content has been deleted.
  • JothayJothay Member Posts: 11
    To the concerns of making it too "black box" for the end user, the way that I want to do it would be explaining what all is changing (down to spell by spell) if the user wants to drill down into the info. Plus, the idea is to make it so that you actually *can't* fubar your install by blocking conflicting packages. And even, as we determine there are conflicts, work with the devs of each to say hey, that would cause problem X, can we come to a solution that would benefit both parties. Like if they both want to modify magic missile so that it caps at something higher than 5 missiles. dev a wants it to be 6 because that's what his major campaign mod has and dev b just has a "cool things to do with spells" pack that caps it at 7. This would be a conflict so contact devs a and b and say, which one can you both agree on? Can we take the spell mod out of dev a's if its not important to his campaign and let dev b's thing take control?

    I realize this is long-winded and only one example out of a possible thousands and there are many human factors that could result in NO I WONT DO THAT YOU ______!!!@#!#!! but hey, I somehow still have some faith in humanity.

    Of course, now that I've just written that out, I almost wonder if this tool could just turn into a straight up editor for original and mod files so we can manually fix the conflicts and send them back to their devs that way, at least for stuff that is truly conflicting for no real reason. I definitely think that would work best for the Bug Fix mod, since that's really just for fixing animations, typos, etc.

    If someone would be so kind as to get a list of each of the tool maker dev's contact info (either a PM on this site or their email address) I'll draft a point out to see if we can share source code and cull things down. Maybe I can work directly with BWS to just redo their UI so its more user friendly and then expand it to things like what shadow keeper does, etc. In the meantime, I'm gonna keep futzing around with my own UI and post it so people can see what I mean by pretty UIs :) (UI design is actually my day job)
  • JothayJothay Member Posts: 11
    Ok, now I'm just throwing spitballs, I tend to ramble when I'm thinking things out...

    Anything that uses a non-weidu installer I will ignore completely and state that it could fubar your install if you use it. I'll contact that dev to see if we can "weidu-ize" it to support it.

    I think part of what I have in mind is to do like a "Diff vs Base Install" on every mod I find, so I know exactly what has changed, then in a spell browser for example, I can click on Magic Missile and see what mods intend to modify this spell in any way, let the user choose which one they want, and build it into the mod application.

    I own http://jothay.com and have the ability to store and host mods (I could do just about anything with the site I want).

    Expanding the Diff vs Base Install concept, basically the tool would become an IDE for making your own mods, by taking the parts you want from other dev mods, like the BG1 import, turn it into a single weidu and just run that, each time having the tool revert your install to base, then making a new custom weidu and installing that. I think with that level of capability, managing the mods would become largely a piece of cake, if a little time consuming, because you could literally see every change the dev's mod intends to make and make a detailed summary. I'm familiar enough with some reporting tools that I could generate reports that show conflicts, resolve as needed, generate a new report... rinse & repeat.

    One thread I saw was asking for some way to make custom Dialogues? Can someone explain what the need is to me? I could probably whip something up for that without too much trouble.
  • JothayJothay Member Posts: 11
    edited April 2013
    Another spitball, I swear I will combine all these features into the main thread sometime in the near future):
    As part of hosting SVN for devs, set up nightly builds of all mods and move them into the hosting center (whatever that is) so that users never download an old revision mod. Maybe this means making it a requirement that if you want your mod supported by the tool you have to put your source code up there? As changes are made using this IDE style tool, you can see if something you want to change would make a conflict and have the option of preventing it in the first place.
  • LiamEslerLiamEsler Member Posts: 1,859
    The problem is that conflicts aren't as simple as "these two mods patch this file"--most of the time, they'll both patch the file in a completely safe and compatible way. Sometimes, however, there might be something that goes wrong or isn't intended, and that's very, very difficult to detect.

    Another example is dialogues--state weighting is important in compatibility, and is the reason many mods must be installed in a certain order. Unfortunately there's no way to tell, mechanically, what that order should be; there's nothing in the code to indicate what mod dialogues should be weighted more heavily/less heavily than other mod dialogues.

    I'm all for a mod managing tool, but you'll need to find ways around these issues to make it work--the only thing that has succeeded thus far has been a hell of a lot of user input, and I can't really see that changing.

    The other thing is, I could be reading your posts wrong, but most modders won't let you host their mods on your server. And many modders would be unhappy putting their source on an SVN, I think, but I could be wrong there.
  • JothayJothay Member Posts: 11
    Can you give me an example (or point me at a link) of state weighting for dialogs? I think I need more context on what this entails to properly understand the overarching issue.
  • JothayJothay Member Posts: 11
    I sent a message to Dabus on Spellhold's forums asking him about this, we'll see what he says.
  • JothayJothay Member Posts: 11
    Ok, Dabus seems cool with me doing a front end, so long as he doesn't need to do much of anything. He plans to maintain BWP as-is. I will make sure that he gets full credit (which I was planning on anyway), there are no new costs to end users (like paying for the app, which I wasn't planning on anyway), I'm not going to add any advertisements (which I wasn't planning on anyway).

    Once I have a Qt (for cross-platform) build up and running for Windows, I will take community submissions on what changes have to be made for OSX and Linux clients (meaning which mods don't work where) so that I can flag mods in the UI to only show up in those OS's.
  • mlnevesemlnevese Member, Moderator Posts: 10,214
    A cross-platform BWP would be really an amazing accomplishment.
  • LiamEslerLiamEsler Member Posts: 1,859
    Super like. Making use of the BWP would be a fantastic way to go about it. :)
Sign In or Register to comment.