GTAオンラインが面白くて相変わらずプレイしているのですが、資金を増やす方法の1つに極秘貨物売却というビジネスがあります。
これはゲーム内の違法サイトから貨物を仕入れて違法サイト経由で売却し、利益を得るという仕組みです。
仕入れて売るのは現実と同じで違法サイトはダークウェブみたいな感じですね。
違法の物を売るのはゲーム内の他のビジネスでもありますが、極秘貨物の面白いのが仕入れ数と売却量を自分で決められるというところです。
仕入れ値は
- 1個 $2000
- 2個 $8000
- 3個 $18000
と決まっており、売却額は一定量の単位から選択します。
攻略の定石としては常に3個仕入れで、ある程度溜まったら全箱売却が時間当たりの利益が良いとされていますが、本当にそうなのかpythonを使って可視化してみようと思います。
データ
仕入れた貨物数で都度売却額が変わるのですが、このデータは自分で作らなきゃダメかと思っていたところいいまとめがありました。
流石全世界で遊ばれているだけあってナレッジ量が桁違いです。
グラフ化の前提
サイトは売却貨物の全データがありますが、私は寂しいことにソロプレイがほとんどなので小型倉庫分(16箱)だけのデータを使います。
倉庫の大きさは溜めて置ける貨物の量が違って
- 小型倉庫 16箱
- 中型倉庫 42箱
- 大型倉庫 111箱
溜めることができます。
大きい倉庫は仕入れて溜めるのが時間がかかりますが、売却額も増加します。
売る数が増えるほど輸送台数も増えるので邪魔されるリスクも増えます。
人を雇えば輸送台数が多くても捌けますが、私はもっぱら9箱のソロ売りです。
(9箱まで1台で輸送できる)
ちなみに小型倉庫はこんな感じ。
売却画面。
3個しか溜まってないですが、仕入れ値が$18000だったので3箱売れば$18000の利益が出ます。
環境
メイン機のWindows10で行います。
グラフ化はおなじみのmatplotlibで。
PS C:\Users\tsuru> $psversiontable Name Value ---- ----- PSVersion 5.1.18362.1171 PSEdition Desktop PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...} BuildVersion 10.0.18362.1171 CLRVersion 4.0.30319.42000 WSManStackVersion 3.0 PSRemotingProtocolVersion 2.3 SerializationVersion 1.1.0.1 PS C:\Users\tsuru> python --version Python 3.8.3 PS C:\Users\tsuru> pip list | findstr matplotlib matplotlib 3.4.0
データインポートのテスト
専用ディレクトリ作りました。
データはあらかじめ16個分までコピペしてcsv化してあります。
PS C:\Users\tsuru\tools\cargo-profits> ls ディレクトリ: C:\Users\tsuru\tools\cargo-profits Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 2021/04/01 19:16 0 profits.py -a---- 2021/03/26 23:32 1401 special cargo profits.csv
コードはこれから書くのでとりあえずpythonプロンプト内でデータ読み込んでみます。
csvはDictReaderで読み込むのが何かと便利です。
PS C:\Users\tsuru\tools\cargo-profits> python Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:20:19) [MSC v.1925 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import csv >>> import matplotlib.pyplot as plt Matplotlib is building the font cache; this may take a moment. >>> with open('special cargo profits.csv' , 'r') as f: ... reader = csv.DictReader(f) ... data = [x for x in reader]
>>> data[0] {'Crates': '1', 'Sell': '10000', 'PPC (Price per crate)': '10000', 'Profit @ 2k PC': '8000', 'Profit @ 4k PC': '6000', 'Profit @ 6k PC': '4000', 'Time @ 2k': '5:00', 'Time @ 4k': '7:00', 'Time @ 6k': '8:00', 'PPH @ 2k': '92664', 'PPH @ 4k': '50633', 'PPH @ 6k': '29162'}
OKですね。
キーごとまとめるため本番ではもう一回ループさせます。
今回は、
- Crates(箱数)
- Sell(売却額)
- Profit @ xk(利益)
- PPH @ xk(1時間当たりの利益)
を1、2、3個の仕入れ数ごとにグラフを出してみようと思います。
ほとんどGTAオンラインの紹介になってしまいましたが、長くなりそうなので次回へ続きます。
後編
GTAオンラインの極秘貨物の利益率をpythonでグラフ化する グラフ化偏 - paloma blog
おまけ
実はGTAオンラインがらみで似たようなことを経験済みです。
前回は資産の推移でしたが、今回は2軸を使っての利益率を出してみます。