TechXero I tried pointing it to a 4tb HDD in settings asks for reboot which I do but still won't see ROMs. What exactly is file structure supposed to be for it to see them?
After you have selected the external HDD and rebooted, you should, when you connect this HDD to another PC (windows for example), see in file explorer a folder called "batocera" and inside of it several other folders.
Among those several other folders there is one folder called "roms" and inside of it, there are folders for each system (like nes for NES, snes for SNES, gamecube for Gamecube games and so on). Put your game files into those folders. Then connect the drive back to the machine where you installed batocera on and turn this machine on. You may have to select this external drive within Batocera again and have to reboot. But then you should see all your games.
Regarding your issue with not saved setting changes for Gamecube games (like resolution for example):
You have to open your games via dolphin-emu-config (in the upper left corner, go to Open, then navigate to /userdata/roms/gamecube (or wii) and select the game) so that your config changes will not get lost. Because every time you exit dolphin-emu-config some of the changes you made are getting reverted back to default. That is (at least partially) wanted. I know, this is not user-friendly (because usually we are using the Game List in EmulationStation to choose, which game we want to play) but at the moment there is no other solution, to use (certain) changed settings in dolphin-emulator for Gamecube/Wii games
Regarding controller config changes:
The controller configs can be permanent on a ROM basis. But we need to finish the documentation: https://wiki.batocera.org/doku.php?id=emulators:wii
Any help on this would be appreciated :)