@v12-engine/engine 0.1.1 → 0.4.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/dist/abilities/amounts.d.ts +28 -0
- package/dist/abilities/amounts.js +74 -0
- package/dist/abilities/amounts.js.map +1 -0
- package/dist/abilities/buffs.d.ts +106 -6
- package/dist/abilities/buffs.js +443 -0
- package/dist/abilities/buffs.js.map +1 -0
- package/dist/abilities/castTold.d.ts +2 -0
- package/dist/abilities/castTold.js +66 -0
- package/dist/abilities/castTold.js.map +1 -0
- package/dist/abilities/chance.d.ts +38 -0
- package/dist/abilities/chance.js +77 -0
- package/dist/abilities/chance.js.map +1 -0
- package/dist/abilities/charges.d.ts +18 -0
- package/dist/abilities/charges.js +101 -0
- package/dist/abilities/charges.js.map +1 -0
- package/dist/abilities/control.d.ts +28 -0
- package/dist/abilities/control.js +113 -0
- package/dist/abilities/control.js.map +1 -0
- package/dist/abilities/dispel.js +51 -0
- package/dist/abilities/dispel.js.map +1 -0
- package/dist/abilities/effectFields.d.ts +1 -1
- package/dist/abilities/effectFields.js +676 -0
- package/dist/abilities/effectFields.js.map +1 -0
- package/dist/abilities/effectIndex.d.ts +27 -0
- package/dist/abilities/effectIndex.js +64 -0
- package/dist/abilities/effectIndex.js.map +1 -0
- package/dist/abilities/effects/buff.d.ts +9 -3
- package/dist/abilities/effects/buff.js +84 -0
- package/dist/abilities/effects/buff.js.map +1 -0
- package/dist/abilities/effects/conditions.d.ts +2 -0
- package/dist/abilities/effects/conditions.js +41 -0
- package/dist/abilities/effects/conditions.js.map +1 -0
- package/dist/abilities/effects/core.js +54 -0
- package/dist/abilities/effects/core.js.map +1 -0
- package/dist/abilities/effects/damage.d.ts +1 -1
- package/dist/abilities/effects/damage.js +43 -0
- package/dist/abilities/effects/damage.js.map +1 -0
- package/dist/abilities/effects/heal.d.ts +2 -2
- package/dist/abilities/effects/heal.js +51 -0
- package/dist/abilities/effects/heal.js.map +1 -0
- package/dist/abilities/effects/missile.d.ts +13 -1
- package/dist/abilities/effects/missile.js +104 -0
- package/dist/abilities/effects/missile.js.map +1 -0
- package/dist/abilities/effects/morph.d.ts +5 -0
- package/dist/abilities/effects/morph.js +43 -0
- package/dist/abilities/effects/morph.js.map +1 -0
- package/dist/abilities/effects/moves.d.ts +16 -4
- package/dist/abilities/effects/moves.js +212 -0
- package/dist/abilities/effects/moves.js.map +1 -0
- package/dist/abilities/effects/passives.d.ts +19 -9
- package/dist/abilities/effects/passives.js +131 -0
- package/dist/abilities/effects/passives.js.map +1 -0
- package/dist/abilities/effects/proxy.d.ts +5 -0
- package/dist/abilities/effects/proxy.js +60 -0
- package/dist/abilities/effects/proxy.js.map +1 -0
- package/dist/abilities/effects/sight.d.ts +2 -2
- package/dist/abilities/effects/sight.js +39 -0
- package/dist/abilities/effects/sight.js.map +1 -0
- package/dist/abilities/effects/spawn.d.ts +5 -2
- package/dist/abilities/effects/spawn.js +40 -0
- package/dist/abilities/effects/spawn.js.map +1 -0
- package/dist/abilities/effects/timed.d.ts +2 -2
- package/dist/abilities/effects/timed.js +96 -0
- package/dist/abilities/effects/timed.js.map +1 -0
- package/dist/abilities/effects/trade.d.ts +1 -1
- package/dist/abilities/effects/trade.js +25 -0
- package/dist/abilities/effects/trade.js.map +1 -0
- package/dist/abilities/effects.d.ts +97 -23
- package/dist/abilities/effects.js +860 -0
- package/dist/abilities/effects.js.map +1 -0
- package/dist/abilities/land.d.ts +38 -4
- package/dist/abilities/land.js +189 -0
- package/dist/abilities/land.js.map +1 -0
- package/dist/abilities/recast.d.ts +45 -0
- package/dist/abilities/recast.js +118 -0
- package/dist/abilities/recast.js.map +1 -0
- package/dist/abilities/scaled.js +40 -0
- package/dist/abilities/scaled.js.map +1 -0
- package/dist/abilities/screen.d.ts +6 -0
- package/dist/abilities/screen.js +83 -0
- package/dist/abilities/screen.js.map +1 -0
- package/dist/abilities/shapes.d.ts +66 -0
- package/dist/abilities/shapes.js +122 -0
- package/dist/abilities/shapes.js.map +1 -0
- package/dist/abilities/text.d.ts +14 -2
- package/dist/abilities/text.js +204 -0
- package/dist/abilities/text.js.map +1 -0
- package/dist/abilities/triggers.d.ts +98 -0
- package/dist/abilities/triggers.js +351 -0
- package/dist/abilities/triggers.js.map +1 -0
- package/dist/abilityChanges.d.ts +131 -0
- package/dist/abilityChanges.js +345 -0
- package/dist/abilityChanges.js.map +1 -0
- package/dist/ai/area.d.ts +4 -1
- package/dist/ai/brain.d.ts +4 -1
- package/dist/ai/brain.js +844 -0
- package/dist/ai/brain.js.map +1 -0
- package/dist/ai/budget.js +74 -0
- package/dist/ai/budget.js.map +1 -0
- package/dist/ai/checks.d.ts +9 -1
- package/dist/ai/checks.js +242 -0
- package/dist/ai/checks.js.map +1 -0
- package/dist/ai/computer.d.ts +11 -4
- package/dist/ai/computer.js +251 -0
- package/dist/ai/computer.js.map +1 -0
- package/dist/ai/defence.d.ts +4 -0
- package/dist/ai/defence.js +430 -0
- package/dist/ai/defence.js.map +1 -0
- package/dist/ai/define.d.ts +3 -2
- package/dist/ai/define.js +31 -0
- package/dist/ai/define.js.map +1 -0
- package/dist/ai/economy.d.ts +10 -7
- package/dist/ai/economy.js +780 -0
- package/dist/ai/economy.js.map +1 -0
- package/dist/ai/geometry.js +38 -0
- package/dist/ai/geometry.js.map +1 -0
- package/dist/ai/goals.d.ts +1 -0
- package/dist/ai/goals.js +560 -0
- package/dist/ai/goals.js.map +1 -0
- package/dist/ai/knowledge.d.ts +72 -7
- package/dist/ai/knowledge.js +804 -0
- package/dist/ai/knowledge.js.map +1 -0
- package/dist/ai/lanes.d.ts +10 -2
- package/dist/ai/lanes.js +715 -0
- package/dist/ai/lanes.js.map +1 -0
- package/dist/ai/melee/build.js +264 -0
- package/dist/ai/melee/build.js.map +1 -0
- package/dist/ai/melee/goals.d.ts +7 -0
- package/dist/ai/melee/goals.js +720 -0
- package/dist/ai/melee/goals.js.map +1 -0
- package/dist/ai/melee/heroes.js +68 -0
- package/dist/ai/melee/heroes.js.map +1 -0
- package/dist/ai/melee/index.d.ts +1 -1
- package/dist/ai/melee/index.js +51 -0
- package/dist/ai/melee/index.js.map +1 -0
- package/dist/ai/melee/production.js +29 -0
- package/dist/ai/melee/production.js.map +1 -0
- package/dist/ai/melee/surrender.js +64 -0
- package/dist/ai/melee/surrender.js.map +1 -0
- package/dist/ai/micro.d.ts +9 -0
- package/dist/ai/micro.js +1316 -0
- package/dist/ai/micro.js.map +1 -0
- package/dist/ai/mission.d.ts +9 -2
- package/dist/ai/mission.js +538 -0
- package/dist/ai/mission.js.map +1 -0
- package/dist/ai/missionRules.d.ts +1 -1
- package/dist/ai/missionRules.js +26 -0
- package/dist/ai/missionRules.js.map +1 -0
- package/dist/ai/module.d.ts +6 -2
- package/dist/ai/module.js +37 -0
- package/dist/ai/module.js.map +1 -0
- package/dist/ai/options.d.ts +3 -3
- package/dist/ai/plans/build.d.ts +20 -1
- package/dist/ai/plans/build.js +608 -0
- package/dist/ai/plans/build.js.map +1 -0
- package/dist/ai/plans/placement.d.ts +4 -1
- package/dist/ai/plans/placement.js +295 -0
- package/dist/ai/plans/placement.js.map +1 -0
- package/dist/ai/plans/plans.d.ts +9 -0
- package/dist/ai/plans/plans.js +110 -0
- package/dist/ai/plans/plans.js.map +1 -0
- package/dist/ai/plans/production.d.ts +14 -2
- package/dist/ai/plans/production.js +434 -0
- package/dist/ai/plans/production.js.map +1 -0
- package/dist/ai/plans/purse.d.ts +6 -3
- package/dist/ai/plans/purse.js +139 -0
- package/dist/ai/plans/purse.js.map +1 -0
- package/dist/ai/plans/tech.d.ts +6 -0
- package/dist/ai/plans/tech.js +122 -0
- package/dist/ai/plans/tech.js.map +1 -0
- package/dist/ai/profiles.d.ts +4 -4
- package/dist/{profiles-B3NS9jwk.js → ai/profiles.js} +3 -98
- package/dist/ai/profiles.js.map +1 -0
- package/dist/ai/reach.js +54 -0
- package/dist/ai/reach.js.map +1 -0
- package/dist/ai/report.d.ts +8 -0
- package/dist/ai/report.js +87 -0
- package/dist/ai/report.js.map +1 -0
- package/dist/ai/roles.d.ts +4 -0
- package/dist/ai/roles.js +207 -0
- package/dist/ai/roles.js.map +1 -0
- package/dist/ai/rules.d.ts +8 -2
- package/dist/ai/rules.js +416 -0
- package/dist/ai/rules.js.map +1 -0
- package/dist/ai/scouting.d.ts +6 -0
- package/dist/ai/scouting.js +324 -0
- package/dist/ai/scouting.js.map +1 -0
- package/dist/ai/settings.js +99 -0
- package/dist/ai/settings.js.map +1 -0
- package/dist/ai/squads.d.ts +21 -2
- package/dist/ai/squads.js +916 -0
- package/dist/ai/squads.js.map +1 -0
- package/dist/ai/strength.js +320 -0
- package/dist/ai/strength.js.map +1 -0
- package/dist/ai/task.d.ts +3 -1
- package/dist/ai/task.js +17 -0
- package/dist/ai/task.js.map +1 -0
- package/dist/ai/tasks/attack.js +24 -0
- package/dist/ai/tasks/attack.js.map +1 -0
- package/dist/ai/tasks/capture.d.ts +3 -3
- package/dist/ai/tasks/capture.js +37 -0
- package/dist/ai/tasks/capture.js.map +1 -0
- package/dist/ai/tasks/creep.js +29 -0
- package/dist/ai/tasks/creep.js.map +1 -0
- package/dist/ai/tasks/defend.js +61 -0
- package/dist/ai/tasks/defend.js.map +1 -0
- package/dist/ai/tasks/drop.js +81 -0
- package/dist/ai/tasks/drop.js.map +1 -0
- package/dist/ai/tasks/escort.js +59 -0
- package/dist/ai/tasks/escort.js.map +1 -0
- package/dist/ai/tasks/gather.js +48 -0
- package/dist/ai/tasks/gather.js.map +1 -0
- package/dist/ai/tasks/harass.js +39 -0
- package/dist/ai/tasks/harass.js.map +1 -0
- package/dist/ai/tasks/hold.js +32 -0
- package/dist/ai/tasks/hold.js.map +1 -0
- package/dist/ai/tasks/index.js +34 -0
- package/dist/ai/tasks/index.js.map +1 -0
- package/dist/ai/tasks/move.js +26 -0
- package/dist/ai/tasks/move.js.map +1 -0
- package/dist/ai/tasks/patrol.js +59 -0
- package/dist/ai/tasks/patrol.js.map +1 -0
- package/dist/ai/tasks/retreat.js +28 -0
- package/dist/ai/tasks/retreat.js.map +1 -0
- package/dist/ai/tasks/scout.js +73 -0
- package/dist/ai/tasks/scout.js.map +1 -0
- package/dist/ai/tasks/shared.d.ts +1 -1
- package/dist/ai/tasks/shared.js +137 -0
- package/dist/ai/tasks/shared.js.map +1 -0
- package/dist/ai/team.d.ts +18 -1
- package/dist/ai/team.js +492 -0
- package/dist/ai/team.js.map +1 -0
- package/dist/ai/threat.d.ts +6 -0
- package/dist/ai/threat.js +206 -0
- package/dist/ai/threat.js.map +1 -0
- package/dist/ai/view.d.ts +21 -7
- package/dist/ai/view.js +677 -0
- package/dist/ai/view.js.map +1 -0
- package/dist/ai/waves.d.ts +6 -0
- package/dist/ai/waves.js +410 -0
- package/dist/ai/waves.js.map +1 -0
- package/dist/ai.js +54 -6239
- package/dist/aiTesting.d.ts +6 -3
- package/dist/aiTesting.js +229 -0
- package/dist/aiTesting.js.map +1 -0
- package/dist/areas.d.ts +4 -1
- package/dist/areas.js +295 -0
- package/dist/areas.js.map +1 -0
- package/dist/attacks.d.ts +3 -3
- package/dist/attacks.js +127 -0
- package/dist/attacks.js.map +1 -0
- package/dist/burning.d.ts +267 -0
- package/dist/burning.js +795 -0
- package/dist/burning.js.map +1 -0
- package/dist/bytes.js +21 -0
- package/dist/bytes.js.map +1 -0
- package/dist/callings.d.ts +71 -0
- package/dist/callings.js +157 -0
- package/dist/callings.js.map +1 -0
- package/dist/cameraOrders.d.ts +78 -0
- package/dist/cameraOrders.js +114 -0
- package/dist/cameraOrders.js.map +1 -0
- package/dist/camps.d.ts +70 -4
- package/dist/camps.js +501 -0
- package/dist/camps.js.map +1 -0
- package/dist/capture.d.ts +15 -3
- package/dist/capture.js +304 -0
- package/dist/capture.js.map +1 -0
- package/dist/cellLayers.d.ts +78 -13
- package/dist/cellLayers.js +275 -0
- package/dist/cellLayers.js.map +1 -0
- package/dist/cellPatches.d.ts +24 -0
- package/dist/cellPatches.js +73 -0
- package/dist/cellPatches.js.map +1 -0
- package/dist/cinematics.d.ts +10 -5
- package/dist/cinematics.js +161 -0
- package/dist/cinematics.js.map +1 -0
- package/dist/clock.d.ts +2 -2
- package/dist/clock.js +78 -0
- package/dist/clock.js.map +1 -0
- package/dist/commands.d.ts +36 -4
- package/dist/commands.js +636 -0
- package/dist/commands.js.map +1 -0
- package/dist/components.d.ts +31 -10
- package/dist/components.js +74 -0
- package/dist/components.js.map +1 -0
- package/dist/computers.d.ts +4 -4
- package/dist/computers.js +194 -0
- package/dist/computers.js.map +1 -0
- package/dist/concealment.d.ts +25 -2
- package/dist/concealment.js +409 -0
- package/dist/concealment.js.map +1 -0
- package/dist/coreComponents.js +130 -0
- package/dist/coreComponents.js.map +1 -0
- package/dist/createGame.d.ts +306 -0
- package/dist/createGame.js +405 -0
- package/dist/createGame.js.map +1 -0
- package/dist/dashing.d.ts +18 -2
- package/dist/dashing.js +41 -0
- package/dist/dashing.js.map +1 -0
- package/dist/debug.d.ts +8 -0
- package/dist/debug.js +5 -3
- package/dist/debug2.js +76 -0
- package/dist/debug2.js.map +1 -0
- package/dist/debugCommands.d.ts +6 -6
- package/dist/debugCommands.js +537 -0
- package/dist/debugCommands.js.map +1 -0
- package/dist/debugging.d.ts +1 -0
- package/dist/defaultSets.d.ts +183 -0
- package/dist/defaultSets.js +216 -0
- package/dist/defaultSets.js.map +1 -0
- package/dist/definitions.d.ts +6 -0
- package/dist/definitions.js +78 -0
- package/dist/definitions.js.map +1 -0
- package/dist/defs.d.ts +1895 -165
- package/dist/defs.js +380 -0
- package/dist/defs.js.map +1 -0
- package/dist/denying.d.ts +4 -4
- package/dist/denying.js +106 -0
- package/dist/denying.js.map +1 -0
- package/dist/destructibles.d.ts +2 -2
- package/dist/destructibles.js +36 -0
- package/dist/destructibles.js.map +1 -0
- package/dist/determinism.d.ts +4 -4
- package/dist/determinism.js +247 -0
- package/dist/determinism.js.map +1 -0
- package/dist/dialog.d.ts +17 -2
- package/dist/dialog.js +108 -0
- package/dist/dialog.js.map +1 -0
- package/dist/effectRefs.js +28 -0
- package/dist/effectRefs.js.map +1 -0
- package/dist/effects.d.ts +27 -11
- package/dist/effects.js +110 -0
- package/dist/effects.js.map +1 -0
- package/dist/endings.d.ts +1 -1
- package/dist/endings.js +78 -0
- package/dist/endings.js.map +1 -0
- package/dist/engagement.d.ts +40 -6
- package/dist/engagement.js +530 -0
- package/dist/engagement.js.map +1 -0
- package/dist/engineEvents.d.ts +72 -9
- package/dist/engineEvents.js +520 -0
- package/dist/engineEvents.js.map +1 -0
- package/dist/entity.d.ts +275 -26
- package/dist/entity.js +441 -0
- package/dist/entity.js.map +1 -0
- package/dist/entityIndex.d.ts +10 -3
- package/dist/entityIndex.js +149 -0
- package/dist/entityIndex.js.map +1 -0
- package/dist/errors.d.ts +6 -2
- package/dist/errors.js +59 -0
- package/dist/errors.js.map +1 -0
- package/dist/events.d.ts +11 -5
- package/dist/events.js +158 -0
- package/dist/events.js.map +1 -0
- package/dist/exactMath.js +273 -0
- package/dist/exactMath.js.map +1 -0
- package/dist/features.d.ts +1 -1
- package/dist/features.js +127 -0
- package/dist/features.js.map +1 -0
- package/dist/fields.d.ts +25 -5
- package/dist/fields.js +140 -0
- package/dist/fields.js.map +1 -0
- package/dist/fixture.d.ts +3 -3
- package/dist/fixture.js +512 -0
- package/dist/fixture.js.map +1 -0
- package/dist/fog.d.ts +26 -3
- package/dist/fog.js +333 -0
- package/dist/fog.js.map +1 -0
- package/dist/foliage.d.ts +476 -0
- package/dist/foliage.js +1478 -0
- package/dist/foliage.js.map +1 -0
- package/dist/foliageDebug.d.ts +57 -0
- package/dist/foliageDebug.js +172 -0
- package/dist/foliageDebug.js.map +1 -0
- package/dist/foliageRegrowth.d.ts +20 -0
- package/dist/foliageRegrowth.js +332 -0
- package/dist/foliageRegrowth.js.map +1 -0
- package/dist/formState.d.ts +67 -0
- package/dist/formState.js +65 -0
- package/dist/formState.js.map +1 -0
- package/dist/formation.d.ts +46 -8
- package/dist/formation.js +297 -0
- package/dist/formation.js.map +1 -0
- package/dist/forms.d.ts +58 -0
- package/dist/forms.js +146 -0
- package/dist/forms.js.map +1 -0
- package/dist/friendlyFire.d.ts +2 -2
- package/dist/friendlyFire.js +37 -0
- package/dist/friendlyFire.js.map +1 -0
- package/dist/game.d.ts +141 -48
- package/dist/game.js +834 -0
- package/dist/game.js.map +1 -0
- package/dist/gameData.d.ts +96 -22
- package/dist/gameData.js +1690 -0
- package/dist/gameData.js.map +1 -0
- package/dist/gameFiles.d.ts +3 -3
- package/dist/gameFiles.js +14 -0
- package/dist/gameFiles.js.map +1 -0
- package/dist/gates.js +92 -0
- package/dist/gates.js.map +1 -0
- package/dist/generate.d.ts +28 -1
- package/dist/generate.js +1062 -0
- package/dist/generate.js.map +1 -0
- package/dist/generateWorker.d.ts +7 -3
- package/dist/generateWorker.js +86 -0
- package/dist/generateWorker.js.map +1 -0
- package/dist/grid.d.ts +9 -0
- package/dist/grid.js +102 -0
- package/dist/grid.js.map +1 -0
- package/dist/ground.d.ts +17 -1
- package/dist/ground.js +375 -0
- package/dist/ground.js.map +1 -0
- package/dist/groundObjects.d.ts +70 -0
- package/dist/groundObjects.js +371 -0
- package/dist/groundObjects.js.map +1 -0
- package/dist/groundSpeed.d.ts +20 -3
- package/dist/groundSpeed.js +117 -0
- package/dist/groundSpeed.js.map +1 -0
- package/dist/hero.d.ts +126 -10
- package/dist/hero.js +432 -0
- package/dist/hero.js.map +1 -0
- package/dist/holds.d.ts +94 -0
- package/dist/holds.js +305 -0
- package/dist/holds.js.map +1 -0
- package/dist/home.d.ts +1 -1
- package/dist/home.js +30 -0
- package/dist/home.js.map +1 -0
- package/dist/hooks.d.ts +339 -57
- package/dist/hooks.js +105 -0
- package/dist/hooks.js.map +1 -0
- package/dist/hotReload.d.ts +6 -5
- package/dist/hotReload.js +145 -0
- package/dist/hotReload.js.map +1 -0
- package/dist/ids.d.ts +3 -3
- package/dist/ids.js +30 -0
- package/dist/ids.js.map +1 -0
- package/dist/idsFile.d.ts +36 -0
- package/dist/idsFile.js +134 -0
- package/dist/idsFile.js.map +1 -0
- package/dist/index.d.ts +105 -68
- package/dist/index.js +194 -4701
- package/dist/inspect.d.ts +29 -2
- package/dist/{inspect-D9dWHmZ0.js → inspect.js} +21 -12
- package/dist/inspect.js.map +1 -0
- package/dist/inventory.d.ts +14 -1
- package/dist/inventory.js +84 -0
- package/dist/inventory.js.map +1 -0
- package/dist/items.d.ts +136 -8
- package/dist/items.js +585 -0
- package/dist/items.js.map +1 -0
- package/dist/lanes.d.ts +12 -3
- package/dist/lanes.js +496 -0
- package/dist/lanes.js.map +1 -0
- package/dist/life.d.ts +6 -2
- package/dist/life.js +287 -0
- package/dist/life.js.map +1 -0
- package/dist/log.d.ts +26 -3
- package/dist/log.js +192 -0
- package/dist/log.js.map +1 -0
- package/dist/manaBurn.d.ts +2 -2
- package/dist/manaBurn.js +75 -0
- package/dist/manaBurn.js.map +1 -0
- package/dist/map/file.d.ts +56 -3
- package/dist/map/file.js +264 -0
- package/dist/map/file.js.map +1 -0
- package/dist/map/images.js +61 -0
- package/dist/map/images.js.map +1 -0
- package/dist/map/look.d.ts +1 -1
- package/dist/map/look.js +30 -0
- package/dist/map/look.js.map +1 -0
- package/dist/map/pathProfile.js +183 -0
- package/dist/map/pathProfile.js.map +1 -0
- package/dist/map/resize.d.ts +4 -0
- package/dist/map/resize.js +136 -0
- package/dist/map/resize.js.map +1 -0
- package/dist/map/schema.js +257 -0
- package/dist/map/schema.js.map +1 -0
- package/dist/map/terrain.js +214 -0
- package/dist/map/terrain.js.map +1 -0
- package/dist/map/types.d.ts +92 -13
- package/dist/map/types.js +251 -0
- package/dist/map/types.js.map +1 -0
- package/dist/mapCheck/cells.js +94 -0
- package/dist/mapCheck/cells.js.map +1 -0
- package/dist/mapCheck/rules/foliage.d.ts +9 -0
- package/dist/mapCheck/rules/foliage.js +83 -0
- package/dist/mapCheck/rules/foliage.js.map +1 -0
- package/dist/mapCheck/rules/names.js +39 -0
- package/dist/mapCheck/rules/names.js.map +1 -0
- package/dist/mapCheck/rules/objects.d.ts +1 -1
- package/dist/mapCheck/rules/objects.js +56 -0
- package/dist/mapCheck/rules/objects.js.map +1 -0
- package/dist/mapCheck/rules/paths.js +32 -0
- package/dist/mapCheck/rules/paths.js.map +1 -0
- package/dist/mapCheck/rules/players.js +20 -0
- package/dist/mapCheck/rules/players.js.map +1 -0
- package/dist/mapCheck/rules/races.js +56 -0
- package/dist/mapCheck/rules/races.js.map +1 -0
- package/dist/mapCheck/rules/random.js +47 -0
- package/dist/mapCheck/rules/random.js.map +1 -0
- package/dist/mapCheck/rules/regions.js +30 -0
- package/dist/mapCheck/rules/regions.js.map +1 -0
- package/dist/mapCheck/rules/targets.js +31 -0
- package/dist/mapCheck/rules/targets.js.map +1 -0
- package/dist/mapCheck/rules/walking.js +45 -0
- package/dist/mapCheck/rules/walking.js.map +1 -0
- package/dist/mapCheck.d.ts +2 -2
- package/dist/mapCheck.js +63 -0
- package/dist/mapCheck.js.map +1 -0
- package/dist/mapFields.d.ts +25 -2
- package/dist/mapFields.js +134 -0
- package/dist/mapFields.js.map +1 -0
- package/dist/mapFile.js +176 -0
- package/dist/mapFile.js.map +1 -0
- package/dist/mapMeasure.d.ts +8 -0
- package/dist/mapMeasure.js +283 -0
- package/dist/mapMeasure.js.map +1 -0
- package/dist/mapMerge.d.ts +1 -0
- package/dist/mapMerge.js +172 -0
- package/dist/mapMerge.js.map +1 -0
- package/dist/mapObjectives.js +138 -0
- package/dist/mapObjectives.js.map +1 -0
- package/dist/mapObjects.js +80 -0
- package/dist/mapObjects.js.map +1 -0
- package/dist/math.d.ts +37 -7
- package/dist/math.js +155 -0
- package/dist/math.js.map +1 -0
- package/dist/messages.d.ts +71 -4
- package/dist/messages.js +29 -0
- package/dist/messages.js.map +1 -0
- package/dist/missionRules.d.ts +10 -2
- package/dist/{missionRules-C-bGxm0Q.js → missionRules.js} +30 -150
- package/dist/missionRules.js.map +1 -0
- package/dist/mods.d.ts +39 -20
- package/dist/mods.js +271 -0
- package/dist/mods.js.map +1 -0
- package/dist/moves.d.ts +87 -0
- package/dist/moves.js +539 -0
- package/dist/moves.js.map +1 -0
- package/dist/names.d.ts +7 -0
- package/dist/names.js +122 -0
- package/dist/names.js.map +1 -0
- package/dist/navigation/agentParams.js +14 -0
- package/dist/navigation/agentParams.js.map +1 -0
- package/dist/navigation/air.d.ts +7 -3
- package/dist/navigation/air.js +401 -0
- package/dist/navigation/air.js.map +1 -0
- package/dist/navigation/builds.d.ts +34 -2
- package/dist/navigation/builds.js +287 -0
- package/dist/navigation/builds.js.map +1 -0
- package/dist/navigation/groundAreas.d.ts +59 -1
- package/dist/navigation/groundAreas.js +407 -0
- package/dist/navigation/groundAreas.js.map +1 -0
- package/dist/navigation/navigation.d.ts +98 -9
- package/dist/navigation/recast.d.ts +194 -18
- package/dist/navigation/recast.js +1379 -0
- package/dist/navigation/recast.js.map +1 -0
- package/dist/navigation/sidePaths.d.ts +8 -3
- package/dist/navigation/sidePaths.js +241 -0
- package/dist/navigation/sidePaths.js.map +1 -0
- package/dist/navigation/sized.js +243 -0
- package/dist/navigation/sized.js.map +1 -0
- package/dist/nearest.js +32 -0
- package/dist/nearest.js.map +1 -0
- package/dist/noise.js +59 -0
- package/dist/noise.js.map +1 -0
- package/dist/objectives.d.ts +12 -3
- package/dist/objectives.js +144 -0
- package/dist/objectives.js.map +1 -0
- package/dist/orders/basic.d.ts +5 -5
- package/dist/orders/basic.js +417 -0
- package/dist/orders/basic.js.map +1 -0
- package/dist/orders/build.js +278 -0
- package/dist/orders/build.js.map +1 -0
- package/dist/orders/cast.d.ts +13 -3
- package/dist/orders/cast.js +558 -0
- package/dist/orders/cast.js.map +1 -0
- package/dist/orders/facts.js +16 -0
- package/dist/orders/facts.js.map +1 -0
- package/dist/orders/harvest.d.ts +21 -5
- package/dist/orders/harvest.js +540 -0
- package/dist/orders/harvest.js.map +1 -0
- package/dist/orders/idle.d.ts +3 -1
- package/dist/orders/idle.js +234 -0
- package/dist/orders/idle.js.map +1 -0
- package/dist/orders/items.js +92 -0
- package/dist/orders/items.js.map +1 -0
- package/dist/orders/queue.js +108 -0
- package/dist/orders/queue.js.map +1 -0
- package/dist/orders/waiting.d.ts +39 -0
- package/dist/orders/waiting.js +149 -0
- package/dist/orders/waiting.js.map +1 -0
- package/dist/pack.schema.js +13 -0
- package/dist/pack.schema.js.map +1 -0
- package/dist/pack.schema.json +7622 -841
- package/dist/packs/director/index.d.ts +13 -5
- package/dist/packs/director/index.js +204 -0
- package/dist/packs/director/index.js.map +1 -0
- package/dist/packs/heroes/campaign.d.ts +3 -2
- package/dist/packs/heroes/campaign.js +241 -0
- package/dist/packs/heroes/campaign.js.map +1 -0
- package/dist/packs/heroes/carry.d.ts +6 -0
- package/dist/packs/heroes/carry.js +112 -0
- package/dist/packs/heroes/carry.js.map +1 -0
- package/dist/packs/heroes/commands.js +115 -0
- package/dist/packs/heroes/commands.js.map +1 -0
- package/dist/packs/heroes/fallen.d.ts +43 -0
- package/dist/packs/heroes/fallen.js +61 -0
- package/dist/packs/heroes/fallen.js.map +1 -0
- package/dist/packs/heroes/hire.js +60 -0
- package/dist/packs/heroes/hire.js.map +1 -0
- package/dist/packs/heroes/index.d.ts +7 -6
- package/dist/packs/heroes/index.js +130 -0
- package/dist/packs/heroes/index.js.map +1 -0
- package/dist/packs/heroes/loop.d.ts +95 -0
- package/dist/packs/heroes/loop.js +250 -0
- package/dist/packs/heroes/loop.js.map +1 -0
- package/dist/packs/heroes/making.d.ts +6 -3
- package/dist/packs/heroes/making.js +55 -0
- package/dist/packs/heroes/making.js.map +1 -0
- package/dist/packs/heroes/respawn.d.ts +3 -3
- package/dist/packs/heroes/respawn.js +87 -0
- package/dist/packs/heroes/respawn.js.map +1 -0
- package/dist/packs/heroes/sets.d.ts +32 -0
- package/dist/packs/heroes/sets.js +51 -0
- package/dist/packs/heroes/sets.js.map +1 -0
- package/dist/packs/heroes/spells.d.ts +16 -0
- package/dist/packs/heroes/spells.js +269 -0
- package/dist/packs/heroes/spells.js.map +1 -0
- package/dist/packs/items/defaults.d.ts +43 -0
- package/dist/packs/items/defaults.js +1504 -0
- package/dist/packs/items/defaults.js.map +1 -0
- package/dist/packs/items/index.d.ts +27 -0
- package/dist/packs/items/index.js +214 -0
- package/dist/packs/items/index.js.map +1 -0
- package/dist/packs/moba/index.d.ts +3 -3
- package/dist/packs/moba/index.js +174 -0
- package/dist/packs/moba/index.js.map +1 -0
- package/dist/packs/pack.d.ts +15 -15
- package/dist/packs/pack.js +14 -0
- package/dist/packs/pack.js.map +1 -0
- package/dist/packs.d.ts +15 -7
- package/dist/packs.js +222 -0
- package/dist/packs.js.map +1 -0
- package/dist/paths.d.ts +2 -0
- package/dist/paths.js +109 -0
- package/dist/paths.js.map +1 -0
- package/dist/plain.js +57 -0
- package/dist/plain.js.map +1 -0
- package/dist/player.d.ts +33 -10
- package/dist/player.js +159 -0
- package/dist/player.js.map +1 -0
- package/dist/portals.d.ts +1 -1
- package/dist/portals.js +194 -0
- package/dist/portals.js.map +1 -0
- package/dist/prefabs.d.ts +25 -2
- package/dist/prefabs.js +239 -0
- package/dist/prefabs.js.map +1 -0
- package/dist/presetBuildings.js +58 -0
- package/dist/presetBuildings.js.map +1 -0
- package/dist/presetFoliage.d.ts +27 -0
- package/dist/presetFoliage.js +98 -0
- package/dist/presetFoliage.js.map +1 -0
- package/dist/presetGround.js +65 -0
- package/dist/presetGround.js.map +1 -0
- package/dist/proxies.d.ts +12 -0
- package/dist/proxies.js +79 -0
- package/dist/proxies.js.map +1 -0
- package/dist/query.d.ts +56 -0
- package/dist/query.js +88 -0
- package/dist/query.js.map +1 -0
- package/dist/races.d.ts +15 -14
- package/dist/races.js +172 -0
- package/dist/races.js.map +1 -0
- package/dist/randomGroups.js +91 -0
- package/dist/randomGroups.js.map +1 -0
- package/dist/registry.d.ts +117 -53
- package/dist/registry.js +323 -0
- package/dist/registry.js.map +1 -0
- package/dist/remains.d.ts +11 -9
- package/dist/remains.js +188 -0
- package/dist/remains.js.map +1 -0
- package/dist/replication.d.ts +12 -7
- package/dist/replication.js +100 -0
- package/dist/replication.js.map +1 -0
- package/dist/rng.d.ts +2 -0
- package/dist/rng.js +40 -0
- package/dist/rng.js.map +1 -0
- package/dist/rules.d.ts +186 -99
- package/dist/rules.js +179 -0
- package/dist/rules.js.map +1 -0
- package/dist/rulesCheck.d.ts +5 -4
- package/dist/rulesCheck.js +693 -0
- package/dist/rulesCheck.js.map +1 -0
- package/dist/runes.d.ts +2 -2
- package/dist/runes.js +80 -0
- package/dist/runes.js.map +1 -0
- package/dist/save.d.ts +37 -12
- package/dist/save.js +532 -0
- package/dist/save.js.map +1 -0
- package/dist/scenario.d.ts +2 -2
- package/dist/scenario.js +99 -0
- package/dist/scenario.js.map +1 -0
- package/dist/scheduler.d.ts +3 -0
- package/dist/scheduler.js +156 -0
- package/dist/scheduler.js.map +1 -0
- package/dist/score.d.ts +19 -19
- package/dist/score.js +709 -0
- package/dist/score.js.map +1 -0
- package/dist/sequences.d.ts +10 -6
- package/dist/sequences.js +206 -0
- package/dist/sequences.js.map +1 -0
- package/dist/server/doorman.js +154 -0
- package/dist/server/doorman.js.map +1 -0
- package/dist/server/gameServer.d.ts +16 -1
- package/dist/server/gameServer.js +643 -0
- package/dist/server/gameServer.js.map +1 -0
- package/dist/server/index.d.ts +1 -1
- package/dist/server/lobby.js +199 -0
- package/dist/server/lobby.js.map +1 -0
- package/dist/server/log.js +18 -0
- package/dist/server/log.js.map +1 -0
- package/dist/server/match.js +267 -0
- package/dist/server/match.js.map +1 -0
- package/dist/server/mode.d.ts +18 -9
- package/dist/server/mode.js +220 -0
- package/dist/server/mode.js.map +1 -0
- package/dist/{navigation-worker.js → server/navigation-worker.js} +1 -1
- package/dist/server/navigation-worker.js.map +1 -0
- package/dist/server/navigation.js +39 -0
- package/dist/server/navigation.js.map +1 -0
- package/dist/server/ops.d.ts +4 -0
- package/dist/server/ops.js +137 -0
- package/dist/server/ops.js.map +1 -0
- package/dist/server/packs.d.ts +3 -3
- package/dist/server/packs.js +32 -0
- package/dist/server/packs.js.map +1 -0
- package/dist/server/ratings.d.ts +5 -0
- package/dist/server/ratings.js +104 -0
- package/dist/server/ratings.js.map +1 -0
- package/dist/server/relay.d.ts +12 -2
- package/dist/server/relay.js +144 -0
- package/dist/server/relay.js.map +1 -0
- package/dist/server/rooms.d.ts +9 -2
- package/dist/server/rooms.js +442 -0
- package/dist/server/rooms.js.map +1 -0
- package/dist/server/seat.js +116 -0
- package/dist/server/seat.js.map +1 -0
- package/dist/server/seatSettings.d.ts +3 -3
- package/dist/server/seatSettings.js +63 -0
- package/dist/server/seatSettings.js.map +1 -0
- package/dist/server/secret.js +13 -0
- package/dist/server/secret.js.map +1 -0
- package/dist/server/start.d.ts +13 -6
- package/dist/server/start.js +76 -0
- package/dist/server/start.js.map +1 -0
- package/dist/server/websocket.d.ts +9 -1
- package/dist/server/websocket.js +306 -0
- package/dist/server/websocket.js.map +1 -0
- package/dist/server.js +15 -2861
- package/dist/session/can.js +26 -0
- package/dist/session/can.js.map +1 -0
- package/dist/session/commandReplay.d.ts +8 -2
- package/dist/session/commandReplay.js +293 -0
- package/dist/session/commandReplay.js.map +1 -0
- package/dist/session/debug.js +151 -0
- package/dist/session/debug.js.map +1 -0
- package/dist/session/delay.js +62 -0
- package/dist/session/delay.js.map +1 -0
- package/dist/session/delta.d.ts +14 -1
- package/dist/session/delta.js +407 -0
- package/dist/session/delta.js.map +1 -0
- package/dist/session/entityState.js +415 -0
- package/dist/session/entityState.js.map +1 -0
- package/dist/session/local.d.ts +47 -5
- package/dist/session/local.js +670 -0
- package/dist/session/local.js.map +1 -0
- package/dist/session/memory.d.ts +20 -2
- package/dist/session/memory.js +131 -0
- package/dist/session/memory.js.map +1 -0
- package/dist/session/protocol.d.ts +325 -31
- package/dist/session/protocol.js +55 -0
- package/dist/session/protocol.js.map +1 -0
- package/dist/session/remote.d.ts +74 -12
- package/dist/session/remote.js +1394 -0
- package/dist/session/remote.js.map +1 -0
- package/dist/session/replay.d.ts +11 -2
- package/dist/session/replay.js +160 -0
- package/dist/session/replay.js.map +1 -0
- package/dist/session/seed.js +12 -0
- package/dist/session/seed.js.map +1 -0
- package/dist/session/share.d.ts +5 -1
- package/dist/session/share.js +94 -0
- package/dist/session/share.js.map +1 -0
- package/dist/session/socket.d.ts +1 -1
- package/dist/session/socket.js +29 -0
- package/dist/session/socket.js.map +1 -0
- package/dist/session/wire.d.ts +5 -0
- package/dist/session/wire.js +84 -0
- package/dist/session/wire.js.map +1 -0
- package/dist/session/worker.d.ts +77 -12
- package/dist/session/worker.js +499 -0
- package/dist/session/worker.js.map +1 -0
- package/dist/shared.d.ts +31 -5
- package/dist/shared.js +166 -0
- package/dist/shared.js.map +1 -0
- package/dist/sides.d.ts +9 -3
- package/dist/sides.js +149 -0
- package/dist/sides.js.map +1 -0
- package/dist/sight.js +85 -0
- package/dist/sight.js.map +1 -0
- package/dist/simulate-worker.js +1 -1
- package/dist/simulate.d.ts +12 -8
- package/dist/{simulate-oXBiw1Ff.js → simulate.js} +10 -11
- package/dist/simulate.js.map +1 -0
- package/dist/smart.js +77 -0
- package/dist/smart.js.map +1 -0
- package/dist/spatial.d.ts +32 -16
- package/dist/spatial.js +234 -0
- package/dist/spatial.js.map +1 -0
- package/dist/spawning.d.ts +1 -0
- package/dist/spawning.js +224 -0
- package/dist/spawning.js.map +1 -0
- package/dist/stances.d.ts +6 -3
- package/dist/stances.js +169 -0
- package/dist/stances.js.map +1 -0
- package/dist/start.d.ts +10 -10
- package/dist/start.js +75 -0
- package/dist/start.js.map +1 -0
- package/dist/stats.d.ts +42 -16
- package/dist/stats.js +290 -0
- package/dist/stats.js.map +1 -0
- package/dist/summoned.d.ts +52 -0
- package/dist/summoned.js +38 -0
- package/dist/summoned.js.map +1 -0
- package/dist/summons.d.ts +10 -13
- package/dist/summons.js +271 -0
- package/dist/summons.js.map +1 -0
- package/dist/systems/abilities.js +224 -0
- package/dist/systems/abilities.js.map +1 -0
- package/dist/systems/combat.d.ts +35 -1
- package/dist/systems/combat.js +677 -0
- package/dist/systems/combat.js.map +1 -0
- package/dist/systems/combatTold.d.ts +3 -1
- package/dist/systems/combatTold.js +85 -0
- package/dist/systems/combatTold.js.map +1 -0
- package/dist/systems/construction.js +80 -0
- package/dist/systems/construction.js.map +1 -0
- package/dist/systems/economy.d.ts +0 -6
- package/dist/systems/economy.js +128 -0
- package/dist/systems/economy.js.map +1 -0
- package/dist/systems/fog.d.ts +1 -1
- package/dist/systems/fog.js +120 -0
- package/dist/systems/fog.js.map +1 -0
- package/dist/systems/life.js +32 -0
- package/dist/systems/life.js.map +1 -0
- package/dist/systems/movement.d.ts +24 -12
- package/dist/systems/movement.js +1247 -0
- package/dist/systems/movement.js.map +1 -0
- package/dist/systems/orders.js +64 -0
- package/dist/systems/orders.js.map +1 -0
- package/dist/systems/production.js +322 -0
- package/dist/systems/production.js.map +1 -0
- package/dist/systems/productionQueue.js +120 -0
- package/dist/systems/productionQueue.js.map +1 -0
- package/dist/systems/victory.d.ts +1 -1
- package/dist/systems/victory.js +56 -0
- package/dist/systems/victory.js.map +1 -0
- package/dist/talk.d.ts +6 -6
- package/dist/talk.js +153 -0
- package/dist/talk.js.map +1 -0
- package/dist/targeting.d.ts +142 -0
- package/dist/targeting.js +49 -0
- package/dist/targeting.js.map +1 -0
- package/dist/tech.d.ts +20 -3
- package/dist/tech.js +239 -0
- package/dist/tech.js.map +1 -0
- package/dist/techTree.d.ts +7 -0
- package/dist/techTree.js +90 -0
- package/dist/techTree.js.map +1 -0
- package/dist/terrain.d.ts +59 -7
- package/dist/terrain.js +389 -0
- package/dist/terrain.js.map +1 -0
- package/dist/terrainSave.d.ts +6 -0
- package/dist/terrainSave.js +74 -0
- package/dist/terrainSave.js.map +1 -0
- package/dist/testing.d.ts +8 -7
- package/dist/testing.js +13 -739
- package/dist/testing.js.map +1 -1
- package/dist/tiles.d.ts +1 -1
- package/dist/tiles.js +43 -0
- package/dist/tiles.js.map +1 -0
- package/dist/timers.d.ts +29 -4
- package/dist/timers.js +242 -0
- package/dist/timers.js.map +1 -0
- package/dist/tomes.d.ts +4 -4
- package/dist/tomes.js +94 -0
- package/dist/tomes.js.map +1 -0
- package/dist/trade.js +103 -0
- package/dist/trade.js.map +1 -0
- package/dist/transport.d.ts +6 -1
- package/dist/transport.js +281 -0
- package/dist/transport.js.map +1 -0
- package/dist/tunables.d.ts +10 -3
- package/dist/tunables.js +56 -0
- package/dist/tunables.js.map +1 -0
- package/dist/unitResources.d.ts +67 -0
- package/dist/unitResources.js +266 -0
- package/dist/unitResources.js.map +1 -0
- package/dist/upkeep.d.ts +6 -1
- package/dist/upkeep.js +26 -0
- package/dist/upkeep.js.map +1 -0
- package/dist/veterancy.d.ts +8 -3
- package/dist/veterancy.js +131 -0
- package/dist/veterancy.js.map +1 -0
- package/dist/vision.d.ts +36 -0
- package/dist/vision.js +133 -0
- package/dist/vision.js.map +1 -0
- package/dist/walls.d.ts +1 -1
- package/dist/walls.js +278 -0
- package/dist/walls.js.map +1 -0
- package/dist/world.d.ts +606 -88
- package/dist/world.js +1263 -0
- package/dist/world.js.map +1 -0
- package/package.json +2 -2
- package/dist/ai.js.map +0 -1
- package/dist/attributes.d.ts +0 -66
- package/dist/brain-BvVdUhX8.js +0 -7659
- package/dist/brain-BvVdUhX8.js.map +0 -1
- package/dist/builds-C6LfgvEU.js +0 -460
- package/dist/builds-C6LfgvEU.js.map +0 -1
- package/dist/coreComponents-syuh2fPG.js +0 -5149
- package/dist/coreComponents-syuh2fPG.js.map +0 -1
- package/dist/debugCommands-CzjrSm66.js +0 -14739
- package/dist/debugCommands-CzjrSm66.js.map +0 -1
- package/dist/determinism-BCymQwiE.js +0 -518
- package/dist/determinism-BCymQwiE.js.map +0 -1
- package/dist/game-DiJEN-Ks.js +0 -5800
- package/dist/game-DiJEN-Ks.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/inspect-D9dWHmZ0.js.map +0 -1
- package/dist/local-Dkovq42k.js +0 -1379
- package/dist/local-Dkovq42k.js.map +0 -1
- package/dist/missionRules-C-bGxm0Q.js.map +0 -1
- package/dist/navigation-worker.js.map +0 -1
- package/dist/packs-g5thvmGn.js +0 -3199
- package/dist/packs-g5thvmGn.js.map +0 -1
- package/dist/profiles-B3NS9jwk.js.map +0 -1
- package/dist/server.js.map +0 -1
- package/dist/simulate-oXBiw1Ff.js.map +0 -1
package/dist/game.d.ts
CHANGED
|
@@ -1,34 +1,36 @@
|
|
|
1
1
|
import type { CellLayerDef } from './cellLayers';
|
|
2
2
|
import type { GameFileDef } from './gameFiles';
|
|
3
|
-
import { type ReplicatedEvent, type
|
|
3
|
+
import { type ReplicatedEvent, type SnapshotField } from './replication';
|
|
4
4
|
import type { PrefabDef } from './prefabs';
|
|
5
5
|
import type { MapGenerator } from './generate';
|
|
6
6
|
import type { ErrorPolicy } from './errors';
|
|
7
7
|
import type { Logger, LogLevel } from './log';
|
|
8
8
|
import type { Component } from './components';
|
|
9
9
|
import type { EventKey } from './events';
|
|
10
|
-
import type {
|
|
10
|
+
import type { EffectType } from './abilities/effects';
|
|
11
|
+
import type { Targeting } from './targeting';
|
|
11
12
|
import { type FormationDef } from './formation';
|
|
12
13
|
import { type CommandDef } from './commands';
|
|
13
14
|
import { type TunableDef } from './tunables';
|
|
14
15
|
import type { EditableData } from './gameData';
|
|
15
16
|
import type { HookDef } from './hooks';
|
|
16
17
|
import { type RaceDef } from './races';
|
|
17
|
-
import { type
|
|
18
|
-
import { type AbilityDef, type BuffDef, type DayCycle, type ItemDef, type ResourceDef, type
|
|
18
|
+
import { type StartingBase } from './start';
|
|
19
|
+
import { type AbilityDef, type BuffDef, type DayCycle, type ItemDef, type ResourceDef, type ResourceId, type StatDef, type TagDef, type UnitTypeDef, type UpgradeDef, type UpkeepTier } from './defs';
|
|
20
|
+
import type { ChosenDefaults } from './defaultSets';
|
|
19
21
|
import { type RecastNavigationOptions } from './navigation/recast';
|
|
20
22
|
import type { PlayerId } from './entity';
|
|
21
23
|
import type { BrainDef } from './ai/brain';
|
|
22
24
|
import type { GameAi } from './ai/profiles';
|
|
23
25
|
import type { GamePack } from './packs/pack';
|
|
24
|
-
import type {
|
|
26
|
+
import type { StatField } from './stats';
|
|
25
27
|
import type { MapProblem } from './mapFields';
|
|
26
28
|
import { type MapEditorDef } from './mapFields';
|
|
27
29
|
import { type TileDef } from './tiles';
|
|
28
30
|
import { type GameMap } from './map';
|
|
29
31
|
import type { PlayerInit } from './player';
|
|
30
32
|
import { type OrderBehavior, Registry, type System, type SystemDef } from './registry';
|
|
31
|
-
import { type
|
|
33
|
+
import { type RuleSettingsInit } from './rules';
|
|
32
34
|
import type { Terrain } from './terrain';
|
|
33
35
|
import { type SaveRules, type WorldSave } from './save';
|
|
34
36
|
import { World, type WorldChecks } from './world';
|
|
@@ -38,7 +40,7 @@ import { type TimerDef } from './timers';
|
|
|
38
40
|
import type { ListenerDef } from './events';
|
|
39
41
|
/**
|
|
40
42
|
* The systems the engine brings along, by phase: decisions first, then movement, then everything that reacts to where
|
|
41
|
-
* units ended up. Within a phase, in this order. A module can do without any of them by name (`
|
|
43
|
+
* units ended up. Within a phase, in this order. A module can do without any of them by name (`Rules.withoutSystems`),
|
|
42
44
|
* or put its own in place of one by giving a system the same name
|
|
43
45
|
*
|
|
44
46
|
* @beta
|
|
@@ -48,10 +50,12 @@ export declare const coreSystems: readonly System[];
|
|
|
48
50
|
* A game module is the data and rules of one kind of game. The engine knows nothing
|
|
49
51
|
* about peasants or town halls, it gets all of that from here.
|
|
50
52
|
*
|
|
51
|
-
* @
|
|
53
|
+
* @public
|
|
52
54
|
*/
|
|
53
|
-
export interface
|
|
55
|
+
export interface Rules {
|
|
56
|
+
/** The game's id, which a save and a server know it by */
|
|
54
57
|
id: string;
|
|
58
|
+
/** What the player sees the game called */
|
|
55
59
|
name: string;
|
|
56
60
|
/** `major.minor.patch`, for mods to say which versions of the game they work with. 1.0.0 when left out */
|
|
57
61
|
version?: string;
|
|
@@ -66,38 +70,63 @@ export interface GameModule {
|
|
|
66
70
|
* (`MAX_MAP_PLAYERS`). A map with more is refused, saying so, not cut
|
|
67
71
|
*/
|
|
68
72
|
maxPlayers?: number;
|
|
73
|
+
/** The unit types of the game */
|
|
69
74
|
units: UnitTypeDef[];
|
|
70
75
|
/**
|
|
71
76
|
* The sides players can play, each with its own roster (`UnitTypeDef.race`): none when left out, and with that no
|
|
72
77
|
* race anywhere. The first is what a player plays when nobody chose
|
|
73
78
|
*/
|
|
74
79
|
races?: RaceDef[];
|
|
80
|
+
/** The upgrades of the game; none when left out */
|
|
75
81
|
upgrades?: UpgradeDef[];
|
|
82
|
+
/** The abilities of the game; none when left out */
|
|
76
83
|
abilities?: AbilityDef[];
|
|
84
|
+
/** The buffs of the game; none when left out */
|
|
77
85
|
buffs?: BuffDef[];
|
|
86
|
+
/** The items of the game; none when left out */
|
|
78
87
|
items?: ItemDef[];
|
|
88
|
+
/**
|
|
89
|
+
* The tags of its items named and given a look, and which of them a shop filters by (`TagDef`). A tag no
|
|
90
|
+
* definition names still works, shown as its word. None when left out
|
|
91
|
+
*
|
|
92
|
+
* @beta
|
|
93
|
+
*/
|
|
94
|
+
tags?: TagDef[];
|
|
95
|
+
/**
|
|
96
|
+
* The default sets the game took (`useDefaults`), what it chose of each, and how to choose again (what a
|
|
97
|
+
* `data.json`'s `defaults` does). Set by `useDefaults`, never by hand
|
|
98
|
+
*
|
|
99
|
+
* @beta
|
|
100
|
+
*/
|
|
101
|
+
defaults?: ChosenDefaults;
|
|
79
102
|
/** What players have amounts of and pay with, in the order they are shown. None when left out */
|
|
80
103
|
resources?: ResourceDef[];
|
|
81
104
|
/** The resource prices, bounties, revives and sales are in. The first resource when left out */
|
|
82
|
-
currency?:
|
|
105
|
+
currency?: ResourceId;
|
|
106
|
+
/** The tiers of upkeep, by supply used; none when left out */
|
|
83
107
|
upkeep?: UpkeepTier[];
|
|
84
108
|
/** Stats of the game's own, next to the engine's (`CoreStats`). Units, buffs, items and upgrades change them, and abilities scale with them, like any other */
|
|
85
109
|
stats?: StatDef[];
|
|
86
110
|
/** Day and night. Always day when left out */
|
|
87
111
|
day?: DayCycle;
|
|
88
112
|
/** The numbers of the game that are not about any one unit, like the supply cap. The engine's for those left out */
|
|
89
|
-
|
|
113
|
+
settings?: RuleSettingsInit;
|
|
90
114
|
/**
|
|
91
115
|
* Kinds of effects abilities can have, next to the ones the engine knows (`defineEffect`): one of a type the engine has
|
|
92
116
|
* takes its place
|
|
93
117
|
*/
|
|
94
|
-
effects?:
|
|
118
|
+
effects?: EffectType[];
|
|
119
|
+
/**
|
|
120
|
+
* Ways of aiming an ability of the game's own (`defineTargeting`), next to the engine's (`AimKind`): named by an
|
|
121
|
+
* ability's `target`
|
|
122
|
+
*/
|
|
123
|
+
targetings?: Targeting[];
|
|
95
124
|
/** Extra order types, or replacements for the core ones */
|
|
96
125
|
orders?: OrderBehavior[];
|
|
97
126
|
/**
|
|
98
127
|
* Formations of its own for units ordered to a point together (`FormationDef`), next to the engine's `rows`,
|
|
99
128
|
* `circle`, `square` and `none`, or in place of one of the same id. Which an order takes is the order's to say
|
|
100
|
-
* (`OrderInit.formation`), and the rules' where it does not (`
|
|
129
|
+
* (`OrderInit.formation`), and the rules' where it does not (`RuleSettings.movement.formation`)
|
|
101
130
|
*/
|
|
102
131
|
formations?: FormationDef[];
|
|
103
132
|
/** Commands of the game's own, made with `defineCommand`, or replacements for the core ones */
|
|
@@ -107,7 +136,7 @@ export interface GameModule {
|
|
|
107
136
|
/** Types of the engine's own orders, or a pack's, the module does without: a unit is then never given one @beta */
|
|
108
137
|
withoutOrders?: string[];
|
|
109
138
|
/**
|
|
110
|
-
* The parts of the rules the game opts into, with what they bring (`GamePack`): `[
|
|
139
|
+
* The parts of the rules the game opts into, with what they bring (`GamePack`): `[heroesPack()]` for heroes, camps
|
|
111
140
|
* and shops. None when left out. The game's own commands, orders, systems and hooks come after a pack's, and one of
|
|
112
141
|
* the same id takes its place
|
|
113
142
|
*
|
|
@@ -168,8 +197,8 @@ export interface GameModule {
|
|
|
168
197
|
onReload?: (world: World) => void;
|
|
169
198
|
/** What the game does on a server, around its games: who joins and leaves, the start and the end (see `ServerHooks`) */
|
|
170
199
|
server?: ServerHooks;
|
|
171
|
-
/** What a player starts a map with, for players the map places nothing for: a hall and workers as data, or a function (`
|
|
172
|
-
|
|
200
|
+
/** What a player starts a map with, for players the map places nothing for: a hall and workers as data, or a function (`StartingBase`) */
|
|
201
|
+
startingBase?: StartingBase;
|
|
173
202
|
/**
|
|
174
203
|
* The brains of its computer players (`defineBrain`), given here as components and timers are, so that a save that
|
|
175
204
|
* remembers a seat by its brain's id (`world.computers.seat`) finds the brain again when loaded. The first is what a
|
|
@@ -211,14 +240,15 @@ export interface GameModule {
|
|
|
211
240
|
* Which fields of its definitions the editor's Data panel may change (S61): `all`, or by kind (`units`,
|
|
212
241
|
* `abilities`, `buffs`, `items`, `upgrades`) all of them, some (their paths, `stats.health`, or fields said in full,
|
|
213
242
|
* with bounds and a kind), or each definition's own in code. None when left out. What is changed there is kept in
|
|
214
|
-
* the game's `data.json`, which the game reads over its code with `
|
|
243
|
+
* the game's `data.json`, which the game reads over its code with `layData`
|
|
215
244
|
*/
|
|
216
245
|
editable?: EditableData;
|
|
217
246
|
/**
|
|
218
247
|
* How its worlds find their way: the radius the walkable ground is cut for, how steep it may be, how many units the
|
|
219
|
-
* crowd makes room for at first (`maxAgents`)
|
|
248
|
+
* crowd makes room for at first (`maxAgents`), the sizes it is cut for (`radii`: `'auto'` unless said, a navigation for
|
|
249
|
+
* each size of ground unit the game has). What a world is made with (`CreateWorldOptions.navigation`) goes over it
|
|
220
250
|
*/
|
|
221
|
-
navigation?:
|
|
251
|
+
navigation?: GameNavigationOptions;
|
|
222
252
|
/**
|
|
223
253
|
* What a route of a ground unit knows of the buildings in its way (determinism plan F2): `all` of them (the default),
|
|
224
254
|
* as the ground is; or only those its side has `seen`, so the way it goes in the dark says nothing of what is there.
|
|
@@ -257,8 +287,11 @@ export interface GameModule {
|
|
|
257
287
|
* @beta
|
|
258
288
|
*/
|
|
259
289
|
export interface ServerSeat {
|
|
290
|
+
/** The player the seat is for */
|
|
260
291
|
player: PlayerId;
|
|
292
|
+
/** The name shown for who sits there */
|
|
261
293
|
name: string;
|
|
294
|
+
/** Whether a computer player plays the seat */
|
|
262
295
|
ai: boolean;
|
|
263
296
|
/** Whether someone is connected to it right now */
|
|
264
297
|
connected: boolean;
|
|
@@ -272,6 +305,7 @@ export interface ServerSeat {
|
|
|
272
305
|
fixed?: string[];
|
|
273
306
|
/** Who sits there, as they are rated (`ratedId`: a hash of their key, safe to show), and their rating in the mode where the server keeps ratings */
|
|
274
307
|
rated?: string;
|
|
308
|
+
/** The rating of who sits there in the mode, where the server keeps ratings */
|
|
275
309
|
rating?: number;
|
|
276
310
|
/** A vote to let who sits there go (`kick`), in the lobby: how many voted, and how many it takes */
|
|
277
311
|
kick?: {
|
|
@@ -285,7 +319,9 @@ export interface ServerSeat {
|
|
|
285
319
|
* @beta
|
|
286
320
|
*/
|
|
287
321
|
export interface GameResult {
|
|
322
|
+
/** The id of the game that was played */
|
|
288
323
|
game: string;
|
|
324
|
+
/** The id of the mode it was played in */
|
|
289
325
|
mode: string;
|
|
290
326
|
/** The winning team, or null for a game that was stopped */
|
|
291
327
|
winner: number | null;
|
|
@@ -293,12 +329,13 @@ export interface GameResult {
|
|
|
293
329
|
duration: number;
|
|
294
330
|
/** What the players were told, for a game that ended on an error and not by its rules (`World.failure`) */
|
|
295
331
|
failed?: string;
|
|
332
|
+
/** Every seat with how it ended for it */
|
|
296
333
|
seats: (ServerSeat & {
|
|
297
334
|
outcome: 'victory' | 'defeat' | 'none';
|
|
298
335
|
})[];
|
|
299
336
|
}
|
|
300
337
|
/**
|
|
301
|
-
* What a game does on a server (`
|
|
338
|
+
* What a game does on a server (`Rules.server`). Only ever run there: a player's screen has none of it. The
|
|
302
339
|
* lobby's settings come to `onGameStart` as the lobby left them
|
|
303
340
|
*
|
|
304
341
|
* @beta
|
|
@@ -329,6 +366,7 @@ export interface ServerHooks {
|
|
|
329
366
|
* @beta
|
|
330
367
|
*/
|
|
331
368
|
export interface LobbySetting {
|
|
369
|
+
/** What the setting is called in the lobby */
|
|
332
370
|
label: string;
|
|
333
371
|
/** What can be chosen, as it is kept */
|
|
334
372
|
options: string[];
|
|
@@ -339,13 +377,21 @@ export interface LobbySetting {
|
|
|
339
377
|
/** Of a seat: no two seats may hold the same (a colour). One held by another seat is not chosen */
|
|
340
378
|
unique?: boolean;
|
|
341
379
|
}
|
|
342
|
-
/**
|
|
380
|
+
/**
|
|
381
|
+
* What a new world is made from: terrain, rules, players, seed and navigation
|
|
382
|
+
*
|
|
383
|
+
* @beta
|
|
384
|
+
*/
|
|
343
385
|
export interface CreateWorldOptions extends WorldChecks {
|
|
386
|
+
/** The terrain the world stands on */
|
|
344
387
|
terrain: Terrain;
|
|
345
|
-
game
|
|
388
|
+
/** The game's rules the world runs */
|
|
389
|
+
rules: Rules;
|
|
390
|
+
/** The players of the world, in order */
|
|
346
391
|
players: PlayerInit[];
|
|
347
392
|
/** The races one is drawn from for a player given `random` (`PlayerInit.race`): all of the game's when left out */
|
|
348
393
|
randomRaces?: readonly string[];
|
|
394
|
+
/** Seed of the world's random numbers: the same seed gives the same game; 1 when left out */
|
|
349
395
|
seed?: number;
|
|
350
396
|
/**
|
|
351
397
|
* Simulation steps per second: 30 when left out. A save made at another rate is refused (`loadWorld`), so a game
|
|
@@ -354,16 +400,17 @@ export interface CreateWorldOptions extends WorldChecks {
|
|
|
354
400
|
* @beta
|
|
355
401
|
*/
|
|
356
402
|
tickRate?: number;
|
|
357
|
-
navigation
|
|
403
|
+
/** Options for how the world's units find their way, over the game's (`Rules.navigation`) */
|
|
404
|
+
navigation?: GameNavigationOptions;
|
|
358
405
|
/**
|
|
359
|
-
* Components the app keeps in the world beside the game's own (`
|
|
406
|
+
* Components the app keeps in the world beside the game's own (`Rules.components`): what is the app's, not
|
|
360
407
|
* the game's rules (where the screen is played from, a tool's own; `Component.portable` false). Its game's and the
|
|
361
408
|
* engine's when left out: one neither lists is an error (`UnlistedError`)
|
|
362
409
|
*/
|
|
363
410
|
components?: readonly Component<unknown, unknown>[];
|
|
364
411
|
/** The logger the world's own is made under (`world.log`): a server's, a page's. The root one when left out */
|
|
365
412
|
log?: Logger;
|
|
366
|
-
/** What becomes of a part of the game that throws, where the game does not say (`
|
|
413
|
+
/** What becomes of a part of the game that throws, where the game does not say (`Rules.onError`) */
|
|
367
414
|
onError?: ErrorPolicy;
|
|
368
415
|
}
|
|
369
416
|
/**
|
|
@@ -375,29 +422,36 @@ export interface CreateWorldOptions extends WorldChecks {
|
|
|
375
422
|
* @beta
|
|
376
423
|
*/
|
|
377
424
|
export interface AssembledGame {
|
|
378
|
-
|
|
425
|
+
/** The game the assembly is made of */
|
|
426
|
+
readonly rules: Rules;
|
|
379
427
|
/** The packs' commands and the game's */
|
|
380
428
|
readonly commands: readonly CommandDef[];
|
|
381
429
|
/** The packs' orders and the game's */
|
|
382
430
|
readonly orders: readonly OrderBehavior[];
|
|
383
431
|
/** The packs' systems, as given (made for each world, and left out by name then: `withoutSystems`) */
|
|
384
432
|
readonly packSystems: readonly SystemDef[];
|
|
433
|
+
/** The hooks of the packs and the game */
|
|
385
434
|
readonly hooks: readonly HookDef[];
|
|
435
|
+
/** The listeners of the packs and the game */
|
|
386
436
|
readonly listeners: readonly ListenerDef[];
|
|
387
437
|
/** The packs' kinds of effects (`GamePack.effects`), before the game's own */
|
|
388
|
-
readonly effects: readonly
|
|
438
|
+
readonly effects: readonly EffectType[];
|
|
439
|
+
/** The timers of the packs and the game */
|
|
389
440
|
readonly timers: readonly TimerDef[];
|
|
441
|
+
/** The components of the engine, packs and game */
|
|
390
442
|
readonly components: readonly Component<unknown, unknown>[];
|
|
443
|
+
/** The events of the packs and the game */
|
|
391
444
|
readonly events: readonly EventKey<unknown>[];
|
|
392
|
-
|
|
393
|
-
|
|
445
|
+
/** The fields of stats the packs and the game add */
|
|
446
|
+
readonly statFields: readonly StatField[];
|
|
447
|
+
/** The stats of the game: its packs' (`GamePack.stats`), then its own (`Rules.stats`) */
|
|
394
448
|
readonly stats: readonly StatDef[];
|
|
395
449
|
/** The packs' ways of telling the players of the world's events (`GamePack.replications`) */
|
|
396
450
|
readonly replications: readonly ReplicatedEvent[];
|
|
397
|
-
/** The packs' parts of the players' snapshots (`GamePack.
|
|
398
|
-
readonly
|
|
451
|
+
/** The packs' parts of the players' snapshots (`GamePack.snapshotFields`) */
|
|
452
|
+
readonly snapshotFields: readonly SnapshotField[];
|
|
399
453
|
/** The game's rules with what each pack lays over them, in order */
|
|
400
|
-
readonly
|
|
454
|
+
readonly settings: RuleSettingsInit;
|
|
401
455
|
/** The game's report of a player at the end, with each pack's beside it: none where none says */
|
|
402
456
|
readonly report: ((world: World, player: PlayerId) => Record<string, unknown>) | null;
|
|
403
457
|
/** How it is won: the game's own where it says, else the last pack's that says, else the engine's (`lastTeamStanding`) */
|
|
@@ -411,15 +465,45 @@ export interface AssembledGame {
|
|
|
411
465
|
*
|
|
412
466
|
* @beta
|
|
413
467
|
*/
|
|
414
|
-
export declare function assembleGame(game:
|
|
468
|
+
export declare function assembleGame(game: Rules): AssembledGame;
|
|
415
469
|
/**
|
|
416
470
|
* Everything a game module defines, looked up by id: with the engine's own components, and those an app keeps in its
|
|
417
471
|
* worlds (`own`: `CreateWorldOptions.components`)
|
|
418
472
|
*
|
|
473
|
+
* @public
|
|
474
|
+
*/
|
|
475
|
+
export declare function createRegistry(game: Rules, own?: readonly Component<unknown, unknown>[]): Registry;
|
|
476
|
+
/**
|
|
477
|
+
* How a game's worlds find their way (`Rules.navigation`): `RecastNavigationOptions`, with `radii` also `'auto'`
|
|
478
|
+
* (the default) or `false`
|
|
479
|
+
*
|
|
419
480
|
* @beta
|
|
420
481
|
*/
|
|
421
|
-
export
|
|
422
|
-
/**
|
|
482
|
+
export type GameNavigationOptions = Omit<RecastNavigationOptions, 'radii'> & {
|
|
483
|
+
/**
|
|
484
|
+
* The sizes the ground is cut for. `'auto'` (when left out): the ground units' radii in three groups, up to 0.5, up
|
|
485
|
+
* to 0.75 and over, a navigation for each group the game has a unit type in (the first cut for 0.5 at least, the
|
|
486
|
+
* others for their group's largest radius), so an ogre keeps from walls as far as it needs where a footman still
|
|
487
|
+
* fits through a gap. `false`: one navigation cut for `agentRadius` (0.5), as it was. A list: a navigation for
|
|
488
|
+
* each size, a unit on the one for the biggest size it is not smaller than. Each size has its own crowd (see
|
|
489
|
+
* `SizedNavigation`)
|
|
490
|
+
*/
|
|
491
|
+
radii?: number[] | 'auto' | false;
|
|
492
|
+
};
|
|
493
|
+
/**
|
|
494
|
+
* The sizes the ground units of a game are cut for (`radii: 'auto'`): their radii in groups (up to 0.5, up to 0.75,
|
|
495
|
+
* over), each cut for its largest radius (the first for 0.5 at least), a group only where a unit type falls in it. Each
|
|
496
|
+
* with the radius of the biggest unit it takes, `upTo`. What flies or sails has navigation of its own
|
|
497
|
+
*/
|
|
498
|
+
export declare function autoNavigationSizes(registry: Registry): {
|
|
499
|
+
radius: number;
|
|
500
|
+
upTo: number;
|
|
501
|
+
}[];
|
|
502
|
+
/**
|
|
503
|
+
* Makes a world from terrain, rules and players; resolves once it is ready to step
|
|
504
|
+
*
|
|
505
|
+
* @public
|
|
506
|
+
*/
|
|
423
507
|
export declare function createWorld(options: CreateWorldOptions): Promise<World>;
|
|
424
508
|
/**
|
|
425
509
|
* The engine's hook handlers without the ones the module does without, then the module's own
|
|
@@ -428,25 +512,26 @@ export declare function createWorld(options: CreateWorldOptions): Promise<World>
|
|
|
428
512
|
*/
|
|
429
513
|
export interface LoadWorldOptions extends WorldChecks {
|
|
430
514
|
/** The game module the save was made with, by id. A save holds no code: rules come from here */
|
|
431
|
-
|
|
515
|
+
rules: Rules;
|
|
432
516
|
/**
|
|
433
517
|
* The map it is loaded on (a scene that opens its map again): its definitions are laid over the game's in place
|
|
434
518
|
* of those the save kept (`GameMap.definitions`). The save's own when left out
|
|
435
519
|
*/
|
|
436
520
|
map?: Pick<GameMap, 'definitions'>;
|
|
437
|
-
navigation
|
|
521
|
+
/** Options for how the world's units find their way, over the game's (`Rules.navigation`) */
|
|
522
|
+
navigation?: GameNavigationOptions;
|
|
438
523
|
/** Components the app keeps in the world beside the game's own, as `CreateWorldOptions.components`: those of the world saved */
|
|
439
524
|
components?: readonly Component<unknown, unknown>[];
|
|
440
525
|
/**
|
|
441
526
|
* Loads a save made with other rules of the game (its code or its mods changed since) whatever the game says of
|
|
442
|
-
* those (`
|
|
527
|
+
* those (`Rules.saves.onMismatch`). An older version of its saves is brought up to date all the same
|
|
443
528
|
*/
|
|
444
529
|
anyVersion?: boolean;
|
|
445
530
|
/** The logger the world's own is made under, as `CreateWorldOptions.log` */
|
|
446
531
|
log?: Logger;
|
|
447
532
|
/** What becomes of a part of the game that throws, as `CreateWorldOptions.onError` */
|
|
448
533
|
onError?: ErrorPolicy;
|
|
449
|
-
/** The maps a save's ground may be one of (S36): the game's own (`
|
|
534
|
+
/** The maps a save's ground may be one of (S36): the game's own (`Rules.maps`) when left out */
|
|
450
535
|
maps?: readonly GameMap[];
|
|
451
536
|
}
|
|
452
537
|
/**
|
|
@@ -455,15 +540,21 @@ export interface LoadWorldOptions extends WorldChecks {
|
|
|
455
540
|
* Navigation is built again; units come back with the speed and destination they had, but the way they find around
|
|
456
541
|
* each other is worked out anew, so the game from there on is close to, and not quite, the one that was saved
|
|
457
542
|
*
|
|
458
|
-
* @
|
|
543
|
+
* @public
|
|
459
544
|
*/
|
|
460
545
|
export declare function loadWorld(saved: WorldSave, options: LoadWorldOptions): Promise<World>;
|
|
461
|
-
/**
|
|
462
|
-
|
|
546
|
+
/**
|
|
547
|
+
* What a world made from a map is made from: the map, the rules, and what the lobby chose for the players
|
|
548
|
+
*
|
|
549
|
+
* @beta
|
|
550
|
+
*/
|
|
551
|
+
export interface MapWorldOptions extends WorldChecks {
|
|
552
|
+
/** The map the world is made from: its terrain, players and what it places */
|
|
463
553
|
map: GameMap;
|
|
464
|
-
game
|
|
554
|
+
/** The game's rules the world runs */
|
|
555
|
+
rules: Rules;
|
|
465
556
|
/**
|
|
466
|
-
* The race each player plays, by player (`
|
|
557
|
+
* The race each player plays, by player (`Rules.races`): one of the game's, or `random`. Chosen in a lobby, a
|
|
467
558
|
* page's own menu. Those left out play what the map fixes for them (`MapPlayer.race`), or the game's first
|
|
468
559
|
*/
|
|
469
560
|
races?: Readonly<Record<PlayerId, string>>;
|
|
@@ -476,8 +567,10 @@ export interface MapWorldOptions {
|
|
|
476
567
|
* placed for the creeps. A world without camps that had one anyway would never be won: a team would always be left
|
|
477
568
|
*/
|
|
478
569
|
creeps?: boolean;
|
|
570
|
+
/** Seed of the world's random numbers: the same seed gives the same game */
|
|
479
571
|
seed?: number;
|
|
480
|
-
navigation
|
|
572
|
+
/** Options for how the world's units find their way, over the game's (`Rules.navigation`) */
|
|
573
|
+
navigation?: GameNavigationOptions;
|
|
481
574
|
/** Components the app keeps in the world beside the game's own, as `CreateWorldOptions.components` */
|
|
482
575
|
components?: readonly Component<unknown, unknown>[];
|
|
483
576
|
/** The logger the world's own is made under, as `CreateWorldOptions.log` */
|
|
@@ -490,12 +583,12 @@ export interface MapWorldOptions {
|
|
|
490
583
|
* Players with a start location that the map places nothing for get what the game starts everyone with.
|
|
491
584
|
* Throws for a map made for another game (`GameMap.game`).
|
|
492
585
|
*
|
|
493
|
-
* @
|
|
586
|
+
* @public
|
|
494
587
|
*/
|
|
495
588
|
export declare function createWorldFromMap(options: MapWorldOptions): Promise<World>;
|
|
496
589
|
/**
|
|
497
|
-
* Players a map of the game may have (`
|
|
590
|
+
* Players a map of the game may have (`Rules.maxPlayers`): 8 when it says nothing, never more than the fog keeps apart
|
|
498
591
|
*
|
|
499
592
|
* @beta
|
|
500
593
|
*/
|
|
501
|
-
export declare const maxPlayersOf: (game:
|
|
594
|
+
export declare const maxPlayersOf: (game: Rules) => number;
|