don't click here

SA2/SADX Mod Loader

Discussion in 'Engineering & Reverse Engineering' started by MainMemory, Aug 4, 2013.

  1. Fred

    Fred

    Taking a break Oldbie
    1,563
    117
    43
    Portugal
    Sonic 3 Unlocked
    Hmm, I'll check it out.

    Those are all excellent points.

    Thanks friends.
     
  2. I noticed a short while ago that the lens flare effect that normally happens in Emerald Coast didn't appear. I disabled the mods that I was using one by one in order to determine which one was preventing it from appearing, but not even disabling the all of the mods that I was using fixes the issue. Uninstalling the loader makes the lens flare appear again. I don't know whether this oddity is due to the mod loader itself or if it's something that only I'm experiencing.
     
  3. SF94

    SF94

    Tech Member
    The lens flare seems to be a bit finicky, particularly with hud scaling enabled. Using the window resize branch however, it's rare to see it disappear ever (if not just occasionally place the sun on top of Sonic due to some kinks I need to work out), so perhaps when that gets merged into master it will alleviate the issue.
     
  4. So, I remember now why I haven't played this. I'm assuming my copy of SADX is a bootleg (I bought the Steam version but I don't feel like using that at all). If I don't use the patch, it tells me the wrong disc is inserted (regardless of whether I put in disc one or two). SADX Mod Loader doesn't seem to disable the disc check. I'm not sure what to do now :(
     
  5. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,742
    338
    63
    SonLVL
  6. E-122-Psi

    E-122-Psi

    Member
    2,470
    612
    93
    Hello I'm having new problems with the Mod Loader on my finicky laptop. It's saying it can't start because MSVCP140.dll is missing from my computer.

    Is that file connected in anyway to SADX's data or is just my laptop failing again?
     
  7. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,742
    338
    63
    SonLVL
    MSVCP140.dll is part of the MSVC 2015 redist required by the mod loader and mods. If you had it installed before, maybe something corrupted the install or uninstalled it by accident.
     
  8. E-122-Psi

    E-122-Psi

    Member
    2,470
    612
    93
    Where can I reinstall it?

    EDIT: I've heard this is some sort of recurring problem with certain games due to some update or redirectory, but also that many 'fixes' are untrustworthy. Is there any way to just find the stupid file on my computer?
     
  9. Turbohog

    Turbohog

    Member
    927
    118
    43
    Just install this:
    https://www.microsoft.com/en-us/download/details.aspx?id=48145
     
  10. E-122-Psi

    E-122-Psi

    Member
    2,470
    612
    93
    Ah, there we go. Thanx everyone. :D
     
  11. BlazeHedgehog

    BlazeHedgehog

    A "Community Enigma"? Oldbie
    1,467
    11
    18
    Okay, so, maybe this is a dumb question. Wanted to try out the new Dreamcast Levels mod, realized my version of SADX was lost on my old computer when I built this new one and installed Windows 10. Dig out my ISOs, get it all reinstalled, everything setup, install the Mod Manager

    "Disable CD Check" doesn't seem to be working. Hitting "Save and Play" just makes SADX complain about the wrong CD being in the drive. I've mounted disc 1, disc 2, unmounted them completely, doesn't matter, it complains about it being the wrong disc (or there not being a disc at all) even though it shouldn't even be checking for a disc anyway.

    Installing a no-cd crack causes the Mod Manager to complain that I have the wrong executable (that's fair), but there doesn't seem to be any way to get the mod manager to actually disable the CD check? Like, I'm pretty sure I have the right version of SADX here. The mod manager seems perfectly content using the clean EXE I installed from the ISO, it's just not applying the CD check skip and otherwise can't be run at all. Any ideas where I'm going wrong?

    I'm mounting my ISOs with Daemon Tools 10.4
     
  12. E-122-Psi

    E-122-Psi

    Member
    2,470
    612
    93
    I do have to use an older laptop so that might be your problem. My newest one for some reason won't load it at all, with or without Mod Loader. Not even the mentioned error messages, just nothing happens.

    Since the game was made for Windows XP I suppose compatibility issues will occur.
     
  13. BlazeHedgehog

    BlazeHedgehog

    A "Community Enigma"? Oldbie
    1,467
    11
    18
    Well, I'm king idiot, I scrolled up and saw somebody else had the exact same problem as I did with the CD check -- and the linked, fixed EXE did the trick.

    The only problem now is that when I launch SADX, now Windows is constantly asking me the "Are you sure you want to let this program modify your HDD?" warning, and the Mod Manager throws up an error about "WaitForInputIdle failed." Which are annoying, but not showstoppers.
     
  14. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,742
    338
    63
    SonLVL
    The mod loader's CD check disabling does work, I use a completely unmodified exe and it runs without the disc in. I think the mod loader's version check is not as accurate as it should be, it seems to confuse the EU version for the US version.

    As for the warning message, check the EXE file's properties for an "Unblock" button.
     
  15. Before I posted here I dug up a torrent for a crack, and the mod loader complained that it wasn't the right version. Sooooo, I deleted it, reinstalled SADX and asked here :V. I don't want to have a disc in my drive at all
     
  16. Turbohog

    Turbohog

    Member
    927
    118
    43
  17. SF94

    SF94

    Tech Member
    The SADX Mod Manager now has mod updating functionality!

    For mod developers who would like to provide automatic updates, they can do so by using the GitHub release system, or by using a self-hosted directory containing the mod's files directly. The New Mod dialog has fields to configure these features when you first create your mod. I'll detail how these methods work and how to add these fields to existing mods below.

    [​IMG]

    GitHub Release System

    This method uses the GitHub API to check the latest available release for updates. The Repo field defines the username and repository that the mod is hosted in. For example, for my Dreamcast lighting mod, this field would be "sonicfreak94/sadx-dc-lighting" (without quotes; case insensitive). The Attachment field (known internally as the Asset field) defines the name of the attachment that will be present on each release. To use the Dreamcast lighting mod as an example again, it would in this case be "sadx-dc-lighting.7z" (without quotes; case insensitive).

    To add this functionality to an existing mod, add the fields "GitHubRepo" (same as the Repo field) and "GitHubAsset" (same as the Attachment field) to your mod's mod.ini file with the information described above. For example:

    This method requires that a "mod.manifest" file is included in the release archive. This will be detailed below.

    Self-Hosted Directory (aka Modular System)

    This method will only download individual files as they've changed as defined by "mod.manifest" (again, detailed below), and is ideal for large mods. It requires the user to self-host their mod's content in a directory on a web server. The "Directory URL" field should point to the directory which contains the mod's "mod.ini" file and "mod.manifest" file.

    To add this functionality to an existing mod, add the field "UpdateUrl" to your mod.ini with a valid url pointing to your self-hosted directory.

    What's this mod.manifest crap about?

    mod.manifest is a manifest of the files contained in your mod. It contains information like their file name and path (relative to the mod's directory, of course), file size, and checksum (sha256). It's used to track file additions, modifications, and removals. Its presence is required for all updatable mod releases. You can generate one for your mod by using the following menu:

    [​IMG]

    It will give you a stern warning about only doing this for mods you've developed, because if used incorrectly, it could mean that one could, for example, accidentally include their mod-specific save data in the mod manifest. This would cause those saves to get deleted upon next update because they will be detected as deleted from the latest version.

    In any case, this will prompt you with a dialog which you can use to manage the files you'd like to have tracked in your mod.manifest, and it will place the resulting mod.manifest in your mod's root directory (where mod.ini is).

    For the average user, you can see there's some options available to you: Manual update checking, integrity verification, force updating, and even uninstallation. Pretty convenient if you ask me!

    The main window has also received a bit of re-organization to facilitate these new options.

    [​IMG]

    Here you can configure automatic update frequency for both the mod loader itself (which will eventually be re-implemented so that it can download and apply its own updates like mods can) and mods. By default, it checks for updates to the mod loader and installed mods weekly.

    When mod updates are available, you will be prompted with the following dialog:

    [​IMG]

    Using this dialog, you can select which mods you want to update, or just ignore the update all together.
     
  18. SF94

    SF94

    Tech Member
    I heard you like features, so now you can dynamically resize the sadx window and press alt+enter to toggle fullscreen

    http://www.youtube.com/watch?v=hNCpOhuaD44
     
  19. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,742
    338
    63
    SonLVL
    It appears that the window resizing feature causes performance drops on some systems, and the initial build had that performance drop even with the feature disabled. If you notice framerate drops, update the mod loader and disable the "Resizable Window" feature.

    SADX Mod Loader now forces custom resolutions in order to fix some issues with mod initialization, but I've added a dropdown with all of SADX's presets and more.
    [​IMG]
     
  20. SF94

    SF94

    Tech Member
    The Mod Loader has gained a couple major features! I'll start off with the most noticeable (and most requested):

    [​IMG]

    Full menu scaling! With HUD scaling enabled, ingame menus are now correctly scaled to match.

    Additionally, menu background scaling has been implemented. This enables aspect-correct scaling with two modes: fit and fill. With "fit" mode, the background will scale down so that it is entirely visible within the game window. With "fill" mode, the background will zoom to fill any potential gaps at the edges of the screen (i.e no letterboxing). The screenshot above demonstrates fill mode. These modes can also be configured for in-game FMVs. You can disable this functionality at any time using the two new dropdowns in the Graphics tab of the Mod Manager. Using the "Stretch" setting restores default background/FMV scaling behavior.

    [​IMG]

    The other feature is a new method of using and packaging texture packs.

    I've developed a (very simple) custom archive called PVMX which works similarly to PVMs, but it has all the bells and whistles that a standard folder-based texture pack does (PNG, DDS, arbitrary resolution, etc). It should improve performance considerably for mods that use texture packs primarily. The reason for this is: reading data from a single file (even in bulk) is faster than reading data from many individual tiny files, particularly on mechanical hard drives. The suite of Dreamcast mods already uses this functionality.

    You can manage PVMX archives using this utility. It takes an existing folder-based texture pack and generates a PVMX archive from it. PVMX archives are to be placed in your mod's "textures" folder just like standard texture packs.

    Note that PVMX archives can only be used for texture packs that replace PVMs. It doesn't work on individual PVR texture replacements (the ones just sitting in the system folder).