RELEASE AmiiSwap - Amiibo switcher/manager for Emuiibo

Discussion in 'Switch - Emulation, Homebrew & Software Projects' started by FuryBaguette, May 9, 2019.

  1. FuryBaguette
    OP

    FuryBaguette Advanced Member

    Newcomer
    4
    Jan 6, 2019
    France
    I'm on vacation so I can't work on it. I do appreciate pull requests tho
     
    gaga24 and lordelan like this.
  2. enol

    enol Member

    Newcomer
    2
    May 30, 2017
    Has anyone actually managed to do it? because I have not been able
     
    Last edited by enol, Aug 22, 2019
  3. FuryBaguette
    OP

    FuryBaguette Advanced Member

    Newcomer
    4
    Jan 6, 2019
    France
    It's still not updated to work with the latest emuiibo. If you want to use Amiiswap you'll need to use an earlier version of emuiibo and use .bin file instead of the new system (I would still suggest using the new emuiibo since it works better than before and doesn't need dumps anymore until AS is available). AmiiSwap should be updated start of september (Maybe just before)
     
    lordelan likes this.
  4. enol

    enol Member

    Newcomer
    2
    May 30, 2017
    Yes, but the question is how to do it because the OP does not clarify it, and so far I have not found any tutorial with the new update. If he managed to get an amiibo but nothing else, he could not change amiibos as indicated by the dev

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

    lol are you, I had not noticed
     
    Last edited by enol, Aug 23, 2019
  5. Barrytoo

    Barrytoo Newbie

    Newcomer
    1
    Apr 24, 2018
    Jordan
    First of all, thanks for the great project!

    Unfortunately, I can't seem to enjoy its bloom yet, here is what I've done:

    1- Extracted emuiibo v0.3 and Amiiswap v1.0 to the SD card
    2- Generated the virtual Amiibo's JSON files using emuGUIibo (the desktop app) without random UUID and placed their folder in "SD:\emuiibo\amiibo"
    3- Restarted Switch so emuiibo v0.3 can generate the BIN files to use later (emuiibo v0.2.1 can't seem to do this, hence I'm using v0.3)
    4- After finding the generated BINs, I've replaced emuiibo v0.3 with emuiibo v0.2.1 since the former isn't supported by Amiiswap v1.0, which is the latest as of now
    5- Went to Amiiswap, permanently activated emuiibo and selected one of the Amiibos, then exited using the + button (also tried with the Home button)
    6- Opened a game, started scanning for Amiibos but none was detected, tried switching with Right stick button and up\right\left\down combo with no luck. Also went to the app and checked that emuiibo is active and the Amiibo is selected.

    A fun fact is that I've tried with the unsupported emuiibo v0.3 which acts crazy but it kinda works with some games like Yoshi's Crafted World and partially SSBros. just by activating emuiibo and only placing one Amiibo on the SD card, since I can't select from many on the unsupported emuiibo v0.3

    So my question is: can emuiibo v0.2.1 use the BINs generated by v0.3? If so, what am I doing wrong to not have it work?

    Tested games are: BOTW, SSB and Yoshi's Crafted world

    P.S. I don't care about the icons, thus I haven't included them in the steps

    Any help is greatly appreciated
     

    Attached Files:

  6. 345742D

    345742D Member

    Newcomer
    3
    Sep 14, 2009
    United States
    Its as if nobody reads threads. This has been asked several times within the last few pages.

    Emuiibo 0.3 and Amiiswap 1.0 are incompatible. You're going to have to downgrade to Emuiibo 0.2.1 to use Amiiswap until Amiiswap is updated for the new 0.3 update.
     
  7. Flocki1987

    Flocki1987 Member

    Newcomer
    2
    Nov 14, 2018
    Germany
    And its seems to me, that you've never read a complete post and always judge after reading 10 words!
    He mentioned that he replaced the latest Emuiibo with the version that works with the latest AmiiSwap....
     
    Barrytoo likes this.
  8. 345742D

    345742D Member

    Newcomer
    3
    Sep 14, 2009
    United States
    It seems my annoyances have gotten the best of me and I've become the asshole. I've read the "0.3 doesn't work, HELP!" comment so many times its deafening, so when I read that I jumped to a conclusion. So, Flocki1987, you are correct.
    And to Barrytoo, my sincerest apologies.

    I'm pretty sure that was emuiibo 0.3's selling point. That it was able to emulate all the other files besides the unique ID. It was completely rewritten to accommodate for that, so if 0.2.1 wasn't written to emulate those files, then the generated ID's using emuGUIibo wouldn't work properly. At least that's how I'd imagine it would work.

    But what do I know. Did you turn it on before launching the game?
     
    Last edited by 345742D, Aug 27, 2019
    Barrytoo and lordelan like this.
  9. 2pacsawyer

    2pacsawyer Newbie

    Newcomer
    1
    Jul 2, 2019
    United States
    After two days of trying to get amiiswap working for the first time this was the fix for me. Thank you so much.
     
  10. Barrytoo

    Barrytoo Newbie

    Newcomer
    1
    Apr 24, 2018
    Jordan
    No worries, I get where you're coming from.

    Regarding the issue, I've followed up on the Discord's support page and it seems that there's nothing to do right now to get it to works other than waiting for an update to fix it.

    To answer your question, yes I tried all the scenarios including running it before the game starts.


    Thanks for your fair judgment, it's all cool!
     
  11. kylum

    kylum GBAtemp Regular

    Member
    4
    Dec 8, 2008
    United States
    @FuryBaguette Are you going to update for Emuiibo v.3, wait for Emuiibo to support the latest ams or both? Was looking forward to your update and just wondering if the release of OFW 9.0 will change your efforts?

    Thanks
     
  12. FuryBaguette
    OP

    FuryBaguette Advanced Member

    Newcomer
    4
    Jan 6, 2019
    France
    I currently have no time to work on it (it's partially updated for emuiibo) but it'll be updated for emuiibo v0.3 and fw 9.0
     
    OrGoN3, Jonhy, kylum and 1 other person like this.
  13. LyuboA

    LyuboA Advanced Member

    Newcomer
    2
    Jun 1, 2018
    Bulgaria
    anyone able to use emuiibo 0.2.1 and Amiiswap on Atmosphere 0.9.4
     
  14. mrdude

    mrdude GBAtemp Advanced Fan

    Member
    7
    Dec 11, 2015
    Nice, I've already modded your code and have it working for emuiibo v0.3 and the latest Atmosphere - only I didn't fix the search for images yet - but they work if you just put a png in the ammibo's folder and call it amiibo.icon. I was going to post it, but as your going to release anyway - I'll not bother.

    Also on your github - on your MainLayout.cpp code - when you click on show selected - it crashes the app. I changed the code to this to fix that:

    Code:
        void MainLayout::showSelected_Click()
        {
            char key[] = { 0 };
            char amiibo[FS_MAX_PATH] = { 0 };
            bool isOk;
            Result rs = nfpemuGetCurrentAmiibo(amiibo, &isOk);
            if(rs == 0 && R_FAILED(strcmp(key,amiibo)) && isOk) {
                std::string path = utils::trim_right_copy(std::string(amiibo));
                std::string amiiboName = utils::getLastFromPath(path);
                bool random = utils::isRandomUuid(path+"/register.json");
                mainapp->CreateShowDialog("Active amiibo: " + amiiboName, "Located in: " + path + "\nRandom UUID: " + ((random) ? "enabled":"disabled"), { "Close" }, true, path + "/amiibo.icon");
            } else {
                pu::overlay::Toast *toast = new pu::overlay::Toast("No active amiibo.", 20, {255,255,255,255}, {0,51,102,255});
                mainapp->StartOverlayWithTimeout(toast, 1500);
            }
        }
    
    Also, when the app starts - in Utils.cpp, the EnsureDirectories void is never called, so these directories are never created. You could add this, somewhere to the start of your code to check those directories exist, if not create them.
    Code:
    utils::EnsureDirectories();
    
    Example, in MainApplication.ccp - you could change to this:
    
        MainApplication::MainApplication() : pu::Application()
        {
            lang::Initialize();
            utils::EnsureDirectories(); //added here
            this->bootLayout = new BootLayout();
            this->LoadLayout(this->bootLayout);
            this->CallForRender();
    
    Then in Utils.cpp - put some checks in - like this:
    
        void EnsureDirectories()
        {
            FILE * pFile;
            FILE * qFile;
            pFile = fopen ("sdmc:/switch/AmiiSwap/game_icons","r");
            pFile = fopen ("sdmc:/emuiibo","r");
          
            if (pFile==NULL)
            {
                CreateDirectory("sdmc:/switch/AmiiSwap/game_icons");
            }
          
            if (qFile==NULL)
            {
                CreateDirectory("sdmc:/emuiibo");
            }
    
            fclose (pFile);
            fclose (qFile);
        }
    
    Anyway, I look forward to your updated code.
     
    Last edited by mrdude, Sep 19, 2019 at 3:25 PM
  15. OrGoN3

    OrGoN3 GBAtemp Addict

    Member
    8
    Apr 23, 2007
    United States
    The project is open-sourced on GitHub. Why not just fork and make a pull request?
     
Loading...