Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Amiigo - Emuiibo GUI Switch: Difference between revisions

From GameBrew
(Created page with "{{Infobox Switch Homebrews |title=Amiigo - Emuiibo GUI |image=amiigoemuiiboguiswitch.png |description=GUI for Emuiibo. |author=CompSciOrBust |lastupdated=2022/08/22 |type=Utilities |version=2.3.1 |license=Mixed |download=https://dlhb.gamebrew.org/switchhomebrews/amiigoemuiiboguiswitch.7z |website=https://gbatemp.net/threads/amiigo-emuiibo-gui.549964/ |source=https://github.com/CompSciOrBust/Amiigo |donation= }} {{#seo: |title=Switch Homebrew Apps (Utilities) - GameBrew...")
 
No edit summary
Line 1: Line 1:
{{Infobox Switch Homebrews
{{Infobox Switch Homebrews
|title=Amiigo - Emuiibo GUI
|title=Amiigo - Emuiibo GUI
|image=amiigoemuiiboguiswitch.png
|image=amiigonx.png
|description=GUI for Emuiibo.
|description=GUI for Emuiibo.
|author=CompSciOrBust
|author=CompSciOrBust
|lastupdated=2022/08/22
|lastupdated=2022/08/22
Line 9: Line 8:
|version=2.3.1
|version=2.3.1
|license=Mixed
|license=Mixed
|download=https://dlhb.gamebrew.org/switchhomebrews/amiigoemuiiboguiswitch.7z
|download=https://dlhb.gamebrew.org/switchhomebrews/amiigonx.7z
|website=https://gbatemp.net/threads/amiigo-emuiibo-gui.549964/
|website=https://gbatemp.net/threads/amiigo-emuiibo-gui.549964/
|source=https://github.com/CompSciOrBust/Amiigo
|source=https://github.com/CompSciOrBust/Amiigo
|donation=
|donation=https://github.com/CompSciOrBust/Amiigo#donating
}}
}}
{{#seo:
Amiigo is a GUI for creating and switching virtual Amiibo for use with the [[Emuiibo Switch|Emuiibo]] system module. Amiigo runs entirely on the Nintendo Switch console and no PC is required for setup. A Nintendo Switch with custom firmware is required to use Amiigo. Simply run the NRO file and Amiigo will handle the rest.
|title=Switch Homebrew Apps (Utilities) - GameBrew
 
|title_mode=append
All Amiibo data is obtained from the [https://www.amiiboapi.com/ AmiiboAPI] and the [https://github.com/XorTroll/emuiibo/tree/master/emutool emutool] source code was referenced extensively to understand how virtual Amiibo generation works.
|image=amiigoemuiiboguiswitch.png
 
|image_alt=Amiigo - Emuiibo GUI
Amiigo is built with the Arriba UI framework, which was designed with Amiigo in mind.
}}
 
{{cleanup|article|Needs cleanup}}
==Controls==
GUI for Emuiibo.
D-Pad - Move between on screen buttons
 
A - Select an Amiibo from the list or click an on screen button
 
X - Toggle emulation state
 
B - Back out of a category if one is selected


Y - Open context menu


==Media==
Analog stick - Scroll through the lists
<youtube></youtube>


Touchscreen can also be used to click onscreen buttons and scroll lists.


==Screenshots==
==Screenshots==
https://dlhb.gamebrew.org/switchhomebrews/amiigoemuiiboguiswitch-01.png
https://dlhb.gamebrew.org/switchhomebrews/amiigonx2.png
https://dlhb.gamebrew.org/switchhomebrews/amiigoemuiiboguiswitch-02.png
 
https://dlhb.gamebrew.org/switchhomebrews/amiigoemuiiboguiswitch-03.png
https://dlhb.gamebrew.org/switchhomebrews/amiigonx3.png
https://dlhb.gamebrew.org/switchhomebrews/amiigoemuiiboguiswitch-04.png
 
https://dlhb.gamebrew.org/switchhomebrews/amiigoemuiiboguiswitch-05.png
https://dlhb.gamebrew.org/switchhomebrews/amiigonx4.png
https://dlhb.gamebrew.org/switchhomebrews/amiigoemuiiboguiswitch-06.png
https://dlhb.gamebrew.org/switchhomebrews/amiigoemuiiboguiswitch-07.png
https://dlhb.gamebrew.org/switchhomebrews/amiigoemuiiboguiswitch-08.png


==Changelog==
==Changelog==
'''v.1.0'''
'''v2.3.1 2022/08/22'''
* First Release.
*Amiigo will now validate that the local API cache is valid before using it, this prevents Amiigo crashing at startup if connection was lost during first setup.
*Fixed bug where function pointer was used as input to an if statement instead of the function's output during deinit. This function will likely never return false anyway.
*If you are on 2.3.0 and have experienced no crashes you don't need this update.
 
'''v2.3.0 2022/08/19'''
 
Changes to Amiigo:
*Added context menus to the selector screen, hold down on the touch screen for 0.5 seconds or press Y.
*Added option to save Amiibos to the current location in the selector.
*Added ability to favorite an Amiibo (See context menu).
*Added ability to delete an Amiibo (See context menu).
*Added ability to make a new folder (See context menu).
*Added "back" option to lists when in a subcategory.
*Altered the colours of the Amiigo store to be less bright.
*Amiigo will now reset the active virtual Amiibo when disabling Emuiibo.
*Updated to latest Arriba.
 
Changes to Arriba:
*Fixed mistake in the rendering code that would cause apps made with Arriba to render at 720p when launched in applet mode.
*Replaced all linear algebra logic from GLM with a custom math library.
*Added support for analog sticks.
*Made several optimizations to improve the rendering speed.
*Added basic support for layers.
*Added alt callback for inertial lists.
*Fixed incorrect texture coordinate data that would cause framebuffers to render upside down.
*Further abstracted input system from LibNX.
*Other minor changes and bug fixes.
 
'''v2.2.0 2022/04/07'''
*Added extra category.
*Updated Arriba.
*Fixed minor bug in API caching code.
*Check for the presence of /Atmosphere/contents when installing Emuiibo.
*Changed how Amiibos are categorized when making new Amiibos.
 
'''v2.1.0 2021/11/07'''
*Update manually, updating through Amiigo 2.0's built in updater will cause you to crash due to a bug
 
Changes to Amiigo:
*Fixed bug that would cause the console to fatal when updating through Amiigo.
*Updated Arriba.
*Added support for loading custom background shaders.
*Automatically use outdated API cache if no internet connection within 5 seconds of first time setup.
 
Changes to Arriba:
*Arriba will output the correct screen size when the console is docked / undocked.
*Arriba now renders text in to a framebuffer to improve performance.
*Fixed some text characters being incorrectly positioned.
 
'''v2.0 2021/09/07'''
*Amiigo was rewritten from scratch.
*Amiigo will now automatically install the latest version of Emuiibo when launched for the first time if Emuiibo is not present.
*Amiigo now uses a custom OpenGL based UI library called Arriba, note that I wrote Arriba so it's very bad and no one else should use it for their homebrew.
*Thanks to Arriba Amiigo now has much better touch support. The Amiibo lists now have inertia so you can scroll them like a phone menu, please mess with this it was hard to implement and probably not worth the time it took.
*The "Check for updates" button was replaced with a settings tab which has the options to switch between category modes, update the API cache, and update to the latest version of Amiigo when an update is detected.
*Amiigo will now no longer update the API cache every time you open Amiigo Maker.
*Amiigo should (hopefully) be idiot proof now. If you're unable to use it it has probably broken again and I haven't had time to update it.
*Sorry that this update took almost 2 years to release, I know that Amiigo has been broken for a long time but my console broke so I was unable to update it and a bunch of other stuff happened by the time I got a new one. I would tell you about it but I already sold exclusive rights for the story to Wololo in exchange for a pizza.
 
'''v1.6.0 2020/02/03'''
*Amiigo now has images for Amiibos thanks to @Kronos2308.
*I added my file sort code that I wrote for N-Xplorer so now the Amiibos are sorted by their name.
*Experimental support was added for theming by @Kronos2308 . This slows down the GUI a bit but I hope to speed this up for the next release.
*I also created a discord server for my projects. You can join [https://discord.gg/ZhRn3nn here].
 
'''v1.5.3 2020/01/22'''
*This version adds in a check for when Emuiibo isn't running (thank you to @Kronos2308), Changes the colors of the UI (this was done by me and @Kronos2308), and I also improved the updater code so that it no longer assumes Amiigo is in the /switch/ directory which makes updating better for people who downloaded Amiigo through 4tu's HB App Store and CFW packs.
 
'''v1.5.2 2019/12/31'''
*This update uses the new 0.4.0 Emuiibo ipc and uses libnx 3.0.0. It should be functionally identical to 1.5.1.
 
'''v1.5.1 2019/12/12'''
*With this release when creating new virtual Amiibos using Amiigo Maker the new virtual Amiibo will be created in whatever folder the main UI is currently in.
*The main UI's header will now only display the virtual Amiibo's name instead of it's path.
*Emuiibo is now properly exited when closing the app which previously caused Emuiibo to stop working when Amiigo was opened too many times.
 
'''v1.5.0 2019/11/25'''
*This release adds experimental support for categories and other minor changes.
*To use categories create a new folder in your Amiibo folder and put virtual Amiibos in it. Press A in Amiigo to enter the sub-folder and B to exit it.
 
'''v1.4.4 2019/11/18'''
*This release adds a temporary method to delete Amiibos. This can be done by pressing in on the left stick like a button. My original plan was to add an Amiibo Manager menu which would allow for deleting and renaming Amiibos but I have been busier than I anticipated lately so I haven't had time to implement it properly.
 
'''v1.4.3 2019/10/31'''
*Fixed bug that made the updater always fail.
 
'''v1.4.2 2019/10/31'''
*In this release I added a check in the updater code to prevent fataling when Github API rate limiting is in effect. I also made changes to Amiigo Maker so if the AmiiboAPI goes down again it will load the offline version instead of crashing.
 
'''v1.4.1 2019/10/30'''
*Amiibo API is down and if you try to connect to it it will overwrite the offline data with invalid data. This release will crash before that happens. I'll release a better fix soon.
 
'''v1.4.0 2019/10/30'''
*This release adds the ability to update Amiigo from within Amiigo and adds a slightly nicer UI (Thank you to shchmue for the border suggestion).
 
'''v1.3.1 2019/10/29'''
*This release adds the ability to update Amiigo from within Amiigo and adds a slightly nicer UI (Thank you to shchmue for the border suggestion).
 
'''v1.3.0 2019/10/29'''
*This version adds a touch menu for swapping between Amiigo Maker, the Amiibo list, and a option to exit the app. A new footer was added to Amiigo Maker which makes it easier to use with the touchscreen.
 
'''v1.2.0 2019/10/28'''
*As well as rewriting a lot of existing code to be more stable I also added a offline mode for Amiigo Maker. When using Amiigo Maker with a connection the API data will be cached in sdmc:/config/amiigo so that it can be used when the switch does not have an internet connection.
 
'''v1.1.0 2019/10/24'''
*Added a new menu to create virtual Amiibos directly on the device. This is an experimental features and has some bugs but it mostly works fine.
 
'''v1.0 2019/10/12'''
*This is the first release.
 
==Credits==
*[https://github.com/XorTroll/ XorTroll] for [https://github.com/XorTroll/emuiibo Emuiibo] and general help.
*[https://github.com/N3evin/ N3evin for [https://github.com/N3evin/AmiiboAPI AmiiboAPI] which is used in Amiigo Store.
*nlohmann for his [https://github.com/nlohmann/json JSON library].
*[https://github.com/Kronos2308/ Kronos2308] for maintaining Amiigo Mod.
*Victoria_Borodinova for the [https://pixabay.com/illustrations/sombrero-hat-mexico-mexican-4280389/ sombrero] used in the logo.
*Za for bringing pizzas.
*All of the beta testers in the [https://discord.gg/ZhRn3nn CompSciOrBust Discord server].
*[https://github.com/Kim-Dewelski Kim-Dewelski] for being a long time friend who has provided much useful programming advice.


== External links ==
== External links ==
* Gbatemp - https://gbatemp.net/threads/amiigo-emuiibo-gui.549964/
* Twitter - https://twitter.com/CompSciOrBust
* Github - https://github.com/CompSciOrBust/Amiigo
* GitHub - https://github.com/CompSciOrBust/Amiigo
* Reddit -
* GBAtemp - https://gbatemp.net/threads/amiigo-emuiibo-gui.549964/
* Discord - https://discord.gg/ZhRn3nn

Revision as of 13:25, 1 Mayıs 2023

Amiigo - Emuiibo GUI
Amiigonx.png
General
AuthorCompSciOrBust
TypeUtilities
Version2.3.1
LicenseMixed
Last Updated2022/08/22
Links
Download
Website
Source
Support Author

Amiigo is a GUI for creating and switching virtual Amiibo for use with the Emuiibo system module. Amiigo runs entirely on the Nintendo Switch console and no PC is required for setup. A Nintendo Switch with custom firmware is required to use Amiigo. Simply run the NRO file and Amiigo will handle the rest.

All Amiibo data is obtained from the AmiiboAPI and the emutool source code was referenced extensively to understand how virtual Amiibo generation works.

Amiigo is built with the Arriba UI framework, which was designed with Amiigo in mind.

Controls

D-Pad - Move between on screen buttons

A - Select an Amiibo from the list or click an on screen button

X - Toggle emulation state

B - Back out of a category if one is selected

Y - Open context menu

Analog stick - Scroll through the lists

Touchscreen can also be used to click onscreen buttons and scroll lists.

Screenshots

amiigonx2.png

amiigonx3.png

amiigonx4.png

Changelog

v2.3.1 2022/08/22

  • Amiigo will now validate that the local API cache is valid before using it, this prevents Amiigo crashing at startup if connection was lost during first setup.
  • Fixed bug where function pointer was used as input to an if statement instead of the function's output during deinit. This function will likely never return false anyway.
  • If you are on 2.3.0 and have experienced no crashes you don't need this update.

v2.3.0 2022/08/19

Changes to Amiigo:

  • Added context menus to the selector screen, hold down on the touch screen for 0.5 seconds or press Y.
  • Added option to save Amiibos to the current location in the selector.
  • Added ability to favorite an Amiibo (See context menu).
  • Added ability to delete an Amiibo (See context menu).
  • Added ability to make a new folder (See context menu).
  • Added "back" option to lists when in a subcategory.
  • Altered the colours of the Amiigo store to be less bright.
  • Amiigo will now reset the active virtual Amiibo when disabling Emuiibo.
  • Updated to latest Arriba.

Changes to Arriba:

  • Fixed mistake in the rendering code that would cause apps made with Arriba to render at 720p when launched in applet mode.
  • Replaced all linear algebra logic from GLM with a custom math library.
  • Added support for analog sticks.
  • Made several optimizations to improve the rendering speed.
  • Added basic support for layers.
  • Added alt callback for inertial lists.
  • Fixed incorrect texture coordinate data that would cause framebuffers to render upside down.
  • Further abstracted input system from LibNX.
  • Other minor changes and bug fixes.

v2.2.0 2022/04/07

  • Added extra category.
  • Updated Arriba.
  • Fixed minor bug in API caching code.
  • Check for the presence of /Atmosphere/contents when installing Emuiibo.
  • Changed how Amiibos are categorized when making new Amiibos.

v2.1.0 2021/11/07

  • Update manually, updating through Amiigo 2.0's built in updater will cause you to crash due to a bug

Changes to Amiigo:

  • Fixed bug that would cause the console to fatal when updating through Amiigo.
  • Updated Arriba.
  • Added support for loading custom background shaders.
  • Automatically use outdated API cache if no internet connection within 5 seconds of first time setup.

Changes to Arriba:

  • Arriba will output the correct screen size when the console is docked / undocked.
  • Arriba now renders text in to a framebuffer to improve performance.
  • Fixed some text characters being incorrectly positioned.

v2.0 2021/09/07

  • Amiigo was rewritten from scratch.
  • Amiigo will now automatically install the latest version of Emuiibo when launched for the first time if Emuiibo is not present.
  • Amiigo now uses a custom OpenGL based UI library called Arriba, note that I wrote Arriba so it's very bad and no one else should use it for their homebrew.
  • Thanks to Arriba Amiigo now has much better touch support. The Amiibo lists now have inertia so you can scroll them like a phone menu, please mess with this it was hard to implement and probably not worth the time it took.
  • The "Check for updates" button was replaced with a settings tab which has the options to switch between category modes, update the API cache, and update to the latest version of Amiigo when an update is detected.
  • Amiigo will now no longer update the API cache every time you open Amiigo Maker.
  • Amiigo should (hopefully) be idiot proof now. If you're unable to use it it has probably broken again and I haven't had time to update it.
  • Sorry that this update took almost 2 years to release, I know that Amiigo has been broken for a long time but my console broke so I was unable to update it and a bunch of other stuff happened by the time I got a new one. I would tell you about it but I already sold exclusive rights for the story to Wololo in exchange for a pizza.

v1.6.0 2020/02/03

  • Amiigo now has images for Amiibos thanks to @Kronos2308.
  • I added my file sort code that I wrote for N-Xplorer so now the Amiibos are sorted by their name.
  • Experimental support was added for theming by @Kronos2308 . This slows down the GUI a bit but I hope to speed this up for the next release.
  • I also created a discord server for my projects. You can join here.

v1.5.3 2020/01/22

  • This version adds in a check for when Emuiibo isn't running (thank you to @Kronos2308), Changes the colors of the UI (this was done by me and @Kronos2308), and I also improved the updater code so that it no longer assumes Amiigo is in the /switch/ directory which makes updating better for people who downloaded Amiigo through 4tu's HB App Store and CFW packs.

v1.5.2 2019/12/31

  • This update uses the new 0.4.0 Emuiibo ipc and uses libnx 3.0.0. It should be functionally identical to 1.5.1.

v1.5.1 2019/12/12

  • With this release when creating new virtual Amiibos using Amiigo Maker the new virtual Amiibo will be created in whatever folder the main UI is currently in.
  • The main UI's header will now only display the virtual Amiibo's name instead of it's path.
  • Emuiibo is now properly exited when closing the app which previously caused Emuiibo to stop working when Amiigo was opened too many times.

v1.5.0 2019/11/25

  • This release adds experimental support for categories and other minor changes.
  • To use categories create a new folder in your Amiibo folder and put virtual Amiibos in it. Press A in Amiigo to enter the sub-folder and B to exit it.

v1.4.4 2019/11/18

  • This release adds a temporary method to delete Amiibos. This can be done by pressing in on the left stick like a button. My original plan was to add an Amiibo Manager menu which would allow for deleting and renaming Amiibos but I have been busier than I anticipated lately so I haven't had time to implement it properly.

v1.4.3 2019/10/31

  • Fixed bug that made the updater always fail.

v1.4.2 2019/10/31

  • In this release I added a check in the updater code to prevent fataling when Github API rate limiting is in effect. I also made changes to Amiigo Maker so if the AmiiboAPI goes down again it will load the offline version instead of crashing.

v1.4.1 2019/10/30

  • Amiibo API is down and if you try to connect to it it will overwrite the offline data with invalid data. This release will crash before that happens. I'll release a better fix soon.

v1.4.0 2019/10/30

  • This release adds the ability to update Amiigo from within Amiigo and adds a slightly nicer UI (Thank you to shchmue for the border suggestion).

v1.3.1 2019/10/29

  • This release adds the ability to update Amiigo from within Amiigo and adds a slightly nicer UI (Thank you to shchmue for the border suggestion).

v1.3.0 2019/10/29

  • This version adds a touch menu for swapping between Amiigo Maker, the Amiibo list, and a option to exit the app. A new footer was added to Amiigo Maker which makes it easier to use with the touchscreen.

v1.2.0 2019/10/28

  • As well as rewriting a lot of existing code to be more stable I also added a offline mode for Amiigo Maker. When using Amiigo Maker with a connection the API data will be cached in sdmc:/config/amiigo so that it can be used when the switch does not have an internet connection.

v1.1.0 2019/10/24

  • Added a new menu to create virtual Amiibos directly on the device. This is an experimental features and has some bugs but it mostly works fine.

v1.0 2019/10/12

  • This is the first release.

Credits

External links

Advertising: