mirror of
https://github.com/jcreek/CosmicClash.git
synced 2026-09-10 16:04:04 +00:00
feat(*): Promote curric-s6-unmask as the shipped "easy" bot
This commit is contained in:
File diff suppressed because one or more lines are too long
@@ -6,7 +6,7 @@
|
||||
|
||||
[node name="Match" type="Node3D"]
|
||||
script = ExtResource("1_m")
|
||||
bot_model_path = "res://bots/run05.json"
|
||||
bot_model_path = "res://bots/promoted/easy.json"
|
||||
|
||||
[node name="Arena" parent="." instance=ExtResource("2_m")]
|
||||
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
|
||||
[node name="Spectate" type="Node3D"]
|
||||
script = ExtResource("1_s")
|
||||
bot_a_model_path = "res://bots/run05.json"
|
||||
bot_b_model_path = "res://bots/run05.json"
|
||||
bot_a_model_path = "res://bots/promoted/easy.json"
|
||||
bot_b_model_path = "res://bots/promoted/easy.json"
|
||||
|
||||
[node name="Arena" parent="." instance=ExtResource("2_s")]
|
||||
|
||||
|
||||
+25
@@ -142,6 +142,31 @@ mode (`bot_model_path`, `bot_reaction_ticks`, `bot_action_noise` in
|
||||
reactions, easier.
|
||||
- **action_noise**: adds execution error, easier.
|
||||
|
||||
### Promoted bots (`Game/bots/promoted/`)
|
||||
|
||||
`Game/bots/*.json` is a flat, ever-growing dump of every experiment/curriculum
|
||||
export — useful for `evaluate.py` and for A/B-ing arbitrary past checkpoints
|
||||
against each other in the in-game Spectate dropdown (`main_menu.gd` lists
|
||||
`Game/bots/` non-recursively, so anything one directory deeper is invisible
|
||||
to it), but none of those filenames (`run07.json`, `curric-s3-no_draws.json`,
|
||||
...) are meant to be *the* shipped bot — they get superseded constantly and
|
||||
the automated curriculum pipeline (`run_training.sh`) only ever writes new
|
||||
flat files there, never touching subdirectories.
|
||||
|
||||
`Game/bots/promoted/<tier>.json` is the small, curated, hand-maintained set
|
||||
actually referenced by the shipped game — currently just `easy.json`
|
||||
(promoted 2026-07-24 from `curric-s6-unmask`, the strongest checkpoint at the
|
||||
time). `match.tscn`/`spectate.tscn` point their `bot_model_path` exports here
|
||||
directly, so a promoted file is never touched by training scripts, never
|
||||
overwritten by a same-named future export, and never disturbed by pruning old
|
||||
experiment files from the flat dump.
|
||||
|
||||
To promote a new bot into a tier: copy the chosen `Game/bots/<experiment>.json`
|
||||
to `Game/bots/promoted/<tier>.json` (overwriting the old one), and note the
|
||||
source experiment + date in this section. Do this for `medium.json`/
|
||||
`hard.json` as later curriculum stages clear the bar against `easy.json` in
|
||||
`evaluate.py`.
|
||||
|
||||
## Curriculum training
|
||||
|
||||
Training from scratch with self-play alone hands the network every skill
|
||||
|
||||
Reference in New Issue
Block a user