- pyautogui • screenshots and emulator automations
- cv2 • image recognition, preprocessing etc.
- pytesseract • text recognition
- Install the python librarys by running
pip install -r requirements.txt
- Get some screenshots and put them into
./userdata/targets/
- Run
setup.bat
- Run
spark.bat
- Enjoy your export in
./userdata/out/
Note The finetuning is not finished yet so it is likely you will encounter faliurs when running the program resulting in wrong or un-recognized operators.
The GUI is built using SvelteKit, Tailwind CSS and TypeScript. It is all powered by eel, which allows us to use Python functions in the GUI.
The UI library used is Skeleton.
Note The package manager used is yarn.
During development, you need to run the SvelteKit development server and the GUI at the same time. The GUI will then connect to the development server, enabling features like hot reloading while also getting eel's exposed functions.
- Run
pip install -r requirements.txt
to install all the required Python packages (if not yet done) - Run
yarn install
to install all the required packages - Run
yarn dev
to start the development server - Run
python main.py --dev
in another shell to start eel and connect to the development server
Note You can use the
--mode
flag to change the browser mode used by eel. Defaults tochrome
.
In production, all the files will be compiled in the build
folder and the GUI will be started using the compiled files.
- Compile the SvelteKit files using
yarn build
- Run
python main.py
to start the GUI using the compiled files
Note Because this is a desktop app, the static adapter of SvelteKit is used. This means that every file needs to be able to be pre-rendered (see the SvelteKit documentation for more information).
- Profession recognition
- Rarity recognition
- Name recognition
- Level recogntion
- Promotion recogntion
- Potential recogntion
- Skills
- Rank recognition
- Masteries recognition
- [Selected skill recognition]
- Module
- Module stage recognition
- Module recognition
- [Skin recognition]
- [Loved recognition]
- Item position detection
- Item type recognition
- Item amount recognition
- Find anchor point for RefData
- Friendcode recognition
- Level recognition
- Hire date recognition
- [Note recognition]
- Find support positions
- Operator recognition
- Recognize potential (limiting operator selection)
- Recognize level (limiting operator selection)
- Recognize promotion (limiting operator selection)
- Recognize operator by avatar
- Do stuff
Note Features in [angular brackets] are non-compulsory and might not be implemented at any time.
SpArk is a third-party project for Arknights ©Hypergryph / Studio Montagne / Yostar and thus unaffiliated with any of its creators.