TTLG|Thief|Bioshock|System Shock|Deus Ex|Mobile
Page 2 of 2 FirstFirst 12
Results 26 to 31 of 31

Thread: AngelLoader: New mission loader by Fen (WIP)

  1. #26
    Member
    Registered: Sep 1999
    Location: Portland, OR
    Yeah I for one am happy with the central stand alone app for all game. I am not joking when I say it could be the FenLoader. It truly stands alone in capability, I don't want to get confused with all the loader names.

    Just for a fun cray idea: what if it checked TTLG for new missions, and either vanilla browser viewed it or parsed the links all together on a page. That being said I'd be happy with what is already there for sure!

  2. #27
    I just finally finished coding in the DarkLoader-like multiple-game-aware functionality. Install, Play, and Uninstall is working for both games types*, they both direct to their appropriate folders and everything seems to work fine (but need to test more thoroughly). Next step is adding multiple archive folder functionality.

    *Not Thief 3 yet, because that's a completely different thing that will need at least some amount of unique code, so I'm setting that aside for later, when I've ironed out and tested the general FM management and I'm satisfied everything's working reliably.
    Last edited by FenPhoenix; 7th Dec 2018 at 03:40.

  3. #28
    Member
    Registered: Dec 2007
    Location: Sweden
    Thank you Fen, i'm looking forward to it

  4. #29
    When you happen to release the first version, are you going to place the URL in the original post?

  5. #30
    Member
    Registered: May 2004
    Fen's latest update:



    Lookin' good.

  6. #31
    The current thing I'm tackling is the maintenance of the FM list (looking in installed dirs and archive dirs and putting together a list, or updating the existing list properly if anything has changed). It's pretty boring work that doesn't make for an exciting update, but it's important to get it as robust as possible to minimize the chance of people running into problems - as they sometimes have with any loader - where it gets something not quite right and then they can't uninstall their FM or whatever else have you. This might sound simple, but it's actually rather tricky due to various things. Tech talk ahead:

    In NewDark, when a loader goes to install a mission, it extracts the zip file to a folder in a particular location (specified in cam_mod.ini). So say your Thief folder is C:\Thief, and your FMs folder is C:\Thief\FMs, and you install "Super Great Mission Supreme v.1 Part 1.zip", its installed folder will be:

    C:\Thief\FMs\Super_Great_Mission_Supreme_v_

    Notice certain characters are replaced with underscores and the whole thing has been truncated to 30 characters. This is required by NewDark and this is really the crux of what makes things potentially tricky. And by the way, when I say "required", I mean the 30-character truncation is definitely required, and the character-replacement I'm not sure if or to what extent it's required, but FMSel and NewDarkLoader both do it (and they both replace different sets of characters, argh).

    Another thing you'll notice is that the "Part 1" has been chopped off as part of the truncation. If you have another FM called "Super Great Mission Supreme v.1 Part 2.zip", that would also get truncated to "Super_Great_Mission_Supreme_v_", and now you've got an ambiguous install folder name. FMSel handles this by replacing the last characters of the name with "(n)" where n is a number beginning with 2 and incrementing by one thereafter until it has a unique name. FMSel also places an fmsel.inf file into every installed FM's folder, which specifies both the installed folder name and the original archive name. (Thank god for that, too, it makes things that much easier on me.) NewDarkLoader does neither of these things, so it can actually run into a situation where it overwrites an installed FM with another one that has the same name when truncated. Admittedly that's a fairly rare situation - in my 1098-mission test set, the situation occurs only once - but still, it's something I feel I should handle as best I can.

    Of course, there will be fmsel.ini and NewDarkLoader.ini files for me to import, which should also help with sorting things out the way they should be. But, yeah, this stuff is just really difficult for me to keep straight in my head, so I'm probably overthinking it or something. But I've basically just been doing research, looking at code, and taking notes in preparation to make something fast and reliable. Oh yeah, and it's gotta be fast. The system I've got now is just looping through the the whole cache for every found mission, and it's really hilariously not good at all. It still starts up faster than NDL, but yeah.

    It's also worth noting that not even FMSel is above error when it comes to this stuff. It does make a good attempt to be accurate, but it doesn't go mad with engineering prowess trying to handle every corner case. I've managed to break it by trying, but it's probably unlikely it would happen if you weren't trying, I guess. I'm probably going to take the same tack. I'll have AngelLoader handle any situation it reasonably can, but if things are really messed up I guess I'll just have to give up and offer some kind of fallback.

    But once this mess is done and working well, I can move on to the fun and exciting stuff. How can you have any pudding if ye don't eat yer meat! and all that, eh wot.
    Last edited by FenPhoenix; 10th Dec 2018 at 01:36.

Page 2 of 2 FirstFirst 12

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •