[Release] Amiibo BIN Serial Changer

Discussion in 'Switch - Hacking & Homebrew' started by AnalogMan, Mar 16, 2017.

  1. AnalogMan
    OP

    AnalogMan sumoCheatMenu Dev

    Member
    1,414
    831
    Apr 20, 2007
    United States
    UPDATE: Datel has released PowerSaves v1.32 which now includes a serial number randomizer as well. So for those using Powersaves this is no longer needed.


    Note: This is only for those that use Amiibo emulating devices such as N2 Elite/Amiiqo, Datel PowerTag or NaMiiMo. This is not for those who write Amiibo to blank NFC tags or those with real Amiibo figures.


    Update V2: Added batch generation for multiple new serial numbers for easier use with N2 Elite. The original version is still available for those who prefer the old method.

    Summary: This python 3 script decrypts an Amiibo BIN file using Amiitool, generates a random tag serial, creates a new BIN file with the new serial, and encrypts it for use. Currently only set up for Windows but could easily be edited for use on Linux.

    Purpose: When it comes to Amiibo emulators, you can backup your Amiibo to a BIN file and then emulate it using a device like N2 Elite or reusable tags. Some people even share these BIN files so they can emulate Amiibo they don't personally have. The downside to this is that these emulate the WHOLE Amiibo including the unique NTAG215 serial number. Some games keep track of the serial numbers you scan in order to impose restrictions such as limiting how often you can use an Amiibo (Legend of Zelda: Breath of the Wild is a recent example).

    Some people get around this restriction by changing their system clock, however that trick will not work for every game or may have consequences. Like on many 3DS games, tampering with the system clock is known to enact a 48-hour or longer lockdown on all time based events. So I wondered if there was another way to scan the same Amiibo multiple times a day. I came up with changing the NTAG215 serial contained in the Amiibo BIN files and confirmed this makes the system see the Amiibo as a new one and thus can be scanned multiple times without needing to quit the game or change the time.

    Usage: To use this tool, download the attached ZIP file and extract the folder and its contents. You will need Python 3 installed to use this. You can either drag and drop the Amiibo BIN file onto the python script file or you may run it from command line with this command:

    Code:
    python amiibo_sn.py "path/to/amiibo.bin"
    It will generate a new file with _modified appended to the end in the same folder the original BIN file was in. Use this modified file with your emulating device and enjoy.

    Note: You will need to supply your own key_retail.bin file as the keys are Nintendo copyright. If you don't have one already it's the same one used with tagmo and found in the most common places that Amiibo BIN files are shared.

    If any mods feel this is better suited elsewhere, feel free to move without warning.
     

    Attached Files:

    Last edited by AnalogMan, Apr 3, 2017


  2. linuxares

    linuxares GBAtemp Psycho!

    Member
    3,097
    1,246
    Aug 5, 2007
    Nice! :D
     
  3. MarioMasta64

    MarioMasta64 hi. i make batch stuff and portable shiz

    Member
    1,888
    408
    Dec 21, 2016
    United States
    where do i put key_retail.bin ?
     
  4. badpix11

    badpix11 Member

    Newcomer
    12
    6
    Mar 14, 2017
    Serbia, Republic of
    Fairy World
    Into the same folder
     
  5. MattB0T

    MattB0T Newbie

    Newcomer
    6
    0
    Nov 21, 2015
    France
    Did someone manage to use it successfully in order to be able to use the same Amiibo over and over again in Zelda to spawn infinite chests? Because I went through the whole process, and it still doesn't allow me to use the same Amiibo twice a day in Zelda... The issue might definitely be me so did you guys managed to use the program to do so in BoTW?

    Thanks!

    PS: I use an Android phone + Amiiqo (N2 Elite) + either the official N2 Elite App or Amiibitz, but no luck so far.
     
    Last edited by MattB0T, Mar 18, 2017
  6. RemixDeluxe

    RemixDeluxe GBAtemp Psycho!

    Member
    4,584
    1,357
    Nov 23, 2010
    United States
    I think you can only use that specific amiibo once a day regardless if its of a different one (does that make sense?)

    Like if you happen to own 2 Smash Bros toon link amiibos and you scan the first one you cant scan the 2nd one even though it wasnt used but toon link amiibo is already counted for that day.
     
  7. studio1b

    studio1b Member

    Newcomer
    47
    24
    Mar 14, 2009
    United States
    NEW YORK CITY
    thank you for this A+ work
     
  8. MattB0T

    MattB0T Newbie

    Newcomer
    6
    0
    Nov 21, 2015
    France
    Reading this I thought that it could work in Zelda allowing you to spawn an infinite number of chests but it's true that it doesn't actually say that it would work with Zelda but with certain games. So I guess your thoughts on the subject @RemixDeluxe must be correct.

    I'll wait a bit to see if someone manages to do so but with that kind of limitations in the game, I doubt it.
     
  9. RemixDeluxe

    RemixDeluxe GBAtemp Psycho!

    Member
    4,584
    1,357
    Nov 23, 2010
    United States
    You have 2 choices

    1. keep doing save rollbacks until you get whatever you desire from that amiibo scan.

    2. Use a trainer to modify the items right into your inventory.
     
  10. anonymoose

    anonymoose Lannister

    Member
    168
    67
    Nov 15, 2015
    Germany
    Kashyyyk
    very helpful, was looking for something like this :yay:

    edit: using it with the power tag thingy from datel
     
    Last edited by anonymoose, Mar 20, 2017
  11. AnalogMan
    OP

    AnalogMan sumoCheatMenu Dev

    Member
    1,414
    831
    Apr 20, 2007
    United States
    I use the Datel PowerTag and it works fine. I scanned about 35 Skeiks all in a row until I got that damn mask. Are you loading the modified bin onto the N2 and switching to that after running the script and changing the serial?

    Nope, if you have two of the same Amiibo you can scan both in the same day.

    That's exactly what I meant. I made this specifically for Zelda but figured I'd release it in case it's handy for other games.
     
    Last edited by AnalogMan, Mar 18, 2017
  12. ParaGrosTas

    ParaGrosTas Newbie

    Newcomer
    5
    0
    Sep 17, 2016
    Canada
    It works for me to but Im not sure if its the intended way.
    I use the n2 tag and when I use a modified bin, I can scan it once only. BUT if I modify the original again and use this bin file, then I can scan it a second/third/forth... time.

    The way you say it, we should be able to scan the same tag using the same bin file over and over without the need to modify it again.

    I would like to know for sure if thats what should happen or is the intended way to do it to run the bin through the script every time?

    By the way, thanks for the tool! Finally able to get all the hero sets.
     
  13. RemixDeluxe

    RemixDeluxe GBAtemp Psycho!

    Member
    4,584
    1,357
    Nov 23, 2010
    United States
    @AnalogMan This application is great but for the purpose of LoZ: Breath of the Wild (Wii U version) it just seems more efficient to use a trainer to mod in the items, same deal for any other Wii U or 3DS game. However because the Switch isnt homebrewed yet this is perfect for games on that system.

    You have something really great here and I wanted to make sure thats known.
     
  14. AnalogMan
    OP

    AnalogMan sumoCheatMenu Dev

    Member
    1,414
    831
    Apr 20, 2007
    United States
    Each run of the script generate a BIN file with a new serial. Each serial can be scanned once a day. So yes, you do need to generate a new file each time you wish to scan. As for real Amiibos you are able to scan two of the same type in a day because the NFC chips inside them have unique serials.

    Thank you, that's exactly why I posted it in the Switch section rather than the WiiU section. That and because I have a Switch, haha.


    On another note, I'm thinking about editing the script to prompt for a quantity of modified BIN files to be made all at once and append the serial number to the end of their names. Thoughts?
     
    lonewolf08 and RemixDeluxe like this.
  15. RemixDeluxe

    RemixDeluxe GBAtemp Psycho!

    Member
    4,584
    1,357
    Nov 23, 2010
    United States
    Definitely go for it if you think it can be done.

    Have you attempted to change any data to possibly create Bayonetta, Cloud, or Corrin amiibo? Who the hell knows when those will release and if they can be emulated that would be better.
     
  16. AnalogMan
    OP

    AnalogMan sumoCheatMenu Dev

    Member
    1,414
    831
    Apr 20, 2007
    United States
    Spoofing an Amiibo is not hard, the issue is that I don't know the Cloud, Bayonetta or Corrin IDs. The IDs for the Zelda unreleased Amiibos was data mined but as far as I know not the smash ones. The only instance I know of for those is that the Nintendo SDK for the 3DS and WiiU used to contain Cloud, Bayonetta and Corrin release info including their IDs but it was pulled in a revision. If someone still had that or data mined the info then someone like SciresM could spoof those ones too.
     
    RemixDeluxe likes this.
  17. AnalogMan
    OP

    AnalogMan sumoCheatMenu Dev

    Member
    1,414
    831
    Apr 20, 2007
    United States
    ParaGrosTas and RemixDeluxe like this.
  18. ParaGrosTas

    ParaGrosTas Newbie

    Newcomer
    5
    0
    Sep 17, 2016
    Canada
    Thanks man, you the best :yay:
     
  19. MockyLock

    MockyLock Advanced Member

    Newcomer
    77
    20
    Apr 21, 2011
    France
    'llo here !
    Hm, i can't get it to work.
    I have Python 3.0.1 installed. When i drag&drop the BIN file onto the py script, a command windows pops up and immediatly close.
    WHen i use command line, it tells me that 'python' is not a known an internal or external command, an executable or a command file.
    What I am doing wrong ?
     
  20. MattB0T

    MattB0T Newbie

    Newcomer
    6
    0
    Nov 21, 2015
    France
    Great job @AnalogMan ! Going to check this ASAP!