feat(*): Add self-play RL training pipeline with PPO trainer, in-game GDScript policy inference, and bot opponent support in Match mode

This commit is contained in:
Josh Creek
2026-07-18 19:32:51 +01:00
parent 328831df1f
commit 85f96eb15e
81 changed files with 3934 additions and 10 deletions
+1
View File
@@ -6,6 +6,7 @@
[node name="Match" type="Node3D"]
script = ExtResource("1_m")
bot_model_path = "res://bots/rookie.json"
[node name="Arena" parent="." instance=ExtResource("2_m")]
+15
View File
@@ -0,0 +1,15 @@
[gd_scene load_steps=4 format=3]
[ext_resource type="Script" path="res://scripts/training_mode.gd" id="1_tr"]
[ext_resource type="PackedScene" path="res://scenes/arena_01.tscn" id="2_tr"]
[ext_resource type="Script" path="res://addons/godot_rl_agents/sync.gd" id="3_tr"]
[node name="Training" type="Node3D"]
script = ExtResource("1_tr")
[node name="Arena" parent="." instance=ExtResource("2_tr")]
[node name="Sync" type="Node" parent="."]
script = ExtResource("3_tr")
action_repeat = 8
speed_up = 8.0