ランチャー トレンド
0post
2025.11.30 00:00
:0% :0% (20代/女性)
人気のポスト ※表示されているRP数は特定時点のものです
武器紹介:Springbok(アサルトライフル)
単独装備時は両手持ちになり、連射性能がわずかに向上します。
オルト射撃はグレネードランチャーで、パーフェクト回避成功時はグレネードを追加コストなしで1発投げられます。
#CodeRapid #メカ #インディーゲーム https://t.co/2grTcgBFag November 11, 2025
1RP
みなさん長物ロマンはお好き?ではご覧見せましょうバスターメガランチャーを✨余裕の音だ!火力が違いますよ✨
#プラモデルライフ https://t.co/iWglr3jqsa November 11, 2025
1RP
スミ入れも完了してバスターランチャーだけ形にしてみる🤩よくここまで来た自分🥹感動🥹
#KOG #IMS #FSS https://t.co/Gpdc8dZDcc https://t.co/lpGVJAt8Ht November 11, 2025
【ゆっくり解説】艦これ遠征補助ツールを解説するぜ!
霊夢「ゆっくりしていってね!」
魔理沙「ゆっくりしていってね!!」
魔理沙「どうも、魔理沙だぜ。今回は艦これの遠征を自動化するPythonスクリプトを解説していくぜ」
霊夢「霊夢よ。……って、いきなり自動化?それって大丈夫なの?」
魔理沙「おっと、最初に言っておくが、利用規約的にはグレーからアウト寄りだ。BANされても自己責任だから、そこは理解した上で見てくれ」
霊夢「注意喚起大事ね」
🎬 このツールは何をするの?
魔理沙「まずこのツールが何をするか説明するぜ。一言で言うと**『5分ごとに遠征艦隊の帰還確認と再出撃を自動でやってくれる』**ツールだ」
霊夢「遠征って、放置してると帰ってきても止まったままになるやつね」
魔理沙「そうだぜ。普通は手動でポチポチやるんだが、このツールがあれば寝てる間も遠征を回し続けられるってわけだ」
霊夢「便利だけど闇を感じるわね……」
📋 全体のフロー
魔理沙「じゃあ処理の流れを見ていくぜ。こんな感じだ」
① 母港にいるか確認(出撃アイコンが見えてるか)
↓
② 出撃ボタンをクリック
↓
③ 母港ボタンをクリック(一度戻る)
↓
④〜⑨ 「遠征から戻ってきました」があれば受け取り(最大3艦隊分)
↓
⑩ 出撃 → 遠征画面へ移動
↓
⑪〜⑰ 各艦隊を遠征に出す(3部隊分ループ)
↓
母港に戻る → カーソルを画面中央に移動 → 5分待機 → ①に戻る
霊夢「結構細かく分かれてるのね。でもなんで②で出撃押してから③で母港に戻るの?無駄じゃない?」
魔理沙「いい質問だぜ霊夢。これは帰還通知を確実に出すためなんだ。画面遷移を挟むことで、帰還艦隊の通知が表示されやすくなるんだぜ」
霊夢「へぇ〜、ゲームの仕様を理解した上での設計ね」
🔍 画像認識のしくみ
魔理沙「次に、どうやってボタンの位置を見つけてるか説明するぜ」
霊夢「座標を直接指定してるの?」
魔理沙「違うぜ。OpenCVのテンプレートマッチングを使ってるんだ」
霊夢「おーぷんしーぶい……?」
魔理沙「画像処理ライブラリだぜ。簡単に言うと、**『この画像に似てる場所を画面から探して』**ってやってくれるんだ」
# 画面のスクリーンショットを撮る
screenshot = pyautogui.screenshot()
# テンプレート画像と比較して似てる場所を探す
result = cv2.matchTemplate(screenshot_cv, template, https://t.co/B6GcChOq9G_CCOEFF_NORMED)
# 一番似てる場所の座標と、どれくらい似てるか(0〜1)を取得
min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(result)
# 80%以上似てたら「見つかった」と判定
if max_val >= 0.8:
# max_loc が見つかった座標!
霊夢「なるほど、事前に『出撃ボタンの画像』とかを用意しておくのね」
魔理沙「そういうことだぜ。だからimagesフォルダにテンプレート画像を入れておく必要があるんだ」
🎲 ガウス分布で人間っぽく
霊夢「ところで魔理沙、このコードのrandom.gaussって何?」
魔理沙「お、いいところに気づいたな霊夢!これがこのツールの工夫ポイントその1だぜ!」
霊夢「工夫ポイント?」
魔理沙「普通にBOTを作ると、毎回まったく同じ座標をクリックして、毎回まったく同じ秒数待機するだろ?」
霊夢「そうね」
魔理沙「でも人間はそうじゃないよな。クリック位置も微妙にずれるし、操作間隔もバラバラだ」
霊夢「あっ……BOT検出対策?」
魔理沙「そういうことだぜ!**ガウス分布(正規分布)**を使うと、こんな感じのばらつきが出るんだ」
【クリック座標のばらつき】
目標座標 (500, 300) の場合:
→ (502, 298) ← ちょっとズレた
→ (497, 303) ← ちょっとズレた
→ (499, 301) ← ほぼ真ん中
→ (506, 295) ← たまに大きくズレる
【待機時間のばらつき】
目標 3秒 の場合:
→ 2.7秒、3.2秒、2.9秒、3.4秒、2.8秒...
霊夢「中心に近い値が出やすいけど、たまにズレるのね。確かに人間っぽい」
魔理沙「コードはこうなってるぜ」
def _randomize_position(self, x: int, y: int):
# 座標にガウス分布でばらつきを加える
new_x = int(random.gauss(x, self.config.position_sigma)) # σ=3ピクセル
new_y = int(random.gauss(y, self.config.position_sigma))
return new_x, new_y
def _randomize_delay(self, base_delay: float):
# 待機時間にガウス分布でばらつきを加える
return max(0.1, random.gauss(base_delay, self.config.delay_sigma)) # σ=0.5秒
霊夢「sigmaって何?」
魔理沙「標準偏差だぜ。この値が大きいほどばらつきが大きくなる。小さいと中心に集まりやすくなるんだ」
⚙️ 設定ファイルの設計
霊夢「config.jsonってファイルがあるみたいだけど、これは?」
魔理沙「どの艦隊をどの遠征に出すかを設定するファイルだぜ。こんな感じだ」
{
"fleet_expeditions": [
{"fleet_number": 2, "expedition_id": 5, "enabled": true},
{"fleet_number": 3, "expedition_id": 21, "enabled": true},
{"fleet_number": 4, "expedition_id": 6, "enabled": true}
],
"expedition_master": {
"5": {"name": "海上護衛任務", "area_name": "鎮守府海域", "area_id": 1},
"6": {"name": "防空射撃演習", "area_name": "鎮守府海域", "area_id": 1},
"21": {"name": "北方鼠輸送作戦", "area_name": "北方海域", "area_id": 3}
}
}
霊夢「expedition_masterって何?」
魔理沙「遠征のマスターデータだぜ。これが工夫ポイントその2だ」
霊夢「どういうこと?」
魔理沙「ユーザーはexpedition_idを指定するだけでいいんだ。すると、プログラムが自動で**『この遠征は北方海域だから、area_3.pngをクリックすればいいな』**って判断してくれる」
def __post_init__(self):
if self.expedition_id in EXPEDITION_MASTER:
master = EXPEDITION_MASTER[self.expedition_id]
self.expedition_name = master["name"] # 自動で入る
self.area_id = master["area_id"] # 自動で入る
self.area_name = master["area_name"] # 自動で入る
霊夢「へぇ〜、IDだけ変えれば海域は勝手に判定してくれるのね。便利」
魔理沙「新しい遠征を追加したい時も、マスターデータに追記するだけでOKだぜ」
🛡️ エラーリカバリー機能
霊夢「ところで、途中で失敗したらどうなるの?変な画面で止まったりしない?」
魔理沙「いい質問だぜ!そこが工夫ポイントその3だ」
霊夢「また工夫ポイント?多いわね」
魔理沙「このツールにはエラーリカバリー機能が付いてるんだ。失敗しても母港に戻ろうとするんだぜ」
def try_return_to_port(self):
"""母港への復帰を試みる(エラーリカバリー用)"""
for attempt in range(5):
# 母港ボタンを探してクリック
if https://t.co/If3KkTOxKT_icon(IconType.PORT):
return True
# ESCキーも試す(ダイアログが出てる場合)
https://t.co/UQQILWNFcP('escape')
time.sleep(1.0)
return False
霊夢「5回も試すのね。しかもESCキーまで押すの?」
魔理沙「ダイアログとかが出てると母港ボタンが見えないことがあるからな。ESCで閉じられることもあるんだぜ」
霊夢「芸が細かい……」
魔理沙「あと、ボタンの検出も複数回試行するようになってるぜ」
# 決定ボタンを探す(最大3回試行)
for attempt in range(3):
if self.has_decide_button():
decide_found = True
break
time.sleep(1.0) # 1秒待ってもう一度探す
霊夢「なんで複数回?」
魔理沙「画面遷移のタイミングだぜ。クリックした直後はまだ画面が切り替わってないことがあるからな。少し待ってから探し直すことで、見逃しを防いでるんだ」
🚨 フェイルセーフ機能
霊夢「暴走したらどうやって止めるの?怖いんだけど」
魔理沙「大丈夫だぜ。2つの緊急停止方法があるんだ」
# 方法1:マウスを画面左上隅に移動
pyautogui.FAILSAFE = True
# 方法2:Ctrl+C
except KeyboardInterrupt:
https://t.co/V6l3df4gEv("Ctrl+Cで中断されました")
霊夢「左上隅に持っていくだけで止まるの?」
魔理沙「そうだぜ。PyAutoGUIのフェイルセーフ機能だ。マウスカーソルを画面の左上隅(座標0,0)に持っていくと、即座に例外が発生して停止するんだ」
霊夢「それは安心ね」
魔理沙「自動化ツールには必須の機能だぜ。いつでも止められるようにしておかないと危険だからな」
🖱️ カーソル中央移動
霊夢「そういえば、母港ボタン押した後にカーソルが中央に移動してるわね」
魔理沙「おっ、よく見てるな霊夢。これも地味だけど重要なんだぜ」
def click_icon(self, icon_type: IconType, wait: float = None) -> bool:
if pos:
https://t.co/If3KkTOxKT(pos[0], pos[1], wait)
# 母港ボタンをクリックした後は必ずカーソルを中央に移動
if icon_type == IconType.PORT:
self.move_cursor_to_center()
return True
霊夢「なんでわざわざ移動させるの?」
魔理沙「理由は2つだぜ」
魔理沙「1つ目:ツールチップ対策。カーソルがボタンの上に残ってると、ツールチップ(説明文)が出て画像認識の邪魔になることがあるんだ」
霊夢「あー、確かにマウスオーバーすると何か出てくるわね」
魔理沙「2つ目:待機中の邪魔にならない。5分待機してる間、カーソルがボタンの上にあると見づらいし、誤クリックの原因にもなるからな」
🖥️ GUIランチャー
霊夢「gui_launcher.pyってファイルもあるみたいだけど」
魔理沙「これはGUIで操作できるランチャーだぜ。コマンドラインが苦手な人向けだな」
霊夢「どんな感じなの?」
魔理沙「tkinterで作られたウィンドウが出て、遠征をプルダウンメニューから選べるんだ」
exp_combo = ttk.Combobox(
frame,
textvariable=exp_var,
values=[
"ID5: 海上護衛任務 (鎮守府海域)",
"ID21: 北方鼠輸送作戦 (北方海域)",
...
],
state="readonly"
)
霊夢「文字で見えるから選びやすいわね」
魔理沙「あと、別スレッドで実行してるから、処理中でもGUIがフリーズしないんだぜ」
self.helper_thread = threading.Thread(target=run, daemon=True)
self.helper_thread.start()
霊夢「至れり尽くせりね」
📝 まとめ
魔理沙「よし、じゃあ最後にまとめるぜ!」
工夫ポイント 内容 ガウス分布 クリック座標と待機時間にランダム性を加えて人間っぽく マスターデータ分離 遠征IDだけ指定すれば海域は自動判定 エラーリカバリー 失敗しても母港への復帰を試みる 複数回試行 ボタン検出を最大3回再試行 フェイルセーフ 左上隅にマウス移動 or Ctrl+C で即停止 カーソル中央移動 画像認識の精度向上とUX改善 GUI対応 コマンドライン苦手でもOK
霊夢「なかなか作り込まれてるわね」
魔理沙「ただし何度も言うが、使用は自己責任だぜ。BANされても知らないからな」
霊夢「そこ大事ね」
魔理沙「というわけで今回の解説は以上だぜ。参考になったら高評価とチャンネル登録よろしくな!」
霊夢「ゆっくりしていってね!」
魔理沙「ゆっくりしていってね!!」
〜 おしまい 〜 November 11, 2025
<ポストの表示について>
本サイトではXの利用規約に沿ってポストを表示させていただいております。ポストの非表示を希望される方はこちらのお問い合わせフォームまでご連絡下さい。こちらのデータはAPIでも販売しております。



