Tutorial  Updated

Using "smashhax" with Linux

If you can use the browser, I suggest that you use the new browserhax (up to 11.0.0-33!) in the meantime.

Try out Ubuntu 15.04: http://old-releases.ubuntu.com/releases/15.04/

This requires a New 3DS. The demo version doesn't work and is patched. If you have 1.1.3 or newer delete/disable the update data.

officially called smashbroshax sometimes smashax
Here is a new tool I call smashbroshax-helper. It is a graphical interface for the exploit which simplifies most of the process of broadcasting the packet. It requires almost no setup outside of creating a bootable Linux USB/DVD.

Important notes:
  • This does not work on Fedora or Red Hat-based distributions because aircrack-ng needs to be compiled on it (and I can't figure out how to install the needed things).
  • Don't use a virtual machine!
  • This probably will never work on Old 3DS.
Download smashbroshax-helper beta

It is recommended that you use a live Ubuntu 15.04 image. Versions 15.10+ have issues. http://old-releases.ubuntu.com/releases/15.04/
  1. Create a bootable USB/DVD with a Linux distribution (there are various guides online).
  2. If possible, get a second USB/SD card/storage device, download and save the above .zip to it.
    • Don't extract the contents of it to the USB device, as it might cause problems. Just save the .zip file to it.
    • If you can't do this, you'll have to connect to the Internet while in Linux to download it.
    • If using a bootable USB, make sure you can use two ports at a time. Don't take out the Linux USB while it is being used!
  3. Restart your computer and run the bootable USB/DVD you created.
  4. Extract the contents of the .zip to the Desktop.
  5. Open the smashbroshax-helper folder and double click "smashbroshax.sh".
  6. Follow the on-screen prompts.
  7. If everything goes well, you should now have homebrew!
Video demonstration, from boot to shutdown:

from https://gbatemp.net/threads/tutorial-using-smashhax-with-linux.397194/page-9#post-5842512


If you would like the full tutorial, involving terminal usage and compiling:
To reverse the changes to your wireless interface and remove issues connecting to networks after, rebooting your system or changing it to "Managed" instead of "monitor" should fix it. How to do that is in the second to last section.



@Cydget made a script that condenses most of this into a script. I have not tried it myself yet but it seems to work for others.
So, I made a little script for this. If anybody wants it, then unzip this file and read the readme. And yes, I like to pipe things. http://www.mediafire.com/download/oulnubnzkk9g3i0/smashhaxEZ.zip

Requirements
  • Any Linux distribution should do (this has only been tested with Debian-based distributions). Windows and OS X users should wait or find a method for now, sorry!
    • Please do not use Linux in a virtual machine, it likely won't give direct access to your wireless card. Dual boot or use a live USB/disk.
    • The recommended distro to use is Ubuntu 15.04 (link to Ubuntu MATE 15.04).
  • A Wi-Fi-capable wireless card.
  • Super Smash Bros. for Nintendo 3DS Full or Demo.
  • New 3DS. This does not work on Old 3DS.
  • Patience. The hax is sort-of unreliable so your game will most likely crash a few times.
  • Recommended: Another device to access the internet (phone, tablet, computer, console).
Preparing
  • Install these packages using your package manager. For example, "apt-get" for Debian-based distributions (including Ubuntu).
    Code:
    openssl libssl-dev libnl-genl-3-200 libnl-genl-3-dev libnl-3-200 libnl-3-dev pkg-config
  • Find your wireless card's interface by opening a terminal and using the command "ip link". It would be something like wlan0 or wlp3s0.
    Code:
    ian@ian-VPCEG34FX:~/Desktop/aircrack-ng-1.2-rc2/src$ ip link
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default 
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
        link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    3: wlan0: <NO-CARRIER,BROADCAST,ALLMULTI,PROMISC,NOTRAILERS,UP,LOWER_UP> mtu 1500 qdisc mq state DORMANT mode DORMANT group default qlen 1000
        link/ieee802.11/radiotap xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
  • You probably already have it, but get the homebrew starter kit and place it on your SD card.
  • Download the smashhax .pcap files from the releases section of the smashbroshax repository.
  • Determine the .pcap file to use. This should be straightforward using the file names.
    The built beacon-hax pcaps are located under "pcap_out/". In the filenames, "vXYZ" means game-version "vX.Y.Z". Full-game filenames for USA include "gameusa", while the other regions filenames include "gameother".
  • Get the "Otherapp payload" from the Homebrew Launcher site and save it to "smashpayload.bin" at the root of your SD card.
  • Download and extract aircrack-ng's latest release source.
  • Save aireplay-ng.patch from the smashbroshax repository in the folder "aircrack-ng-1.2-rc2".
Compiling aircrack-ng/aireplay-ng
  • Open a terminal and go to the "aircrack-ng-1.2-rc2" folder.
  • Use the command "patch src/aireplay-ng.c < aireplay-ng.patch". If you get the following then it has succeeded.
    Code:
    patching file src/aireplay-ng.c
    Hunk #1 succeeded at 560 (offset 1 line).
    Hunk #2 succeeded at 573 (offset 1 line).
  • Run "make" and wait. The program should be compiled with the patch now. If you get the following as the last line then it has succeeded.
    Code:
    make[1]: Leaving directory '/path/to/aircrack-ng-1.2-rc2/src'
The moment of truth
  • Run these 3 terminal commands in order, using the wireless interface (from "ip link") you found earlier.
    sudo ifconfig wireless_interface down
    sudo iwconfig wireless_interface mode monitor
    sudo ifconfig wireless_interface up
    sudo iwconfig wireless_interface channel 6​
    (the last line was suggested by @difool. and might make the payload trigger faster)
  • Enter the "src" folder in your terminal.
  • Run the following command to start broadcasting the packet: "sudo ./aireplay-ng --interactive -r /path/to/smashbros_version_beaconhax.pcap -h 59:ee:3f:2a:37:e0 -x 10 wireless_interface"
    Use the .pcap file and wireless interface you found out earlier.
  • On the 3DS system, start the game, then choose Smash and Group. Wait for the magic to happen.
Encountering errors? Something confusing?
  • Does running aireplay-ng end with "End of file"? You might be running your installed version of aircrack-ng. Don't forget the ./ for "sudo ./aireplay-ng ..."!
  • Please tell me the distribution you are using and the error you've encountered. This will help me fix your issue faster.
  • If you don't get something, don't hesitate to point it out! I want to help anyone I can.
  • Did you spot an inaccuracy or mistake I made? It would be great if you can tell me that too.
  • This was before the Otherapp payload selector was added to the HBL site. This is kept here for legacy reasons or something.
    • Determine what file you need to get from the Homebrew Launcher Payload section:
      With the release builds, the hax loads the payload from SD "/smashpayload.bin". This should contain the hb-launcher(https://smealum.github.io/3ds/) otherapp payload. Until there's a proper otherapp payload selector on the hb-launcher site, the payload can be downloaded from the following URL(see also https://github.com/smealum/sploit_installer):
      FIRMVER values(without quotes):
      • "POST5" = non-New3DS
      • "N3DS" = New3DS
      REGION values(without quotes):
      • "U" = USA
      • "E" = EUR
      • "J" = JPN
      MENUVER values(without quotes):
      • "11272": Non-JPN, system-version v9.0.
      • "12288": System-version v9.2.
      • "13330": System-version v9.3.
      • "14336": System-version v9.4.
      • "15360": System-version v9.5.
      • "16404": System-version v9.6.
      • "17415": System-version v9.7.
      • "20480_usa": USA, system-versions v9.9-v10.0.
      • "19456": Non-USA, system-versions v9.8-v10.0.
      MSETVER values(without quotes):
      • "8203": System-versions below v9.6.
      • "9221": System-versions starting with v9.6.
      For example, the payload URL for New3DS USA 9.9.0-X - 10.0.0-X is:https://smealum.github.io/ninjhax2/Pvl9iD2Im5/otherapp/N3DS_U_20480_usa_9221.bin
      The end result is a file named "smashpayload.bin" at the root of your SD card.

You are allowed to reproduce/reprint this tutorial, as long as a link back to this page (https://gbatemp.net/threads/tutorial-using-smashhax-with-linux.397194/) is included.
 
Last edited by ihaveahax,

ihaveahax

Well-Known Member
OP
Member
Joined
Apr 20, 2015
Messages
6,070
Trophies
2
XP
7,835
Country
United States
I think I've found an optimal environment for smashbroshax: Ubuntu 15.04 (and its derivatives, like Ubuntu MATE) seems to be the best one.

also, I found out that you don't need to install anything unless you want to build it, and I can just link to a prebuilt aireplay-ng (it's GPL licensed so I'm allowed).

I think I can turn this into a really easy way to use smashbroshax.

here's a video of it working! like I mentioned earlier, I didn't install anything, just ran Ubuntu MATE 15.04 from a USB drive and started broadcasting.
 

janckat

Member
Newcomer
Joined
Nov 26, 2015
Messages
13
Trophies
0
XP
52
Country
Canada
i did the channel 6 command yes. My computer shows the same output as the others, that packets are being sent:
kcEcGVI.png
 

janckat

Member
Newcomer
Joined
Nov 26, 2015
Messages
13
Trophies
0
XP
52
Country
Canada
ifconfig will show all your network devices. ifconfig (devicename) like ifconfig wlan0 will show just one device

Code:
root@candyhouse:~/ds/aircrack-ng-1.2-rc2/src# ifconfig wlan1mon
wlan1mon  Link encap:UNSPEC  HWaddr 48-F8-B3-69-6B-4C-00-00-00-00-00-00-00-00-00-00
          UP BROADCAST NOTRAILERS RUNNING PROMISC ALLMULTI  MTU:1500  Metric:1
          RX packets:799594 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:187270255 (178.5 MiB)  TX bytes:0 (0.0 B)
 

janckat

Member
Newcomer
Joined
Nov 26, 2015
Messages
13
Trophies
0
XP
52
Country
Canada
Last edited by janckat,

alkatraz91

Well-Known Member
Member
Joined
Oct 28, 2015
Messages
177
Trophies
0
Age
32
XP
123
Country
Italy
cannot do it now..i am on windows.. i use the usb wifi because i not know why but on ubutu my wireless pc card not work

--------------------- MERGED ---------------------------

i can suggest u to non have connected to wifi the 3ds and the pc for try?
named the otherapp smashpayload? u have the right version for your 3ds? and using the right pcap file matching the smash version? i am on 10.3.0-28e and using the 1.1.2 otherversion pcap because i am from europe(italy)
 
Last edited by alkatraz91,

Metalliguitare

Active Member
Newcomer
Joined
Dec 1, 2015
Messages
26
Trophies
0
Age
37
XP
82
Country
France
Hello there.

Thank you for the hard rock.

I'm trying on my side, but i don't manage to have my N3DS detect the beacon

I'm running a JPN N3DSLL 10.3.0-28J with v1.1.2 version of SSB Japanese version

I have a desktop under Xubuntu and a Edimax micro wifi dongle.

All seems to be working on the PC side.
Not one error, all installed went good,
etc etc
I see the packets number growing.

3DS side, i have on my SD the smashpayload.bin and the starter kit etc...

But when i go into group mode, nothing happens...

If someone has a hint, i'll be glad of course.
Thanks for the help :)

Rock on \m/
 
Last edited by Metalliguitare,

Arab

Well-Known Member
Newcomer
Joined
Jan 26, 2011
Messages
65
Trophies
1
Age
30
XP
279
Country
United States
I think I've found an optimal environment for smashbroshax: Ubuntu 15.04 (and its derivatives, like Ubuntu MATE) seems to be the best one.

also, I found out that you don't need to install anything unless you want to build it, and I can just link to a prebuilt aireplay-ng (it's GPL licensed so I'm allowed).

I think I can turn this into a really easy way to use smashbroshax.

here's a video of it working! like I mentioned earlier, I didn't install anything, just ran Ubuntu MATE 15.04 from a USB drive and started broadcasting.


So I tried it without installing it via usb with Ubuntu and i get it stuck on 93 packets. I guess my card isn't compatible with smashhax
 

Favna

#PCMasterRace
Member
Joined
Sep 12, 2009
Messages
864
Trophies
1
Website
twitter.com
XP
822
Country
Netherlands
So I tried it without installing it via usb with Ubuntu and i get it stuck on 93 packets. I guess my card isn't compatible with smashhax
Your best shot would then be a wifi USB adapter. Ideally they can be dirt cheap so it shouldn't be too much of a hassle.
 

Cydget

Well-Known Member
Member
Joined
Oct 1, 2015
Messages
493
Trophies
0
Age
27
XP
260
Country
United States
If anyone has a wi-pi adapter wireless adapter, would you mind testing it and saying if it works. If it works, it would be a very easy to recommend/link for others who need one, and also its is pretty cheap.
 

alkatraz91

Well-Known Member
Member
Joined
Oct 28, 2015
Messages
177
Trophies
0
Age
32
XP
123
Country
Italy
i have an external usb wifi and it work.but i have it for extend the range of the wifi,because i live in fron of my university and the pc wireless card isn't so powerful to grab the signal.and ubuntu not recognize my pc wireless card..but with the usb wifi card all work for me . I suggest to not have the ds and the pc connected to any WiFi... I tried 3 time and all work.. I have a 100% success to launch the homebrew for now...I have the last Ubuntu installed on live USB
janckat try to do ip link and post what u see.
 
Last edited by alkatraz91,

Einzbern

Well-Known Member
Newcomer
Joined
Oct 9, 2008
Messages
45
Trophies
0
XP
207
Country
United States
I know the first page says the demo doesn't work and is patched, but what about an older demo? I have a demo downloaded from months ago (way prior to smashhax) and never did anything with it.

I went ahead and tried anyways and I think I have everything setup right. The first time I tried it the game crashed, but the next 3-4 times I would get a visual glitch on the top screen. Most of those times it was a set of lines going across half the screen from top to bottom in a orange/green/purplish color, while the other half were just these glitchy looking bars. One attempt the visual glitch was just black and white stripes. I've tried leaving it here for a few mins, but nothing happened whereas some videos I saw it launched into homebrew pretty much instantly.

Am I SoL, or do I just need to keep trying since this hax isn't reliable?
 

alkatraz91

Well-Known Member
Member
Joined
Oct 28, 2015
Messages
177
Trophies
0
Age
32
XP
123
Country
Italy
not know...i do it 3 times and all 3 times it work..twice in a row too..so i not know,but since u are having visual glitches maybe it is working.make sure u are using the ight pcap file and the right otherapp
 

ihaveahax

Well-Known Member
OP
Member
Joined
Apr 20, 2015
Messages
6,070
Trophies
2
XP
7,835
Country
United States
I know the first page says the demo doesn't work and is patched, but what about an older demo? I have a demo downloaded from months ago (way prior to smashhax) and never did anything with it.

I went ahead and tried anyways and I think I have everything setup right. The first time I tried it the game crashed, but the next 3-4 times I would get a visual glitch on the top screen. Most of those times it was a set of lines going across half the screen from top to bottom in a orange/green/purplish color, while the other half were just these glitchy looking bars. One attempt the visual glitch was just black and white stripes. I've tried leaving it here for a few mins, but nothing happened whereas some videos I saw it launched into homebrew pretty much instantly.

Am I SoL, or do I just need to keep trying since this hax isn't reliable?
pretty much SOL because the demo doesn't have SD card access. you had to build the .pcap files yourself with the PAYLOADURL option and host it somewhere. even then that didn't seem to work so well. from yellows8 himself:
Don't know if the *hax payload would ever be usable with the demo.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • Xdqwerty @ Xdqwerty:
    good night
  • BakerMan @ BakerMan:
    as to you
  • K3Nv2 @ K3Nv2:
    How do you know if the night will be good when you're asleep
  • BakerMan @ BakerMan:
    because i didn't say i was asleep
  • BakerMan @ BakerMan:
    i said i was sleeping...
  • BakerMan @ BakerMan:
    sleeping with uremum
  • K3Nv2 @ K3Nv2:
    Even my mum slept on that uremum
  • TwoSpikedHands @ TwoSpikedHands:
    yall im torn... ive been hacking away at tales of phantasia GBA (the USA version) and have so many documents of reverse engineering i've done
  • TwoSpikedHands @ TwoSpikedHands:
    I just found out that the EU version is better in literally every way, better sound quality, better lighting, and there's even a patch someone made to make the text look nicer
  • TwoSpikedHands @ TwoSpikedHands:
    Do I restart now using what i've learned on the EU version since it's a better overall experience? or do I continue with the US version since that is what ive been using, and if someone decides to play my hack, it would most likely be that version?
  • Sicklyboy @ Sicklyboy:
    @TwoSpikedHands, I'll preface this with the fact that I know nothing about the game, but, I think it depends on what your goals are. Are you trying to make a definitive version of the game? You may want to refocus your efforts on the EU version then. Or, are you trying to make a better US version? In which case, the only way to make a better US version is to keep on plugging away at that one ;)
  • Sicklyboy @ Sicklyboy:
    I'm not familiar with the technicalities of the differences between the two versions, but I'm wondering if at least some of those differences are things that you could port over to the US version in your patch without having to include copyrighted assets from the EU version
  • TwoSpikedHands @ TwoSpikedHands:
    @Sicklyboy I am wanting to fully change the game and bend it to my will lol. I would like to eventually have the ability to add more characters, enemies, even have a completely different story if i wanted. I already have the ability to change the tilemaps in the US version, so I can basically make my own map and warp to it in game - so I'm pretty far into it!
  • TwoSpikedHands @ TwoSpikedHands:
    I really would like to make a hack that I would enjoy playing, and maybe other people would too. swapping to the EU version would also mean my US friends could not legally play it
  • TwoSpikedHands @ TwoSpikedHands:
    I am definitely considering porting over some of the EU features without using the actual ROM itself, tbh that would probably be the best way to go about it... but i'm sad that the voice acting is so.... not good on the US version. May not be a way around that though
  • TwoSpikedHands @ TwoSpikedHands:
    I appreciate the insight!
  • The Real Jdbye @ The Real Jdbye:
    @TwoSpikedHands just switch, all the knowledge you learned still applies and most of the code and assets should be the same anyway
  • The Real Jdbye @ The Real Jdbye:
    and realistically they wouldn't

    be able to play it legally anyway since they need a ROM and they probably don't have the means to dump it themselves
  • The Real Jdbye @ The Real Jdbye:
    why the shit does the shitbox randomly insert newlines in my messages
  • Veho @ Veho:
    It does that when I edit a post.
  • Veho @ Veho:
    It inserts a newline in a random spot.
  • The Real Jdbye @ The Real Jdbye:
    never had that i don't think
  • Karma177 @ Karma177:
    do y'all think having an sd card that has a write speed of 700kb/s is a bad idea?
    trying to restore emunand rn but it's taking ages... (also when I finished the first time hekate decided to delete all my fucking files :wacko:)
  • The Real Jdbye @ The Real Jdbye:
    @Karma177 that sd card is 100% faulty so yes, its a bad idea
  • The Real Jdbye @ The Real Jdbye:
    even the slowest non-sdhc sd cards are a few MB/s
    The Real Jdbye @ The Real Jdbye: even the slowest non-sdhc sd cards are a few MB/s