You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
196 lines
7.2 KiB
Markdown
196 lines
7.2 KiB
Markdown
[Ultimate Splinterlands Bot V2](https://github.com/PCJones/Ultimate-Splinterlands-Bot-V2)
|
|
Thank you PCJones for creating this bot!
|
|
|
|
This is my implementation of the dockerized version of the bot. It is fatter than ontje-dev's version (341MB vs 129MB). But it builds faster!
|
|
|
|
* Note1: I can't seem get update checks to work on my version! due to a "config/version.usb" timestamp error. But it seems to work on ontje-dev's version
|
|
|
|
* Note2: If you rather use ontje-dev's version you can use their [Dockerfile](https://github.com/ontje-dev/Ultimate-Splinterlands-Bot-Docker/blob/main/Dockerfile) with the [docker-compose-onteje-dev-version.yml](https://github.com/StarWhiz/docker_deployment_notes/blob/master/splinterlands-bot-v2/docker-compose-onteje-dev-version.yml) included in this repository. Make sure you modify the `BOT_VERSION` in their Dockerfile to the version you want as described in my Dockerfile [section](https://github.com/StarWhiz/docker_deployment_notes/tree/master/splinterlands-bot-v2#dockerfile).
|
|
|
|
To start deploying. Create all the folders and files below with the modifications specified.
|
|
|
|
### Minimum File Structure
|
|
```
|
|
/home/
|
|
└── ~/
|
|
└── docker/
|
|
└── splinterlands-botv2/
|
|
└── config/
|
|
├── accounts.txt
|
|
├── config.txt
|
|
├── version.usb
|
|
├── Dockerfile
|
|
├── docker-compose.yml
|
|
```
|
|
### accounts.txt
|
|
Modify to use your own usernames and posting keys
|
|
```
|
|
username:postingkey
|
|
username:postingkey
|
|
```
|
|
|
|
### config.txt
|
|
No modification needed to run but you can modify if you want to!
|
|
```
|
|
##################General Settings##################
|
|
PRIORITIZE_QUEST=true
|
|
SLEEP_BETWEEN_BATTLES=5
|
|
START_BATTLE_ABOVE_ECR=0
|
|
STOP_BATTLE_BELOW_ECR=75
|
|
MINIMUM_BATTLE_POWER=0
|
|
CLAIM_SEASON_REWARD=false
|
|
CLAIM_QUEST_REWARD=false
|
|
|
|
##E.g. if you are almost bronze 1 and have enough power, it won't claim quest reward until you are bronze 1
|
|
DONT_CLAIM_QUEST_NEAR_HIGHER_LEAGUE=true
|
|
|
|
##If enabled it will click on the advance to next league button
|
|
ADVANCE_LEAGUE=true
|
|
|
|
##seperate by comma like this: earth,life - it will request new quest on earth and life quest
|
|
##Remove the # at the beginning of the next line to activate
|
|
#REQUEST_NEW_QUEST=earth
|
|
##################General Settings##################
|
|
|
|
##################Lightning Mode Settings##################
|
|
#####If you want to use the fast, low resource blockchain mode of the bot enable this#####
|
|
#####It has 90% less requests to splinterlands API then playing via browser, so you #####
|
|
#####will not get soft banned from splinterlands anymore. #####
|
|
USE_LIGHTNING_MODE=true
|
|
|
|
##Threads = number of parallel accoounts.
|
|
##Threads are MUCH faster than in the browser mode
|
|
THREADS=1
|
|
|
|
##Disable this if you want a cleaner log or you have problems with too many
|
|
##requests to the splinterlands API. Disabling will also make battles 10-25 seconds faster.
|
|
SHOW_BATTLE_RESULTS=true
|
|
##################Lightning Mode Settings##################
|
|
|
|
#######################API Settings########################
|
|
|
|
USE_API=true
|
|
API_URL=http://splinterlandsapi.pcjones.de:8080/
|
|
|
|
##PRIVATE API Settings - ignore if you don't have it
|
|
USE_PRIVATE_API=false
|
|
PRIVATE_API_URL=
|
|
PRIVATE_API_SHOP=
|
|
POWER_TRANSFER_BOT=false
|
|
#######################API Settings########################
|
|
|
|
#####################Advanced Settings#####################
|
|
AUTO_UPDATE=true
|
|
SHOW_API_RESPONSE=true
|
|
DEBUG=false
|
|
WRITE_LOG_TO_FILE=false
|
|
|
|
##Enable this if you get weird characters in your console that makes it hard to read
|
|
DISABLE_CONSOLE_COLORS=false
|
|
|
|
##Linux / VPS Variables - ignore if bot works
|
|
#CHROME_BINARY_PATH=path/to/chrome/binary
|
|
CHROME_NO_SANDBOX=true
|
|
|
|
##Advanced bot logic
|
|
|
|
#If you enable both DONT_CLAIM_QUEST_NEAR_HIGHER_LEAGUE and this the bot will not only wait
|
|
#until you have enough rating for the higher league, but also until you have enough
|
|
#power. Don't enable this unless you actively manage your power.
|
|
WAIT_FOR_MISSING_CP_AT_QUEST_CLAIM=false
|
|
#####################Advanced Settings#####################
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
###################Browser Mode Settings###################
|
|
#####If you want to use the old browser based version of the bot enable this#####
|
|
USE_BROWSER_MODE=false
|
|
|
|
## HEADLESS true = invisible browser
|
|
HEADLESS=true
|
|
|
|
##MAX_BROWSER_INSTANCES = MultiThreading!
|
|
##2 = 2 Browsers will open, so 2 accounts can fight at the same time
|
|
MAX_BROWSER_INSTANCES=2
|
|
###################Browser Mode Settings###################
|
|
```
|
|
|
|
### version.usb (optional)
|
|
This file is not required to run the container. I got this file from the [linux-x64.zip](https://github.com/PCJones/Ultimate-Splinterlands-Bot-V2/releases). It's used for an update check but I'm not sure why it fails in my container but not ontje-dev's.
|
|
```
|
|
2022-01-28 22:54:52
|
|
linux-x64
|
|
|
|
```
|
|
|
|
### Dockerfile
|
|
You need to modify ARG BOT_VERSION="2.9-fix2" to be on the latest version, if "2.9-fix2" isn't the latest version.
|
|
|
|
Check for latest version here: [Ultimate Splinterlands Bot V2](https://github.com/PCJones/Ultimate-Splinterlands-Bot-V2/releases)
|
|
|
|
Note: You may use [ontje-dev's Dockerfile](https://github.com/ontje-dev/Ultimate-Splinterlands-Bot-Docker/blob/main/Dockerfile) instead which has a smaller footprint.
|
|
|
|
```
|
|
FROM ubuntu:latest
|
|
|
|
ARG BOT_VERSION="2.9-fix2"
|
|
|
|
RUN apt-get update && apt-get install -y wget
|
|
|
|
# Add dotnet runtime to repository
|
|
RUN wget https://packages.microsoft.com/config/ubuntu/21.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
|
|
RUN dpkg -i packages-microsoft-prod.deb
|
|
RUN rm packages-microsoft-prod.deb
|
|
|
|
RUN apt-get update && apt-get install -y \
|
|
apt-transport-https \
|
|
dotnet-runtime-6.0 \
|
|
unzip
|
|
|
|
RUN wget https://github.com/PCJones/Ultimate-Splinterlands-Bot-V2/releases/download/v${BOT_VERSION}/linux-x64.zip
|
|
|
|
RUN unzip linux-x64.zip || true
|
|
|
|
RUN rm -f linux-x64.zip
|
|
|
|
WORKDIR ./linux-x64
|
|
|
|
RUN mv Ultimate\ Splinterlands\ Bot\ V2 ultimatesplinterlandsbotv2
|
|
|
|
RUN chmod +x ultimatesplinterlandsbotv2
|
|
```
|
|
|
|
### docker-compose.yml
|
|
Note: If you are using ontje-dev's Dockerfile, substitute this docker-compose with [docker-compose-onteje-dev-version.yml](https://github.com/StarWhiz/docker_deployment_notes/blob/master/splinterlands-bot-v2/docker-compose-onteje-dev-version.yml)
|
|
```
|
|
version: '3'
|
|
|
|
services:
|
|
splinterlandsbotv2:
|
|
restart: unless-stopped
|
|
container_name: splinterlands
|
|
build: .
|
|
volumes:
|
|
- ./config:/linux-x64/config
|
|
command: "./ultimatesplinterlandsbotv2"
|
|
# fordebugging... command: "tail -f /dev/null"
|
|
```
|
|
|
|
### Running the Container
|
|
Type in `docker-compose up -d` to run the container! If this is the first time running it will take a while to build. Any subsequent runs will be started in seconds.
|
|
|
|
To check how the bot is doing live run `docker logs --follow splinterlands` otherwise to check the logs run `docker logs splinterlands`
|
|
|
|
### Updating The Bot
|
|
To update the bot...
|
|
* Run `docker-compose down` inside the splinterlands folder to bring down the container
|
|
* Edit the Dockerfile argument `ARG BOT_VERSION="2.9-fix2"` to the version you want.
|
|
* After that, run `docker-compose build` to rebuild the image under the new version.
|
|
* Run `docker-compose up -d` to launch the bot.
|
|
* And as always you can watch what the bot is doing live with `docker logs --follow splinterlands`
|