(조명 확산판도 잃어버리고 미니스튜디오 펼치기도 귀찮아서 사진은 대충...)

사자마자 뜯어서 사용해본 첫 인상.

후기는 몇번 충전까지 해 보고 여러모로 써 본 뒤에 업데이트를 하겠다.

액상의 종류는 워터멜론, 커피, 아이스망고, 자스민으로 4가지가 존재했다.

워터멜론을 뜯으니 '수박바'향이 나서 기대했는데 맛에서는 그다지 느껴지지 않았다.

그리고 솔트니코틴 뭐 그러면서 차이점이 있다고들 하는데...
개인적으로 액상 전자담배와 별 차이를 느끼지 못했다.

워터멜론이 초록색인 것은 껍데기의 색상이라 이해한다고 해도, 아이스망고는 핑크색으로 패키징을 해놔서 의문이었다. 
이는 회사 동료들도 같은 의견이었고 딸기로 착각했다.

맛은.....


수박

첫 향은 좋았다. (수박바의 향)
가장 처음 경험해본 액상이기도 한데 연기에서 수박향이 크게 느껴지지 않아 아쉬웠다.
끝에 여운으로 남는 정도.
처음 수박향만 피웠을때는 뭔가 아쉽고 다른액상을 기대하게 만들었지만....
가장 무난하고 덜 자극적이어서 개인적으로는 가장 좋았음.

자스민

충격, 페브리즈를 입에 뿌린 느낌이었다.
집에서 사용하고 있는 섬유탈취제 허브밸리향과 동일한 향이었다.
같이 일하는 동료의 액상과 동일한 향이어서 그 동료는 좋아했다.
호불호 강하게 갈리는 향. (동료의 말을 빌리면 껌향이어서 좋다고 한다.)

아이스 망고

약간 시큼한 맛이 나는 향 (애플망고주스?)
처음엔 상당히 이질적인 느낌이다가 나름의 매력이 있었다.

커피

단맛계열의 향 (음식점 입구의 커피향 사탕 혹은 아이스크림 더위사냥)
개인적으로는 별로 좋아하진 않지만 있으면 피우는 그정도.

장점

크기가 작아 휴대하기 좋다.
- 샤프심 통 만한 크기 (조금 더 길다, 납작한 아이코스라고 생각하면 될듯)

사용의 간편함.
- 버튼을 누르지 않고 그냥 바로 흡입한다.

액상이 역류 없음
- 누워서 사용하지 않는 이상 액상이 튀어올라 입에 들어가거나 하는 일 없음.

일반 전자담배보다 조금 더 아이코스에 가깝다
- 성분을 보고 그냥 전담이네 라고 생각했지만 흡입해보고 놀랐다.
  하지만 많은 차이가 있다.

액상 교체가 간편하다.
- 그냥 끼우면 끝, 바로 흡입할 수 있다.

액상 누수 현상
- 새는 양이 원통형 카토마이저 방식 전자담배에 비해 적다. (아예 없지는 않다.)

가격
- 본체 3만원, 액상3개 세트 1.5만원으로 큰 부담이 없다.


단점

충전 포트가 애매하다.
- USB TYPE-A 라서 컴퓨터에 끼울 수 있지만 안정감 있게 세우기 위해서는 연장선이 필요하다.
자성이 있어 90도 기울어서도 충전이 잘 되긴 하는데 아무래도 불안해 보인다.

아무리 뛰어나도 전자담배.
- 담배를 끊으려고 전자담배를 피는건 주변을 봐도 크게 효과적이지는 않았다.

액상의 취향
- 여러 종류의 액상을 펴봤지만 아이스크림 맛들이 연상될 정도로 단맛 계열
  상큼한 과일향을 좋아하는데, 그런건 없었다.

아직 판매점이 활성화 되어있지 않다.
- 석촌호수까지 가서 구매했다.

작아서 휴대성은 좋지만 불안하다.
- 전자담배 액상이 주머니에서 줄줄 새 본 경험이 있어 불안하다. (비엔토 아님)



잔티eGo 를 시작으로 카토마이저식 전자담배까지 많이 사용해봤지만 그중에서 디자인, 휴대성, 사용성 면에서는 가장 뛰어나다.
(무려! 자잘한 청소를 할 필요가 없다)

동네 전자담배샵에서 자기들은 취급하지 않는다고 같은 솔트니코틴 하면서 픽스라는 전자담배를 추천하던데 가격이 8만원이라고...
뒤도 안돌아보고 나왔다. 어떻게 생긴건가 찾아보고 다시는 보지도 않았다.

개인적으로 전자담배는 니코틴 없이 플레이버 향 가득한 전자담배를 좋아하는데 니코틴이 포함된 액상만 있어서 아쉬웠고,
다 사용한 POD을 리필할 수 있을 것 같긴 하다.

전자담배의 아이폰이라 불리는 JUUL도 다 사용한 POD을 리필할 수 있는 방법이 있는데,
왠지 비엔토 POD도 주사기를 통해 액상을 넣을 수 있지 않을까?

---

비엔토 POD 액상 리필(재사용) 방법

다 사용한 POD을 뜯어보니 리필은 할 수 있었으나 원형의 모습을 유지할 수 없었다.
라디오펜치로 중앙의 철제 봉?을 뽑고 기울인 상태로 피우던 액상을 넣고 봉을 재 삽입하니 동작했다.

액상을 넣을땐 90도 기울여서 절반만 넣을 수 있었다.
더 많이 넣을 수 있는 방법은 위 사진의 노란부분을 찌그러트려서 주사기 구멍을 만들고
주사기를 통해 주입하면 더 많이 넣을 수 있어 보이긴 했다.

'#블로그 > 사용기' 카테고리의 다른 글

샤오미 미리더 설정법  (31) 2020.03.28
샤오미 미리더  (0) 2020.03.28

ArchiSteamFarm 에서 IPC를 통한 웹브라우저로 봇을 제어할 수 있다.

하지만 기본적으로 로컬 접속만 허용되어 있는데 이를 풀기 위해서는 약간의 수정이 필요하다.

먼저 https://yellowtopaz.tistory.com/196 에서 작성했던 ASF.json 파일을 수정해야한다.


1. 환경설정

이전 글 내용대로 설정을 했다면 다음과 같은 설정 파일들을 만졌을 것이다.

ArchiSteamFarm[폴더]
├ArchiSteamFarm
└config
 ├ASF.json  (수정 필요)
 ├ASF.db
 ├사용자계정.json
 ├사용자계정.db
 ├사용자계정.bin
 └IPC.config (추가)

ASF.json 전역 설정파일을 수정하고, IPC.config 파일을 새로 만들어야 한다.


1.1. ASF.json

IPC관련 설정값을 기입하고 저장한다.

{

  "s_SteamOwnerID": "사용자 계정의 STEAMID64 숫자",

  "CurrentCulture": "ko-KR",

  "IPC": true,

  "IPCPassword": "접속 비밀번호"

}

비밀번호는 없어도 되지만 설정하는 것을 추천한다.

(공유기를 해킹당하면 답이 없다.)



1.2. IPC.config

config 폴더 안에 IPC.config 라는 파일을 추가하고 내용을 작성한다.

JSON 형태이고 간단하게 "관리용이름":{"URL": "http://접근허용IP:PORT"} 의 구조를 가진다.

WIKI예제

{
"Kestrel": {
"Endpoints": {
"example-http4": {
"Url": "http://127.0.0.1:1242"
},
"example-http6": {
"Url": "http://[::1]:1242"
},
"example-https4": {
"Url": "https://127.0.0.1:1242",
"Certificate": {
"Path": "/path/to/certificate.pfx",
"Password": "passwordToPfxFileAbove"
}
},
"example-https6": {
"Url": "https://[::1]:1242",
"Certificate": {
"Path": "/path/to/certificate.pfx",
"Password": "passwordToPfxFileAbove"
}
}
},
"PathBase": "/"
}
}

WIKI 예제에는 위와 같이 나열되어 있고 상세하게 설정하고 싶다면 위 예제에서 세부 내용을 고쳐서 작성하고, 귀찮다면 간단하게 공유기 대역만 열어서 공유기 환경에서는 자유롭게 접근할 수 있도록 설정하고자 한다면 다음처럼 내용을 작성 후 저장하면 된다.

케이스1) 단순형태 IPC.config

{
"Kestrel": {
"Endpoints": {
"HTTP": {
"Url": "http://192.168.0.*:1242"
}
}
}
}

IP 대역을 "Url": "http://*:1242" 로 설정하는 경우 외부에서도 접근이 가능하게 되며,
보안 등 신경써야 할 항목들이 늘어난다. 그래서 간단히 공유기에서 IP를 부여하는 대역만큼만 접근을 열면 아무래도 신경 쓸 내용이 많이 줄어들 것 이다.


케이스2) 여러 대역 설정 IPC.config

여러 대역을 통해 다음처럼도 작성할 수 있다.
또한 접속 경로별로 패스워드를 설정할 수 있는 것 같다.

{
"Kestrel": {
"Endpoints": {
"LOCALHOST": { "Url": "http://127.0.0.1:1242" },
"LOCALNETWORK": { "Url": "http://192.168.0.2:1242" },
                        "WEB": {
                                   "Url": "http://*:1242",
                                   "Password": "pppppppp"
                                  }
}
}
}

이런식으로 구성할 수 있다.

IPC.config 파일을 저장하고 ArchiSteamFarm 을 재 실행 하면

"IPC 서버 시작..."
"IPC 서버 준비 완료!"

메시지가 나오면 정상적으로 설정 된 것이다.

웹 브라우저에서 http://아이피주소:1242 를 입력하면 봇 제어를 위한 페이지로 접근할 수 있다.


2. IPC사용 방법

웹 브라우저를 통해 접근하면 위 스크린샷과 같은 화면을 볼 수 있다.

메뉴 구성

구분

용도

제어

  홈

첫화면(업데이트 로그)

  명령어

명령어를 통한 봇 제어

  봇

봇 추가/관리

  로그

로그 확인 (screen -r 로 볼 수 있는 것과 동일)

환경설정

  설정

봇 설정값 갱신 (왜 이름이 설정인지 모름)

  일반 환경설정

ASF.json 전역설정

심플한 방식을 가지고 있고 메뉴 하단에 봇 현황과 파밍 예정시간, 메모리 점유율, 가동시간이 표시된다.

일반 환경설정의 경우 ASF.json 을 편집하는것과 동일하며 GUI로 편하게 구성되어있다.
고급사용자가 아닌 경우 별로 건드리지 않고 기본값을 사용하는 것을 추천한다.

단, REMOTE ACCESS.HEADLESS 의 경우 명령어 메뉴에서 봇에게 상태변경 등을 명령하기 위해서는 TRUE로 설정되어야 한다.
봇을 추가하여 스팀인증기를 통한 인증을 하는 것 또한 명령어를 통해서 수행할 수 있다.

만약 명령어가 아닌 수동으로 하고 싶은 경우 터미널에서 screen -r 명령어를 통해 인증기 번호를 입력할 수 있다.


주요 명령어

명령어 메뉴를 눌러 내용을 보면 검은 화면에 커서만 깜빡이고 있다.
터미널과 동일하게 명령어를 통해서 봇들을 제어한다.

모든 명령어에 대한 설명은 ASF WIKI를 통해 확인하고 자주 사용할 법한 명령어 몇개만 소개하고 마치고자 한다.

명령어

설명

commands

사용 가능한 명령어 리스트 출력

help [command]

도움말

stop [botfilename]

봇 실행중단

start [botfilename]

중단된 봇 실행

play [botfilename] [게임명]

수동으로 지정한 게임 실행
이 게임명은 실제 보유하지 않은 게임도 가능
단, 보유하지 않은 게임의 경우 "비 Steam 게임 중" 
상태메시지가 추가되며, "AFK" 나 "파밍 중"과 같이
자유롭게 메시지를 남기는 용도로도 사용됨.

farm [botfilename]

해당 봇의 카드 파밍 시작

input [botfilename] [type] [value]

봇에게 입력 행위를 할 수 있음
input [botfilename] TwoFactorAuthentication [ACFFG]
이런 형태로 스팀 인증기의 인증번호를 입력할 수 있음.

botfilename의 경우 사용자계정.json 으로 설정했던 json 파일명 즉 "사용자계정" 이다.
사용자계정 이라고 설명할까 하다가 로그인아이디, 프로필아이디 등과 혼동될 것 같아 botfilename 이라고 작성했다.


play 명령어를 통해서 입력하는 게임명은 한글,영문으로 작성 시 "비 Steam 게임 중"이라는 상태 메시지가 추가되며 https://steamdb.info/apps/ 에서 게임을 검색해서 숫자로된 AppID를 입력해야 게임 플레이타임이 누적된다.


봇을 여러개 동시에 돌릴 수 있다.

Happy Farming!

주의!
전문적인 프로그래머의 강좌가 아닌 기획자가 사용하는 꼼수들을 메모한 내용입니다.
섣불리 따라하다가 탈이 날 수 있으니 사용 하기 전 신중한 검토가 필요합니다.

  • 사용자 설정 타입
여러가지 값들을 설정하기 위한 하나의 변수를 만들고 변수 안에 자유롭게 이름을 지정해서 사용할 수 있다.

Private Type 사용자정의타입
     주소 as string
end Type

sub...
     with 사용자정의타입
         주소 = "어딘가";
     end with

debug.print(사용자정의타입.주소);
end sub

사실 변수이름을 잘 지으면 괜찮긴 한데 그룹별로 묶어버리고 싶을 때 사용하면 괜찮을듯?

  • 검색
데이터 테이블같은 곳 에서 위치가 자주 바뀌는 경우 주소값을 찾기 위해 사용
cell(1,5) 이런식으로 지정하지 않기 위해서 주로 사용함.
사용에 주의해야 하는 점이 있다면 엑셀을 실행했을 때 CTRL+F 를 눌러서 보여지는 "찾기" 다이얼로그의 설정값들이 마지막으로 사용된 VBA의 설정값으로 변해 있다는 점.
사용하기에 따라서 불편할 수 있음.

행에서 찾기 (몇번째 열에 위치하는가)
Sheets("Name").Rows(1).Find(What:="찾을내용", LookIn=xlValues, LookAt:=xlWhole).Column

열에서 찾기 (몇번째 줄에 위치하는가)
Sheets("Name").Columns("A").Find(What:="찾을내용", LookIn=xlValues, LookAt:=xlWhole).Row

.Find(What:="", LookIn:=xlValues(xlFunction), LookAt:=xlPart)
기본값이므로 검색 사용한 후 마지막에 돌려줘야 함.

  • EOD
데이터 테이블의 마지막줄을 찾기 위한 트릭
Sheets("Name" )Range("A" & Sheets("Name").Rows.Count).End(xlUP).Row

  • 문서위치 경로
파일 입출력을 쓸 때 컴퓨터마다 주소가 다를 수 있으므로
열려있는 문서를 기준으로 위치를 찾아가기 위한 용도로 사용한다.
ActiveWorkbook.Path
읽기전용으로 여는 경우 임시저장소에서 열리는 경우 있으므로 맹신할 수 없다.

  • Collection
Collection 은 크기가 가변적이기 때문에 배열이나 Object보다 값을 넣기 쉽다. 
선언
변수명 as New Collection

값 추가
변수명.add "asdasd"

배열 형태로 값 추가
변수명.add Array(aaa,aaa,aaa)


'#창고 > 스크립트' 카테고리의 다른 글

[VBA] json 데이터를 VBA OBJECT로 담기  (0) 2018.11.18

위 사이트에서 배포하는 VBA모듈을 적용하면Json 파일 을 VBA 변수 Dictionary로 저장할 수 있다.


objStream = CreateObject ( "ADODB.Stream") 
objStream.Charset = "utf-8"
objStream.Open 
objStream.LoadFromFile ("파일위치") 
jsontext = objStream.ReadText ()

위 형태로 ADODB로 불러온 뒤 JsonConverter 에 넣어야 적용이 가능하다.


예제

{
  "id": 1,
  "name": "Leanne Graham",
  "username": "Bret",
  "email": "Sincere@april.biz",
  "address": {
      "street": "Kulas Light",
      "suite": "Apt. 556",
      "city": "Gwenborough",
      "zipcode": "92998-3874",
      "geo": {
          "lat": "-37.3159",
          "lng": "81.1496"
      }
  },
  "phone": "1-770-736-8031 x56442",
  "website": "hildegard.org",
  "company": {
      "name": "Romaguera-Crona",
      "catchPhrase": "Multi-layered client-server neural-net",
      "bs": "harness real-time e-markets"
  }
},
위와 같은 json 파일을 JsonConverter를 이용해 VBA에 담았을 때 해당 값을 호출하는 방법은 item("key1")("key2")의 형식으로 호출이 가능하다.

debug.print(item("address")("street")) 를 하는 경우 "Kulas Light"가 출력된다.

    Dim JSON As Object
    Set JSON = ParseJson(jsontext)
    On Error Resume Next
      Debug.Print JSON("address")("city") < 에러

    For Each Item In JSON
        Debug.Print Item("address")("city") <정상출력
    Next Item

    On Error GoTo 0
    For Each Item In JSON
        Debug.Print Item("address")("geo")("lng") <정상
    Next Item
위와 같은 형식으로 사용해야 함.



'#창고 > 스크립트' 카테고리의 다른 글

[VBA] 자주 사용하는 기본 스크립트  (0) 2018.11.18


idle master를 돌려볼까 하고 실행했지만 동작하지 않아 대체할 만한 프로그램을 찾아 소개할까 한다.


Archi Steam Farm 이라는 이름을 가지고 ASF라 줄여서 불리는 프로그램이고 치팅으로 감지되어 계정이 밴 되는 우려가 없다고 하지만...
아이들마스터를 돌리면서도 밴을 당했다는 이야기를 들어본 적이 없어 원래 들어가지 않는 성분으로 '무첨가' 홍보를 하는건 아닐까 하는 기분도 들었다.

사실 ASF에 매력을 느꼈던 것은 리눅스 환경에서 스팀을 설치하지 않고도 카드농사를 지을 수 있다는 점 때문이었다.

데스크탑을 카드농사를 위해 24시간 돌리기엔 부담이 되고, 그렇다고 다른 무언가를 함께 돌리기엔 마땅치 않았다. (비트코인 채굴?)

따라서, 집에서 돌리고있는 N54L 이나 라즈베리파이 환경에서 돌려놓으면 데스크톱을 사용하지 않고도 압도적으로 적은 전력 소모로 카드농사를 지을 수 있는 이점이 있다. 



아이들마스터의 동작 가능 버전을 찾으시는 분은 아래 링크를 통해 확인할 수 있다.

https://github.com/Farax85/idle_master/releases

(2018.11.18 기준 1.4.5 버전으로 정상 동작 가능)

스팀에 로그인하면 자동으로 동작함.

설정 방법은 생략




1. 준비 과정

준비물

1. 리눅스가 돌아가는 컴퓨터 (AWS, N54L같은 홈 서버, 라즈베리파이 등)

2. 인터넷이 연결되어 SSH 로 연결이 가능한 상태

3. Putty, Zterm, VNC, 직접 제어 등 1번의 컴퓨터를 제어할 수 있는 방법


파일 다운로드

최신 릴리즈에 가 보면 파일이 여러개 존재한다.

ASF-linux-arm.zip

라즈베리파이, 모바일AP를 사용하는 리눅스 환경에 설치

ASF-linux-x64.zip

인텔, AMD cpu를 사용하는 리눅스 환경에 설치

ASF-osx-x64.zip

맥킨토시용

ASF-win-x64.zip

윈도우계열

데스크탑은 윈도우10을 사용하지만 24시간 돌리지 않으므로 홈서버에 돌릴 용도로 리눅스 배포본을 받는다.

홈서버가 윈도우계열 이라면 윈도우용으로 받으면 된다.


p.s - 작성자는 Putty를 통해 SSH로 연결하여 작업을 진행했음.


wget [다운로드 받을 파일의 웹 주소]

명령어로 터미널 환경에서 다운로드를 받으면 FTP나 SAMBA를 통해 파일을 전송하는 과정을 생략할 수 있다.

pi@raspberrypi:~/ArchiSteamFarm $ wget https://github.com/JustArchiNET/ArchiSteamFarm/releases/download/3.4.0.8/ASF-linux-arm.zip

--2018-10-10 19:59:29--  https://github.com/JustArchiNET/ArchiSteamFarm/releases/download/3.4.0.8/ASF-linux-arm.zip

Resolving github.com (github.com)... 192.30.255.113, 192.30.255.112

Connecting to github.com (github.com)|192.30.255.113|:443... connected.

HTTP request sent, awaiting response... 302 Found

Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/44897462/7359e180-e853-11e8-9ccd-7e93e4e7a4da?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20181118%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20181118T044844Z&X-Amz-Expires=300&X-Amz-Signature=0a35d827ecdb29f02bbd812ce25bb610158f6e6d958f15f7d74d61eee8bf9ef8&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3DASF-linux-arm.zip&response-content-type=application%2Foctet-stream [following]

--2018-10-10 19:59:30--  https://github-production-release-asset-2e65be.s3.amazonaws.com/44897462/7359e180-e853-11e8-9ccd-7e93e4e7a4da?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20181118%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20181118T044844Z&X-Amz-Expires=300&X-Amz-Signature=0a35d827ecdb29f02bbd812ce25bb610158f6e6d958f15f7d74d61eee8bf9ef8&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3DASF-linux-arm.zip&response-content-type=application%2Foctet-stream

Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.84.147

Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.84.147|:443... connected.

HTTP request sent, awaiting response... 200 OK

Length: 17649678 (17M) [application/octet-stream]

Saving to: ‘ASF-linux-arm.zip’


ASF-linux-arm.zip       20%[====>                        ]  3.51M 788KB/s eta 20s



2. 실행 환경 설정

해당 파일은 폴더를 자동으로 생성하지 않으므로 폴더를 생성하고 해당 폴더 안에 다운로드 받으면 편하다.

이미 어딘가에 받아두었다면 폴더를 생성하고 명령어를 통해 이동시키면 된다.

pi@raspberrypi:~ $ mkdir ArchiSteamFarm

pi@raspberrypi:~ $ unzip ASF-linux-arm.zip -d ArchiSteamFarm/

pi@raspberrypi:~ $ cd ArchiSteamFarm/

pi@raspberrypi:~/ArchiSteamFarm $ 

unzip [파일명] -d [폴더명] 으로 원하는 폴더에 압축을 해제할 수 있다.


ASF는 다음의 패키지를 요구한다.

  • libcurl3 (libcurl)
  • libicu60 (libicu 배포판의 최신 버전, 예: Debian 9 리눅스의 경우 libicu57 )
  • libkrb5-3 (krb5-libs)
  • liblttng-ust0 (lttng-ust)
  • libssl1.0.2 (배포 용 libssl, openssl-libs, 최신 1.0.X 버전)
  • zlib1g (zlib)

sudo apt install libcurl3 을 입력 후 탭을 두번 누르면 관련 정보가 출력된다.
이렇게 최신 버전으로 하나씩 입력 해 나가면 된다.

추가로 screen 이라는 패키지를 설치한다.
사용자가 터미널을 종료 후에도 데몬 형태로 지속적으로 유지 해 주는 역할을 한다.

pi@raspberrypi:~/ArchiSteamFarm $ sudo apt install libcurl

libcurl-ocaml         libcurl3-dbg          libcurl4-doc          libcurl4-openssl-dev

libcurl-ocaml-dev     libcurl3-gnutls       libcurl4-gnutls-dev   libcurlpp-dev

libcurl3              libcurl3-nss          libcurl4-nss-dev      libcurlpp0

pi@raspberrypi:~/ArchiSteamFarm $ sudo apt install libcurl3 libicu

libicu-dev         libicu4j-4.4-java  libicu4j-java      libicu57

libicu4j-4.2-java  libicu4j-49-java   libicu4j-java-doc  libicu57-dbg


------

pi@raspberrypi:~/ArchiSteamFarm $ sudo apt install libcurl3 libicu57 libkrb5-3 liblttng-ust0 libssl1.0.2 zlib1g

패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다
상태 정보를 읽는 중입니다... 완료
libcurl3 is already the newest version (7.52.1-5+deb9u8).
libicu57 is already the newest version (57.1-6+deb9u2).
libkrb5-3 is already the newest version (1.15-1+deb9u1).
liblttng-ust0 is already the newest version (2.9.0-2+deb9u1).
libssl1.0.2 is already the newest version (1.0.2l-2+deb9u3).
zlib1g is already the newest version (1:1.2.8.dfsg-5).

이미 설치 되어있어 최신버전을 찾는 메시지로 첨부함.
"설치할거야? 용량 얼마가 추가돼 [Y/N]" 같은 메시지로 물어보면 Y입력 후 엔터하여 설치.

------

pi@raspberrypi:~/ArchiSteamFarm $ sudo apt install screen
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다
상태 정보를 읽는 중입니다... 완료
제안하는 패키지:
  byobu | screenie | iselect
다음 새 패키지를 설치할 것입니다:
  screen
0개 업그레이드, 1개 새로 설치, 0개 제거 및 0개 업그레이드 안 함.
547 k바이트 아카이브를 받아야 합니다.
이 작업 후 922 k바이트의 디스크 공간을 더 사용하게 됩니다.
받기:1 http://ftp.harukasan.org/raspbian/raspbian stretch/main armhf screen armhf 4.5.0-6 [547 kB]
내려받기 547 k바이트, 소요시간 1초 (357 k바이트/초)


ArchiSteamFarm 파일이 실행파일이니 실행 권한을 주고 실행하면 된다.

pi@raspberrypi:~/ArchiSteamFarm $ chmod +x ArchiSteamFarm

pi@raspberrypi:~/ArchiSteamFarm $ ./ArchiSteamFarm


3. CONFIG 설정 및 실행

pi@raspberrypi:~/ArchiSteamFarm $ ./ArchiSteamFarm

2018-11-18 14:32:15|ArchiSteamFarm-11979|INFO|ASF|InitASF() ArchiSteamFarm V3.4.0.7 (linux-x64/364ca94e-579a-49c2-9b4a-6362fb48a57d | Linux 4.4.0-131-generic #157-Ubuntu SMP Thu Jul 12 15:51:36 UTC 2018)

2018-11-18 14:32:15|ArchiSteamFarm-11979|INFO|ASF|InitGlobalDatabaseAndServices() It looks like it's your first launch of the program, welcome!

2018-11-18 14:32:25|ArchiSteamFarm-11979|WARN|ASF|InitGlobalDatabaseAndServices() Please review our privacy policy section on the wiki if you're concerned about what ASF is in fact doing!

2018-11-18 14:32:30|ArchiSteamFarm-11979|INFO|ASF|UpdateAndRestart() ASF will automatically check for new versions every 1 day.

2018-11-18 14:32:30|ArchiSteamFarm-11979|INFO|ASF|Update() Checking for new version...

2018-11-18 14:32:33|ArchiSteamFarm-11979|INFO|ASF|Update() Local version: 3.4.0.7 | Remote version: 3.4.0.7

2018-11-18 14:32:33|ArchiSteamFarm-11979|INFO|ASF|InitializeSteamConfiguration() Initializing SteamDirectory...

2018-11-18 14:32:33|ArchiSteamFarm-11979|INFO|ASF|InitializeSteamConfiguration() Success!

2018-11-18 14:32:33|ArchiSteamFarm-11979|WARN|ASF|InitBots() No bots are defined. Did you forget to configure your ASF?

실행은 정상적으로 되었으나 ASF가 설정된 콘피그 파일이 없다고 한다.

콘피그 파일을 생성하여 config 폴더 안에 넣어야 한다.


설정하는 파일은 다음과 같다.

ArchiSteamFarm[폴더]
├ArchiSteamFarm
└config
 ├ASF.json  (만들어야 하는 파일)
 ├ASF.db    (실행 후 자동으로 생성되는 파일)
 ├사용자계정.json  (만들어야 하는 파일)
 ├사용자계정.db    (실행 후 자동으로 생성되는 파일)
 └사용자계정.bin   (실행 후 자동으로 생성되는 파일)


Config 파일 생성은 ConfigGenerator.html 파일을 실행하면 웹 브라우저에서 생성 되지만 터미널 환경이므로 윈도우 환경의 컴퓨터에서 크롬을 이용해 다음 주소에서 생성한다.
https://justarchinet.github.io/ASF-WebConfigGenerator/#/


웹에서 생성하는 것이 불안하다면 다음 내용을 본인 계정에 맞게 설정 후 파일에 입력하면 된다. (이름만 맞추면 된다.)

ASF.json

{

  "s_SteamOwnerID": "사용자 계정의 STEAMID64 숫자",

  "CurrentCulture": "ko-KR"

}

JSON 의 형식으로 지정되며 s_SteamOwnerID 는 https://steamid.io/ 에서 자신의 로그인아이디를 검색하여 STEAMID64 내용을 복사하여 붙여넣으면 된다.

ASF.json 은 파일명을 다르게 바꾸지 않고 그대로 설정하여 작성한다.
메모장이나 Notepad++ 같은 편집 프로그램으로 입력하여 config 폴더 안에 위치하면 된다.


agent-YellowTopaz.json

{

  "SteamLogin": "스팀 로그인 ID",

  "SteamPassword": "스팀 로그인 비밀번호",

  "Enabled": true

}

사용자계정.json 파일은 파일명을 임의로 설정해도 무관하다.

여러개의 계정을 컨트롤 하는 경우 "Enabled": false 로 여러 파일을 넣어두면 된다.

비밀번호의 경우 원하지 않으면 작성하지 않아도 프로그램을 켤 때 물어본다고 하는데 어차피 2차인증기를 사용하므로 귀찮아서 입력했다.

ASF를 실행할 때에도 2차인증 비밀번호를 물어본다.

기본적인 콘피그 설정은 끝났다.

만약 세부적인 설정을 하고 싶다면 위 링크의 콘피그 생성기를 통해 세부 내용을 생성하면 된다.

pi@raspberrypi:~/ArchiSteamFarm $ vi config/ASF.json

pi@raspberrypi:~/ArchiSteamFarm $ vi config/agent-YellowTopaz.json

pi@raspberrypi:~/ArchiSteamFarm $ ./ArchiSteamFarm

이렇게 수동으로 위 초록박스 내용을 붙여넣어도 동작한다.

다시 ArchiSteamFarm 을 실행하면 한글로 환영메시지가 나오며 카드 농사를 시작한다.

2018-11-18 15:29:38|ArchiSteamFarm-14488|INFO|ASF|InitASF() ArchiSteamFarm V3.4.0.7

2018-11-18 15:29:39|ArchiSteamFarm-14488|INFO|ASF|Start() IPC 서버 시작...

2018-11-18 15:29:41|ArchiSteamFarm-14488|INFO|ASF|Start() IPC 서버 준비 완료!

2018-11-18 15:29:41|ArchiSteamFarm-14488|INFO|ASF|UpdateAndRestart() ASF는 1 day 간격으로 새로운 버전을 자동으로 확인합 니다.

2018-11-18 15:29:41|ArchiSteamFarm-14488|INFO|ASF|Update() 새로운 버전 확인 중...

2018-11-18 15:29:43|ArchiSteamFarm-14488|INFO|ASF|Update() 로컬 버전: 3.4.0.7 | 원격 버전: 3.4.0.7

2018-11-18 15:29:43|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|Start() 시작 중...

2018-11-18 15:29:43|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|Connect() 연결 중...

2018-11-18 15:29:43|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|OnConnected() Steam에 연결되었습니다!

2018-11-18 15:29:44|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|OnConnected() 로그인 중...

2018-11-18 15:29:44|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|OnLoggedOn() 으로 로그인 성공

2018-11-18 15:29:45|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|Init() ISteamUserAuth에 로그인 중...

2018-11-18 15:29:46|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|IsAnythingToFarm() 첫 번째 배지 페이지를 확인하는 중...

2018-11-18 15:29:46|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|Init() 성공!

2018-11-18 15:29:49|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|IsAnythingToFarm() 나머지 배지 페이지를 확인하는 중...

bg 명령어나 CTRL + C 를 누르는 경우 실행이 중지된다.


그래서 위에서 미리 설치한 screen 명령어를 통해 실행 해 준다.

pi@raspberrypi:~/ArchiSteamFarm $ screen -S ASF ./ArchiSteamFarm

pi@raspberrypi:~/ArchiSteamFarm $ screen -list

There is a screen on:
        ??????.ASF       (11/17/2018 08:55:01 PM)        (Detached)
1 Socket in /???/???/?????/S-ASF.

pi@raspberrypi:~/ArchiSteamFarm $ 

"screen -S" 는 이름을 지정해서 "screen -list" 명령어를 통해 확인할 수 있는 내용이다.

정상적으로 실행되는 것을 확인한 이후에 CTRL 키를 누른 채  A, D (순차 입력) 를 입력하여 터미널로 빠져 나오면 백그라운드에서 데몬 형태로 돌아간다.

"screen -list" 명령어를 통해서 확인할 수 있고
ps aux 명령어를 통해서도 확인할 수 있다.

만약 상태를 확인하고 싶다면 "screen -R ASF" 을 입력하면 백그라운드로 돌아가는 내용을 보여준다. 다시 빠져나오고 싶다면 CTRL+A,D 를 입력하면 된다.



Happy Farming!


만약 파밍중에 게임을 실행하면?

다음과 같은 팝업 메시지창을 볼 수 있다.

"계속 실행" 버튼을 누르면 게임이 실행된다.
ASF는 사용자가 게임을 하고 있을 때 정지상태로 대기하고, 사용자가 게임을 끝내면 다시 파밍을 시작한다.

2018-11-18 15:28:24|ArchiSteamFarm-20395|INFO|agent-YellowTopaz|FarmCards() 농사 멈춤: 225600 (Blade Symphony)

2018-11-18 15:28:25|ArchiSteamFarm-20395|INFO|agent-YellowTopaz|OnConnected() Steam에 연결되었습니다!

2018-11-18 15:28:25|ArchiSteamFarm-20395|INFO|agent-YellowTopaz|OnConnected() 로그인 중...

2018-11-18 15:28:25|ArchiSteamFarm-20395|INFO|agent-YellowTopaz|OnLoggedOn() 으로 로그인 성공

2018-11-18 15:28:25|ArchiSteamFarm-20395|INFO|agent-YellowTopaz|Init() ISteamUserAuth에 로그인 중...

2018-11-18 15:28:25|ArchiSteamFarm-20395|INFO|agent-YellowTopaz|CheckOccupationStatus() 계정이 현재 사용 중입니다. ASF는 계정이 아무 것도 하지 않고 있을 경우 농사를 재개할 것입니다...

2018-11-18 15:28:25|ArchiSteamFarm-20395|INFO|agent-YellowTopaz|StopFarming() 농사 멈춤!

------게임 종료 후-----

2018-11-18 15:29:46|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|Init() 성공!

2018-11-18 15:29:49|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|IsAnythingToFarm() 나머지 배지 페이지를 확인하는 중...

2018-11-18 15:29:52|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|StartFarming() 농사가 현재 불가능 합니다. 나중에 다시 시도합니다!

2018-11-18 15:42:21|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|CheckOccupationStatus() 계정이 현재 사용되고 있지 않습니다 : 농사를 재개합니다!

2018-11-18 15:42:21|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|IsAnythingToFarm() 첫 번째 배지 페이지를 확인하는 중...

2018-11-18 15:42:23|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|IsAnythingToFarm() 나머지 배지 페이지를 확인하는 중...

2018-11-18 15:42:27|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|Farm() 총 326개의 게임 (1276개의 카드) 남음. (약 3 weeks, 6 days, 23 hours 소요)...

2018-11-18 15:42:27|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|Farm() 선택된 농사 기법: Complex

2018-11-18 15:42:27|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|FarmSolo() 현재 농사 중: 225600 (Blade Symphony)

2018-11-18 15:42:28|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|ShouldFarm() 225600 (Blade Symphony) 농사 상태: 2개의 카드 남음.

2018-11-18 15:42:28|ArchiSteamFarm-14488|INFO|agent-YellowTopaz|FarmCards() 아직 농사 중: 225600 (Blade Symphony)


끝.

다음: 봇을 제어하기 위한 IPC 설정




+ Recent posts