Fate/Grand auto-battle app for Android. This is pretty much a C# port of Fate-Grand-Order_Lua but has an inbuilt Sikuli-like API. Also, includes a UI for configuring Settings.
Needs Android 7 or later
See Running on Samsung devices if you're facing problems running the script on your Samsung devices.
See Running on Emulators to know about emulator support.
Fate/Grand Order is all about farming. We already have an awesome auto battle script named Fate-Grand-Order_Lua which uses AnkuLua (an implementation of Sikuli using Lua language for scripting on Android). The only problem I had was that, in trial versions, AnkuLua limits scripts to run for a maximum of 30 min and after which there is a cooldown period. Any of the hardcore farmers out there know that this is not enough for the lottery events. So, being the salty F2P that I am, instead of buying an AnkuLua subscription, I thought why not make something similar. This was a great learning experience and something different from your usual Android projects.
It runs on Xamarin.Android, uses OpenCV for image recognition, uses Android's Acessibility and Media Projection APIs. Battery optimizations can screw up the functionality of the app. App tries to disable them automatically but you might also have to do that manually.
The icons are from https://materialdesignicons.com/
The drag-sort logic on Card Priority screen is thanks to https://medium.com/@ipaulpro/drag-and-swipe-with-recyclerview-6a6f0c422efd
Debugging really is a pain due to FGO not allowing Developer Mode
to be ON
during execution.
Use GitHub issues to report bugs and try to be specific about the problem. Also, list information like your phone's model number, screen size, Android version, whether you have a notch.
Note: If your device has a notch, Don't rotate your screen when the script is running.
- Download from GitHub Releases. I can't put this app on
Play Store
due to some restrictive features this app uses. The APK available there might not always be the latest one. This README is written according to the latest commit of the code. - Install on your phone. You'll need to enable installing apps out of
Play Store
. - Launch the app. Grant it permissions it asks for:
Read External Storage
,Write External Storage
,Ignore Battery Optimizations
. - Click on
Toggle Service
. You would be prompted to turn on theAccessibility Service
and taken toAccessibility Settings
page. If it is already ON, turn it OFF and then turn it ON again. If you turned ONAccessibility Service
right now, click again onToggle Service
. - You would be asked for
Media Projection
permission. - Now, you can see a button with play icon on it floating on screen.
- Open F/GO and Go to the node you want to farm.
- Press Play to start. The same button can be pressed to stop later.
For how the settings work, see the original Fate-Grand-Order_Lua project.
Autoskill configuration can be created at Settings/AutoSkill/Manage Autoskill configurations
.
You won't be prompted at script start for the config to use. You need to set the Settings/AutoSkill/Selected Autoskill Config
value.
If you've set a Servant or CE in the currently selected Autoskill configuration and Autoskill is Enabled, then support selection mode is assumed to be preffered.
Put Servant images in Fate-Grand-Automata/support/servant
folder and
CE images in Fate-Grand-Automata/support/ce
folder.
The app has some common Servant/CEs inbuilt. You can extract them using the Extract Default Support Images
option.
If you want to use any other preferred servant or ce, you have to create their images using Support Image Maker
script.
Instead of having to select multiple ascension images for a servant, you can put all the images of a servant in a folder and select the folder in settings.
Here's what an example directory structure looks like:
Fate-Grand-Automata/
-- support/
-- -- servants/
-- -- -- ozy4.png
-- -- -- melt4.png
-- -- -- Merlin/
-- -- -- -- merlin1.png
-- -- -- -- merlin2.png
-- -- -- -- merlin3.png
-- -- -- -- merlin4.png
-- -- -- -- merlin_c.png
-- -- -- Waver/
-- -- -- -- waver1.png
-- -- -- -- waver2.png
-- -- -- -- waver3.png
-- -- -- -- waver4.png
-- -- ce/
-- -- -- kscope.png
-- -- -- black_grail.png
There is an option in Settings called Script Mode
.
It defaults to Battle
.
Set it to the script you require.
Support Image Maker
automatically creates images from the Support screen that can be used with the script.
You can also use it from the Friend List which is easier since you don't have to keep refreshing till the desired Servant/CE shows up.
- Set the
Script Mode
option in Settings toSupport Image Maker
. - Now, click on
Toggle Service
button, thePlay
button shows itself. - Open F/GO. Go to support selection screen and ensure that the Servant/CE you want is visible (It is important that the complete Servant + CE region is visible).
- Click on Play. The script should exit almost immediately. Images are saved to
Fate-Grand-Automata/support
folder. - Rename the files to whatever you want and then use with Auto Support Selection.
- Auto-giftbox.
Just pray that I can roll Skadi!