Skip to content

Latest commit

 

History

History
59 lines (39 loc) · 5.45 KB

README.md

File metadata and controls

59 lines (39 loc) · 5.45 KB

Aphid Bot

License

Support Discord:

For support on using or setting up your own instance of Aphid Bot, feel free to join the discord!

About Aphid Bot:

Aphid bot is a Sysbot inspired .NET application for Pokemon Ultra Sun and Ultra Moon. It is almost entirely based off Ledybot and Sysbot

If you plan on contributing to the development of the bot, I apologize profusely in advance for the spaghetti code. I tried my best to throughouly comment any changes I made, but this was my first ever C# project and it really shows. There are a few non-essential functions like Pk7idlecleanup() that do not work at all as intended. I would like to fix these down the line; but I've spent so much of the last month fixing extremely minor bugs and QoL changes that I feel like if I don't release now, I am never going to.

Setting up Aphid Bot:

Click here for a video on how to setup Aphid bot

Ensure you have BootNTR 3.6 and Inputredirection working on your 3DS. Aphid Bot is only tested and working with bot owners with English Ultra Sun/Ultra Moon games. Users of Aphid bot can use any Generation 7 game, from any language/region.

Aphid Bot will only work on x64 CPUs and Operating systems. Ensure you have all the necessary versions of .NET required to run Ledybot and Sysbot. Download the most recent release of Aphid bot from the Release tab in Github. Extract all of the contents into a folder of your choice. Edit giveawaydetails.xml and replace all "C:\XYXYXYXY\dump" with the folder location of your dump folder, then save the file. Edit the Config.json and replace the "DistributeFolder" and "DumpFolder" locations with the locations of your Distribute and Dump folders, then replace "Token" under the Discord section with your Discord bot's Token.

Launch AphidbBot.exe, input your 3Ds IP address. Go to the settings tab and ensure "from the front" is checked off under Trade Direction. Tune other settings as necessary. On your 3DS, launch Ultra Moon/Ultra Sun and navigate to the GTS until you are on the "Seek Pokemon" Button. Connect to the 3DS in Aphid Bot, Start the Discord Bot, and start the actual bot.

Uses Discord.Net and StreamingClientLibary as a dependency via Nuget.

Using Aphid Bot:

Click here for a video on how to setup Aphid bot

  • %help - an example trade request
  • %trade - trade command for a showdown set
  • %tradefile - trade command for a .pk7 file
  • %info - information about the bot
  • %queuestatus or %qs - get your current position in the queue
  • %queueclear or %qc - remove yourself from the queue
  • %language - get help Eastern Asian Language Games.

If your game is in Japanese, Korean or Chinese you need to slighty change your ??d: value in your request for the bot to work with you.

  • Korean: replace "??d:" with "예예??d:"
  • Japanese: replace "??d:" with "ええ??d:"
  • Chinese: replace "??d:" with "诺诺??d:"

Known Bugs:

  • Since the Pk7idlecleanup() function is not working as intended, lots of leftover PK7 files will still be in their respective dump folders after running the bot for a long period of time. This can lead to a bug where Aphid Bot will try and idle trade a Pokemon that is outside the level range of what the person on the GTS is requesting. To fix this issue, simply delete all of the folders and files within the dump folder and let the bot repopulate them as needed.
  • The blacklist button can lead to discord requests being completelty ignored, I recommened leaving the button unchecked.
  • BootNTR can crash if you look at it the wrong way. Since a huge portion of this bot's functionality relies on BootNTR, you may need to restart your 3DS if you run into issues with BootNTR clicking the wrong buttons or going to the wrong menus. This only happened to me once in 300+ hours of testing.
  • You can accidentally start the discord bot twice, by either clicking the button twice or having two instances of Aphid bot open. The bot will not work as intended if the bot is running twice.
  • Something as simple as "%trade Kyogre" may give you the error "Oops! Requested Pokemon is an event and cannot be traded through the GTS." To fix this, you need to specify more batch details to ensure an event Pokemon isn't generated by the bot. Adding the line ".Version=26" would fix the Kyogre example. This isn't really a bug, as it is working as intended, but it can be frusturating.
  • The bot may not function as intended if your PC or internet is garbage. For example, if your internet is having problems, the GTS might lie to you and say that no Pokemon can be found under a very common species of Pokemon. This will cause the bot to panic, and go into recovery mode.

Other Dependencies

Pokémon API logic is provided by PKHeX, and template generation is provided by AutoMod.

License

Refer to the License.md for details regarding licensing.