playlist-data-engine 1.1.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/LICENSE +21 -0
- package/README.md +352 -0
- package/dist/__vite-browser-external-DYxpcVy9.js +4 -0
- package/dist/constants/DefaultClasses.d.ts +46 -0
- package/dist/constants/DefaultClasses.d.ts.map +1 -0
- package/dist/constants/DefaultEnchantments.d.ts +337 -0
- package/dist/constants/DefaultEnchantments.d.ts.map +1 -0
- package/dist/constants/DefaultEnemies.d.ts +83 -0
- package/dist/constants/DefaultEnemies.d.ts.map +1 -0
- package/dist/constants/DefaultEquipment.d.ts +23 -0
- package/dist/constants/DefaultEquipment.d.ts.map +1 -0
- package/dist/constants/DefaultFeatures.d.ts +22 -0
- package/dist/constants/DefaultFeatures.d.ts.map +1 -0
- package/dist/constants/DefaultRaces.d.ts +102 -0
- package/dist/constants/DefaultRaces.d.ts.map +1 -0
- package/dist/constants/DefaultSkills.d.ts +26 -0
- package/dist/constants/DefaultSkills.d.ts.map +1 -0
- package/dist/constants/DefaultSpells.d.ts +41 -0
- package/dist/constants/DefaultSpells.d.ts.map +1 -0
- package/dist/constants/EncounterBalance.d.ts +208 -0
- package/dist/constants/EncounterBalance.d.ts.map +1 -0
- package/dist/constants/EnemyEquipment.d.ts +71 -0
- package/dist/constants/EnemyEquipment.d.ts.map +1 -0
- package/dist/constants/EnemyRarity.d.ts +79 -0
- package/dist/constants/EnemyRarity.d.ts.map +1 -0
- package/dist/constants/EnemyTemplates/Construct.d.ts +63 -0
- package/dist/constants/EnemyTemplates/Construct.d.ts.map +1 -0
- package/dist/constants/EnemyTemplates/Dragon.d.ts +68 -0
- package/dist/constants/EnemyTemplates/Dragon.d.ts.map +1 -0
- package/dist/constants/EnemyTemplates/Elemental.d.ts +64 -0
- package/dist/constants/EnemyTemplates/Elemental.d.ts.map +1 -0
- package/dist/constants/EnemyTemplates/Fiend.d.ts +62 -0
- package/dist/constants/EnemyTemplates/Fiend.d.ts.map +1 -0
- package/dist/constants/EnemyTemplates/Monstrosity.d.ts +63 -0
- package/dist/constants/EnemyTemplates/Monstrosity.d.ts.map +1 -0
- package/dist/constants/EnemyTemplates/Undead.d.ts +61 -0
- package/dist/constants/EnemyTemplates/Undead.d.ts.map +1 -0
- package/dist/constants/ItemTemplates.d.ts +40 -0
- package/dist/constants/ItemTemplates.d.ts.map +1 -0
- package/dist/constants/MagicItems.d.ts +30 -0
- package/dist/constants/MagicItems.d.ts.map +1 -0
- package/dist/constants/SpellSlots.d.ts +30 -0
- package/dist/constants/SpellSlots.d.ts.map +1 -0
- package/dist/constants/StatScaling.d.ts +113 -0
- package/dist/constants/StatScaling.d.ts.map +1 -0
- package/dist/core/analysis/AudioAnalyzer.d.ts +599 -0
- package/dist/core/analysis/AudioAnalyzer.d.ts.map +1 -0
- package/dist/core/analysis/ColorExtractor.d.ts +64 -0
- package/dist/core/analysis/ColorExtractor.d.ts.map +1 -0
- package/dist/core/analysis/EssentiaPitchDetector.d.ts +282 -0
- package/dist/core/analysis/EssentiaPitchDetector.d.ts.map +1 -0
- package/dist/core/analysis/LevelSerializer.d.ts +265 -0
- package/dist/core/analysis/LevelSerializer.d.ts.map +1 -0
- package/dist/core/analysis/MelodyContourAnalyzer.d.ts +283 -0
- package/dist/core/analysis/MelodyContourAnalyzer.d.ts.map +1 -0
- package/dist/core/analysis/MultiBandAnalyzer.d.ts +214 -0
- package/dist/core/analysis/MultiBandAnalyzer.d.ts.map +1 -0
- package/dist/core/analysis/MusicClassifier.d.ts +524 -0
- package/dist/core/analysis/MusicClassifier.d.ts.map +1 -0
- package/dist/core/analysis/PitchAnalyzer.d.ts +266 -0
- package/dist/core/analysis/PitchAnalyzer.d.ts.map +1 -0
- package/dist/core/analysis/PitchDetector.d.ts +251 -0
- package/dist/core/analysis/PitchDetector.d.ts.map +1 -0
- package/dist/core/analysis/SpectrumScanner.d.ts +52 -0
- package/dist/core/analysis/SpectrumScanner.d.ts.map +1 -0
- package/dist/core/analysis/beat/BeatInterpolator.d.ts +477 -0
- package/dist/core/analysis/beat/BeatInterpolator.d.ts.map +1 -0
- package/dist/core/analysis/beat/BeatMapGenerator.d.ts +170 -0
- package/dist/core/analysis/beat/BeatMapGenerator.d.ts.map +1 -0
- package/dist/core/analysis/beat/BeatStream.d.ts +316 -0
- package/dist/core/analysis/beat/BeatStream.d.ts.map +1 -0
- package/dist/core/analysis/beat/BeatSubdivider.d.ts +205 -0
- package/dist/core/analysis/beat/BeatSubdivider.d.ts.map +1 -0
- package/dist/core/analysis/beat/BeatTracker.d.ts +137 -0
- package/dist/core/analysis/beat/BeatTracker.d.ts.map +1 -0
- package/dist/core/analysis/beat/CompositeStreamGenerator.d.ts +180 -0
- package/dist/core/analysis/beat/CompositeStreamGenerator.d.ts.map +1 -0
- package/dist/core/analysis/beat/DensityAnalyzer.d.ts +246 -0
- package/dist/core/analysis/beat/DensityAnalyzer.d.ts.map +1 -0
- package/dist/core/analysis/beat/DifficultyVariantGenerator.d.ts +1082 -0
- package/dist/core/analysis/beat/DifficultyVariantGenerator.d.ts.map +1 -0
- package/dist/core/analysis/beat/GrooveAnalyzer.d.ts +192 -0
- package/dist/core/analysis/beat/GrooveAnalyzer.d.ts.map +1 -0
- package/dist/core/analysis/beat/OnsetStrengthEnvelope.d.ts +133 -0
- package/dist/core/analysis/beat/OnsetStrengthEnvelope.d.ts.map +1 -0
- package/dist/core/analysis/beat/PhraseAnalyzer.d.ts +230 -0
- package/dist/core/analysis/beat/PhraseAnalyzer.d.ts.map +1 -0
- package/dist/core/analysis/beat/RhythmQuantizer.d.ts +399 -0
- package/dist/core/analysis/beat/RhythmQuantizer.d.ts.map +1 -0
- package/dist/core/analysis/beat/RhythmicBalancer.d.ts +262 -0
- package/dist/core/analysis/beat/RhythmicBalancer.d.ts.map +1 -0
- package/dist/core/analysis/beat/StreamScorer.d.ts +275 -0
- package/dist/core/analysis/beat/StreamScorer.d.ts.map +1 -0
- package/dist/core/analysis/beat/TempoAwareQuantizer.d.ts +256 -0
- package/dist/core/analysis/beat/TempoAwareQuantizer.d.ts.map +1 -0
- package/dist/core/analysis/beat/TempoDetector.d.ts +220 -0
- package/dist/core/analysis/beat/TempoDetector.d.ts.map +1 -0
- package/dist/core/analysis/beat/TransientDetector.d.ts +303 -0
- package/dist/core/analysis/beat/TransientDetector.d.ts.map +1 -0
- package/dist/core/analysis/beat/beatKeyHelpers.d.ts +180 -0
- package/dist/core/analysis/beat/beatKeyHelpers.d.ts.map +1 -0
- package/dist/core/analysis/beat/index.d.ts +41 -0
- package/dist/core/analysis/beat/index.d.ts.map +1 -0
- package/dist/core/analysis/beat/utils/audioUtils.d.ts +204 -0
- package/dist/core/analysis/beat/utils/audioUtils.d.ts.map +1 -0
- package/dist/core/analysis/beat/utils/beatInterpolationDebug.d.ts +404 -0
- package/dist/core/analysis/beat/utils/beatInterpolationDebug.d.ts.map +1 -0
- package/dist/core/analysis/beat/utils/subdivideBeatMap.d.ts +61 -0
- package/dist/core/analysis/beat/utils/subdivideBeatMap.d.ts.map +1 -0
- package/dist/core/analysis/beat/utils/unifyBeatMap.d.ts +33 -0
- package/dist/core/analysis/beat/utils/unifyBeatMap.d.ts.map +1 -0
- package/dist/core/analysis/index.d.ts +18 -0
- package/dist/core/analysis/index.d.ts.map +1 -0
- package/dist/core/combat/AI/AICombatRunner.d.ts +108 -0
- package/dist/core/combat/AI/AICombatRunner.d.ts.map +1 -0
- package/dist/core/combat/AI/CombatAI.d.ts +179 -0
- package/dist/core/combat/AI/CombatAI.d.ts.map +1 -0
- package/dist/core/combat/AI/CombatMetricsTracker.d.ts +30 -0
- package/dist/core/combat/AI/CombatMetricsTracker.d.ts.map +1 -0
- package/dist/core/combat/Analysis/BalanceValidator.d.ts +170 -0
- package/dist/core/combat/Analysis/BalanceValidator.d.ts.map +1 -0
- package/dist/core/combat/Analysis/ComparativeAnalyzer.d.ts +231 -0
- package/dist/core/combat/Analysis/ComparativeAnalyzer.d.ts.map +1 -0
- package/dist/core/combat/Analysis/DifficultyCalculator.d.ts +203 -0
- package/dist/core/combat/Analysis/DifficultyCalculator.d.ts.map +1 -0
- package/dist/core/combat/Analysis/ParameterSweep.d.ts +201 -0
- package/dist/core/combat/Analysis/ParameterSweep.d.ts.map +1 -0
- package/dist/core/combat/AttackResolver.d.ts +220 -0
- package/dist/core/combat/AttackResolver.d.ts.map +1 -0
- package/dist/core/combat/CombatEngine.d.ts +388 -0
- package/dist/core/combat/CombatEngine.d.ts.map +1 -0
- package/dist/core/combat/DiceRoller.d.ts +115 -0
- package/dist/core/combat/DiceRoller.d.ts.map +1 -0
- package/dist/core/combat/InitiativeRoller.d.ts +62 -0
- package/dist/core/combat/InitiativeRoller.d.ts.map +1 -0
- package/dist/core/combat/PartyAnalyzer.d.ts +215 -0
- package/dist/core/combat/PartyAnalyzer.d.ts.map +1 -0
- package/dist/core/combat/SeededDiceRoller.d.ts +120 -0
- package/dist/core/combat/SeededDiceRoller.d.ts.map +1 -0
- package/dist/core/combat/Simulation/CombatSimulator.d.ts +366 -0
- package/dist/core/combat/Simulation/CombatSimulator.d.ts.map +1 -0
- package/dist/core/combat/SpellCaster.d.ts +113 -0
- package/dist/core/combat/SpellCaster.d.ts.map +1 -0
- package/dist/core/config/index.d.ts +24 -0
- package/dist/core/config/index.d.ts.map +1 -0
- package/dist/core/config/progressionConfig.d.ts +73 -0
- package/dist/core/config/progressionConfig.d.ts.map +1 -0
- package/dist/core/config/sensorConfig.d.ts +134 -0
- package/dist/core/config/sensorConfig.d.ts.map +1 -0
- package/dist/core/equipment/BoxOpener.d.ts +175 -0
- package/dist/core/equipment/BoxOpener.d.ts.map +1 -0
- package/dist/core/equipment/EquipmentEffectApplier.d.ts +189 -0
- package/dist/core/equipment/EquipmentEffectApplier.d.ts.map +1 -0
- package/dist/core/equipment/EquipmentModifier.d.ts +327 -0
- package/dist/core/equipment/EquipmentModifier.d.ts.map +1 -0
- package/dist/core/equipment/EquipmentSpawnHelper.d.ts +246 -0
- package/dist/core/equipment/EquipmentSpawnHelper.d.ts.map +1 -0
- package/dist/core/equipment/EquipmentValidator.d.ts +173 -0
- package/dist/core/equipment/EquipmentValidator.d.ts.map +1 -0
- package/dist/core/extensions/ExtensionManager.d.ts +517 -0
- package/dist/core/extensions/ExtensionManager.d.ts.map +1 -0
- package/dist/core/extensions/WeightedSelector.d.ts +156 -0
- package/dist/core/extensions/WeightedSelector.d.ts.map +1 -0
- package/dist/core/extensions/index.d.ts +11 -0
- package/dist/core/extensions/index.d.ts.map +1 -0
- package/dist/core/extensions/initializeDefaults.d.ts +170 -0
- package/dist/core/extensions/initializeDefaults.d.ts.map +1 -0
- package/dist/core/features/FeatureEffectApplier.d.ts +102 -0
- package/dist/core/features/FeatureEffectApplier.d.ts.map +1 -0
- package/dist/core/features/FeatureQuery.d.ts +368 -0
- package/dist/core/features/FeatureQuery.d.ts.map +1 -0
- package/dist/core/features/FeatureTypes.d.ts +199 -0
- package/dist/core/features/FeatureTypes.d.ts.map +1 -0
- package/dist/core/features/FeatureValidator.d.ts +149 -0
- package/dist/core/features/FeatureValidator.d.ts.map +1 -0
- package/dist/core/features/index.d.ts +12 -0
- package/dist/core/features/index.d.ts.map +1 -0
- package/dist/core/generation/AbilityScoreCalculator.d.ts +83 -0
- package/dist/core/generation/AbilityScoreCalculator.d.ts.map +1 -0
- package/dist/core/generation/AppearanceGenerator.d.ts +32 -0
- package/dist/core/generation/AppearanceGenerator.d.ts.map +1 -0
- package/dist/core/generation/BeatConverter.d.ts +127 -0
- package/dist/core/generation/BeatConverter.d.ts.map +1 -0
- package/dist/core/generation/ButtonMapper.d.ts +346 -0
- package/dist/core/generation/ButtonMapper.d.ts.map +1 -0
- package/dist/core/generation/ButtonPatternLibrary.d.ts +92 -0
- package/dist/core/generation/ButtonPatternLibrary.d.ts.map +1 -0
- package/dist/core/generation/CRLevelConverter.d.ts +242 -0
- package/dist/core/generation/CRLevelConverter.d.ts.map +1 -0
- package/dist/core/generation/CharacterGenerator.d.ts +194 -0
- package/dist/core/generation/CharacterGenerator.d.ts.map +1 -0
- package/dist/core/generation/ClassSuggester.d.ts +184 -0
- package/dist/core/generation/ClassSuggester.d.ts.map +1 -0
- package/dist/core/generation/EnemyEquipmentGenerator.d.ts +151 -0
- package/dist/core/generation/EnemyEquipmentGenerator.d.ts.map +1 -0
- package/dist/core/generation/EnemyGenerator.d.ts +595 -0
- package/dist/core/generation/EnemyGenerator.d.ts.map +1 -0
- package/dist/core/generation/EquipmentGenerator.d.ts +204 -0
- package/dist/core/generation/EquipmentGenerator.d.ts.map +1 -0
- package/dist/core/generation/LegendaryGenerator.d.ts +213 -0
- package/dist/core/generation/LegendaryGenerator.d.ts.map +1 -0
- package/dist/core/generation/LevelGenerator.d.ts +390 -0
- package/dist/core/generation/LevelGenerator.d.ts.map +1 -0
- package/dist/core/generation/NamingEngine.d.ts +136 -0
- package/dist/core/generation/NamingEngine.d.ts.map +1 -0
- package/dist/core/generation/PitchBeatLinker.d.ts +150 -0
- package/dist/core/generation/PitchBeatLinker.d.ts.map +1 -0
- package/dist/core/generation/RaceSelector.d.ts +58 -0
- package/dist/core/generation/RaceSelector.d.ts.map +1 -0
- package/dist/core/generation/RhythmGenerator.d.ts +597 -0
- package/dist/core/generation/RhythmGenerator.d.ts.map +1 -0
- package/dist/core/generation/SkillAssigner.d.ts +78 -0
- package/dist/core/generation/SkillAssigner.d.ts.map +1 -0
- package/dist/core/generation/SpellManager.d.ts +132 -0
- package/dist/core/generation/SpellManager.d.ts.map +1 -0
- package/dist/core/generation/SpellcastingGenerator.d.ts +255 -0
- package/dist/core/generation/SpellcastingGenerator.d.ts.map +1 -0
- package/dist/core/generation/index.d.ts +41 -0
- package/dist/core/generation/index.d.ts.map +1 -0
- package/dist/core/parser/MetadataExtractor.d.ts +66 -0
- package/dist/core/parser/MetadataExtractor.d.ts.map +1 -0
- package/dist/core/parser/PlaylistParser.d.ts +45 -0
- package/dist/core/parser/PlaylistParser.d.ts.map +1 -0
- package/dist/core/playback/SubdivisionPlaybackController.d.ts +333 -0
- package/dist/core/playback/SubdivisionPlaybackController.d.ts.map +1 -0
- package/dist/core/playback/index.d.ts +5 -0
- package/dist/core/playback/index.d.ts.map +1 -0
- package/dist/core/progression/CharacterUpdater.d.ts +203 -0
- package/dist/core/progression/CharacterUpdater.d.ts.map +1 -0
- package/dist/core/progression/LevelUpProcessor.d.ts +234 -0
- package/dist/core/progression/LevelUpProcessor.d.ts.map +1 -0
- package/dist/core/progression/PrestigeSystem.d.ts +217 -0
- package/dist/core/progression/PrestigeSystem.d.ts.map +1 -0
- package/dist/core/progression/RhythmXPCalculator.d.ts +182 -0
- package/dist/core/progression/RhythmXPCalculator.d.ts.map +1 -0
- package/dist/core/progression/SessionTracker.d.ts +169 -0
- package/dist/core/progression/SessionTracker.d.ts.map +1 -0
- package/dist/core/progression/XPCalculator.d.ts +128 -0
- package/dist/core/progression/XPCalculator.d.ts.map +1 -0
- package/dist/core/progression/stat/StatIncreaseStrategy.d.ts +97 -0
- package/dist/core/progression/stat/StatIncreaseStrategy.d.ts.map +1 -0
- package/dist/core/progression/stat/StatManager.d.ts +179 -0
- package/dist/core/progression/stat/StatManager.d.ts.map +1 -0
- package/dist/core/sensors/EnvironmentalSensors.d.ts +301 -0
- package/dist/core/sensors/EnvironmentalSensors.d.ts.map +1 -0
- package/dist/core/sensors/GamingPlatformSensors.d.ts +162 -0
- package/dist/core/sensors/GamingPlatformSensors.d.ts.map +1 -0
- package/dist/core/sensors/GeolocationProvider.d.ts +156 -0
- package/dist/core/sensors/GeolocationProvider.d.ts.map +1 -0
- package/dist/core/sensors/MotionDetector.d.ts +58 -0
- package/dist/core/sensors/MotionDetector.d.ts.map +1 -0
- package/dist/core/sensors/SteamAPIClient.d.ts +108 -0
- package/dist/core/sensors/SteamAPIClient.d.ts.map +1 -0
- package/dist/core/sensors/WeatherAPIClient.d.ts +360 -0
- package/dist/core/sensors/WeatherAPIClient.d.ts.map +1 -0
- package/dist/core/sensors/schemas/weather.schema.d.ts +144 -0
- package/dist/core/sensors/schemas/weather.schema.d.ts.map +1 -0
- package/dist/core/skills/SkillQuery.d.ts +159 -0
- package/dist/core/skills/SkillQuery.d.ts.map +1 -0
- package/dist/core/skills/SkillTypes.d.ts +233 -0
- package/dist/core/skills/SkillTypes.d.ts.map +1 -0
- package/dist/core/skills/SkillValidator.d.ts +146 -0
- package/dist/core/skills/SkillValidator.d.ts.map +1 -0
- package/dist/core/skills/index.d.ts +11 -0
- package/dist/core/skills/index.d.ts.map +1 -0
- package/dist/core/spells/SpellQuery.d.ts +194 -0
- package/dist/core/spells/SpellQuery.d.ts.map +1 -0
- package/dist/core/spells/SpellTypes.d.ts +71 -0
- package/dist/core/spells/SpellTypes.d.ts.map +1 -0
- package/dist/core/spells/SpellValidator.d.ts +129 -0
- package/dist/core/spells/SpellValidator.d.ts.map +1 -0
- package/dist/core/spells/index.d.ts +11 -0
- package/dist/core/spells/index.d.ts.map +1 -0
- package/dist/core/types/AudioProfile.d.ts +143 -0
- package/dist/core/types/AudioProfile.d.ts.map +1 -0
- package/dist/core/types/BeatMap.d.ts +1825 -0
- package/dist/core/types/BeatMap.d.ts.map +1 -0
- package/dist/core/types/ButtonMapping.d.ts +345 -0
- package/dist/core/types/ButtonMapping.d.ts.map +1 -0
- package/dist/core/types/Character.d.ts +397 -0
- package/dist/core/types/Character.d.ts.map +1 -0
- package/dist/core/types/ChartedBeatMap.d.ts +169 -0
- package/dist/core/types/ChartedBeatMap.d.ts.map +1 -0
- package/dist/core/types/Combat.d.ts +268 -0
- package/dist/core/types/Combat.d.ts.map +1 -0
- package/dist/core/types/CombatAI.d.ts +143 -0
- package/dist/core/types/CombatAI.d.ts.map +1 -0
- package/dist/core/types/Enemy.d.ts +447 -0
- package/dist/core/types/Enemy.d.ts.map +1 -0
- package/dist/core/types/Environmental.d.ts +213 -0
- package/dist/core/types/Environmental.d.ts.map +1 -0
- package/dist/core/types/Equipment.d.ts +309 -0
- package/dist/core/types/Equipment.d.ts.map +1 -0
- package/dist/core/types/ISessionTracker.d.ts +48 -0
- package/dist/core/types/ISessionTracker.d.ts.map +1 -0
- package/dist/core/types/LevelExport.d.ts +366 -0
- package/dist/core/types/LevelExport.d.ts.map +1 -0
- package/dist/core/types/Playlist.d.ts +70 -0
- package/dist/core/types/Playlist.d.ts.map +1 -0
- package/dist/core/types/Prestige.d.ts +94 -0
- package/dist/core/types/Prestige.d.ts.map +1 -0
- package/dist/core/types/Progression.d.ts +214 -0
- package/dist/core/types/Progression.d.ts.map +1 -0
- package/dist/core/types/RhythmXP.d.ts +398 -0
- package/dist/core/types/RhythmXP.d.ts.map +1 -0
- package/dist/core/utils/AbilityConstants.d.ts +31 -0
- package/dist/core/utils/AbilityConstants.d.ts.map +1 -0
- package/dist/core/utils/EffectApplierUtils.d.ts +56 -0
- package/dist/core/utils/EffectApplierUtils.d.ts.map +1 -0
- package/dist/core/utils/ImageValidator.d.ts +66 -0
- package/dist/core/utils/ImageValidator.d.ts.map +1 -0
- package/dist/core/utils/PrerequisiteValidator.d.ts +88 -0
- package/dist/core/utils/PrerequisiteValidator.d.ts.map +1 -0
- package/dist/essentia-wasm.es-BUEnKUts.js +2990 -0
- package/dist/essentia.js-model.es-CGA0xotH.js +306 -0
- package/dist/index.d.ts +176 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/playlist-data-engine.js +124 -0
- package/dist/playlist-data-engine.mjs +49251 -0
- package/dist/utils/EnchantmentLibrary.d.ts +378 -0
- package/dist/utils/EnchantmentLibrary.d.ts.map +1 -0
- package/dist/utils/arweaveGatewayManager.d.ts +485 -0
- package/dist/utils/arweaveGatewayManager.d.ts.map +1 -0
- package/dist/utils/arweaveUtils.d.ts +118 -0
- package/dist/utils/arweaveUtils.d.ts.map +1 -0
- package/dist/utils/constants.d.ts +439 -0
- package/dist/utils/constants.d.ts.map +1 -0
- package/dist/utils/equipmentConstants.d.ts +60 -0
- package/dist/utils/equipmentConstants.d.ts.map +1 -0
- package/dist/utils/hash.d.ts +33 -0
- package/dist/utils/hash.d.ts.map +1 -0
- package/dist/utils/logger.d.ts +192 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/magicItemExamples.d.ts +46 -0
- package/dist/utils/magicItemExamples.d.ts.map +1 -0
- package/dist/utils/playlistUtils.d.ts +149 -0
- package/dist/utils/playlistUtils.d.ts.map +1 -0
- package/dist/utils/random.d.ts +34 -0
- package/dist/utils/random.d.ts.map +1 -0
- package/dist/utils/sensorDashboard.d.ts +60 -0
- package/dist/utils/sensorDashboard.d.ts.map +1 -0
- package/dist/utils/validators.d.ts +189 -0
- package/dist/utils/validators.d.ts.map +1 -0
- package/dist/vite.svg +1 -0
- package/package.json +82 -0
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Monstrosity Enemy Templates
|
|
3
|
+
*
|
|
4
|
+
* Contains monstrosity enemy templates with varied traits.
|
|
5
|
+
* Monstrosities are bizarre creatures that defy normal classification.
|
|
6
|
+
* Unlike other categories, monstrosities have no universal category traits -
|
|
7
|
+
* each creature has its own unique abilities and characteristics.
|
|
8
|
+
*
|
|
9
|
+
* Monstrosities are often found in wild places, dungeons, or as
|
|
10
|
+
* guardians of cursed locations. They include hybrids of multiple
|
|
11
|
+
* creatures and bizarre magical creations.
|
|
12
|
+
*/
|
|
13
|
+
import type { EnemyTemplate } from '../../core/types/Enemy.js';
|
|
14
|
+
/**
|
|
15
|
+
* Monstrosity enemy templates
|
|
16
|
+
*
|
|
17
|
+
* These 4 templates provide monstrosity enemies with:
|
|
18
|
+
* - Varied resistances (no universal category trait)
|
|
19
|
+
* - Unique abilities per creature
|
|
20
|
+
* - Varied archetypes: Brute (Owlbear, Mimic), Archer (Griffin), Support (Basilisk)
|
|
21
|
+
*/
|
|
22
|
+
export declare const MONSTROSITY_TEMPLATES: EnemyTemplate[];
|
|
23
|
+
/**
|
|
24
|
+
* Helper function to get a monstrosity template by ID
|
|
25
|
+
*
|
|
26
|
+
* @param id - The template ID (e.g., 'owlbear', 'griffin', 'mimic', 'basilisk')
|
|
27
|
+
* @returns The matching template, or undefined if not found
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```typescript
|
|
31
|
+
* const owlbear = getMonstrosityTemplateById('owlbear');
|
|
32
|
+
* if (owlbear) {
|
|
33
|
+
* console.log(owlbear.name); // 'Owlbear'
|
|
34
|
+
* }
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
export declare function getMonstrosityTemplateById(id: string): EnemyTemplate | undefined;
|
|
38
|
+
/**
|
|
39
|
+
* Get all monstrosity templates
|
|
40
|
+
*
|
|
41
|
+
* @returns Array of all monstrosity templates
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```typescript
|
|
45
|
+
* const monstrosities = getMonstrosityTemplates();
|
|
46
|
+
* console.log(monstrosities.length); // 4 (Owlbear, Griffin, Mimic, Basilisk)
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
export declare function getMonstrosityTemplates(): EnemyTemplate[];
|
|
50
|
+
/**
|
|
51
|
+
* Get monstrosity templates by archetype
|
|
52
|
+
*
|
|
53
|
+
* @param archetype - The enemy archetype ('brute', 'archer', 'support')
|
|
54
|
+
* @returns Array of monstrosity templates with the specified archetype
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* ```typescript
|
|
58
|
+
* const monstrosityBrutes = getMonstrosityTemplatesByArchetype('brute');
|
|
59
|
+
* console.log(monstrosityBrutes.length); // 2 (Owlbear, Mimic)
|
|
60
|
+
* ```
|
|
61
|
+
*/
|
|
62
|
+
export declare function getMonstrosityTemplatesByArchetype(archetype: string): EnemyTemplate[];
|
|
63
|
+
//# sourceMappingURL=Monstrosity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Monstrosity.d.ts","sourceRoot":"","sources":["../../../src/constants/EnemyTemplates/Monstrosity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,EAAE,aAAa,EAkLhD,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAEhF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,IAAI,aAAa,EAAE,CAEzD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kCAAkC,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE,CAErF"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Undead Enemy Templates
|
|
3
|
+
*
|
|
4
|
+
* Contains undead enemy templates with category-specific traits:
|
|
5
|
+
* - Necrotic resistance (half damage from necrotic attacks)
|
|
6
|
+
* - Poison immunity (immune to poison damage and poisoned condition)
|
|
7
|
+
*
|
|
8
|
+
* Undead are animated corpses or spirits, often found in graveyards,
|
|
9
|
+
* tombs, and cursed locations. They typically have dark, eerie audio preferences.
|
|
10
|
+
*/
|
|
11
|
+
import type { EnemyTemplate } from '../../core/types/Enemy.js';
|
|
12
|
+
/**
|
|
13
|
+
* Undead enemy templates
|
|
14
|
+
*
|
|
15
|
+
* These 4 templates provide undead enemies with:
|
|
16
|
+
* - Necrotic resistance (elite+ rarity scaling)
|
|
17
|
+
* - Poison immunity (all rarities)
|
|
18
|
+
* - Varied archetypes: Archer (Skeleton), Brute (Zombie, Wight), Support (Ghost)
|
|
19
|
+
*/
|
|
20
|
+
export declare const UNDEAD_TEMPLATES: EnemyTemplate[];
|
|
21
|
+
/**
|
|
22
|
+
* Helper function to get an undead template by ID
|
|
23
|
+
*
|
|
24
|
+
* @param id - The template ID (e.g., 'skeleton', 'zombie', 'wight', 'ghost')
|
|
25
|
+
* @returns The matching template, or undefined if not found
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* const skeleton = getUndeadTemplateById('skeleton');
|
|
30
|
+
* if (skeleton) {
|
|
31
|
+
* console.log(skeleton.name); // 'Skeleton'
|
|
32
|
+
* }
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
export declare function getUndeadTemplateById(id: string): EnemyTemplate | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* Get all undead templates
|
|
38
|
+
*
|
|
39
|
+
* @returns Array of all undead templates
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```typescript
|
|
43
|
+
* const undead = getUndeadTemplates();
|
|
44
|
+
* console.log(undead.length); // 4 (Skeleton, Zombie, Wight, Ghost)
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
export declare function getUndeadTemplates(): EnemyTemplate[];
|
|
48
|
+
/**
|
|
49
|
+
* Get undead templates by archetype
|
|
50
|
+
*
|
|
51
|
+
* @param archetype - The enemy archetype ('brute', 'archer', 'support')
|
|
52
|
+
* @returns Array of undead templates with the specified archetype
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* ```typescript
|
|
56
|
+
* const undeadBrutes = getUndeadTemplatesByArchetype('brute');
|
|
57
|
+
* console.log(undeadBrutes.length); // 2 (Zombie, Wight)
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
export declare function getUndeadTemplatesByArchetype(archetype: string): EnemyTemplate[];
|
|
61
|
+
//# sourceMappingURL=Undead.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Undead.d.ts","sourceRoot":"","sources":["../../../src/constants/EnemyTemplates/Undead.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,EAAE,aAAa,EAkL3C,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAE3E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,IAAI,aAAa,EAAE,CAEpD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE,CAEhF"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Item Creation Templates for enchantment
|
|
3
|
+
*
|
|
4
|
+
* These templates can be applied to base equipment to create magic variants.
|
|
5
|
+
* Templates define reusable enchantment patterns that add properties, tags,
|
|
6
|
+
* and effects to base items.
|
|
7
|
+
*
|
|
8
|
+
* Usage: Import `ITEM_CREATION_TEMPLATES` and use template IDs to enchant items.
|
|
9
|
+
* Templates are applied by the EquipmentModifier and can be extended via ExtensionManager.
|
|
10
|
+
*
|
|
11
|
+
* Template types:
|
|
12
|
+
* - Enhancement bonuses: +1, +2, +3 to weapons and armor
|
|
13
|
+
* - Elemental weapons: Flaming, Frost, Shocking
|
|
14
|
+
* - Special effects: Vicious, and other combat enhancements
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```typescript
|
|
18
|
+
* import { applyTemplate } from '../utils/magicItemExamples.js';
|
|
19
|
+
* import { DEFAULT_EQUIPMENT } from './DefaultEquipment.js';
|
|
20
|
+
* import { ITEM_CREATION_TEMPLATES } from './ItemTemplates.js';
|
|
21
|
+
*
|
|
22
|
+
* const baseSword = DEFAULT_EQUIPMENT['Longsword'];
|
|
23
|
+
* const flamingSword = applyTemplate(baseSword, 'flaming_weapon_template');
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
import type { EnhancedEquipment } from '../core/types/Equipment.js';
|
|
27
|
+
/**
|
|
28
|
+
* Item Creation Templates for enchantment
|
|
29
|
+
*
|
|
30
|
+
* These templates can be applied to base equipment to create magic variants.
|
|
31
|
+
* Templates define reusable enchantment patterns that add properties, tags,
|
|
32
|
+
* and effects to base items.
|
|
33
|
+
*
|
|
34
|
+
* Template types:
|
|
35
|
+
* - Enhancement bonuses: +1, +2, +3 to weapons and armor
|
|
36
|
+
* - Elemental weapons: Flaming, Frost, Shocking
|
|
37
|
+
* - Special effects: Vicious, and other combat enhancements
|
|
38
|
+
*/
|
|
39
|
+
export declare const ITEM_CREATION_TEMPLATES: Record<string, Partial<EnhancedEquipment>>;
|
|
40
|
+
//# sourceMappingURL=ItemTemplates.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ItemTemplates.d.ts","sourceRoot":"","sources":["../../src/constants/ItemTemplates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,iBAAiB,CAAC,CA8K9E,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Magic Items Database
|
|
3
|
+
*
|
|
4
|
+
* Example Magic Items demonstrating all equipment system capabilities.
|
|
5
|
+
*
|
|
6
|
+
* This collection demonstrates all capabilities of the Advanced Equipment System:
|
|
7
|
+
* - Equipment properties (stat bonuses, skill proficiencies, ability unlocks, etc.)
|
|
8
|
+
* - Equipment-granted features (registry features and inline mini-features)
|
|
9
|
+
* - Equipment-granted skills and spells
|
|
10
|
+
* - D&D 5e standard stats (damage dice, AC, properties)
|
|
11
|
+
* - Runtime equipment modification (templates + per-instance)
|
|
12
|
+
* - Spawn weight system for generation control
|
|
13
|
+
* - Cursed items with negative effects
|
|
14
|
+
* - Conditional effects
|
|
15
|
+
*
|
|
16
|
+
* These examples can be used as:
|
|
17
|
+
* 1. Reference for creating custom magic items
|
|
18
|
+
* 2. Test fixtures for the equipment system
|
|
19
|
+
* 3. Starting point for ExtensionManager registration
|
|
20
|
+
*
|
|
21
|
+
* Previously located in src/utils/equipmentConstants.ts.
|
|
22
|
+
*
|
|
23
|
+
* @module constants/MagicItems
|
|
24
|
+
*/
|
|
25
|
+
import type { EnhancedEquipment } from '../core/types/Equipment.js';
|
|
26
|
+
/**
|
|
27
|
+
* Example Magic Items demonstrating all equipment system capabilities
|
|
28
|
+
*/
|
|
29
|
+
export declare const MAGIC_ITEMS: EnhancedEquipment[];
|
|
30
|
+
//# sourceMappingURL=MagicItems.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MagicItems.d.ts","sourceRoot":"","sources":["../../src/constants/MagicItems.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,iBAAiB,EA2pC1C,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Spell Slot Constants
|
|
3
|
+
*
|
|
4
|
+
* D&D 5e spell slot progression tables for combat use.
|
|
5
|
+
* Based on Player's Handbook (2014) full caster progression.
|
|
6
|
+
*
|
|
7
|
+
* The FULL_CASTER_SLOTS table maps character level (1-20) to an array
|
|
8
|
+
* of spell slot counts per spell level (index 0 unused, indices 1-9
|
|
9
|
+
* represent spell levels 1-9).
|
|
10
|
+
*
|
|
11
|
+
* This table is the canonical source used by CombatEngine and SpellCaster.
|
|
12
|
+
* For per-class spell slot data (including half-casters like Paladin/Ranger
|
|
13
|
+
* and pact-magic casters like Warlock), see SPELL_SLOTS_BY_CLASS in
|
|
14
|
+
* DefaultSpells.ts.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* D&D 5e full caster spell slot progression by character level.
|
|
18
|
+
*
|
|
19
|
+
* Each entry maps character level → [_, level1, level2, ..., level9].
|
|
20
|
+
* Index 0 is unused padding to align array indices with spell levels.
|
|
21
|
+
*/
|
|
22
|
+
export declare const FULL_CASTER_SLOTS: Record<number, number[]>;
|
|
23
|
+
/**
|
|
24
|
+
* Convert FULL_CASTER_SLOTS entry into the flat `{ [level]: number }` format
|
|
25
|
+
* used by Combatant.spellSlots.
|
|
26
|
+
*/
|
|
27
|
+
export declare function getFullCasterSlotsForLevel(characterLevel: number): {
|
|
28
|
+
[level: number]: number;
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=SpellSlots.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpellSlots.d.ts","sourceRoot":"","sources":["../../src/constants/SpellSlots.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAqBtD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,cAAc,EAAE,MAAM,GACrB;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAa7B"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Stat Level Scaling — Level-based stat scaling functions for enemy generation
|
|
3
|
+
*
|
|
4
|
+
* Enables HP, attack, and defense to scale independently at different effective
|
|
5
|
+
* levels, allowing creative encounter designs (e.g., tanky low-damage enemy or
|
|
6
|
+
* glass cannon). The AI and simulator don't need to know about this — they read
|
|
7
|
+
* the final CharacterSheet stats. This is purely a generation-layer concern.
|
|
8
|
+
*
|
|
9
|
+
* Design principle: When all three levels match CR, output must be identical
|
|
10
|
+
* to current generation (backward compatible). The scaling functions compute
|
|
11
|
+
* what the stats *would be* at a given level, and the generator uses those values.
|
|
12
|
+
*/
|
|
13
|
+
import type { AbilityScores } from '../core/types/Character.js';
|
|
14
|
+
import type { EnemyRarity, EnemyArchetype, EquipmentConfig } from '../core/types/Enemy.js';
|
|
15
|
+
/**
|
|
16
|
+
* Returns a multiplier for how much a stat increases at a given level vs level 1.
|
|
17
|
+
*
|
|
18
|
+
* Uses a logarithmic curve that provides noticeable growth at low levels
|
|
19
|
+
* but tapers off at high levels, preventing exponential scaling:
|
|
20
|
+
* - Level 1: 1.0x
|
|
21
|
+
* - Level 5: 1.24x
|
|
22
|
+
* - Level 10: 1.44x
|
|
23
|
+
* - Level 15: 1.59x
|
|
24
|
+
* - Level 20: 1.70x
|
|
25
|
+
* - Level 25: 1.84x
|
|
26
|
+
* - Level 30: 2.015x
|
|
27
|
+
*
|
|
28
|
+
* @param level - Effective level (1-30+, supports fractional)
|
|
29
|
+
* @returns Multiplier where level 1 = 1.0
|
|
30
|
+
*/
|
|
31
|
+
export declare function getLevelScalingFactor(level: number): number;
|
|
32
|
+
/**
|
|
33
|
+
* Scale HP for a given effective level and rarity.
|
|
34
|
+
*
|
|
35
|
+
* Current system: HP = baseHP * rarityMultiplier * fractionalCRMultiplier
|
|
36
|
+
* New system adds level-based scaling: HP = baseHP * levelFactor * rarityMultiplier * fractionalCRMultiplier
|
|
37
|
+
*
|
|
38
|
+
* When level = CR-derived level and no overrides, the levelFactor provides
|
|
39
|
+
* the missing CR-based HP scaling that the current system lacks.
|
|
40
|
+
*
|
|
41
|
+
* @param baseHP - Base HP from enemy template (e.g., 15 for orc)
|
|
42
|
+
* @param level - Effective HP level (1-30+)
|
|
43
|
+
* @param rarity - Enemy rarity tier (affects stat multiplier)
|
|
44
|
+
* @returns Scaled HP value
|
|
45
|
+
*/
|
|
46
|
+
export declare function getHPAtLevel(baseHP: number, level: number, rarity: EnemyRarity): number;
|
|
47
|
+
/**
|
|
48
|
+
* Get stat multiplier for fractional CR (sub-level enemies).
|
|
49
|
+
*
|
|
50
|
+
* Uses a continuous linear ramp from 0.5x at CR 0 to 1.0x at CR 1:
|
|
51
|
+
* - CR 0.125: ~0.56x
|
|
52
|
+
* - CR 0.25: ~0.63x
|
|
53
|
+
* - CR 0.5: ~0.75x
|
|
54
|
+
* - CR 1.0: 1.0x
|
|
55
|
+
*
|
|
56
|
+
* Exported so EnemyGenerator can use the same formula.
|
|
57
|
+
*/
|
|
58
|
+
export declare function getFractionalCRStatMultiplier(level: number): number;
|
|
59
|
+
/**
|
|
60
|
+
* Compute attack stats (damage die, damage modifier, attack bonus) at a given level.
|
|
61
|
+
*
|
|
62
|
+
* Current system:
|
|
63
|
+
* - Damage die: purely rarity-based (d6/d8/d10/d12)
|
|
64
|
+
* - Damage modifier: hardcoded per rarity (+2/+3/+4/+6)
|
|
65
|
+
* - Attack bonus: proficiency + ability modifier (but ability modifier is ignored)
|
|
66
|
+
*
|
|
67
|
+
* New system:
|
|
68
|
+
* - Damage die: level-based (d6 → d8 → d10 → d12 → 2d6 → 2d8)
|
|
69
|
+
* - Damage modifier: actual ability modifier from primary stat + base level bonus
|
|
70
|
+
* - Attack bonus: proficiency + ability modifier + extra level bonus
|
|
71
|
+
*
|
|
72
|
+
* @param baseStats - The scaled ability scores for the enemy
|
|
73
|
+
* @param level - Effective attack level (1-30+)
|
|
74
|
+
* @param rarity - Enemy rarity tier
|
|
75
|
+
* @param archetype - Enemy combat archetype (determines primary stat)
|
|
76
|
+
* @returns Object with damageDie, damageModifier, and attackBonus
|
|
77
|
+
*/
|
|
78
|
+
export declare function getAttackAtLevel(baseStats: AbilityScores, level: number, rarity: EnemyRarity, archetype: EnemyArchetype): {
|
|
79
|
+
damageDie: string;
|
|
80
|
+
damageModifier: number;
|
|
81
|
+
attackBonus: number;
|
|
82
|
+
};
|
|
83
|
+
/**
|
|
84
|
+
* Compute AC (defense) at a given level.
|
|
85
|
+
*
|
|
86
|
+
* Current system: AC = baseAC + DEX_modifier + equipment_modifier
|
|
87
|
+
* New system adds level-based AC scaling: AC = baseAC + DEX_modifier + equipment_modifier + levelBonus
|
|
88
|
+
*
|
|
89
|
+
* @param baseStats - The scaled ability scores for the enemy
|
|
90
|
+
* @param level - Effective defense level (1-30+)
|
|
91
|
+
* @param baseAC - Base AC from enemy template (e.g., 13 for orc)
|
|
92
|
+
* @param equipment - Equipment configuration (armor, shield)
|
|
93
|
+
* @returns Computed AC value
|
|
94
|
+
*/
|
|
95
|
+
export declare function getDefenseAtLevel(baseStats: AbilityScores, level: number, baseAC: number, equipment: EquipmentConfig): number;
|
|
96
|
+
/**
|
|
97
|
+
* Compute the ability modifier that should be used for damage,
|
|
98
|
+
* replacing the hardcoded rarity-based modifier.
|
|
99
|
+
*
|
|
100
|
+
* Uses the actual primary ability score for the archetype:
|
|
101
|
+
* - Brute: STR modifier
|
|
102
|
+
* - Archer: DEX modifier
|
|
103
|
+
* - Support: CHA modifier
|
|
104
|
+
*
|
|
105
|
+
* Plus a small base bonus from level scaling.
|
|
106
|
+
*
|
|
107
|
+
* @param baseStats - Scaled ability scores
|
|
108
|
+
* @param level - Effective level
|
|
109
|
+
* @param archetype - Enemy archetype
|
|
110
|
+
* @returns Damage modifier to use
|
|
111
|
+
*/
|
|
112
|
+
export declare function getDamageModifierForStats(baseStats: AbilityScores, level: number, archetype: EnemyArchetype): number;
|
|
113
|
+
//# sourceMappingURL=StatScaling.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatScaling.d.ts","sourceRoot":"","sources":["../../src/constants/StatScaling.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAsH3F;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAU3D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,WAAW,GACpB,MAAM,CAWR;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAInE;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,gBAAgB,CAC5B,SAAS,EAAE,aAAa,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,cAAc,GAC1B;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAmBpE;AAkBD;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC7B,SAAS,EAAE,aAAa,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,eAAe,GAC3B,MAAM,CAmBR;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,yBAAyB,CACrC,SAAS,EAAE,aAAa,EACxB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,cAAc,GAC1B,MAAM,CAKR"}
|