kaggle-environments 1.17.5__tar.gz → 1.17.7__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.
Potentially problematic release.
This version of kaggle-environments might be problematic. Click here for more details.
- {kaggle_environments-1.17.5/kaggle_environments.egg-info → kaggle_environments-1.17.7}/PKG-INFO +1 -1
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/__init__.py +1 -1
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/core.py +1 -1
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/chess/chess.js +27 -23
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/chess/chess.js +34 -27
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/connect_four/connect_four.js +2 -14
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/go/go.js +4 -4
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/tic_tac_toe/tic_tac_toe.js +6 -6
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/universal_poker/universal_poker.js +2 -2
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/open_spiel.py +125 -61
- kaggle_environments-1.17.7/kaggle_environments/envs/open_spiel/test_open_spiel.py +96 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/static/player.html +50 -13
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7/kaggle_environments.egg-info}/PKG-INFO +1 -1
- kaggle_environments-1.17.5/kaggle_environments/envs/open_spiel/test_open_spiel.py +0 -33
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/LICENSE +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/MANIFEST.in +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/README.md +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/agent.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/api.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/chess/chess.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/chess/chess.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/chess/test_chess.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/connectx/connectx.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/connectx/connectx.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/connectx/connectx.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/connectx/test_connectx.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/football/football.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/football/football.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/football/helpers.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/football/test_football.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/halite/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/halite/halite.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/halite/halite.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/halite/halite.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/halite/helpers.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/halite/test_halite.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/hungry_geese/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/hungry_geese/hungry_geese.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/hungry_geese/hungry_geese.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/hungry_geese/hungry_geese.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/hungry_geese/test_hungry_geese.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/identity/identity.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/identity/identity.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/helpers.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/kore_fleets.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/kore_fleets.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/kore_fleets.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/java/main.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/java/test/configuration.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/java/test/fullob.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/java/test/observation.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/python/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/python/main.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/Bot.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/DoNothingBot.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/MinerBot.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/interpreter.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/kore/Board.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/kore/Cell.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/kore/Configuration.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/kore/Direction.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/kore/Fleet.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/kore/KoreIO.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/kore/Observation.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/kore/Pair.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/kore/Player.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/kore/Point.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/kore/Shipyard.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/kore/ShipyardAction.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/main.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/miner.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/package.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/test/BoardTest.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/test/ConfigurationTest.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/test/ObservationTest.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/test/PointTest.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/test/ShipyardTest.ts +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/test/configuration.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/test/fullob.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/test/observation.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/starter_bots/ts/tsconfig.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/kore_fleets/test_kore_fleets.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/llm_20_questions/keywords.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/llm_20_questions/llm_20_questions.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/llm_20_questions/llm_20_questions.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/llm_20_questions/llm_20_questions.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/llm_20_questions/test_llm_20_questions.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/agents.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/dimensions/754.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/dimensions/main.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/index.html +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/lux_ai_2021.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/lux_ai_2021.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/js_simple/lux/game_constants.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/js_simple/lux/game_constants.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/js_simple/lux/game_objects.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/js_simple/lux/io.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/js_simple/lux/kit.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/js_simple/lux/map.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/js_simple/lux/parser.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/js_simple/main.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/js_simple/main.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/python/lux/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/python/lux/annotate.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/python/lux/constants.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/python/lux/game.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/python/lux/game_constants.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/python/lux/game_constants.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/python/lux/game_map.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/python/lux/game_objects.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/python/random_agent.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_agents/python/simple_agent.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_2021/test_lux.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/agents.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/index.html +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/lux_ai_s2.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/lux_ai_s2.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/actions.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/config.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/env.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/factory.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/globals.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/map/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/map/bfs_deltas_gen.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/map/board.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/map/position.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/map_generator/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/map_generator/generator.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/map_generator/symnoise.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/map_generator/timing.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/map_generator/visualize.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/map_generator/visualize_samples.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/pyvisual/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/pyvisual/visualizer.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/replay/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/replay/replay.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/spaces/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/spaces/act_space.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/spaces/obs_space.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/state/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/state/state.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/state/stats.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/state/typing.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/team.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/tools/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/tools/replay.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/unit.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/utils/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/utils/animate.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/utils/heuristics/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/utils/heuristics/bidding.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/utils/heuristics/factory.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/utils/heuristics/factory_placement.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/utils/utils.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/version.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/wrappers/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/wrappers/controllers.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/luxai_s2/wrappers/sb3.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/test_agents/python/agent.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/test_agents/python/lux/cargo.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/test_agents/python/lux/config.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/test_agents/python/lux/factory.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/test_agents/python/lux/kit.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/test_agents/python/lux/team.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/test_agents/python/lux/unit.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/test_agents/python/lux/utils.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/test_agents/python/main.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s2/test_lux.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/agents.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/index.html +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/lux_ai_s3.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/lux_ai_s3.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/luxai_s3/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/luxai_s3/env.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/luxai_s3/globals.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/luxai_s3/params.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/luxai_s3/profiler.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/luxai_s3/pygame_render.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/luxai_s3/spaces.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/luxai_s3/state.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/luxai_s3/utils.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/luxai_s3/wrappers.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/test_agents/python/agent.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/test_agents/python/lux/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/test_agents/python/lux/kit.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/test_agents/python/lux/utils.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/test_agents/python/main.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/lux_ai_s3/test_lux.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/mab/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/mab/agents.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/mab/mab.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/mab/mab.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/mab/mab.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/connect_four/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/connect_four/connect_four_proxy.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/connect_four/connect_four_proxy_test.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/go/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/go/go_proxy.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/tic_tac_toe/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/tic_tac_toe/tic_tac_toe_proxy.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/universal_poker/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/universal_poker/universal_poker_proxy.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/games/universal_poker/universal_poker_proxy_test.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/html_playthrough_generator.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/observation.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/proxy.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/open_spiel/proxy_test.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/rps/__init__.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/rps/agents.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/rps/helpers.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/rps/rps.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/rps/rps.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/rps/rps.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/rps/test_rps.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/rps/utils.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/tictactoe/test_tictactoe.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/tictactoe/tictactoe.js +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/tictactoe/tictactoe.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/tictactoe/tictactoe.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/errors.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/helpers.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/main.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/schemas.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/status_codes.json +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/utils.py +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments.egg-info/SOURCES.txt +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments.egg-info/dependency_links.txt +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments.egg-info/entry_points.txt +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments.egg-info/requires.txt +7 -7
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments.egg-info/top_level.txt +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/setup.cfg +0 -0
- {kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/setup.py +0 -0
|
@@ -579,7 +579,7 @@ class Environment:
|
|
|
579
579
|
try:
|
|
580
580
|
with StringIO() as out_buffer, StringIO() as err_buffer, redirect_stdout(out_buffer), redirect_stderr(err_buffer):
|
|
581
581
|
try:
|
|
582
|
-
args = [structify(state), self]
|
|
582
|
+
args = [structify(state), self, logs]
|
|
583
583
|
new_state = structify(self.interpreter(
|
|
584
584
|
*args[:self.interpreter.__code__.co_argcount]))
|
|
585
585
|
new_state[0].observation.step = (
|
{kaggle_environments-1.17.5 → kaggle_environments-1.17.7}/kaggle_environments/envs/chess/chess.js
RENAMED
|
@@ -4045,14 +4045,14 @@ async function renderer(context) {
|
|
|
4045
4045
|
|
|
4046
4046
|
// Create the Download PGN button
|
|
4047
4047
|
let downloadButton = parent.querySelector("#copy-pgn");
|
|
4048
|
-
if (!downloadButton) {
|
|
4048
|
+
if (!downloadButton && environment.steps.length) {
|
|
4049
4049
|
try {
|
|
4050
4050
|
const board = environment.steps[0][0].observation.board;
|
|
4051
4051
|
const info = environment.info;
|
|
4052
4052
|
const agent1 = info?.TeamNames?.[0] || "Agent 1";
|
|
4053
4053
|
const agent2 = info?.TeamNames?.[1] || "Agent 2";
|
|
4054
4054
|
const game = new Chess();
|
|
4055
|
-
let result = environment.rewards;
|
|
4055
|
+
let result = environment.rewards ?? [];
|
|
4056
4056
|
if (result.some((r) => r === undefined || r === null)) {
|
|
4057
4057
|
result = result.map((r) => (r === undefined || r === null ? 0 : 1));
|
|
4058
4058
|
}
|
|
@@ -4103,7 +4103,9 @@ async function renderer(context) {
|
|
|
4103
4103
|
downloadButton.style.top = "10px";
|
|
4104
4104
|
downloadButton.style.left = "10px";
|
|
4105
4105
|
downloadButton.style.zIndex = 1;
|
|
4106
|
-
|
|
4106
|
+
if(!environment.viewer) {
|
|
4107
|
+
parent.appendChild(downloadButton);
|
|
4108
|
+
}
|
|
4107
4109
|
|
|
4108
4110
|
downloadButton.addEventListener("click", async () => {
|
|
4109
4111
|
try {
|
|
@@ -4179,26 +4181,28 @@ async function renderer(context) {
|
|
|
4179
4181
|
}
|
|
4180
4182
|
}
|
|
4181
4183
|
// Draw the team names and game status
|
|
4182
|
-
|
|
4183
|
-
|
|
4184
|
-
|
|
4185
|
-
|
|
4186
|
-
|
|
4187
|
-
|
|
4188
|
-
|
|
4189
|
-
|
|
4190
|
-
|
|
4191
|
-
|
|
4192
|
-
|
|
4193
|
-
|
|
4194
|
-
|
|
4195
|
-
|
|
4196
|
-
|
|
4197
|
-
|
|
4198
|
-
|
|
4199
|
-
|
|
4200
|
-
|
|
4201
|
-
|
|
4184
|
+
if (!environment.viewer) {
|
|
4185
|
+
const info = environment.info;
|
|
4186
|
+
const agent1 = info?.TeamNames?.[0] || "Agent 1";
|
|
4187
|
+
const agent2 = info?.TeamNames?.[1] || "Agent 2";
|
|
4188
|
+
const firstGame = environment.steps[step][0].observation.mark == "white";
|
|
4189
|
+
const fontSize = Math.round(0.33 * offset);
|
|
4190
|
+
c.font = `${fontSize}px sans-serif`;
|
|
4191
|
+
c.fillStyle = "#FFFFFF";
|
|
4192
|
+
const agent1Reward = environment.steps[step][0].reward;
|
|
4193
|
+
const agent2Reward = environment.steps[step][1].reward;
|
|
4194
|
+
const charCount = agent1.length + agent2.length + 12;
|
|
4195
|
+
const title = `${
|
|
4196
|
+
firstGame ? "\u25A0" : "\u25A1"
|
|
4197
|
+
}${agent1} (${agent1Reward}) vs ${
|
|
4198
|
+
firstGame ? "\u25A1" : "\u25A0"
|
|
4199
|
+
}${agent2} (${agent2Reward})`;
|
|
4200
|
+
c.fillText(
|
|
4201
|
+
title,
|
|
4202
|
+
offset + 4 * squareSize - Math.floor((charCount * fontSize) / 4),
|
|
4203
|
+
40
|
|
4204
|
+
);
|
|
4205
|
+
}
|
|
4202
4206
|
|
|
4203
4207
|
// Draw the Pieces
|
|
4204
4208
|
const board = environment.steps[step][0].observation.board;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
function renderer(options) {
|
|
2
|
-
const { environment, step, parent,
|
|
2
|
+
const { environment, step, parent, width = 400, height = 400 } = options;
|
|
3
3
|
|
|
4
4
|
// Chess-specific constants
|
|
5
5
|
const DEFAULT_NUM_ROWS = 8;
|
|
@@ -28,6 +28,7 @@ function renderer(options) {
|
|
|
28
28
|
let currentMessageBoxElement = typeof document !== 'undefined' ? document.getElementById('messageBox') : null;
|
|
29
29
|
let currentRendererContainer = null;
|
|
30
30
|
let currentTitleElement = null;
|
|
31
|
+
let squareSize = 50;
|
|
31
32
|
|
|
32
33
|
function _showMessage(message, type = 'info', duration = 3000) {
|
|
33
34
|
if (typeof document === 'undefined' || !document.body) return;
|
|
@@ -74,25 +75,30 @@ function renderer(options) {
|
|
|
74
75
|
fontFamily: "'Inter', sans-serif"
|
|
75
76
|
});
|
|
76
77
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
78
|
+
if (!environment.viewer) {
|
|
79
|
+
currentTitleElement = document.createElement('h1');
|
|
80
|
+
currentTitleElement.textContent = 'Chess';
|
|
81
|
+
// Identical styling to the Connect Four renderer's title
|
|
82
|
+
Object.assign(currentTitleElement.style, {
|
|
81
83
|
fontSize: '1.875rem',
|
|
82
84
|
fontWeight: 'bold',
|
|
83
85
|
marginBottom: '1rem',
|
|
84
86
|
textAlign: 'center',
|
|
85
87
|
color: '#2563eb'
|
|
86
|
-
|
|
87
|
-
|
|
88
|
+
});
|
|
89
|
+
currentRendererContainer.appendChild(currentTitleElement);
|
|
90
|
+
}
|
|
91
|
+
parentElementToClear.appendChild(currentRendererContainer);
|
|
88
92
|
|
|
93
|
+
const smallestParentEdge = Math.min(width, height);
|
|
94
|
+
squareSize = Math.floor(smallestParentEdge / DEFAULT_NUM_COLS);
|
|
89
95
|
currentBoardElement = document.createElement('div');
|
|
90
96
|
Object.assign(currentBoardElement.style, {
|
|
91
97
|
display: 'grid',
|
|
92
|
-
gridTemplateColumns: `repeat(${cols},
|
|
93
|
-
gridTemplateRows: `repeat(${rows},
|
|
94
|
-
width: `${cols *
|
|
95
|
-
height: `${rows *
|
|
98
|
+
gridTemplateColumns: `repeat(${cols}, ${squareSize}px)`,
|
|
99
|
+
gridTemplateRows: `repeat(${rows}, ${squareSize}px)`,
|
|
100
|
+
width: `${cols * squareSize}px`,
|
|
101
|
+
height: `${rows * squareSize}px`,
|
|
96
102
|
border: '2px solid #333'
|
|
97
103
|
});
|
|
98
104
|
|
|
@@ -101,8 +107,8 @@ function renderer(options) {
|
|
|
101
107
|
const square = document.createElement('div');
|
|
102
108
|
square.id = `cell-${r}-${c}`;
|
|
103
109
|
Object.assign(square.style, {
|
|
104
|
-
width:
|
|
105
|
-
height:
|
|
110
|
+
width: `${squareSize}px`,
|
|
111
|
+
height: `${squareSize}px`,
|
|
106
112
|
backgroundColor: (r + c) % 2 === 0 ? LIGHT_SQUARE_COLOR : DARK_SQUARE_COLOR,
|
|
107
113
|
display: 'flex',
|
|
108
114
|
alignItems: 'center',
|
|
@@ -126,7 +132,9 @@ function renderer(options) {
|
|
|
126
132
|
maxWidth: '90vw',
|
|
127
133
|
marginTop: '20px'
|
|
128
134
|
});
|
|
129
|
-
|
|
135
|
+
if (!environment.viewer) {
|
|
136
|
+
currentRendererContainer.appendChild(statusContainer);
|
|
137
|
+
}
|
|
130
138
|
|
|
131
139
|
currentStatusTextElement = document.createElement('p');
|
|
132
140
|
Object.assign(currentStatusTextElement.style, {
|
|
@@ -144,8 +152,6 @@ function renderer(options) {
|
|
|
144
152
|
});
|
|
145
153
|
statusContainer.appendChild(currentWinnerTextElement);
|
|
146
154
|
|
|
147
|
-
parentElementToClear.appendChild(currentRendererContainer);
|
|
148
|
-
|
|
149
155
|
if (typeof document !== 'undefined' && !document.body.hasAttribute('data-renderer-initialized')) {
|
|
150
156
|
document.body.setAttribute('data-renderer-initialized', 'true');
|
|
151
157
|
}
|
|
@@ -204,8 +210,9 @@ function renderer(options) {
|
|
|
204
210
|
}
|
|
205
211
|
|
|
206
212
|
|
|
207
|
-
const { board, activeColor,
|
|
213
|
+
const { board, activeColor, isTerminal, winner } = gameStateToDisplay;
|
|
208
214
|
|
|
215
|
+
const pieceSize = Math.floor(squareSize * 0.9);
|
|
209
216
|
for (let r_data = 0; r_data < displayRows; r_data++) {
|
|
210
217
|
for (let c_data = 0; c_data < displayCols; c_data++) {
|
|
211
218
|
const piece = board[r_data][c_data];
|
|
@@ -213,8 +220,8 @@ function renderer(options) {
|
|
|
213
220
|
if (squareElement && piece) {
|
|
214
221
|
const pieceImg = document.createElement('img');
|
|
215
222
|
pieceImg.src = PIECE_SVG_URLS[piece];
|
|
216
|
-
pieceImg.style.width =
|
|
217
|
-
pieceImg.style.height =
|
|
223
|
+
pieceImg.style.width = `${pieceSize}px`;
|
|
224
|
+
pieceImg.style.height = `${pieceSize}px`;
|
|
218
225
|
squareElement.appendChild(pieceImg);
|
|
219
226
|
}
|
|
220
227
|
}
|
|
@@ -222,7 +229,7 @@ function renderer(options) {
|
|
|
222
229
|
|
|
223
230
|
currentStatusTextElement.innerHTML = '';
|
|
224
231
|
currentWinnerTextElement.innerHTML = '';
|
|
225
|
-
if (
|
|
232
|
+
if (isTerminal) {
|
|
226
233
|
currentStatusTextElement.textContent = "Game Over!";
|
|
227
234
|
if (winner) {
|
|
228
235
|
if (String(winner).toLowerCase() === 'draw') {
|
|
@@ -235,8 +242,8 @@ function renderer(options) {
|
|
|
235
242
|
currentWinnerTextElement.textContent = "Game ended.";
|
|
236
243
|
}
|
|
237
244
|
} else {
|
|
238
|
-
|
|
239
|
-
|
|
245
|
+
const playerColor = String(activeColor).toLowerCase() === 'w' ? 'White' : 'Black';
|
|
246
|
+
currentStatusTextElement.innerHTML = `Current Player: <span style="font-weight: bold;">${playerColor}</span>`;
|
|
240
247
|
}
|
|
241
248
|
}
|
|
242
249
|
|
|
@@ -273,15 +280,15 @@ function renderer(options) {
|
|
|
273
280
|
|
|
274
281
|
let gameSpecificState = null;
|
|
275
282
|
|
|
276
|
-
if (observationForRenderer && typeof observationForRenderer.
|
|
283
|
+
if (observationForRenderer && typeof observationForRenderer.observationString === 'string' && observationForRenderer.observationString.trim() !== '') {
|
|
277
284
|
try {
|
|
278
|
-
const fen = observationForRenderer.
|
|
285
|
+
const fen = observationForRenderer.observationString;
|
|
279
286
|
const parsedFen = _parseFen(fen);
|
|
280
287
|
if (parsedFen) {
|
|
281
|
-
// Assuming `
|
|
288
|
+
// Assuming `isTerminal` and `winner` are provided in the top-level observation
|
|
282
289
|
gameSpecificState = {
|
|
283
290
|
...parsedFen,
|
|
284
|
-
|
|
291
|
+
isTerminal: observationForRenderer.isTerminal,
|
|
285
292
|
winner: observationForRenderer.winner
|
|
286
293
|
};
|
|
287
294
|
}
|
|
@@ -291,4 +298,4 @@ function renderer(options) {
|
|
|
291
298
|
}
|
|
292
299
|
|
|
293
300
|
_renderBoardDisplay(gameSpecificState, DEFAULT_NUM_ROWS, DEFAULT_NUM_COLS);
|
|
294
|
-
}
|
|
301
|
+
}
|
|
@@ -264,9 +264,9 @@ function renderer(options) {
|
|
|
264
264
|
|
|
265
265
|
let gameSpecificState = null;
|
|
266
266
|
|
|
267
|
-
if (observationForRenderer && typeof observationForRenderer.
|
|
267
|
+
if (observationForRenderer && typeof observationForRenderer.observationString === 'string' && observationForRenderer.observationString.trim() !== '') {
|
|
268
268
|
try {
|
|
269
|
-
gameSpecificState = JSON.parse(observationForRenderer.
|
|
269
|
+
gameSpecificState = JSON.parse(observationForRenderer.observationString);
|
|
270
270
|
} catch (e) {
|
|
271
271
|
_showMessage("Error: Corrupted game state (obs_string).", 'error');
|
|
272
272
|
}
|
|
@@ -280,17 +280,5 @@ function renderer(options) {
|
|
|
280
280
|
}
|
|
281
281
|
}
|
|
282
282
|
|
|
283
|
-
if (!gameSpecificState && observationForRenderer &&
|
|
284
|
-
Array.isArray(observationForRenderer.board) &&
|
|
285
|
-
typeof observationForRenderer.current_player !== 'undefined'
|
|
286
|
-
) {
|
|
287
|
-
if( (observationForRenderer.board.length === DEFAULT_NUM_ROWS &&
|
|
288
|
-
(observationForRenderer.board.length === 0 ||
|
|
289
|
-
(Array.isArray(observationForRenderer.board[0]) && observationForRenderer.board[0].length === DEFAULT_NUM_COLS)))
|
|
290
|
-
){
|
|
291
|
-
gameSpecificState = observationForRenderer;
|
|
292
|
-
}
|
|
293
|
-
}
|
|
294
|
-
|
|
295
283
|
_renderBoardDisplay_svg(gameSpecificState, DEFAULT_NUM_ROWS, DEFAULT_NUM_COLS);
|
|
296
284
|
}
|
|
@@ -410,9 +410,9 @@ function renderer(options) {
|
|
|
410
410
|
let gameState = null;
|
|
411
411
|
|
|
412
412
|
// Try to parse game state from observation
|
|
413
|
-
if (gameMasterAgent.observation.
|
|
413
|
+
if (gameMasterAgent.observation.observationString) {
|
|
414
414
|
try {
|
|
415
|
-
gameState = JSON.parse(gameMasterAgent.observation.
|
|
415
|
+
gameState = JSON.parse(gameMasterAgent.observation.observationString);
|
|
416
416
|
} catch (e) {}
|
|
417
417
|
}
|
|
418
418
|
|
|
@@ -461,9 +461,9 @@ function renderer(options) {
|
|
|
461
461
|
const observationForRenderer = gameMasterAgent.observation;
|
|
462
462
|
let gameSpecificState = null;
|
|
463
463
|
|
|
464
|
-
if (observationForRenderer && typeof observationForRenderer.
|
|
464
|
+
if (observationForRenderer && typeof observationForRenderer.observationString === 'string' && observationForRenderer.observationString.trim() !== '') {
|
|
465
465
|
try {
|
|
466
|
-
gameSpecificState = JSON.parse(observationForRenderer.
|
|
466
|
+
gameSpecificState = JSON.parse(observationForRenderer.observationString);
|
|
467
467
|
} catch (e) {
|
|
468
468
|
_showMessage("Error: Corrupted game state (obs_string).", 'error');
|
|
469
469
|
}
|
|
@@ -283,9 +283,9 @@ function renderer(options) {
|
|
|
283
283
|
let boardArray = null;
|
|
284
284
|
let currentPlayerForState = null;
|
|
285
285
|
|
|
286
|
-
if (typeof observationForBoardState.
|
|
286
|
+
if (typeof observationForBoardState.observationString === 'string' && observationForBoardState.observationString.trim().startsWith('{')) {
|
|
287
287
|
try {
|
|
288
|
-
const parsedState = JSON.parse(observationForBoardState.
|
|
288
|
+
const parsedState = JSON.parse(observationForBoardState.observationString);
|
|
289
289
|
if (parsedState && Array.isArray(parsedState.board)) {
|
|
290
290
|
boardArray = parsedState.board;
|
|
291
291
|
}
|
|
@@ -294,7 +294,7 @@ function renderer(options) {
|
|
|
294
294
|
}
|
|
295
295
|
} catch (e) {
|
|
296
296
|
_showMessage("Error parsing game state from observation string.", 'error');
|
|
297
|
-
console.error("Failed to parse
|
|
297
|
+
console.error("Failed to parse observation string JSON:", e);
|
|
298
298
|
}
|
|
299
299
|
}
|
|
300
300
|
|
|
@@ -306,8 +306,8 @@ function renderer(options) {
|
|
|
306
306
|
}
|
|
307
307
|
|
|
308
308
|
if (!currentPlayerForState) {
|
|
309
|
-
if (observationForBoardState.
|
|
310
|
-
else if (observationForBoardState.
|
|
309
|
+
if (observationForBoardState.currentPlayer === 0) { currentPlayerForState = 'x'; }
|
|
310
|
+
else if (observationForBoardState.currentPlayer === 1) { currentPlayerForState = 'o'; }
|
|
311
311
|
}
|
|
312
312
|
|
|
313
313
|
const isTerminal = !!observationForBoardState.is_terminal;
|
|
@@ -320,7 +320,7 @@ function renderer(options) {
|
|
|
320
320
|
else if (finalRewards[1] === 1.0) winnerForState = 'o';
|
|
321
321
|
else if (finalRewards[0] === 0.0 && finalRewards[1] === 0.0) winnerForState = 'draw';
|
|
322
322
|
}
|
|
323
|
-
if (observationForBoardState.
|
|
323
|
+
if (observationForBoardState.currentPlayer === -2 && winnerForState === null) {
|
|
324
324
|
winnerForState = 'draw';
|
|
325
325
|
}
|
|
326
326
|
}
|
|
@@ -247,8 +247,8 @@ function renderer(options) {
|
|
|
247
247
|
// --- Observation Extraction & Merging ---
|
|
248
248
|
let obsP0 = null, obsP1 = null;
|
|
249
249
|
try {
|
|
250
|
-
obsP0 = JSON.parse(currentStepAgents[0].observation.
|
|
251
|
-
obsP1 = JSON.parse(currentStepAgents[1].observation.
|
|
250
|
+
obsP0 = JSON.parse(currentStepAgents[0].observation.observationString);
|
|
251
|
+
obsP1 = JSON.parse(currentStepAgents[1].observation.observationString);
|
|
252
252
|
} catch (e) {
|
|
253
253
|
defaultUIData.gameMessage = "Error parsing observation JSON.";
|
|
254
254
|
return defaultUIData;
|