Account for 6-at-a-time streetpasses, and new Quick Mode that runs in 3 minutes.
This commit is contained in:
parent
2a921e7e64
commit
3bf72eb36a
2 changed files with 35 additions and 40 deletions
25
README.md
25
README.md
|
@ -4,18 +4,15 @@ OSX Bash Script for automating the process of getting Nintendo 3DS StreetPass hi
|
||||||
|
|
||||||
What's New
|
What's New
|
||||||
==========
|
==========
|
||||||
**v 0.5**
|
**v 1.0**
|
||||||
|
|
||||||
Addition of interrupt and error catching so that the MAC address always gets set back to the original address (thanks to @andypiper).
|
Script has been updated for the new "six at a time" feature of StreetPass Relay. The following features have been added/change:
|
||||||
|
|
||||||
**v 0.3**
|
* OS X Mavericks support
|
||||||
|
* Each address in the cycle will now connect for 90 seconds in order to provide more time for the additional data to be sent for all six potential streetpasses.
|
||||||
Specifying the port (en0,en1,etc.) is no longer necessary. You can now run the program using either of the basic commands:
|
* Running the script in standard mode ( **./relayhmyhome** ) will now only hit the five main Nintendo World addresses. You should be able to run this mode 2-3 times before you run out of streetpasses. This mode also provides the opportunity to get any "special" Miis that are generally only available via these addresses.
|
||||||
|
* Running the script in full mode ( **./relaymyhome full** ) will now connect to five random addresses (down from 20), taking a total of 7.5 minutes. This provides 30 potential streetpasses, and should fill your 10 slots reliably.
|
||||||
* **./relaymyhome** (basic mode)
|
* **New mode**: Running the script in quick mode ( **./relaymyhome quick** ) will connect to two random addresses, taking a total of three (3) minutes. This should quickyl fill your 10 streetpasses (out of the 12 potential ones), but will sometimes return fewer than 10.
|
||||||
* **./relaymyhome full** (full mode with random addresses) **Recommended**
|
|
||||||
|
|
||||||
Thanks go out to @imariaprime for the changes.
|
|
||||||
|
|
||||||
What It Does
|
What It Does
|
||||||
============
|
============
|
||||||
|
@ -24,7 +21,7 @@ By setting up your Mac computer to act like a StreetPass Relay, you can get Stre
|
||||||
What You'll Need
|
What You'll Need
|
||||||
================
|
================
|
||||||
* A Nintendo 3DS that has **updated firmware (as of August 2013)** with WiFi turned on, all apps/games closed, and in sleep mode (lid closed).
|
* A Nintendo 3DS that has **updated firmware (as of August 2013)** with WiFi turned on, all apps/games closed, and in sleep mode (lid closed).
|
||||||
* An Apple computer running OS X (only tested on 10.8, although earlier versions may work as well) with both wired and wireless network interfaces (MacBook Airs will need a USB or Thunderbolt to Ethernet adapter for the wired connection). Your wired connection must be connected to a wired network and able to access the Internet over that connection.
|
* An Apple computer running OS X (only tested on 10.8 and Mavericks, although earlier versions may work as well) with both wired and wireless network interfaces (MacBook Airs will need a USB or Thunderbolt to Ethernet adapter for the wired connection). Your wired connection must be connected to a wired network and able to access the Internet over that connection.
|
||||||
* An account with administrator rights on the computer.
|
* An account with administrator rights on the computer.
|
||||||
|
|
||||||
Installation & Usage (Mac OS X 10.8)
|
Installation & Usage (Mac OS X 10.8)
|
||||||
|
@ -35,13 +32,15 @@ Installation & Usage (Mac OS X 10.8)
|
||||||
4. Open **System Preferences**, then select **Sharing**. Select **Internet Sharing**, then set "Share your connection from:" to **Ethernet**, and check off **WiFi** in the "To computers using" box. Finally, check off **Internet Sharing** and click **Start** at the prompt.
|
4. Open **System Preferences**, then select **Sharing**. Select **Internet Sharing**, then set "Share your connection from:" to **Ethernet**, and check off **WiFi** in the "To computers using" box. Finally, check off **Internet Sharing** and click **Start** at the prompt.
|
||||||
5. Open **Terminal** (in your Applications folder under *Utilities*), and navigate to the location you placed **relaymyhome** -- if you put it in **Documents**, then in *Terminal* type: **cd ~/Documents**
|
5. Open **Terminal** (in your Applications folder under *Utilities*), and navigate to the location you placed **relaymyhome** -- if you put it in **Documents**, then in *Terminal* type: **cd ~/Documents**
|
||||||
7. If this is the first time you are running the script, in Terminal enter the command: **chmod +x relaymyhome**
|
7. If this is the first time you are running the script, in Terminal enter the command: **chmod +x relaymyhome**
|
||||||
8. Now type **./relaymyhome full** and you should see the script do its thing. If you get an error that stops the script, something went wrong. The script takes about 20 minutes to run, after which you should have a list full of StreetPass hits on your 3DS.
|
8. Now type **./relaymyhome full** and you should see the script do its thing. If you get an error that stops the script, something went wrong. The script takes about 8 minutes to run, after which you should have a list full of StreetPass hits on your 3DS.
|
||||||
9. Once you have greeted your new visitors in the StreetPass Plaza, you can run the script again to get another batch of StreetPasses. You should be able to run the script at least a dozen times before you will need to wait for the eight hour cooldown on hitting the same relay twice.
|
9. Once you have greeted your new visitors in the StreetPass Plaza, you can run the script again to get another batch of StreetPasses. You should be able to run the script many times before you will need to wait for the eight hour cooldown on hitting the same relay twice.
|
||||||
|
|
||||||
Credits
|
Credits
|
||||||
=======
|
=======
|
||||||
All credit for the original idea of duplicating StreetPass Relays goes to the many folks [listed here](https://docs.google.com/spreadsheet/lv?key=0AvvH5W4E2lIwdEFCUkxrM085ZGp0UkZlenp6SkJablE&f=true&noheader=true&gid=0). All I've done is automated the process that they discovered.
|
All credit for the original idea of duplicating StreetPass Relays goes to the many folks [listed here](https://docs.google.com/spreadsheet/lv?key=0AvvH5W4E2lIwdEFCUkxrM085ZGp0UkZlenp6SkJablE&f=true&noheader=true&gid=0). All I've done is automated the process that they discovered.
|
||||||
|
|
||||||
|
Many thanks to all who have contributed time and code to this project!
|
||||||
|
|
||||||
Want to Help?
|
Want to Help?
|
||||||
=============
|
=============
|
||||||
If you'd like to improve this script, please make the changes and submit a pull request. Thanks in advance!
|
If you'd like to improve this script, please make the changes and submit a pull request. Thanks in advance!
|
||||||
|
|
50
relaymyhome
50
relaymyhome
|
@ -20,10 +20,10 @@
|
||||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
# THE SOFTWARE.
|
# THE SOFTWARE.
|
||||||
|
|
||||||
# RelayMyHome -- v. 0.5
|
# RelayMyHome -- v. 1.0
|
||||||
# by Rob Zimmerman (https://www.github.com/taintedzodiac)
|
# Original script by Rob Zimmerman (https://www.github.com/taintedzodiac)
|
||||||
# View the original source, readme, and license at https://github.com/taintedzodiac/relaymyhome
|
# See other generous contributors, plus view the source, readme, and license at https://github.com/taintedzodiac/relaymyhome
|
||||||
# Tested in OS X 10.8 (Mountain Lion)
|
# Tested in OS X 10.8 (Mountain Lion) and Mavericks
|
||||||
|
|
||||||
#! /bin/bash
|
#! /bin/bash
|
||||||
|
|
||||||
|
@ -54,12 +54,11 @@ ctrl_c()
|
||||||
# trap keyboard interrupt (control-c) or unexpected quit
|
# trap keyboard interrupt (control-c) or unexpected quit
|
||||||
trap ctrl_c SIGINT SIGTERM
|
trap ctrl_c SIGINT SIGTERM
|
||||||
|
|
||||||
if [[ $1 == "full" ]]
|
if [[ $1 == "full" || $1 == "quick" ]]
|
||||||
then
|
then
|
||||||
# Generate a full list of 160 MACs when "full" mode is specified
|
# Generate a full list of 160 MACs when "full" mode is specified
|
||||||
# To use full mode: ./relaymyhome full
|
# To use full mode: ./relaymyhome full
|
||||||
# Check the repo at github for more information.
|
# Check the repo at github for more information.
|
||||||
echo "Full Mode enabled. Randomly seeding from full list of addresses."
|
|
||||||
|
|
||||||
# Set the base MAC address
|
# Set the base MAC address
|
||||||
baseAddr="4E:53:50:4F:4F:"
|
baseAddr="4E:53:50:4F:4F:"
|
||||||
|
@ -79,15 +78,24 @@ then
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
|
|
||||||
for a in {1..20}
|
if [[ $1 == "full" ]]
|
||||||
|
then
|
||||||
|
num=5
|
||||||
|
echo "Full Mode enabled. Randomly seeding five addresses from full list."
|
||||||
|
else
|
||||||
|
num=2
|
||||||
|
echo "Quick Mode enabled. Randomly seeding two addresses from full list."
|
||||||
|
fi
|
||||||
|
|
||||||
|
for a in $(seq 1 $num)
|
||||||
do
|
do
|
||||||
selectedAddr=${Addr[$RANDOM % ${#Addr[@]} ]}
|
selectedAddr=${Addr[$RANDOM % ${#Addr[@]} ]}
|
||||||
echo "Cycling WiFi..."
|
echo "Cycling WiFi..."
|
||||||
sudo ifconfig $wifi lladdr $selectedAddr
|
sudo ifconfig $wifi lladdr $selectedAddr
|
||||||
networksetup -setairportpower $wifi off
|
networksetup -setairportpower $wifi off
|
||||||
networksetup -setairportpower $wifi on
|
networksetup -setairportpower $wifi on
|
||||||
echo "Spoofing $wifi to $selectedAddr for 60 seconds"
|
echo "Spoofing $wifi to $selectedAddr for 90 seconds ($a of $num)"
|
||||||
sleep 60
|
sleep 90
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|
||||||
|
@ -99,31 +107,19 @@ else
|
||||||
addr[2]='00:0D:67:15:D5:44'
|
addr[2]='00:0D:67:15:D5:44'
|
||||||
addr[3]='00:0D:67:15:D2:59'
|
addr[3]='00:0D:67:15:D2:59'
|
||||||
addr[4]='00:0D:67:15:D6:FD'
|
addr[4]='00:0D:67:15:D6:FD'
|
||||||
addr[5]='4E:53:50:4F:4F:40'
|
|
||||||
addr[6]='4E:53:50:4F:4F:41'
|
|
||||||
addr[7]='4E:53:50:4F:4F:42'
|
|
||||||
addr[8]='4E:53:50:4F:4F:43'
|
|
||||||
addr[9]='4E:53:50:4F:4F:44'
|
|
||||||
addr[10]='4E:53:50:4F:4F:45'
|
|
||||||
addr[11]='4E:53:50:4F:4F:46'
|
|
||||||
addr[12]='4E:53:50:4F:4F:47'
|
|
||||||
addr[13]='4E:53:50:4F:4F:48'
|
|
||||||
addr[14]='4E:53:50:4F:4F:49'
|
|
||||||
addr[15]='4E:53:50:4F:4F:4A'
|
|
||||||
addr[16]='4E:53:50:4F:4F:4B'
|
|
||||||
addr[17]='4E:53:50:4F:4F:4C'
|
|
||||||
addr[18]='4E:53:50:4F:4F:4D'
|
|
||||||
addr[19]='4E:53:50:4F:4F:4E'
|
|
||||||
addr[20]='4E:53:50:4F:4F:4F'
|
|
||||||
|
|
||||||
|
echo "Standard Mode enabled. Connecting to five Nintendo World addresses."
|
||||||
|
n=1
|
||||||
|
|
||||||
for a in "${addr[@]}"
|
for a in "${addr[@]}"
|
||||||
do
|
do
|
||||||
echo "Cycling WiFi..."
|
echo "Cycling WiFi..."
|
||||||
sudo ifconfig $wifi lladdr $a
|
sudo ifconfig $wifi lladdr $a
|
||||||
networksetup -setairportpower $wifi off
|
networksetup -setairportpower $wifi off
|
||||||
networksetup -setairportpower $wifi on
|
networksetup -setairportpower $wifi on
|
||||||
echo "Spoofing $wifi to $a for 60 seconds"
|
echo "Spoofing $wifi to $a for 90 seconds ($n of 5)"
|
||||||
sleep 60
|
n=$((n+1))
|
||||||
|
sleep 90
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue