- Listen for jpx_ctrlWidget_update (detail.active) — jpx's own state signal - Re-trigger M when jpx reports inactive + monsters present + not battle over - Fallback 2s poll in case the event is missed on page reload - Cooldown guard (2.5s) to avoid double-trigger - Stops on maxRounds / low HP / battle finish
38 lines
1.5 KiB
JavaScript
38 lines
1.5 KiB
JavaScript
// ═══════════════════════════════════════════════════════════════════════
|
|
// CONFIG — default settings
|
|
// ═══════════════════════════════════════════════════════════════════════
|
|
|
|
const VERSION = '0.17.1';
|
|
|
|
const CFG = {
|
|
// — Battle strategy advisory
|
|
autoBuff: true,
|
|
autoDebuff: true,
|
|
autoCure: true,
|
|
|
|
// — Thresholds (simulation-backed)
|
|
cureHP: 0.45, // Cast Cure below this HP
|
|
cureItemHP: 0.50, // Use health items at this HP
|
|
cureRegenHP: 0.65, // Cast Regen below this HP
|
|
manaGemMP: 0.45, // Use mana gems below this MP
|
|
manaPotionMP: 0.25, // Use mana potions at this MP
|
|
skillOC: 60, // Use weapon skills at this OC
|
|
useAttackSpells: false, // Don't use attack spells (let channel proc naturally)
|
|
|
|
// — Out of battle
|
|
autoSell: true,
|
|
sellQuality: 'Average',
|
|
trainingQueue: true,
|
|
|
|
// — UI & Guidance
|
|
cfgButton: true,
|
|
showGuidance: true,
|
|
showEquipAdvice: true,
|
|
autoDifficulty: true,
|
|
|
|
// — jpx integration (bridge)
|
|
autoChainJpx: true, // Re-trigger jpx auto-battle (M) after each round
|
|
chainMinHP: 0.25, // Pause chaining below this HP
|
|
chainMaxRounds: 0, // 0 = unlimited; else stop after N rounds
|
|
};
|
|
|