TownStarの自動販売スクリプトをいじってみた
先日始めたTownstarですが、Autosellという倉庫にたまったアイテムを自動で販売するスクリプトを試してみました。Chromeブラウザ拡張のTampermonkeyで動作するユーザースクリプトなのですが、こんな便利なものがあったんですね!
TampermonkeyとTown Star Auto-Sell v2
↓ChromeのTampermonekyブラウザ拡張
https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo
↓ここからスクリプトをダウンロード。Town Star Auto-Sell v2 というのを使いました。
https://gala-analytics.herokuapp.com/townstar
インストール手順や設定などは以下のサイトが参考になりました。
【Town Star攻略】Scriptの実装方法
https://yoshimurablog.net/scriptmethod/
Town Star で稼ぎたいなら必須な自動販売スクリプト
http://mekadama.com/849
アイテム名はTownstarの言語を英語にすれば確認できます。
あと、たまに動かなくなるときがあるのですが、在庫がたまった状態でゲームを起動して"Introducing Play to Earn!"のポップアップウィンドウが開いた状態だとエラーになってスクリプトが止まってしまうようです。この場合在庫を減らしてからゲームをリロードします。
寝る前などは、ちゃんと自動売買のスクリプトが動いていることを確認してから寝た方がいいと思います。
Auto-Sellスクリプトをいじって自動復帰
あと原因不明ですが、しばらく動いてたんだけど夜中に途中で止まっていることがありました。それは困る、ということで仮にとまっていても自動復帰するようスクリプトに手をいれてみました。Tampermonkeyのユーザースクリプトって、こうやって自分でササっと改造できるのええですね。
↓ちょっと手をいれたところ
AutosellスクリプトのCheckCrafts関数が在庫チェックして余ってたら売るという主な繰り返しロジックですが、これが5秒ごとに呼び出されています。
追加した処理で、CheckCraftsが長いこと(60秒以上)呼ばれていなかったら、CheckCraftsを再び呼び出すようにしました。また、30分以上何も売却処理が行われていない場合はブラウザをリロードするようにしました。
これで多い日も安心!(夜中にエラーが)
Chormeデベロッパーツール
なお、ChromeでF12キーを押すデベロッパーツールなるものが開きます。このツール上で、標準出力されたログや、ブレイクポイントを設置して変数を確認するとかも可能なようです。
ユーザースクリプトに
console.log("ほにゃらら")
と書いたのが標準出力でConsoleタブのビューに表示されます。
またSourcesタブのPageの右側の...のOpen fileから"autosell"などで検索して、Tampermonekeyで作成した動作中のファイルを開くことができます。
実際売った在庫をチェックして余剰在庫を調べたりとかもうちょっと凝った機能も、ソースと変数名を調べていけばできるかも(?)
↓参考
https://www.bugbugnow.net/2021/02/user-script.html
以上、Townstarを遊んでみてて知った副産物のTampermonkeyやChromeデベロッパーツールですが、はじめて試してみましたがこれはゲームだけでなくいろいろブラウザまわりの自動化に役立ちそうですね。