Jump to content
Sign in to follow this  
Radagast.

[Split] Mod Manager -> Mod Downloader + Mod Configurator (Modification, Addons & Maps)

Recommended Posts

  • what "total_size" is used for, can't it be just used the file size when distributed as a .zip?
There's a TODO in the code about it, I'll probably remove it, as there is no use for it currently (and it's probably not the right place to put it anyways).

  • 0ad mod is currently know as public, the dependency should then be named public rather than 0ad (or even better public should be renamed 0ad in game SVN);
There's another TODO for that, but I want to make the code work first and change that later on. (Same with moving files (GUI styles, images, etc) from public/0ad to mod).

Dependencies also work on the modname and not on the foldername, as we can't control that (and I don't really want to do that either).

  • Like 2

Share this post


Link to post
Share on other sites

We settled to finally get rid of the manual total_size attribute in the mod.json.

We integrated a version number.

Dependency checking now includes version number. Allowed are "mod version", "mod>version", "mod>=version", "mod<version", "mod<=version", "mod=version" where "mod version" is equal to "mod=version" and "mod==version".

See aristeia mod.json (mod-info-file) for an example.

Next is topological sort + make manual reordering of enabled mods visible.

  • Like 3

Share this post


Link to post
Share on other sites

Only topological sort left.

leper fixed Atlas in the mod branch. He also fixed some edge cases where the branch crashes which Sanderd17 found while testing.


Manual reordering of enabled mods (to allow for a custom load order, e.g. first load 0ad, then aristeia, then millennium or the other way round).

Share this post


Link to post
Share on other sites

Ok. Great news, leper's C++ part in the newest revision is working again. I must have forgotten to recompile or there were some other filesystem issues.

Also great is that symbolic links are supported. That's a huge feature as it allows to have several copies of a repository checked out (e.g. 0ad_content/ and 0ad_dev/) and still only having each mod (e.g. Aristeia or Millennium) once! Single source principle is our friend.

Share this post


Link to post
Share on other sites

Great!

"mod version" is equal to "mod=version" and "mod==version".

Since there are no compatibility issues, to avoid ambiguity I would suggest to support only a form (=).

  • Like 2

Share this post


Link to post
Share on other sites

I will rethink of removing the other cases. Though in my opinion 0ad 0.0.16 is more natural than 0ad=0.0.16. But we can remove the other cases if you really want it.

Topological sort now is in.

Save Configuration- & Launch/Start Mods- Buttons now are hidden by default and only shown if Auto-Arrange (read: topological sort) has been executed at least once.

If a new mod is being enabled, then Auto-Arrange has to be executed again and thus the Save Configuration- & Start Mods- Buttons are being replaced by the Auto-Arrange button (to clearly show the user what step is next).

Share this post


Link to post
Share on other sites

Since there are no compatibility issues, to avoid ambiguity I would suggest to support only a form (=).

Already suggested that yesterday, and I hope Radagast beats me to it.

The code (apart from some cleanup/review of it) is quite complete by now, so some testing would be nice :)

Share this post


Link to post
Share on other sites

Topological sort now works functionally correct.

We found a solution for the horizontal space problem: now the description is shown at the bottom of the available mods list.

post-15921-0-82600200-1404687481_thumb.j

snapback.png


Since there are no compatibility issues, to avoid ambiguity I would suggest to support only a form (=).

Already suggested that yesterday, and I hope Radagast beats me to it.

Updated some mod info files (Aristeia + Convert attack type + other following) to the scheme you proposed (using =). It is indeed better readable in the mod dependencies column (because there we join all dependencies on " " (space)).

Share this post


Link to post
Share on other sites

Note: Topological sort should be read as auto-arrange function.

Fixed some column misalignment issues.

post-15921-0-76275600-1404688195_thumb.j

Alternative Enable button placement:

post-15921-0-22337900-1404688815_thumb.j

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.

Sign in to follow this  

×
×
  • Create New...