kaggle-environments 1.15.2__py2.py3-none-any.whl → 1.16.0__py2.py3-none-any.whl
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/__init__.py +1 -1
- kaggle_environments/envs/chess/chess.js +63 -22
- kaggle_environments/envs/chess/chess.json +4 -4
- kaggle_environments/envs/chess/chess.py +209 -51
- kaggle_environments/envs/chess/test_chess.py +43 -1
- kaggle_environments/envs/connectx/connectx.ipynb +3183 -0
- kaggle_environments/envs/football/football.ipynb +75 -0
- kaggle_environments/envs/halite/halite.ipynb +44736 -0
- kaggle_environments/envs/kore_fleets/kore_fleets.ipynb +112 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/Bot.java +54 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/README.md +26 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/jars/hamcrest-core-1.3.jar +0 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/jars/junit-4.13.2.jar +0 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/kore/Board.java +518 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/kore/Cell.java +61 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/kore/Configuration.java +24 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/kore/Direction.java +166 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/kore/Fleet.java +72 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/kore/KoreJson.java +97 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/kore/Observation.java +72 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/kore/Pair.java +13 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/kore/Player.java +68 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/kore/Point.java +65 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/kore/Shipyard.java +70 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/kore/ShipyardAction.java +59 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/test/BoardTest.java +567 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/test/ConfigurationTest.java +25 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/test/KoreJsonTest.java +62 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/test/ObservationTest.java +46 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/test/PointTest.java +21 -0
- kaggle_environments/envs/kore_fleets/starter_bots/java/test/ShipyardTest.java +22 -0
- kaggle_environments/envs/kore_fleets/starter_bots/ts/README.md +55 -0
- kaggle_environments/envs/lux_ai_2021/README.md +3 -0
- kaggle_environments/envs/lux_ai_2021/dimensions/754.js.LICENSE.txt +296 -0
- kaggle_environments/envs/lux_ai_2021/test_agents/js_simple/simple.tar.gz +0 -0
- kaggle_environments/envs/lux_ai_2021/testing.md +23 -0
- kaggle_environments/envs/lux_ai_2021/todo.md.og +18 -0
- kaggle_environments/envs/lux_ai_s2/.gitignore +1 -0
- kaggle_environments/envs/lux_ai_s2/README.md +21 -0
- kaggle_environments/envs/lux_ai_s2/luxai_s2/.DS_Store +0 -0
- kaggle_environments/envs/lux_ai_s2/luxai_s2/map_generator/.DS_Store +0 -0
- kaggle_environments/envs/lux_ai_s3/README.md +21 -0
- kaggle_environments/envs/lux_ai_s3/agents.py +4 -0
- kaggle_environments/envs/lux_ai_s3/index.html +42 -0
- kaggle_environments/envs/lux_ai_s3/lux_ai_s3.json +47 -0
- kaggle_environments/envs/lux_ai_s3/lux_ai_s3.py +138 -0
- kaggle_environments/envs/lux_ai_s3/luxai_s3/__init__.py +1 -0
- kaggle_environments/envs/lux_ai_s3/luxai_s3/env.py +924 -0
- kaggle_environments/envs/lux_ai_s3/luxai_s3/globals.py +13 -0
- kaggle_environments/envs/lux_ai_s3/luxai_s3/params.py +101 -0
- kaggle_environments/envs/lux_ai_s3/luxai_s3/profiler.py +140 -0
- kaggle_environments/envs/lux_ai_s3/luxai_s3/pygame_render.py +270 -0
- kaggle_environments/envs/lux_ai_s3/luxai_s3/spaces.py +30 -0
- kaggle_environments/envs/lux_ai_s3/luxai_s3/state.py +399 -0
- kaggle_environments/envs/lux_ai_s3/luxai_s3/utils.py +12 -0
- kaggle_environments/envs/lux_ai_s3/luxai_s3/wrappers.py +187 -0
- kaggle_environments/envs/lux_ai_s3/test_agents/python/agent.py +71 -0
- kaggle_environments/envs/lux_ai_s3/test_agents/python/lux/__init__.py +0 -0
- kaggle_environments/envs/lux_ai_s3/test_agents/python/lux/kit.py +27 -0
- kaggle_environments/envs/lux_ai_s3/test_agents/python/lux/utils.py +17 -0
- kaggle_environments/envs/lux_ai_s3/test_agents/python/main.py +53 -0
- kaggle_environments/envs/lux_ai_s3/test_lux.py +9 -0
- kaggle_environments/envs/tictactoe/tictactoe.ipynb +1393 -0
- {kaggle_environments-1.15.2.dist-info → kaggle_environments-1.16.0.dist-info}/METADATA +2 -2
- {kaggle_environments-1.15.2.dist-info → kaggle_environments-1.16.0.dist-info}/RECORD +69 -11
- {kaggle_environments-1.15.2.dist-info → kaggle_environments-1.16.0.dist-info}/WHEEL +1 -1
- {kaggle_environments-1.15.2.dist-info → kaggle_environments-1.16.0.dist-info}/LICENSE +0 -0
- {kaggle_environments-1.15.2.dist-info → kaggle_environments-1.16.0.dist-info}/entry_points.txt +0 -0
- {kaggle_environments-1.15.2.dist-info → kaggle_environments-1.16.0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cells": [
|
|
3
|
+
{
|
|
4
|
+
"cell_type": "markdown",
|
|
5
|
+
"metadata": {},
|
|
6
|
+
"source": [
|
|
7
|
+
"# Kore - Kaggle Environment"
|
|
8
|
+
]
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"cell_type": "code",
|
|
12
|
+
"execution_count": null,
|
|
13
|
+
"metadata": {
|
|
14
|
+
"scrolled": true
|
|
15
|
+
},
|
|
16
|
+
"outputs": [],
|
|
17
|
+
"source": [
|
|
18
|
+
"!pip install ../../.."
|
|
19
|
+
]
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"cell_type": "code",
|
|
23
|
+
"execution_count": null,
|
|
24
|
+
"metadata": {},
|
|
25
|
+
"outputs": [],
|
|
26
|
+
"source": [
|
|
27
|
+
"from kaggle_environments import make\n",
|
|
28
|
+
"env = make(\"kore_fleets\")\n",
|
|
29
|
+
"print(env.name, env.version)\n",
|
|
30
|
+
"print(\"Default Agents: \", *env.agents)"
|
|
31
|
+
]
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"cell_type": "markdown",
|
|
35
|
+
"metadata": {},
|
|
36
|
+
"source": [
|
|
37
|
+
"## TLDR;"
|
|
38
|
+
]
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"cell_type": "code",
|
|
42
|
+
"execution_count": null,
|
|
43
|
+
"metadata": {
|
|
44
|
+
"scrolled": false
|
|
45
|
+
},
|
|
46
|
+
"outputs": [],
|
|
47
|
+
"source": [
|
|
48
|
+
"env = make(\"kore_fleets\", debug=True)\n",
|
|
49
|
+
"env.run([\"simp\", \"simp\", \"simp\", \"simp\"])\n",
|
|
50
|
+
"#env.run([\"simp\", \"random\", \"random\", \"random\"])\n",
|
|
51
|
+
"#env.run([\"simple\", \"simple\"])\n",
|
|
52
|
+
"env.render(mode=\"ipython\", width=970, height=800)"
|
|
53
|
+
]
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"cell_type": "markdown",
|
|
57
|
+
"metadata": {},
|
|
58
|
+
"source": [
|
|
59
|
+
"## Specification"
|
|
60
|
+
]
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"cell_type": "code",
|
|
64
|
+
"execution_count": null,
|
|
65
|
+
"metadata": {
|
|
66
|
+
"scrolled": false
|
|
67
|
+
},
|
|
68
|
+
"outputs": [],
|
|
69
|
+
"source": [
|
|
70
|
+
"import json\n",
|
|
71
|
+
"print(\"Configuration:\", json.dumps(env.specification.configuration, indent=4, sort_keys=True))\n",
|
|
72
|
+
"print(\"Observation:\", json.dumps(env.specification.observation, indent=4, sort_keys=True))\n",
|
|
73
|
+
"print(\"Action:\", json.dumps(env.specification.action, indent=4, sort_keys=True))"
|
|
74
|
+
]
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"cell_type": "code",
|
|
78
|
+
"execution_count": null,
|
|
79
|
+
"metadata": {},
|
|
80
|
+
"outputs": [],
|
|
81
|
+
"source": []
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"cell_type": "code",
|
|
85
|
+
"execution_count": null,
|
|
86
|
+
"metadata": {},
|
|
87
|
+
"outputs": [],
|
|
88
|
+
"source": []
|
|
89
|
+
}
|
|
90
|
+
],
|
|
91
|
+
"metadata": {
|
|
92
|
+
"kernelspec": {
|
|
93
|
+
"display_name": "Python 3",
|
|
94
|
+
"language": "python",
|
|
95
|
+
"name": "python3"
|
|
96
|
+
},
|
|
97
|
+
"language_info": {
|
|
98
|
+
"codemirror_mode": {
|
|
99
|
+
"name": "ipython",
|
|
100
|
+
"version": 3
|
|
101
|
+
},
|
|
102
|
+
"file_extension": ".py",
|
|
103
|
+
"mimetype": "text/x-python",
|
|
104
|
+
"name": "python",
|
|
105
|
+
"nbconvert_exporter": "python",
|
|
106
|
+
"pygments_lexer": "ipython3",
|
|
107
|
+
"version": "3.9.9"
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
"nbformat": 4,
|
|
111
|
+
"nbformat_minor": 2
|
|
112
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import java.util.Scanner;
|
|
2
|
+
import java.util.Map.Entry;
|
|
3
|
+
|
|
4
|
+
import kore.*;
|
|
5
|
+
|
|
6
|
+
public class Bot {
|
|
7
|
+
private final static Scanner scanner = new Scanner(System.in);
|
|
8
|
+
public static void main(final String[] args) throws Exception {
|
|
9
|
+
while (true) {
|
|
10
|
+
/** Do not edit! **/
|
|
11
|
+
String rawObservation = scanner.nextLine();
|
|
12
|
+
String rawConfiguration = scanner.nextLine();
|
|
13
|
+
Board board = new Board(rawObservation, rawConfiguration);
|
|
14
|
+
/** end do not edit */
|
|
15
|
+
|
|
16
|
+
Player me = board.currentPlayer();
|
|
17
|
+
int turn = board.step;
|
|
18
|
+
int spawnCost = board.configuration.spawnCost;
|
|
19
|
+
double koreLeft = me.kore;
|
|
20
|
+
|
|
21
|
+
for (Shipyard shipyard : me.shipyards()) {
|
|
22
|
+
if (shipyard.shipCount > 10) {
|
|
23
|
+
Direction dir = Direction.fromIndex(turn % 4);
|
|
24
|
+
ShipyardAction action = ShipyardAction.launchFleetWithFlightPlan(2, dir.toChar());
|
|
25
|
+
shipyard.setNextAction(action);
|
|
26
|
+
} else if (koreLeft > spawnCost * shipyard.maxSpawn()) {
|
|
27
|
+
ShipyardAction action = ShipyardAction.spawnShips(shipyard.maxSpawn());
|
|
28
|
+
shipyard.setNextAction(action);
|
|
29
|
+
koreLeft -= spawnCost * shipyard.maxSpawn();
|
|
30
|
+
} else if (koreLeft > spawnCost) {
|
|
31
|
+
ShipyardAction action = ShipyardAction.spawnShips(1);
|
|
32
|
+
shipyard.setNextAction(action);
|
|
33
|
+
koreLeft -= spawnCost;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/** AI Code Goes Above! **/
|
|
38
|
+
|
|
39
|
+
/** Do not edit! **/
|
|
40
|
+
StringBuilder commandBuilder = new StringBuilder("");
|
|
41
|
+
boolean first = true;
|
|
42
|
+
for (Entry<String, ShipyardAction> entry : board.currentPlayer().nextActions().entrySet()) {
|
|
43
|
+
if (first) {
|
|
44
|
+
first = false;
|
|
45
|
+
} else {
|
|
46
|
+
commandBuilder.append(",");
|
|
47
|
+
}
|
|
48
|
+
commandBuilder.append(String.format("%s:%s", entry.getKey(), entry.getValue().toString()));
|
|
49
|
+
}
|
|
50
|
+
System.out.println(commandBuilder.toString());
|
|
51
|
+
System.out.flush();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Kore Fleets Java Bot
|
|
2
|
+
|
|
3
|
+
## Running locally
|
|
4
|
+
|
|
5
|
+
1. compile your bot with `javac Bot.java`
|
|
6
|
+
2. run a match with `kaggle-environments run --environment kore_fleets --agents ./main.py ./main.py`
|
|
7
|
+
|
|
8
|
+
* where `./main.py` is the relative path from your current working directory to your bot's `main.py` file
|
|
9
|
+
* 1, 2, or 4 agents are supported
|
|
10
|
+
## Watching a replay locally
|
|
11
|
+
1. compile your bot with `javac Bot.java`
|
|
12
|
+
2. run a match with `kaggle-environments run --environment kore_fleets --agents ./main.py ./main.py --log out.log --out replay.html --render '{"mode": "html"}'`
|
|
13
|
+
3. open `replay.html` with your browser of choice!
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
## Creating a submission
|
|
17
|
+
|
|
18
|
+
1. compile your both with `javac Bot.java`
|
|
19
|
+
2. create a tar.gz with `tar --exclude='test' --exclude='jars' -czvf submission.tar.gz *`
|
|
20
|
+
|
|
21
|
+
note you must do this in the same directory as `main.py`!
|
|
22
|
+
|
|
23
|
+
## Running tests
|
|
24
|
+
|
|
25
|
+
1. Add the jars/ to visual studio as described [here](https://stackoverflow.com/questions/50232557/visual-studio-code-java-extension-howto-add-jar-to-classpath)
|
|
26
|
+
2. Run tests!
|