SDCafiine

Discussion in 'Wii U - Homebrew' started by Maschell, May 21, 2017.

  1. Maschell
    OP

    Maschell GBAtemp Advanced Fan

    Member
    900
    1,314
    Jun 14, 2008
    Gambia, The


    SDCafiine v1.4

    What is SDCafiine

    SDCafiine is a Homebrew Application for the Nintendo Wii U, that can be loaded with the homebrew launcher.
    The main feature of this application is the on-the-fly replacing of files, which can be used used to loaded modified content from external media (**SD/USB**).
    It hooks into the file system functions of the WiiU. Whenever a file is accessed, SDCafiine checks if a (modified) version of it present on the SD/US device, and redirect the file operations if needed.

    Which games are supported

    In the past SDCafiine only supported games which already had access to the SD Card (for example Super Smash Bros. for Wii U), but since version 1.4 all games are supported.
    To achieve this, SDCafiine has a built-in a version of mocha, which is a Custom Firmware with libiosuhax] support. This allows support for any FAT32 device via libfat.

    Features:

    - On the fly file replacing of game files.
    - Support for replacing files from downloadable content
    - Built in libiosuhax support via mocha
    - Supports loading files from SD and USB (FAT32)
    - Support for multiple modpacks for as single game.

    Installation of SDCafiine:

    Like many other homebrew applications for the Wii U, it can't be installed.
    The application is only installed temporarily, and has to loaded again after each reboot (or entering the system settings).
    It is enough to copy the files on to the SDCard in a way it can be accessed by the homebrew launcher, or simply download it from the homebrew app store.

    Example path of the elf on the SD:
    Code:
    SD:/wiiu/apps/sdcafiine/sdcafiine.elf
    
    Starting SDCafiine:

    When the files are on the SDCard, use your prefered method to get into the homebrew launcher and start SDCafiine. No starting of any CFW is required before you can use SDCafiine, it has a built in fork of mocha.
    On success, the system menu should load. Now simply start any game and the mods should load.

    Installation of the mods:

    Before the mods can be loaded, they need to be copied to a SD or USB device. Since version 1.4 also USB devices (FAT32 only) are supported via libfat.
    In the following "root:/" is corresponding to the root of your SD/USB device. The basic filepath structure is this:

    Code:
    root:/sdcafiine/[TITLEID]/[MODPACK]/content/  <-- for game files. Maps to /vol/content/
    root:/sdcafiine/[TITLEID]/[MODPACK]/aoc/      <-- for downloadable content files. Maps to /vol/aocXXXXXXXX/
    
    Replace the following:
    • "[TITLEID]" need to be replaced the TitleID of the games that should be modded. A list of can be found here (without the "-"). Example for SSBU has "0005000010145000". Make sure to use the ID of the fullgame and not the update title ID.
    • "[MODPACK]" name of the modpack. This folder name can be everything but "content" or "aoc".

    Example path for the EUR version of SuperSmashBros for Wii U:
    Code:
    root:/sdcafiine/0005000010145000/SpecialChars/content/  <-- for game files. Maps to /vol/content/
    
    For replacing the file /vol/content/movie/intro.mp4, put a modified file into:
    Code:
    root:/sdcafiine/0005000010145000/SpecialChars/content/movie/intro.mp4
    
    Handling multiple mod packs:

    SDCafiine supports multiple different mods for a single game on the same SDCard/USB. Each mod has an own subfolder.
    Example:
    Code:
    sd:/sdcafiine/0005000010145000/ModPack1/content/
    sd:/sdcafiine/0005000010145000/ModPack2/content/
    usb:/sdcafiine/0005000010145000/ModPack3/content/
    usb:/sdcafiine/0005000010145000/ModPack4/content/
    
    When multiple folders are detected, you need to choose which one to use when starting the game. To swap to another mod, you need restart the game.

    Building

    Make sure you download the complete repo, including the submodules:

    • git submodule update --init --recursive

    For building you need:

    *note: when you change something in the mocha folder, you need to use make clean before building.*


    Download

    Binary: https://github.com/Maschell/SDCafiine/releases/tag/1.4
    Source: https://github.com/Maschell/SDCafiine


    Credits

    HBL support, code rewrite and further improvements - Maschell
    minor improvements - Zarklord
    inital SDCafiine creation - golden45
    Cafiine creation - chadderz (and MrBean35000vr ?)
    mocha - dimok789
    libfat - devkitPro team
     
    Last edited by Maschell, Sep 3, 2017


  2. Maschell
    OP

    Maschell GBAtemp Advanced Fan

    Member
    900
    1,314
    Jun 14, 2008
    Gambia, The
    Huch, there was no thread for SD Cafiine so I decided to create one.

    Last week @Zarklord figured out how to enable SD access for every game using a CFW, but SD Caffine didn't work for game like Mario Kart 8.
    I decided to rewrite most parts, and now everything should work. At least Mario Kart 8 is working now without any issues.

    note: the path on the sd card has changed!
     
    KiiWii likes this.
  3. pwsincd

    pwsincd Garage Flower

    Member
    3,319
    1,708
    Dec 4, 2011
    Manchester UK
    the appstore has been updated to reflect this.
     
  4. Don Jon

    Don Jon GBAtemp Fan

    Member
    460
    180
    Nov 20, 2015
    United States
    so
    does file size still matter? anyone know
    or is it like riivo?
    ive been gone for a while but this should work for loadiine games as well right?
     
  5. Dekirai

    Dekirai GBAtemp Advanced Fan

    Member
    791
    627
    Jun 21, 2016
    Germany
    works perfect
    tried with custom new super mario bros level
     
    Maschell likes this.
  6. Don Jon

    Don Jon GBAtemp Fan

    Member
    460
    180
    Nov 20, 2015
    United States
    so this didnt work for me for custom music for mk8

    1. run mocha fork thru homebrew channel. didnt mess with settings went straight to home screen.
    2. run sdcafiine v1.1. went straight to homescreen, no indication it worked.

    3. ran retail disc game nothing.

    for mk8 i have

    sd:/sdcafiine/000500001010EC00/content/audio/stream/(all the files)


    — Posts automatically merged - Please don't double post! —

    holy crap it worked finally mk8 custom music
    a stupid website gave me the wrong title id for mk8 and that is why it didnt work...
    but now its all good
    thanks man
    the modding scene will just get better...
     
    Last edited by Don Jon, May 25, 2017
  7. kostas sfirakis

    kostas sfirakis GBAtemp Regular

    Member
    233
    36
    Sep 14, 2015
    Greece
    crete
    Does it work on splatoon?
     
  8. Dekirai

    Dekirai GBAtemp Advanced Fan

    Member
    791
    627
    Jun 21, 2016
    Germany
    Don't ask, just try it. It should work with every game.
     
    kostas sfirakis likes this.
  9. kostas sfirakis

    kostas sfirakis GBAtemp Regular

    Member
    233
    36
    Sep 14, 2015
    Greece
    crete
    and the path now is the same like normal cafiine but in sdcafiine folder?
     
  10. Dekirai

    Dekirai GBAtemp Advanced Fan

    Member
    791
    627
    Jun 21, 2016
    Germany
    I never used cafiine to be honest. But my path for my games is sd:\sdcafiine\0005000010101e00\content\Common\course_res_pack
    This is for new super mario bros u to replace levels as an example
     
    kostas sfirakis likes this.
  11. kostas sfirakis

    kostas sfirakis GBAtemp Regular

    Member
    233
    36
    Sep 14, 2015
    Greece
    crete
    alright man ty very much :)
     
    Dekirai likes this.
  12. kostas sfirakis

    kostas sfirakis GBAtemp Regular

    Member
    233
    36
    Sep 14, 2015
    Greece
    crete
    works with splatoon and mk8 I tested :3
     
    Maschell and Dekirai like this.
  13. Don Jon

    Don Jon GBAtemp Fan

    Member
    460
    180
    Nov 20, 2015
    United States
    1. can you program a confirmation that sd caffine worked when u load it thru homebrew
    2. can the mocha fork you provided load sd cafiine altoghether

    i dont use haxchi so tis a pain to enter web twice, well not really but you know what i mean
     
  14. memoryman3

    memoryman3 GBAtemp Regular

    Member
    190
    79
    Feb 24, 2015
    WARNING. Do NOT use any other program when you are in an SD Cafiine enabled game! Like the internet browser! It will throw an Exception DSI!
     
  15. Obnew

    Obnew Member

    Newcomer
    13
    1
    Mar 17, 2017
    Tuvalu
    Hello.

    Everytime I try to launch SDCafiine from HBC, after launching Mocha previously, it freezes. I'm using CBHC on autoboot to System Menu first. The directories are all right.

    EDIT: Nevermind, it works now after enabling "Use system.xml" in the Mocha settings.
     
    Last edited by Obnew, Jun 2, 2017
  16. cucholix

    cucholix No-Intro

    Member
    737
    385
    Jan 17, 2017
    Chile
    My 64gb SD will die with the big sized files :lol:
    Already having space issues with Retroarch roms... Still want to mess around with XCX music.
     
  17. Madridi

    Madridi Card Collector

    Member
    3,065
    903
    May 9, 2008
    Qatar
    Doha
    Thanks for this @Maschell. I have a couple of questions:

    - Using the mocha fork you made, do we lose anything by leaving dimok's original release? Or does this effectively replace it? (trying avoid having 2 mochas on hbl)

    - Are there any other homebrew taking advantage of sd access?
     
  18. Maschell
    OP

    Maschell GBAtemp Advanced Fan

    Member
    900
    1,314
    Jun 14, 2008
    Gambia, The
    At first: I didn't make the mocha fork, the patches are by @Zarklord so I don't take any credtis for it ;)
    This version has the FAT32 support disabled, because I'm not really sure if it could cause any problems.
    I'm pretty sure the changes will simply merged to the original release, once dimok comes online again.
    But currently he is very busy, I only talked to him like twice this year..

    I don't know of any other app that takes advantages of it, mainly because all apps have SD access in the HBL anywhere
     
    Zarklord and Madridi like this.
  19. cucholix

    cucholix No-Intro

    Member
    737
    385
    Jan 17, 2017
    Chile
    @Maschell @Zarklord, about this mocha fork, can we replace the standart mocha for it? Or there are difference between them aside from sd access?
     
    Last edited by cucholix, Jun 8, 2017
  20. Zarklord

    Zarklord GBAtemp Regular

    Member
    191
    64
    May 13, 2016
    United States
    yes... the only difference between this mocha fork and the "standard" fork is the sd access check patch...

    also @Maschell the bootimage tga in the fork needs to get re-saved as a 16 bit no compression tga...
     
    Don Jon, Madridi and cucholix like this.