Discussion SNES Online - Mod Discussion

Discussion in 'Switch - Emulation, Homebrew & Software Projects' started by 18Phoenix, Sep 7, 2019.

  1. 18Phoenix
    OP

    18Phoenix GBAtemp Advanced Fan

    Member
    6
    Nov 21, 2005
    Germany
    [​IMG]

    Hi everyone :)

    I thought it's good to start a new thread to talk and share about modding SNES Online to get additional roms working.
    I already love it to mod the NES Online, now I can't await it to go on with SNES Online.
    First it has looked almost equal. Same folders, same structure, again same files lclassics.titlesdb + xtx.z.

    I tried out some steps but it's not working even if I copy a given rom and rename folder and files.
    The SNES roms are sfrom files. This file type is already known by the SNES Mini and others for use with the canoe emu.
    But the given sfrom files work fine with SNES9x emu.

    I already got this great info by DarkAkuma :bow: :
    I edited the lclassics.titlesdb and added a line therefore in string.lng.
    The prog starts and the new roms appears. Even the new cover appears (converted with NES ONLINE Game Injector MOD).

    cover added.

    But neither the roms works (nothing happens pressing A) nor the detail screen (after pressing X nothing goes in the menu anymore)

    That's very disappointing. I hope someone else gets it work the next days.

    So, let's share our findings here and discuss about the progress. :D
     
    Last edited by 18Phoenix, Sep 7, 2019
    lisko, Reynardine, tomman321 and 11 others like this.
  2. 18Phoenix
    OP

    18Phoenix GBAtemp Advanced Fan

    Member
    6
    Nov 21, 2005
    Germany
    Like with NES Online, the lclassics.titlesdb is located here: 01008D300C50C000\romfs\titles\

    To test I just added one game like this:
    added code

    I just have chosen S-2501_e as a new rom folder.
    I converted cover and screenshot with the same tool like for the NES Online.
    For testing I just copied and renamed 2 given *.sfrom + *.sfromsig to see if it works like this.
    The prog started, the menu appeared and the cover was added like planed.
    So far so good.
    But starting didn't work at all. After pressing A to start the "new" game nothing happens at all.

    Then I tried to edit the text in the string.lng which is again located here: 01008D300C50C000\romfs\bootapp\resources\strings\<lang>\
    I added a line like it works for me with NES Online:
    added code
    Checking the detail screen by pressing Y still works for the given roms.
    But not for the new one: Pressing Y leads to the menu not reacting to all buttons at all.
     
    Last edited by 18Phoenix, Sep 7, 2019
    Chino, DeoNaught, NoNAND and 4 others like this.
  3. 18Phoenix
    OP

    18Phoenix GBAtemp Advanced Fan

    Member
    6
    Nov 21, 2005
    Germany
    Only success so far:
    The HIDE Mod works fine hiding the player icon in the upper left corner.
    Therefore is a modified sysmain.scn needed, located again here: 01008D300C50C000\romfs\bootapp\resources\scenes\sys\

    without player icon.
     
  4. 18Phoenix
    OP

    18Phoenix GBAtemp Advanced Fan

    Member
    6
    Nov 21, 2005
    Germany
    Great infos, thanks :)
    Your right. I compared the SNES Online sfrom file "2002_e.sfrom" for Brawl Brothers with "Brawl Brothers (U) [!].sfc" in a hexeditor.
    Just the end is different, 2 lines have been added.

    I'm just a rookie, unfortunately I can't do much with "Bytes #5 and 6 ...".
     
    Last edited by 18Phoenix, Sep 7, 2019
  5. Falo

    Falo GBAtemp Advanced Fan

    Member
    9
    Jul 22, 2012
    Germany
    SNES Signature (sig) Files:

    Way 1: patch RSA Key:
    Code:
    .rodata:00000000005412A0 = Public Key
    .rodata:00000000005413A0 = Exponent
    Way 2: patch RSA check:
    Code:
    .text:000000000001D92C 29 00 00 94                 BL              sub_1D9D0
    to
    MOV W0, 1
    sub_1D9D0 checks the RSA hash against the signature and returns 0 on fail and 1 on success, so exefs needs to be patched, but a cheat code should also work, so:

    Code:
    Super Nintendo Entertainment System - Nintendo Switch Online - Update 0 (v1.0.0)
    TitleId: 01008D300C50C000
    BuildId: 8025A0DF4699C23C
    
    [Remove Signature Check (on)]
    04000000 0001D92C 52800020
    [Remove Signature Check (off)]
    04000000 0001D92C 94000029
    Note: i didn't test if the code works, thats up to you guys
     
    lordelan, Chino, matt! and 10 others like this.
  6. 18Phoenix
    OP

    18Phoenix GBAtemp Advanced Fan

    Member
    6
    Nov 21, 2005
    Germany
    Looks cool. But I as a rookie don't understand a word.
    Which file can be patched how?
    Can you got a bit more in detail please?
    Removing the signature check sounds great but how?
    Must I edit a special file with an hexeditor, search for "52800020" and change it to "94000029" ?
    And which file? One of the 7 in the exefs folder (main,...,subsdk2) ?
    Or must I use a different editor ?
     
    Last edited by 18Phoenix, Sep 7, 2019
    romuloarpini likes this.
  7. Kirby567fan

    Kirby567fan GBAtemp Regular

    Member
    5
    Jan 6, 2018
    Morocco
    Those are cheat codes, so you dont need to edit something in main, copy this to atmosphere/titles and youre good to go.
    Also you need Edizon.
     

    Attached Files:

    Subtle Demise and 18Phoenix like this.
  8. Falo

    Falo GBAtemp Advanced Fan

    Member
    9
    Jul 22, 2012
    Germany
    Use Edizon or SXOS? This is a Switch cheat code, not a patch tutorial.

    If you want to patch the exefs, then use nx2elf.exe and elf2nso.exe

    - extract main from exefs
    - use nx2elf.exe to convert it to elf
    - open it in HxD, goto 0x1E1B4 and replace "29 00 00 94" with "20 00 80 52"
    - use elf2nso.exe to convert it back to nso
    - place it in the exefs folder on sd card
     
    imedox, phonz and 18Phoenix like this.
  9. arthur_bleme

    arthur_bleme Member

    Newcomer
    2
    Jun 18, 2018
    France
    France
    it works ! I was able to replace the Zelda rom with the French PAL version and it starts

    thank you !
     
    hippy dave, imedox and 18Phoenix like this.
  10. romuloarpini

    romuloarpini Newbie

    Newcomer
    1
    Sep 7, 2019
    Brazil
    Thank you for your hard work, 18phoenix. Looking forward to it!
     
    18Phoenix likes this.
  11. 18Phoenix
    OP

    18Phoenix GBAtemp Advanced Fan

    Member
    6
    Nov 21, 2005
    Germany
    BIG Thanks for for great and detailed answer but I didn't found a nx2elf.exe or elf2nso.exe,
    just the github for compiling and I don't have the knowledge therefore, I'm only a user and editor.

    How do I use cheats with SXOS ??? Never done it before.
     
  12. Kirby567fan

    Kirby567fan GBAtemp Regular

    Member
    5
    Jan 6, 2018
    Morocco
    Copy the SNESOnlineDisableCheck folder from the rar file to atmosphere/exefs_patches.
    Its an ips patch and probably is the simplest this will get to.
    Shoutouts to Falo for finding and patching the check.
     
    Last edited by Kirby567fan, Sep 7, 2019
  13. BlueFoot

    BlueFoot Newbie

    Newcomer
    1
    Sep 7, 2019
    Israel
    download the rar and put it in the sxos/titles folder

    thats it
     
    18Phoenix likes this.
  14. Fugelmir

    Fugelmir GBAtemp Fan

    Member
    6
    Mar 9, 2016
    Canada
    So this method that falo outlines involves modifying the rom itself, then using cheats to disable the signature check?
     
  15. Kirby567fan

    Kirby567fan GBAtemp Regular

    Member
    5
    Jan 6, 2018
    Morocco
    No only one.
     
    Fugelmir likes this.
  16. BlueFoot

    BlueFoot Newbie

    Newcomer
    1
    Sep 7, 2019
    Israel
    I'm a rookie but I don't know where to start
    I put the cheat in the edizon
    1.extract the xci

    now where should I put the rom?
     
  17. KapuDaKoopa

    KapuDaKoopa That One Splatoon Dataminer

    Member
    5
    Mar 12, 2016
    United States
    It's great that already people have been able to patch out the sigchecks, but apparently data gets sent to Nintendo through prepo (which I believe might be the same as NES Online app actually?? I'm forgetting) so I'm wondering if sigcheck patching even matters. Do we know if Nintendo ever banned people for running custom entries in the NES Online app?
     
  18. Falo

    Falo GBAtemp Advanced Fan

    Member
    9
    Jul 22, 2012
    Germany
    It's a common thing now, Nintendo wants more info on playtime, played games and lots of other information through a new api called PlayReport.
    The first game to use that new Api was Fire Emblem Three Houses (it did send full playreport and lots of savegame data), the second was Astral Chain, now the SNES app.

    The data is collected with: romfs\bootapp\resources\scripts\system\playreport.lua
    To avoid this, just stay offline.
     
  19. 18Phoenix
    OP

    18Phoenix GBAtemp Advanced Fan

    Member
    6
    Nov 21, 2005
    Germany
    Only the ips file ?
    Will it be loaded automaticaly ?
     
  20. KapuDaKoopa

    KapuDaKoopa That One Splatoon Dataminer

    Member
    5
    Mar 12, 2016
    United States
    Ah, makes sense. But, would it just send all the data upon launching the app while connected to the internet or does it not store it like some other games I know do?
     
Quick Reply
Draft saved Draft deleted
Loading...