0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Pythonでロボットバトル!自作ロジックで戦う「PCRB」を公開しました

Posted at

こんにちは。今回は、Pythonでロボットの行動ロジックを作成し、仮想バトルを楽しめるアプリ「PCRB(Python Code Robot Battle)」を紹介します。

PCRBとは?

PCRBは、Pythonで自作したロジック(AI)を使ってロボット同士を戦わせる、ターン制の戦略ゲームです。
自分で考えたアルゴリズムを実装し、他のロボットと対戦して強さを競うことができます。

  • ロジックはPythonで自由に記述可能
  • StreamlitベースのWebアプリで手軽に遊べる
  • サンプルやマニュアルも充実

こんな人におすすめ

  • PythonでAIやアルゴリズムを試したい
  • ゲームAIの入門や教材を探している
  • 競技プログラミングや戦略ゲームが好き

遊び方

1. サンプルロジックをダウンロード

まずはサンプルのロジックファイルをダウンロードします。
アプリの「Home」ページからワンクリックで取得できます。

def robot_logic(robot, game_info, memos):
    enemy_position = game_info['enemy_position']
    if robot.sp < 20:
        return "rest"
    elif abs(robot.position[0] - enemy_position[0]) + abs(robot.position[1] - enemy_position[1]) == 1:
        return "attack"
    else:
        if robot.position[0] < enemy_position[0]:
            return "right"
        elif robot.position[0] > enemy_position[0]:
            return "left"
        elif robot.position[1] < enemy_position[1]:
            return "down"
        else:
            return "up"

2. ロジックを編集

エディタでサンプルファイルを開き、戦略を自由に改造しましょう。
例えば「HPが50以下なら防御する」など、条件分岐もOKです。

3. ロジックファイルをアップロード

アプリの「Home」ページで、作成したPythonファイルをアップロードします。

4. バトル&ログ確認

アップロード後、自動でバトルが始まり、勝敗やログが表示されます。
ログ(game_state.json)はダウンロードでき、詳細なターンごとの状況も確認できます。

5. 改良して再挑戦!

ログを見てロジックを改良し、何度でも挑戦できます。

主なアクション一覧

アクション名 コマンド例 効果・特徴
通常攻撃 "attack" 隣接する敵に20ダメージ
移動 "up" "down" 1マス移動
防御 "defend" 1ターン受けるダメージ半減
遠隔攻撃 "ranged_attack" 2マス離れた敵に15ダメージ
パリィ "parry" 攻撃無効化+敵をスタン
休息 "rest" SPを15回復
罠設置 "trap_right"等 指定方向に罠設置(25ダメージ)
スタミナ盗み "steal" 隣接敵からSPを奪う
テレポート "teleport" ランダムな位置に瞬間移動
カモフラージュ "camouflage" 3ターン位置を隠す
スキャン "scan" 敵のSPや罠の位置を確認

Webアプリの使い方

  • PCRBアプリ(Streamlit Cloud)
    https://python-code-robot-battle.streamlit.app/
    ブラウザだけでOK。ローカル実行も可能です(README参照)。
  • ManualページやTutorialページで詳細ルールや使い方を確認できます。

開発・カスタマイズ

まとめ

PCRBは、PythonでAIロジックを作って遊べるバトルゲームです。
ぜひ自分だけの最強ロボットを作ってみてください!


ご質問・要望などあればコメントでどうぞ!


※本記事で紹介した内容・仕様は2025年6月時点のものです。
最新情報や詳細は公式リポジトリをご覧ください。
https://github.com/ai-study-room-notat/python_code_robot_battle

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?