Jump to content
juhaas

WoT Mod Pack Installer+Designer (WMPI) (for mod pack creators)

Recommended Posts

So I got bored few days ago and while working on something vaguely related I decided to make myself some kind of mod pack manager cause I'm sick of copying files back and forth when dicking around with various mods. But then things have kinda spiraled out of control and I put way too much effort into this. Much work is still to be done but I thought it maybe worthwhile to peddle it to some of you mod pack put-togethers. So if any of you would indulge me in taking this for a spin, I'd really appreciate it.
 
Core features:

  • Automated mod pack update*
  • Individual mod installation selector
  • Automatic install of dependent mods
  • "1-of" mods
  • Mod installation hierarchy
  • Game client version detection
  • Mod install backup/restore
  • Disable/Enable all mods w/o killing them or need to reinstall
  • Links to mod pack author's site as well as creators of included mods
  • Seamless client region switcher (must be provided by mod pack developer)

In other words, it has tons of good shit in it. The work is in perpetual progress, documentation is lacking and sometimes bugs creep up, but now, there is a dedicated designer for it as well, so no more manual edits. I've been using this for about a year now and it's fucking awesomesauce, even if I do say so myself.

This is not really aimed at those who put out huge mod packs like Aslain or similar. Designer management features could probably cope but the installer is a bit lacking in both optional feature selection department and appropriate for huge packs layout .

I won't spend much time explaining things here in great detail, I might update this post from time to time (though interest seems nil so I might not bother, who knows). Below is a pictorial of the installer and designer so you can see what's involved. If you wish to give it a try, which would be much appreciated download the following archive and have at it. 

 

Mod Pack Designer - Mod Pack Definition Management

05Kq0i6m.pngODYaQqDm.pngxChV90gm.pngIuvr53mm.pngypx0Q7fm.pngmcGgKG0m.png     8xEFCCzm.png

 

Mod Pack Designer - Mod Definition Maintenance

NxfX5ZWm.png0efAbW1m.pngHCtz3sKm.pngFTGlGB5m.pngO6QVTq3m.pngOwFdSG9m.png

 

Mod Pack Installer

eUPXqBem.pngbfKi63pm.pngEHjbkr7m.pngZYCWB0Om.pngqxYq6lOm.png2bH2bhdm.pngTuAFhS6m.png
 

Minimum Requirements:

  • Windows 7 / 10
  • .NET 4.5.1
  • Administrative rights on local machine may be required

Feedback:
If you please.

Share this post


Link to post
Share on other sites

Seems like a really nice piece of work ;)

 

I am wondering.. how do you deal with common file overrides? E.g. "camera_node.pyc" (or something like that) or "init" is included in most of the mods and when I start installing different pieces, I often have to overwrite these. I actually do not know if they are being used and if overwriting makes any difference... did you deal with this in some way?

Share this post


Link to post
Share on other sites

Seems like a really nice piece of work ;)

 

I am wondering.. how do you deal with common file overrides? E.g. "camera_node.pyc" (or something like that) or "init" is included in most of the mods and when I start installing different pieces, I often have to overwrite these. I actually do not know if they are being used and if overwriting makes any difference... did you deal with this in some way?

 

I often wondered about that myself and do just what you do. I don't know much about the actual modding part, but I do recall once viewing the actual code behind those files and it seems like it's a pretty generic information that has probably to do with the game more than with the mod. With multiple mods obviously there is no way to keep those files per mod, so overwrite it is.

Share this post


Link to post
Share on other sites

how will the modpack know what mods you have?

 

It won't. Right now this falls under "still much to be done" category. I have some ideas on how to implement it, just haven't gotten around to it yet. Although "what mods you have" pertains only to mods installed by the mod pack thru WMPI, so that your choices are preselected in list accordingly. There is no reliable way of knowing what stuff you've installed manually or thru some other process and I wouldn't even want to get into it.

Share this post


Link to post
Share on other sites

Not sure what do you mean by that. Yes, this is a mod pack installer (not game-wide mod manager) geared towards mod pack creators to distribute their packs and save users from reading thru readme files and copy/paste hell. You would not use this tool to arbitrarily manage or install your own set of mods.

Share this post


Link to post
Share on other sites

This needs a mod preview similar to Aslains and faster than OMCs.

OMC has a similar installer to this (Wix maybe?) but the previewing of mods (just showing a few pictures) is painfully slow to load. OMC has multiple images for many mods but is extremely slow to load but, Aslain's only has one image and shows it immediately.

 

I know this is a boredom reducing exercise but, have you considered looking into other tools that already kind of do this for individual mods like Curse and NexusMods? Either for gleaning information for your installer or seeing if you can use their pre-existing infrastructure to accomplish the same thing? For example, NexusMods uses an xml file to store what files are from what mod and what overwrote what. I think they do that for when files were overwritten and those overwriting mods are uninstalled, the previous mods files are put in place.

 

 

Are you planning to include something to make the mod pack creation easier for the mod pack owner? With the flurry of activity that occurs immediately after lunch, there's a need for the mod pack installer to be easy to manipulate.

With that question asked: why is the mod pack owner required to create a file for every mod their using? Could the mod pack installer creation screen combine all the information provided into a single file? 

 

Last but not least, do you plan on having the source hosted somewhere that others may be able to help with this?

Share this post


Link to post
Share on other sites

This needs a mod preview similar to Aslains and faster than OMCs.

OMC has a similar installer to this (Wix maybe?) but the previewing of mods (just showing a few pictures) is painfully slow to load. OMC has multiple images for many mods but is extremely slow to load but, Aslain's only has one image and shows it immediately.

 

Preview images are a bit of a troublesome concept. Not because they're hard to implement but because of their possible size and quantity. When gone overboard, as you've noticed things can get a bit or quite sluggish. All because pack creator decided that including 5 25MB full HD images was a good idea. It either makes the pack huge or download long.

 

OTOH, yes, it is useful and technically it is already in WMPI just not fully implemented and enabled cause I've no idea how to frame them withing the UI yet.

 

OTOH still:

  • pack creators can (and should) include mod info page link in the pack descriptor file. It is then displayed and clickable in the Mod Pack Info tab. Much more information and previews about the mods included in the pack can then be conveyed
  • each mod descriptor file can be provided with the same thing, with the same behavior for each displayed mod.
I know this is a boredom reducing exercise but, have you considered looking into other tools that already kind of do this for individual mods like Curse and NexusMods? Either for gleaning information for your installer or seeing if you can use their pre-existing infrastructure to accomplish the same thing? For example, NexusMods uses an xml file to store what files are from what mod and what overwrote what. I think they do that for when files were overwritten and those overwriting mods are uninstalled, the previous mods files are put in place.

 

I looked into other tools and none of them do anything I remotely want or think is useful for someone creating their own WoT mod pack for distribution. As for the subject of installers, likes of Curse or NexusMods try to be universal tools for all kinds of games. I'm only interested in WoT. The game layout is known to me and I'm neither using not looking to use any kinds of 3rd party "installer". The primary goal of development of this is that it does not upset the game, can be hacked, modified and recovered from manually with (if necessary) minimal use of Windows Explorer only. Yes it creates and requires (or prefers) few special files but that's about it.

 

Mod installation tracking is already in WMPI. Its sophistication is limited because of the nature of modding infrastructure. I could certainly go bat shit crazy with that but it's kinda pointless and in then could prove more of a problem than solution. WMPI tracks what mods have been installed for a pack, and then depending on the quality of mod descriptors indicate dependencies, new or obsolete versions. If you mess about manually around the managed res_mods folder this obviously all goes to crap.

 

 

Are you planning to include something to make the mod pack creation easier for the mod pack owner? With the flurry of activity that occurs immediately after lunch, there's a need for the mod pack installer to be easy to manipulate.

 

Yes, it's already in the works although seeing how there seems to be no real interest so far, it hasn't been a priority.

 

 

With that question asked: why is the mod pack owner required to create a file for every mod their using? Could the mod pack installer creation screen combine all the information provided into a single file?

 

The reason for descriptor file for every mod is that it is actually a better way to go. Things can then be managed independently and, yes, more easily. Of course, there is no creator's management tool yet so this may look like a daunting task but it places very little demand on complexity of structures and increases the flexibility and reliability of the program itself. Want to add a mod to the pack? Just drop it in with the descriptor, boom, you're done. Remove it? Just remove it. The descriptor file is part of the mod, not the mod pack. And it is really simple enough to manage even with a Notepad++ (for now).

 

Having said that, WMPI will attempt to read and present the information about the mod even lacking the descriptor. Kills the idea of having them properly organized and legible but I guess it's better than nothing. Part of the problem I have with all those mod packs is reading thru the horrid ReadMe.txt files.

 

 

Last but not least, do you plan on having the source hosted somewhere that others may be able to help with this?

 

If someone wants the source code they can have it (once it amounts to more than WIP) but I'm not looking for any random coding help at this point.

 

 

:thumbup:  thanks for the feedback

Share this post


Link to post
Share on other sites

Had a play with this and as much as I love it it doesn't quite do the job for me :(

 

Either that or I'm not using it right!

 

It will easily allow me to get users to select whether they want the zoom mod/damage panel or not, but I have a fair few customisation options for each..

 

I then have a huge list of customisable xvm configs which I do not wish to be updating individually - I could just it would be very time consuming!

 

 

Great little tool though and hopefully others will find a use for it 

Share this post


Link to post
Share on other sites

Might have to look into this again to see how easy it would be to set up custom options such as included in my damage log...

It wasn't great for my modpack at the time but maybe smaller things would be ok...

Share this post


Link to post
Share on other sites

It can actually handle quite a bit but for things such as yours there are some quirks. As I've said there is no documentation and some little things are not handled in GUI, like conditional file copy/delete/replace, file content modification and so on. Options for individual mods are not being handled at all, there's no UI for that, though the capability is there. For instance installing XVM with certain user-selected options. It could of course be implemented but as I've noted there was not much interest so I've pretty much implemented features that I used in my own pack management and distribution.

Share this post


Link to post
Share on other sites

An option to specify a Git(hub) repo for individual mods would be good (especially for weighty mods like remodels, where the user only wants to download exactly what they need), as would a shared dictionary of mods which would enable the Designer app to offer autocomplete on certain fields and standardize the ID field (nobody likes manually creating unique IDs).

Edit: I'd be happy to contribute to development if you don't mind me figuring out the language as I go along.

Edit the second: I'd also be learning my way around a new IDE, apparently. No plugin for Netbeans.

Share this post


Link to post
Share on other sites

#individual mod download
I thought about it but decided it was too much effort for too little gain. Days of dial-up are over so while nice touch it really provides little benefit in most circumstances. I suppose there could be some large mods where this could be useful, I just didn't have time to spend on this aspect given everything else.

#shared dictionary
Not really sure what you mean by that. As for entering unique mod IDs, c'mon gimme a break, you do it once in a blue moon, I have to say this never struck me as something necessitating an automation.

But hey, have at it. You can get the source from repo
https://pl3.projectlocker.com/WebsterImage/WMPI/svn
user: guest@mail.com
pwd: 123456

You'll need:

  • SVN client, like Tortoise for example, you won't be able to check-out/check-in code but you can Export from Repo Browser
  • VS 2013 (some needed tools don't work yet in later versions)
  • Python 2.7
  • A tool to manage Res files (which I have to get installer, so later)
  • PowerShell v5

I think that's about it.

Share this post


Link to post
Share on other sites

Yea, I know, the software needs an update

I don't know what the new /mods directory is for, possibly as indicated for "packaged" mods. The old /res_mods structure still works just fine.

Share this post


Link to post
Share on other sites

Your program get blocked every time I open it. It shows 

"Searching forgame client location

Scaning local drives [C:\]..."

But mu game is installed on disc E:, program crashes because it doesn't find anything. Can you fix it, or how can I fix it?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...