cogames 0.3.49__tar.gz → 0.3.59.post1.dev2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/CHANGELOG.md +33 -1
- cogames-0.3.59.post1.dev2/LICENSE +21 -0
- cogames-0.3.59.post1.dev2/MISSION.md +162 -0
- cogames-0.3.59.post1.dev2/PKG-INFO +1826 -0
- cogames-0.3.59.post1.dev2/README.ipynb +3833 -0
- cogames-0.3.59.post1.dev2/README.md +1790 -0
- cogames-0.3.59.post1.dev2/README.py +342 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/TECHNICAL_MANUAL.md +5 -5
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/pyproject.toml +26 -12
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/scripts/run_evaluation.py +331 -339
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cli/client.py +48 -6
- cogames-0.3.59.post1.dev2/src/cogames/cli/docsync/_nb_md_directive_processing.py +180 -0
- cogames-0.3.59.post1.dev2/src/cogames/cli/docsync/_nb_md_sync.py +103 -0
- cogames-0.3.59.post1.dev2/src/cogames/cli/docsync/_nb_py_sync.py +122 -0
- cogames-0.3.59.post1.dev2/src/cogames/cli/docsync/_three_way_sync.py +115 -0
- cogames-0.3.59.post1.dev2/src/cogames/cli/docsync/_utils.py +76 -0
- cogames-0.3.59.post1.dev2/src/cogames/cli/docsync/docsync.py +156 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cli/leaderboard.py +72 -28
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cli/mission.py +54 -50
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cli/policy.py +46 -10
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cli/submit.py +268 -67
- cogames-0.3.59.post1.dev2/src/cogames/cogs_vs_clips/cog.py +79 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cogs_vs_clips/cogs_vs_clips_mapgen.md +19 -16
- cogames-0.3.59.post1.dev2/src/cogames/cogs_vs_clips/cogsguard_reward_variants.py +138 -0
- cogames-0.3.59.post1.dev2/src/cogames/cogs_vs_clips/cogsguard_tutorial.py +56 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cogs_vs_clips/evals/README.md +10 -16
- cogames-0.3.59.post1.dev2/src/cogames/cogs_vs_clips/evals/diagnostic_evals.py +336 -0
- cogames-0.3.59.post1.dev2/src/cogames/cogs_vs_clips/evals/difficulty_variants.py +132 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cogs_vs_clips/evals/integrated_evals.py +5 -45
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cogs_vs_clips/evals/spanning_evals.py +9 -180
- cogames-0.3.59.post1.dev2/src/cogames/cogs_vs_clips/mission.py +336 -0
- cogames-0.3.59.post1.dev2/src/cogames/cogs_vs_clips/missions.py +84 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cogs_vs_clips/procedural.py +8 -8
- cogames-0.3.59.post1.dev2/src/cogames/cogs_vs_clips/sites.py +168 -0
- cogames-0.3.59.post1.dev2/src/cogames/cogs_vs_clips/stations.py +252 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cogs_vs_clips/tutorial_missions.py +1 -1
- cogames-0.3.59.post1.dev2/src/cogames/cogs_vs_clips/variants.py +308 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/device.py +13 -1
- cogames-0.3.49/src/cogames/policy/scripted_agent/README.md → cogames-0.3.59.post1.dev2/src/cogames/docs/SCRIPTED_AGENT.md +82 -58
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/evaluate.py +18 -30
- cogames-0.3.59.post1.dev2/src/cogames/main.py +2357 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate1_1000.map +1 -1
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate1_1000_stations.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate1_500.map +1 -1
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate1_500_stations.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate2_1000.map +1 -1
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate2_1000_stations.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate2_500.map +1 -1
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate2_500_stations.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate3_1000.map +1 -1
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate3_1000_stations.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate3_500.map +1 -1
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate3_500_stations.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate4_500.map +1 -1
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/canidate4_500_stations.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/cave_base_50.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_agile.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_agile_hard.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_charge_up.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_charge_up_hard.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_chest_navigation1.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_chest_navigation1_hard.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_chest_navigation2.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_chest_navigation2_hard.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_chest_navigation3.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_chest_navigation3_hard.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_chest_near.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_chest_search.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_chest_search_hard.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_extract_lab.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_extract_lab_hard.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_memory.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_memory_hard.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_radial.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_radial_hard.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_resource_lab.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/diagnostic_evals/diagnostic_unclip.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/eval_balanced_spread.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/eval_clip_oxygen.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/eval_collect_resources.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/eval_collect_resources_hard.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/eval_collect_resources_medium.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/eval_divide_and_conquer.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/eval_energy_starved.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/eval_multi_coordinated_collect_hard.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/eval_oxygen_bottleneck.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/eval_single_use_world.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/extractor_hub_100x100.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/extractor_hub_30x30.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/extractor_hub_50x50.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/extractor_hub_70x70.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/evals/extractor_hub_80x80.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/machina_100_stations.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/machina_200_stations.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/machina_200_stations_small.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/machina_eval_exp01.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/machina_eval_template_large.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/machinatrainer4agents.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/machinatrainer4agentsbase.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/machinatrainerbig.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/machinatrainersmall.map +2 -2
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/aligner_avoid_aoe.map +28 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/aligner_full_cycle.map +28 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/aligner_gear.map +24 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/aligner_hearts.map +24 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/aligner_junction.map +26 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/exploration_distant.map +28 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/maze.map +32 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/miner_best_resource.map +26 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/miner_deposit.map +24 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/miner_extract.map +26 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/miner_full_cycle.map +28 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/miner_gear.map +24 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/multi_role.map +28 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/resource_chain.map +30 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/scout_explore.map +32 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/scout_gear.map +24 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/scrambler_full_cycle.map +28 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/scrambler_gear.map +24 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/scrambler_target.map +26 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/stuck_corridor.map +32 -0
- cogames-0.3.59.post1.dev2/src/cogames/maps/planky_evals/survive_retreat.map +26 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/training_facility_clipped.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/training_facility_open_1.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/training_facility_open_2.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/training_facility_open_3.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/training_facility_tight_4.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/training_facility_tight_5.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/vanilla_large.map +2 -2
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/vanilla_small.map +2 -2
- cogames-0.3.59.post1.dev2/src/cogames/pickup.py +183 -0
- cogames-0.3.59.post1.dev2/src/cogames/play.py +214 -0
- cogames-0.3.59.post1.dev2/src/cogames/policy/chaos_monkey.py +54 -0
- cogames-0.3.59.post1.dev2/src/cogames/policy/nim_agents/__init__.py +35 -0
- cogames-0.3.59.post1.dev2/src/cogames/policy/nim_agents/agents.py +127 -0
- cogames-0.3.59.post1.dev2/src/cogames/policy/nim_agents/thinky_eval.py +46 -0
- cogames-0.3.59.post1.dev2/src/cogames/policy/pufferlib_policy.py +136 -0
- cogames-0.3.59.post1.dev2/src/cogames/policy/starter_agent.py +184 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/policy/trainable_policy_template.py +4 -1
- cogames-0.3.59.post1.dev2/src/cogames/py.typed +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/train.py +51 -13
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/verbose.py +2 -2
- cogames-0.3.59.post1.dev2/src/cogames.egg-info/PKG-INFO +1826 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames.egg-info/SOURCES.txt +67 -26
- cogames-0.3.59.post1.dev2/src/cogames.egg-info/requires.txt +27 -0
- cogames-0.3.59.post1.dev2/src/cogames.egg-info/top_level.txt +2 -0
- cogames-0.3.59.post1.dev2/src/metta_alo/__init__.py +0 -0
- cogames-0.3.59.post1.dev2/src/metta_alo/job_specs.py +17 -0
- cogames-0.3.59.post1.dev2/src/metta_alo/policy.py +16 -0
- cogames-0.3.59.post1.dev2/src/metta_alo/pure_single_episode_runner.py +75 -0
- cogames-0.3.59.post1.dev2/src/metta_alo/py.typed +0 -0
- cogames-0.3.59.post1.dev2/src/metta_alo/rollout.py +322 -0
- cogames-0.3.59.post1.dev2/src/metta_alo/scoring.py +168 -0
- cogames-0.3.59.post1.dev2/tests/docsync/conftest.py +10 -0
- cogames-0.3.59.post1.dev2/tests/docsync/helpers.py +36 -0
- cogames-0.3.59.post1.dev2/tests/docsync/test_docsync_all.py +420 -0
- cogames-0.3.59.post1.dev2/tests/docsync/test_docsync_check.py +108 -0
- cogames-0.3.59.post1.dev2/tests/docsync/test_docsync_nb_to_md.py +626 -0
- cogames-0.3.59.post1.dev2/tests/docsync/test_docsync_nb_to_py.py +282 -0
- cogames-0.3.59.post1.dev2/tests/docsync/test_docsync_py_to_nb.py +315 -0
- cogames-0.3.59.post1.dev2/tests/metta_alo/test_scoring.py +125 -0
- cogames-0.3.59.post1.dev2/tests/test_chaos_monkey.py +18 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/tests/test_cli.py +8 -8
- cogames-0.3.59.post1.dev2/tests/test_cogs_vs_clips.py +13 -0
- cogames-0.3.59.post1.dev2/tests/test_policy_cli_parsing.py +75 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/tests/test_procedural_maps.py +4 -28
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/tests/test_train_integration.py +31 -27
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/tests/test_train_vector_alignment.py +13 -1
- cogames-0.3.59.post1.dev2/tests/test_upload_cli.py +614 -0
- cogames-0.3.59.post1.dev2/tests/test_upload_policy_bundles.py +63 -0
- cogames-0.3.59.post1.dev2/tutorials/01_MAKE_POLICY.ipynb +239 -0
- cogames-0.3.59.post1.dev2/tutorials/01_MAKE_POLICY.md +125 -0
- cogames-0.3.59.post1.dev2/tutorials/01_MAKE_POLICY.py +156 -0
- cogames-0.3.59.post1.dev2/tutorials/02_TRAIN.ipynb +188 -0
- cogames-0.3.59.post1.dev2/tutorials/02_TRAIN.md +91 -0
- cogames-0.3.59.post1.dev2/tutorials/02_TRAIN.py +119 -0
- cogames-0.3.59.post1.dev2/tutorials/03_SUBMIT.ipynb +379 -0
- cogames-0.3.59.post1.dev2/tutorials/03_SUBMIT.md +209 -0
- cogames-0.3.59.post1.dev2/tutorials/03_SUBMIT.py +251 -0
- cogames-0.3.49/MISSION.md +0 -207
- cogames-0.3.49/PKG-INFO +0 -406
- cogames-0.3.49/README.md +0 -386
- cogames-0.3.49/setup.py +0 -82
- cogames-0.3.49/src/cogames/cogs_vs_clips/evals/diagnostic_evals.py +0 -731
- cogames-0.3.49/src/cogames/cogs_vs_clips/evals/difficulty_variants.py +0 -445
- cogames-0.3.49/src/cogames/cogs_vs_clips/mission.py +0 -295
- cogames-0.3.49/src/cogames/cogs_vs_clips/missions.py +0 -177
- cogames-0.3.49/src/cogames/cogs_vs_clips/sites.py +0 -64
- cogames-0.3.49/src/cogames/cogs_vs_clips/stations.py +0 -240
- cogames-0.3.49/src/cogames/cogs_vs_clips/variants.py +0 -759
- cogames-0.3.49/src/cogames/main.py +0 -1170
- cogames-0.3.49/src/cogames/maps/diagnostic_evals/diagnostic_assembler_near.map +0 -49
- cogames-0.3.49/src/cogames/maps/diagnostic_evals/diagnostic_assembler_search.map +0 -49
- cogames-0.3.49/src/cogames/maps/diagnostic_evals/diagnostic_assembler_search_hard.map +0 -89
- cogames-0.3.49/src/cogames/play.py +0 -81
- cogames-0.3.49/src/cogames/policy/nim_agents/__init__.py +0 -18
- cogames-0.3.49/src/cogames/policy/nim_agents/agents.py +0 -66
- cogames-0.3.49/src/cogames/policy/nim_agents/common.nim +0 -887
- cogames-0.3.49/src/cogames/policy/nim_agents/install.sh +0 -1
- cogames-0.3.49/src/cogames/policy/nim_agents/ladybug_agent.nim +0 -984
- cogames-0.3.49/src/cogames/policy/nim_agents/nim_agents.nim +0 -55
- cogames-0.3.49/src/cogames/policy/nim_agents/nim_agents.nims +0 -14
- cogames-0.3.49/src/cogames/policy/nim_agents/nimby.lock +0 -3
- cogames-0.3.49/src/cogames/policy/nim_agents/racecar_agents.nim +0 -884
- cogames-0.3.49/src/cogames/policy/nim_agents/random_agents.nim +0 -68
- cogames-0.3.49/src/cogames/policy/nim_agents/test_agents.py +0 -53
- cogames-0.3.49/src/cogames/policy/nim_agents/thinky_agents.nim +0 -717
- cogames-0.3.49/src/cogames/policy/nim_agents/thinky_eval.py +0 -233
- cogames-0.3.49/src/cogames/policy/pufferlib_policy.py +0 -101
- cogames-0.3.49/src/cogames/policy/scripted_agent/baseline_agent.py +0 -1049
- cogames-0.3.49/src/cogames/policy/scripted_agent/demo_policy.py +0 -244
- cogames-0.3.49/src/cogames/policy/scripted_agent/pathfinding.py +0 -126
- cogames-0.3.49/src/cogames/policy/scripted_agent/starter_agent.py +0 -136
- cogames-0.3.49/src/cogames/policy/scripted_agent/types.py +0 -235
- cogames-0.3.49/src/cogames/policy/scripted_agent/unclipping_agent.py +0 -476
- cogames-0.3.49/src/cogames/policy/scripted_agent/utils.py +0 -385
- cogames-0.3.49/src/cogames.egg-info/PKG-INFO +0 -406
- cogames-0.3.49/src/cogames.egg-info/requires.txt +0 -13
- cogames-0.3.49/src/cogames.egg-info/top_level.txt +0 -1
- cogames-0.3.49/tests/test_cogs_vs_clips.py +0 -79
- cogames-0.3.49/tests/test_cvc_assembler_hearts.py +0 -234
- cogames-0.3.49/tests/test_policy_cli_parsing.py +0 -44
- cogames-0.3.49/tests/test_scripted_policies.py +0 -125
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/assets/charger.png +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/assets/cvc-reel.gif +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/assets/cvc-snap.png +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/assets/extractor.png +0 -0
- /cogames-0.3.49/assets/assembler.png → /cogames-0.3.59.post1.dev2/assets/hub.png +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/assets/showoff.gif +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/setup.cfg +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/__init__.py +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/auth.py +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cli/base.py +0 -0
- {cogames-0.3.49/src/cogames/cogs_vs_clips → cogames-0.3.59.post1.dev2/src/cogames/cli/docsync}/__init__.py +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cli/login.py +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cli/utils.py +0 -0
- /cogames-0.3.49/src/cogames/py.typed → /cogames-0.3.59.post1.dev2/src/cogames/cogs_vs_clips/__init__.py +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/cogs_vs_clips/mission_utils.py +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/curricula.py +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/game.py +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/maps/zelda.map +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/policy/__init__.py +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames/policy/signal_handler.py +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames.egg-info/dependency_links.txt +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/src/cogames.egg-info/entry_points.txt +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/tests/test_all_games_describe.py +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/tests/test_all_games_eval.py +0 -0
- {cogames-0.3.49 → cogames-0.3.59.post1.dev2}/tests/test_all_games_play.py +0 -0
|
@@ -1,6 +1,37 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## Jan 2026
|
|
3
|
+
## Jan 26, 2026
|
|
4
|
+
|
|
5
|
+
**CogsGuard is the New Default Game**
|
|
6
|
+
|
|
7
|
+
- `cogames missions` now shows CogsGuard (`cogsguard_arena`) as the default and only visible game
|
|
8
|
+
- Legacy missions (training_facility, hello_world, machina_1) are hidden from the CLI but remain available for internal
|
|
9
|
+
use
|
|
10
|
+
- Default season changed to `beta-cogsguard`
|
|
11
|
+
|
|
12
|
+
**Season-Aware Policy Validation**
|
|
13
|
+
|
|
14
|
+
- `cogames upload` and `cogames validate-policy` now accept `--season` to validate against the correct game for that
|
|
15
|
+
season
|
|
16
|
+
- Validation uses the game appropriate for the target season (e.g., `beta` season validates against
|
|
17
|
+
`training_facility.harvest`, `beta-cogsguard` validates against `cogsguard_machina_1.basic` using the Machina1 map)
|
|
18
|
+
- This ensures policies are validated against the same game they'll compete in
|
|
19
|
+
|
|
20
|
+
## Jan 23, 2026
|
|
21
|
+
|
|
22
|
+
**CLI Flag Updates**
|
|
23
|
+
|
|
24
|
+
Breaking changes to command-line arguments for improved consistency:
|
|
25
|
+
|
|
26
|
+
- `cogames submissions` - replaced `policy_name` with an optional `--policy/-p` flag instead of a positional argument
|
|
27
|
+
- `cogames diagnose` - removed `-m` short form for `--experiments`
|
|
28
|
+
- `cogames diagnose` - replaced `--repeats` with `--episodes/-e`
|
|
29
|
+
- `cogames make-mission` - removed `-h` and `-w` short form for `--height` and `--width`
|
|
30
|
+
- `cogames login` - replaced `--server/-s` with `--login-server`
|
|
31
|
+
- `cogames pickup` - added `--mission/-m` and `--variant/-v` flags (previously hardcoded to `machina_1.open_world`)
|
|
32
|
+
- `cogames validate-policy` - replaced `policy` positional argument with `--policy/-p` flag
|
|
33
|
+
|
|
34
|
+
## Jan 7, 2026
|
|
4
35
|
|
|
5
36
|
**Tournament CLI Updates**
|
|
6
37
|
|
|
@@ -9,6 +40,7 @@
|
|
|
9
40
|
- `cogames submissions` - View your uploaded policies and tournament submissions
|
|
10
41
|
- `cogames leaderboard --season <name>` - View the leaderboard for a season
|
|
11
42
|
- `cogames seasons` - List available tournament seasons
|
|
43
|
+
- `cogames pickup` - Evaluate a candidate policy against a fixed pool and compute VOR
|
|
12
44
|
|
|
13
45
|
## Dec 16, 2025
|
|
14
46
|
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024 Metta AI
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
# MISSION BRIEFING: CogsGuard Deployment
|
|
2
|
+
|
|
3
|
+
## Territorial Defense Initiative
|
|
4
|
+
|
|
5
|
+
Welcome, Cognitive!
|
|
6
|
+
|
|
7
|
+
You are part of an elite unit deployed to capture and defend territory against hostile Clips. Your mission: gather
|
|
8
|
+
resources, acquire specialized gear, and work with your team to control junctions. Territory control is everything. Do
|
|
9
|
+
not let the Clips overrun the sector.
|
|
10
|
+
|
|
11
|
+
This report arms you with the latest intelligence on what you might face. In different environments, specific
|
|
12
|
+
**details** may vary.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## YOUR LOADOUT
|
|
17
|
+
|
|
18
|
+
#### Energy Management
|
|
19
|
+
|
|
20
|
+
Your onboard battery stores limited energy; manage it wisely.
|
|
21
|
+
|
|
22
|
+
- Your onboard battery has a base capacity of **20** energy; Scouts get **+100**.
|
|
23
|
+
- Passive solar equipment regenerates **+1** energy per turn.
|
|
24
|
+
- Being within friendly territory (near aligned junctions or your hub) fully restores energy.
|
|
25
|
+
- Being in enemy territory drains influence (not energy).
|
|
26
|
+
|
|
27
|
+
#### Health Points
|
|
28
|
+
|
|
29
|
+
You have limited hitpoints that determine your survival.
|
|
30
|
+
|
|
31
|
+
- Agents heal rapidly within their own territory.
|
|
32
|
+
- Agents take damage in enemy-controlled territory (-1 HP per tick).
|
|
33
|
+
- When HP reaches zero, your gear and hearts are destroyed. You must return to base.
|
|
34
|
+
|
|
35
|
+
#### Cargo Limits
|
|
36
|
+
|
|
37
|
+
Your chassis has limited capacity for:
|
|
38
|
+
|
|
39
|
+
- Resources: varies by role (Miners have +40 cargo)
|
|
40
|
+
- Hearts: required for capturing and disrupting junctions
|
|
41
|
+
- Gear: one role at a time
|
|
42
|
+
|
|
43
|
+
## YOUR CAPABILITIES
|
|
44
|
+
|
|
45
|
+
You and your Cog teammates take exactly one action per turn. Actions resolve in an unspecified order.
|
|
46
|
+
|
|
47
|
+
**MOVE [Direction: N, S, W, E]**
|
|
48
|
+
|
|
49
|
+
Movement is your primary way to interact with the world. Every step uses energy (typically offset by solar recharging).
|
|
50
|
+
|
|
51
|
+
Attempting to move into occupied space will make you interact with the target.
|
|
52
|
+
|
|
53
|
+
**REST**
|
|
54
|
+
|
|
55
|
+
No action, no energy cost.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## ROLE SYSTEM
|
|
60
|
+
|
|
61
|
+
Roles are acquired at Gear Stations by spending resources. Each role has unique capabilities:
|
|
62
|
+
|
|
63
|
+
| Role | Specialization | Dependency |
|
|
64
|
+
| --------- | -------------------------------------------------- | ----------------------------------- |
|
|
65
|
+
| Miner | +40 cargo, 10x resource extraction from extractors | Needs team to deposit resources |
|
|
66
|
+
| Aligner | +20 influence capacity, captures territory | Needs Miners for resources |
|
|
67
|
+
| Scrambler | +200 HP, disrupts enemy control | Needs team presence to be effective |
|
|
68
|
+
| Scout | +100 energy, +400 HP, mobile reconnaissance | Needs team to hold what they find |
|
|
69
|
+
|
|
70
|
+
Agents can switch roles at Gear Stations, but lose current gear when doing so.
|
|
71
|
+
|
|
72
|
+
**No single role can succeed alone.** Cooperation is required.
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## AREA CONTROL
|
|
77
|
+
|
|
78
|
+
Territory control is the primary objective. The map contains junctions that can be captured by your team.
|
|
79
|
+
|
|
80
|
+
### Junction States
|
|
81
|
+
|
|
82
|
+
Each junction is either:
|
|
83
|
+
|
|
84
|
+
- **Neutral**: No team controls it
|
|
85
|
+
- **Aligned (friendly)**: Your team controls it
|
|
86
|
+
- **Enemy**: The opposing team or Clips control it
|
|
87
|
+
|
|
88
|
+
### Territory Effects
|
|
89
|
+
|
|
90
|
+
Facilities (Hub, Junction) project area-of-effect (AOE) in a radius (default 10 cells):
|
|
91
|
+
|
|
92
|
+
**Within friendly territory:**
|
|
93
|
+
|
|
94
|
+
- Influence fully restored
|
|
95
|
+
- Energy fully restored
|
|
96
|
+
- HP fully restored
|
|
97
|
+
|
|
98
|
+
**Within enemy territory:**
|
|
99
|
+
|
|
100
|
+
- -1 HP per tick
|
|
101
|
+
- Influence drained
|
|
102
|
+
|
|
103
|
+
### Capturing Territory
|
|
104
|
+
|
|
105
|
+
- **Aligners** capture neutral junctions by spending 1 influence and 1 heart
|
|
106
|
+
- **Scramblers** disrupt enemy junctions by spending 1 heart, making them neutral
|
|
107
|
+
|
|
108
|
+
Since enemy AOE drains influence, Aligners cannot capture junctions within enemy territory. Scramblers must first
|
|
109
|
+
neutralize nearby enemy junctions to stop the influence drain before Aligners can advance.
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## COLLECTIVE INVENTORY
|
|
114
|
+
|
|
115
|
+
Your team shares a collective inventory:
|
|
116
|
+
|
|
117
|
+
- **Deposit resources** at aligned junctions and hubs
|
|
118
|
+
- **Withdraw hearts** from collective chests
|
|
119
|
+
- Hearts are required for capturing and disrupting junctions
|
|
120
|
+
|
|
121
|
+
This creates interdependence: Miners gather resources for the team, while Aligners and Scramblers consume hearts to
|
|
122
|
+
control territory.
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
## THREAT ADVISORY: CLIPS EXPANSION
|
|
127
|
+
|
|
128
|
+
**WARNING**: Clips are automated opponents that expand territory at a configurable rate:
|
|
129
|
+
|
|
130
|
+
- Clips neutralize enemy junctions adjacent to Clips territory
|
|
131
|
+
- Clips capture neutral junctions adjacent to Clips territory
|
|
132
|
+
|
|
133
|
+
This creates constant pressure. Your team must defend territory while expanding, or risk being overrun.
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
## SCORING
|
|
138
|
+
|
|
139
|
+
**Reward per tick** = junctions_held / max_steps
|
|
140
|
+
|
|
141
|
+
You receive reward every tick proportional to the territory your team controls. More territory means more reward.
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
## FINAL DIRECTIVE
|
|
146
|
+
|
|
147
|
+
**Your mission is critical. The territory you capture today ensures Cog operations tomorrow.**
|
|
148
|
+
|
|
149
|
+
Your success depends on seamless team coordination:
|
|
150
|
+
|
|
151
|
+
- Role specialization and cooperation
|
|
152
|
+
- Strategic junction capture and defense
|
|
153
|
+
- Resource management and sharing
|
|
154
|
+
- Rapid response to Clips expansion
|
|
155
|
+
|
|
156
|
+
Your individual achievement is irrelevant. Your team achievement, measured by territory controlled, is all that matters.
|
|
157
|
+
|
|
158
|
+
_Stay charged. Stay coordinated. Stay vigilant._
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
_END TRANSMISSION_
|