@supalosa/chronodivide-bot 0.1.1 → 0.2.0
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.
- package/README.md +71 -46
- package/dist/bot/bot.js +27 -183
- package/dist/bot/logic/awareness.js +122 -0
- package/dist/bot/logic/building/basicGroundUnit.js +8 -6
- package/dist/bot/logic/building/building.js +6 -3
- package/dist/bot/logic/building/harvester.js +1 -1
- package/dist/bot/logic/building/queueController.js +4 -21
- package/dist/bot/logic/common/scout.js +10 -0
- package/dist/bot/logic/knowledge.js +1 -0
- package/dist/bot/logic/map/map.js +6 -0
- package/dist/bot/logic/map/sector.js +6 -1
- package/dist/bot/logic/mission/basicMission.js +1 -5
- package/dist/bot/logic/mission/expansionMission.js +22 -4
- package/dist/bot/logic/mission/mission.js +49 -2
- package/dist/bot/logic/mission/missionController.js +67 -34
- package/dist/bot/logic/mission/missionFactories.js +10 -0
- package/dist/bot/logic/mission/missions/attackMission.js +109 -0
- package/dist/bot/logic/mission/missions/defenceMission.js +62 -0
- package/dist/bot/logic/mission/missions/expansionMission.js +24 -0
- package/dist/bot/logic/mission/missions/oneTimeMission.js +26 -0
- package/dist/bot/logic/mission/missions/retreatMission.js +7 -0
- package/dist/bot/logic/mission/missions/scoutingMission.js +38 -0
- package/dist/bot/logic/squad/behaviours/attackSquad.js +82 -0
- package/dist/bot/logic/squad/behaviours/combatSquad.js +99 -0
- package/dist/bot/logic/squad/behaviours/common.js +37 -0
- package/dist/bot/logic/squad/behaviours/defenceSquad.js +48 -0
- package/dist/bot/logic/squad/behaviours/expansionSquad.js +42 -0
- package/dist/bot/logic/squad/behaviours/retreatSquad.js +32 -0
- package/dist/bot/logic/squad/behaviours/scoutingSquad.js +38 -0
- package/dist/bot/logic/squad/behaviours/squadExpansion.js +26 -13
- package/dist/bot/logic/squad/squad.js +68 -15
- package/dist/bot/logic/squad/squadBehaviour.js +5 -5
- package/dist/bot/logic/squad/squadBehaviours.js +6 -0
- package/dist/bot/logic/squad/squadController.js +106 -15
- package/dist/exampleBot.js +22 -7
- package/package.json +29 -24
- package/src/bot/bot.ts +178 -378
- package/src/bot/logic/awareness.ts +220 -0
- package/src/bot/logic/building/ArtilleryUnit.ts +2 -2
- package/src/bot/logic/building/antiGroundStaticDefence.ts +2 -2
- package/src/bot/logic/building/basicAirUnit.ts +2 -2
- package/src/bot/logic/building/basicBuilding.ts +2 -2
- package/src/bot/logic/building/basicGroundUnit.ts +83 -78
- package/src/bot/logic/building/building.ts +125 -120
- package/src/bot/logic/building/harvester.ts +27 -27
- package/src/bot/logic/building/powerPlant.ts +1 -1
- package/src/bot/logic/building/queueController.ts +17 -38
- package/src/bot/logic/building/resourceCollectionBuilding.ts +1 -1
- package/src/bot/logic/common/scout.ts +12 -0
- package/src/bot/logic/map/map.ts +11 -3
- package/src/bot/logic/map/sector.ts +136 -130
- package/src/bot/logic/mission/mission.ts +83 -47
- package/src/bot/logic/mission/missionController.ts +103 -51
- package/src/bot/logic/mission/missionFactories.ts +46 -0
- package/src/bot/logic/mission/missions/attackMission.ts +152 -0
- package/src/bot/logic/mission/missions/defenceMission.ts +104 -0
- package/src/bot/logic/mission/missions/expansionMission.ts +49 -0
- package/src/bot/logic/mission/missions/oneTimeMission.ts +32 -0
- package/src/bot/logic/mission/missions/retreatMission.ts +9 -0
- package/src/bot/logic/mission/missions/scoutingMission.ts +59 -0
- package/src/bot/logic/squad/behaviours/combatSquad.ts +125 -0
- package/src/bot/logic/squad/behaviours/common.ts +37 -0
- package/src/bot/logic/squad/behaviours/expansionSquad.ts +59 -0
- package/src/bot/logic/squad/behaviours/retreatSquad.ts +46 -0
- package/src/bot/logic/squad/behaviours/scoutingSquad.ts +56 -0
- package/src/bot/logic/squad/squad.ts +163 -97
- package/src/bot/logic/squad/squadBehaviour.ts +61 -43
- package/src/bot/logic/squad/squadBehaviours.ts +8 -0
- package/src/bot/logic/squad/squadController.ts +190 -66
- package/src/exampleBot.ts +19 -4
- package/tsconfig.json +1 -1
- package/src/bot/logic/mission/basicMission.ts +0 -42
- package/src/bot/logic/mission/expansionMission.ts +0 -25
- package/src/bot/logic/squad/behaviours/squadExpansion.ts +0 -33
package/dist/exampleBot.js
CHANGED
|
@@ -1,7 +1,21 @@
|
|
|
1
1
|
import { cdapi } from "@chronodivide/game-api";
|
|
2
|
-
import {
|
|
2
|
+
import { SupalosaBot } from "./bot/bot.js";
|
|
3
3
|
async function main() {
|
|
4
|
-
|
|
4
|
+
/*
|
|
5
|
+
Ladder maps:
|
|
6
|
+
CDR2 1v1 2_malibu_cliffs_le.map
|
|
7
|
+
CDR2 1v1 4_country_swing_le_v2.map
|
|
8
|
+
CDR2 1v1 mp01t4.map
|
|
9
|
+
CDR2 1v1 tn04t2.map
|
|
10
|
+
CDR2 1v1 mp10s4.map
|
|
11
|
+
CDR2 1v1 heckcorners.map
|
|
12
|
+
CDR2 1v1 4_montana_dmz_le.map
|
|
13
|
+
CDR2 1v1 barrel.map
|
|
14
|
+
|
|
15
|
+
Other maps:
|
|
16
|
+
mp03t4
|
|
17
|
+
*/
|
|
18
|
+
const mapName = "mp01t4.map";
|
|
5
19
|
// Bot names must be unique in online mode
|
|
6
20
|
const botName = `Joe${String(Date.now()).substr(-6)}`;
|
|
7
21
|
const otherBotName = `Bob${String(Date.now() + 1).substr(-6)}`;
|
|
@@ -10,11 +24,12 @@ async function main() {
|
|
|
10
24
|
console.log("Client URL: " + process.env.CLIENT_URL);
|
|
11
25
|
const game = await cdapi.createGame({
|
|
12
26
|
// Uncomment the following lines to play in real time versus the bot
|
|
13
|
-
online: true,
|
|
14
|
-
serverUrl: process.env.SERVER_URL
|
|
15
|
-
clientUrl: process.env.CLIENT_URL
|
|
16
|
-
agents: [new
|
|
17
|
-
|
|
27
|
+
/*online: true,
|
|
28
|
+
serverUrl: process.env.SERVER_URL!,
|
|
29
|
+
clientUrl: process.env.CLIENT_URL!,
|
|
30
|
+
agents: [new SupalosaBot(botName, "Americans"), { name: otherBotName, country: "French" }],*/
|
|
31
|
+
agents: [new SupalosaBot(botName, "French", false), new SupalosaBot(otherBotName, "French", true)],
|
|
32
|
+
//agents: [new SupalosaBot(botName, "Americans", false), new SupalosaBot(otherBotName, "Russians", false)],
|
|
18
33
|
buildOffAlly: false,
|
|
19
34
|
cratesAppear: false,
|
|
20
35
|
credits: 10000,
|
package/package.json
CHANGED
|
@@ -1,24 +1,29 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@supalosa/chronodivide-bot",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Example bot for Chrono Divide",
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
|
|
9
|
-
"
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
"
|
|
15
|
-
|
|
16
|
-
"
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
"
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
"
|
|
23
|
-
|
|
24
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "@supalosa/chronodivide-bot",
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"description": "Example bot for Chrono Divide",
|
|
5
|
+
"repository": "https://github.com/Supalosa/supalosa-chronodivide-bot",
|
|
6
|
+
"main": "dist/exampleBot.js",
|
|
7
|
+
"type": "module",
|
|
8
|
+
"scripts": {
|
|
9
|
+
"build": "tsc -p .",
|
|
10
|
+
"watch": "tsc -p . -w",
|
|
11
|
+
"start": "node . --es-module-specifier-resolution=node",
|
|
12
|
+
"test": "echo \"Error: no test specified\" && exit 1"
|
|
13
|
+
},
|
|
14
|
+
"license": "UNLICENSED",
|
|
15
|
+
"devDependencies": {
|
|
16
|
+
"@timohausmann/quadtree-ts": "^2.0.0-beta.1",
|
|
17
|
+
"@types/node": "^14.17.32",
|
|
18
|
+
"prettier": "3.0.3",
|
|
19
|
+
"typescript": "^4.3.5"
|
|
20
|
+
},
|
|
21
|
+
"dependencies": {
|
|
22
|
+
"@chronodivide/game-api": "^0.45.0",
|
|
23
|
+
"@types/lodash": "^4.14.199",
|
|
24
|
+
"@types/luxon": "^3.3.2",
|
|
25
|
+
"lodash": "^4.17.21",
|
|
26
|
+
"luxon": "^3.4.3",
|
|
27
|
+
"priority-queue-typescript": "^1.0.1"
|
|
28
|
+
}
|
|
29
|
+
}
|