Mania Mod Loader

Discussion in 'Engineering & Reverse Engineering' started by MainMemory, Sep 1, 2017.

  1. Endgame

    Endgame

    Formerly The Growler Member
    How do you prevent Mania from auto-updating again? The properties>automatic updates doesn't have a "never update this" option to it .

    I keep getting a "start Index cannot be larger than length of string" error when I try to open it (I've downgraded Mania BTW).

    [​IMG]

    The details are "spoiler'd"

    See the end of this message for details on invoking
    just-in-time (JIT) debugging instead of this dialog box.

    ************** Exception Text **************
    System.ArgumentOutOfRangeException: startIndex cannot be larger than length of string.
    Parameter name: startIndex
    at System.String.Substring(Int32 startIndex, Int32 length)
    at ManiaModManager.MainForm.LoadModList() in E:\Documents\GitHub\mania-mod-loader\ManiaModManager\MainForm.cs:line 72
    at ManiaModManager.MainForm.MainForm_Load(Object sender, EventArgs e) in E:\Documents\GitHub\mania-mod-loader\ManiaModManager\MainForm.cs:line 39
    at System.Windows.Forms.Form.OnLoad(EventArgs e)
    at System.Windows.Forms.Form.OnCreateControl()
    at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
    at System.Windows.Forms.Control.CreateControl()
    at System.Windows.Forms.Control.WmShowWindow(Message& m)
    at System.Windows.Forms.Control.WndProc(Message& m)
    at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
    at System.Windows.Forms.Form.WmShowWindow(Message& m)
    at System.Windows.Forms.Form.WndProc(Message& m)
    at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
    at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
    at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


    ************** Loaded Assemblies **************
    mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2053.0 built by: NET47REL1
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
    ----------------------------------------
    ManiaModManager
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/Steam/steamapps/common/Sonic%20Mania/ManiaModManager.exe
    ----------------------------------------
    System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2053.0 built by: NET47REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
    ----------------------------------------
    System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2053.0 built by: NET47REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
    ----------------------------------------
    System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2053.0 built by: NET47REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
    ----------------------------------------
    System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2053.0 built by: NET47REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
    ----------------------------------------
    System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2053.0 built by: NET47REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
    ----------------------------------------
    System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2053.0 built by: NET47REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
    ----------------------------------------

    ************** JIT Debugging **************
    To enable just-in-time (JIT) debugging, the .config file for this
    application or computer (machine.config) must have the
    jitDebugging value set in the system.windows.forms section.
    The application must also be compiled with debugging
    enabled.

    For example:

    <configuration>
    <system.windows.forms jitDebugging="true" />
    </configuration>

    When JIT debugging is enabled, any unhandled exception
    will be sent to the JIT debugger registered on the computer
    rather than be handled by this dialog box.
     
  2. MainMemory

    MainMemory

    Have no fear...Amy Rose is here! Tech Member
    4,424
    72
    28
    SonLVL
    Why are you using the first release of the mod loader? There's a lot more features in the latest version.

    As for making it never update, there isn't a way AFAIK, just keep backups of the exe and rsdk files.
     
  3. Endgame

    Endgame

    Formerly The Growler Member
    I downloaded the link at the beginning... I just thought that it would be updated whenever the latest version came out.

    Where do I download the latest release of the mod loader? I've found it now, but it still says the same message
     
  4. MainMemory

    MainMemory

    Have no fear...Amy Rose is here! Tech Member
    4,424
    72
    28
    SonLVL
    ...That link IS updated, I just checked it myself.

    I'm assuming the line number it gives you is now 217, rather than 72. That error still makes no sense though. Where do you have ManiaModManager.exe? Do you have any mods in the mods folder?
     
  5. Endgame

    Endgame

    Formerly The Growler Member
    This is how I've got the folder structure; I've not changed any of the text files or anything:
    [​IMG]
     
  6. MainMemory

    MainMemory

    Have no fear...Amy Rose is here! Tech Member
    4,424
    72
    28
    SonLVL
    Your mods folder is all kinds of weird. I don't know why you have d3d9.dll in the mods folder, or why you have another mods folder with the actual mods and copies of the files from the first mods folder, but the real problem is that Mod.ini file in the first mods folder, get rid of that.
     
  7. Endgame

    Endgame

    Formerly The Growler Member
    Ah! Removing the mod.ini did the trick (and now only got 1 mod folder instead of 2, lol) - thanks a lot! They're working now :)
     
  8. CUD

    CUD

    Member
    How does custom code work? Not sure where to even start in regards to that... Can someone point me to a guide or something?
     
  9. MainMemory

    MainMemory

    Have no fear...Amy Rose is here! Tech Member
    4,424
    72
    28
    SonLVL
    Custom code works by creating a DLL file that contains instructions on how to alter the game's code, patching machine code, inserting jump/call instructions to redirect the game to your own functions, or poking at variables in memory. For a more specific idea, you should look at the existing mods, or even SADX or SA2 mods, as the system is largely the same.
     
  10. Do data.rsdk mods work with this? I've heard some mods rely on that file. I'm a noob to the mod loader, so I don't know much about it :specialed:.
     
  11. MainMemory

    MainMemory

    Have no fear...Amy Rose is here! Tech Member
    4,424
    72
    28
    SonLVL
    All the game's files come from the Data.rsdk file. To use mods with the mod loader, the files that were modified have to be extracted from the rsdk file and placed into a directory structure that mirrors the RSDK file, alongside a mod.ini file describing the mod.
     
  12. Endgame

    Endgame

    Formerly The Growler Member
    Apologies MainMemory, but I still can't get the 'built in' codes to work on the Mod Manager. I've got the ones I want to use, I click Save & Play, but they're not working no matter what game I play.

    Secondly, what button do I press to activate the debug console (which I've also ticked)?
     
  13. MainMemory

    MainMemory

    Have no fear...Amy Rose is here! Tech Member
    4,424
    72
    28
    SonLVL
    What do you mean, "no matter what game I play"? Mania Mod Loader is only compatible with the September 6th version of Sonic Mania. If you're using the wrong version of the game, it should show a message box saying so.
     
  14. Endgame

    Endgame

    Formerly The Growler Member
    I mean as in whether I use the "no save mode" or the "Mania Mode".

    I'd already downgraded to the 6th September version when I first started using MML, and there's no message box telling me I'm using the wrong version; the codes just don't seem to be do anything.
     
  15. MainMemory

    MainMemory

    Have no fear...Amy Rose is here! Tech Member
    4,424
    72
    28
    SonLVL
    You did install the loader, right? The mod manager will show an "Uninstall loader" button and d3d9.dll will be in the Sonic Mania folder. Also check that mods\Codes.dat and/or mods\Patches.dat exist.
     
  16. Endgame

    Endgame

    Formerly The Growler Member
    Yes to all of that: the Mod Manager has an "Uninstall loader" button, d3d9.dll is in the Sonic Mania folder, plus codes and patches.dat are both in the mods folder.

    Shall we continue this discussion in a PM so we don't take up room solving this on the thread?
     
  17. MainMemory

    MainMemory

    Have no fear...Amy Rose is here! Tech Member
    4,424
    72
    28
    SonLVL
    Sure, either that or IRC.
     
  18. Josh

    Josh

    Oldbie
    1,548
    166
    43
    USA
    So, I had a thought for a code, and it's something that would address what seems to be a bit of an oversight. There's a room in PGZ2 where you fall down and get a flame shield, then use it to melt your way out of the room. However, if you come in here as Super Sonic, you have no way to get out until the transformation runs out since shield effects aren't applied to Super forms. So would it be possible to address this, and maybe also make it so shield jumps could be used while super?
     
  19. Dark Sonic

    Dark Sonic

    Member
    12,714
    240
    43
    Working on my art!
    Fire shield effects in general appear to be broken as Super. The Fire shield won't trigger ice melting in PGZ2 or oil burning in OOZ. The other shields work environmentally though.
     
  20. BlazeHedgehog

    BlazeHedgehog

    A "Community Enigma"? Oldbie
    1,460
    5
    18
    I feel like that's a weird hold-over from Sonic 3? As Super Sonic, the water shield would still prevent you from drowning, and the lightning shield would still attract rings, but the fire shield did nothing because most of its benefits were nullified by Super Sonic, outside of the air dash.