Emuiibo v0.5 Released

Emuiibo v0.5

XorTroll has released a new version of Emuiibo, which is a virtual amiibo (amiibo emulation) system for your homebrew enabled Nintendo Switch hybrid video gaming console. It allows you to use your own self created amiibo's with your original games, thus unlocking features and functionality that would normally require you to purchase an amiibo figurine.


What's New?

Quote: XorTroll

# Changelog

* Latest Atmosphere (0.11.1) and 10.0.0 support

* New virtual amiibo format, consisting on a single JSON file (emuiibo will automatically convert old formats to this new format on startup)

## emuiibo

emuiibo has been completely rewritten, and this has been incredibly helpful, since almost any issue present for previous versions is no longer a problem ;)

* Key combos are no longer a thing, since they were a not very friendly way of controlling emuiibo, and having an overlay is 100 times more helpful.

* The way emuiibo internally "mimics" Nintendo's amiibo services has been improved a lot. This was what caused many games to not work fine (Link's Awakening, Diablo 3, Fire Emblem...). In fact, emuiibo is introducing a new feature which makes amiibo emulation slightly more similar to real amiibos, which made those specific games work (see below).

* Virtual amiibo connecting/disconnecting: these two are the equivalents of placing a real amiibo in the NFC point/R-stick (connecting it) and removing it from that spot (disconnecting it). Previously, emuiibo "tried" to take care of that manually (games like SSBU asked the user to remove the amiibo after saving progress), which resulted in many games freezing when they read amiibos. Now, simply disconnect the amiibo when you need to remove it, and connect it to use it again!

* Support for raw bin amiibo dumps works now (it was broken for v0.4)

* Old (v0.3.x and v0.4) amiibo formats are converted on startup, so no need to create new amiibos, old ones should work :)

* IPC API changed completely, check the overlay's source as an example of how it works.

* Now logs are reset on each reboot, so make sure to not reboot or make a copy of emuiibo's log file if wou want to preserve them! (this was done since the log file would get excessively big if it wasn't cleaned)

## [NEW] Tesla overlay

This is a new addition to the project and, probably, the best and easiest way of controlling emuiibo (thanks to WerWolv for such an amazing project)!

This are its current features:

* Toggle on/off emulation

* Control virtual amiibo emulation with emuiibo, select a virtual amiibo as active, connect/disconnect it (see above)

* Browse through categories, keep your virtual amiibos organized

* See in real time if the currently opened game is being intercepted by emuiibo (if you have the overlay open while the game runs, you might be able to spot the exact instant in which emuiibo intercepts the game's amiibo access)

## emutool

* Saving virtual amiibos to FTP is now supported.

* Fixed a bug where amiibos with the same name would make the program fail.

* Added support to save amiibos using the last location selected to save the previous amiibo, instead of having to select it again (can be quite useful when making many virtual amiibos).

* Virtual amiibo name and the virtual amiibo's directory name are now different settings (they used to be treated as the same field before).

* An option has been added to save the amiibo's image as a PNG file (`amiibo.png`), overlay might add support to display it in next versions ;)

* Added help option, which will point to emuiibo's repository's README.

* [Silent update] fixed a bug in certain cases where emutool would fail to connect to AmiiboAPI (WebException).

## FAQ

* Can I use 20 hearts link wolf amiibo bin dump with emuiibo?

* Since BOTW detects the 20 hearts in the link wolf amiibo via amiibo savedata, which emuiibo can't access on bin dumps since it's encrypted and we don't yet support decryption, you will need to extract manually the savedata from your PC (using tools like amiitool) for now.
* Games which needed emuiibo to be on before they were launched (BOTW) are or will ever be fixed?

* No - sadly there's nothing to be fixed here. It's just how the game uses amiibo services - these games initialize amiibo services the moment they're launched, so emuiibo needs to be on at that moment to enable emulation in that game.

- General system stability improvements to enhance the user's experience.
Instructions

-- Usage

Download the latest release and place it on your CFW's `titles` folder (so it would be like `[cfw]/titles/0100000000000352`).

According to tests, should work on any CFW which allows NSP sysmodules (Atmosphere, ReiNX).

You also have to set the boot2 flag in the CFW's `/titles` directory: `[cfw]/titles/0100000000000352/flags/boot2.flag`.

---- Combos

All the input combos are performed with R-Stick pressing and pressing the D-pad in an specific direction (at the same time). Combos must (should) be done before or after the game starts looking for amiibos.

- Activate amiibo emulation: Press R-Stick (like it was a button) and also pressing the D-pad up. Toggles/untoggles emulation.

- Activate amiibo emulation once: Same as above, but pressing the D-pad right. Toggles emulation once, after emulating an amiibo then it will untoggle automatically.

- Deactivate amiibo emulation: Same as above, but pressing the D-pad down. Untoggles amiibo emulation, and should be used as a way to fully ensure it is untoggled, in case you don't know whether it's toggled or not.

- Move to next amiibo: Same as above, but pressing the D-pad left. Moves to the next amiibo in the amiibo directory, if last one starts again with the first one. Only has effect if amiibo emulation is toggled.

--- SD layout

- Emuiibo's directory is `sd:/emuiibo`.

- Amiibos go inside `sd:/emuiibo/amiibo`. For instance, an amiibo named `MyMario` would be `sd:/emuiibo/amiibo/MyMario/[json files]`.

- Every time the console is booted, emuiibo saves all the miis inside the console to the SD card. Format is `sd:/emuiibo/miis/[index] - [name]/mii-charinfo.bin`.

-- Amiibo emulation

Emuiibo no longer requires dumps to emulate amiibos. Instead, you can use `emuGUIibo` PC tool in order to generate virtual amiibos.

![Screenshot](emuGUIibo/Screenshot.png)

--- How do virtual amiibos work?

Virtual amiibos consist on a folder containing several JSON files.

A virtual amiibo, in order to be recognised as valid, must contain valid `tag.json`, `register.json`, `common.json` and `model.json` files. This file names were chosen according to the way the console processes amiibos, which are splitted into 4 processed data blocks (TagInfo, ModelInfo, CommonInfo and RegisterInfo).

The only relevant part of an amiibo, which identifies the type of amiibo, is the amiibo ID. Every other parameter can be emulated or isn't that relevant. The NFC UUID, present on amiibo NFC dumps, is randomly generated with virtual amiibos, since it isn't something important whatsoever.

--- Miis

Miis can be an issue when attempting to make emuiibo user-friendly. Since mii format is a 88-byte data block named "CharInfo" and we have no way to see char-infos rendered but in the console itself, there is no simple way to change the mii.

-- Important notes

If (with emuiibo activated!) the title responds with an error similar to "No controller which supports NFC was found" probably means that emuiibo failed to supply the amiibo (wrong amiibo, internal error...). That error is displayed due to limitations with real NFC error codes.

-- For developers

emuiibo also hosts a custom service, `nfp:emu`, which can be used to control amiibo emulation by IPC commands.

You have an implementation for C/C++ and libnx in [here](nfpemu-libnx).

Credits

- Everyone who contributed to the original nfp-mitm project (forks): *Subv, ogniK, averne, spx01, SciresM*

- libstratosphere project and libraries

- AmiiboAPI (JSON API), which is used by `emuGUIibo` to get a proper, full amiibo list, in order to generate virtual amiibos without the need of raw dumps.

Download: Emuiibo v0.5

Post a Comment

0 Comments