v0.14.6 - High-threat weapon skills step 0d (before buffs/items)
- Added step 0d in Veteran: if 2+ monsters have SP >85%, fire weapon skills BEFORE buffs, items, debuffs, or anything else - Only needs OC >= 20 (one skill's worth, builds fast from basic attacks) - Rending Blow > Shatter Strike > Great Cleave, targeting most dangerous monster - Formerly: weapon skills were at step 11, after all buffs and items. Enemies got multiple turns to special attack during the buff-up phase. Now dangerous monsters get shut down immediately.
This commit is contained in:
parent
9af0237754
commit
91d53e0f1c
5 changed files with 78 additions and 6 deletions
|
|
@ -1,7 +1,7 @@
|
||||||
// ==UserScript==
|
// ==UserScript==
|
||||||
// @name HV Unified
|
// @name HV Unified
|
||||||
// @namespace hvunified
|
// @namespace hvunified
|
||||||
// @version 0.14.5
|
// @version 0.14.6
|
||||||
// @description HV Unified — battle automation, guidance, and UI enhancements for HentaiVerse
|
// @description HV Unified — battle automation, guidance, and UI enhancements for HentaiVerse
|
||||||
// @author GaboGG + Hermes
|
// @author GaboGG + Hermes
|
||||||
// @match *://*.hentaiverse.org/*
|
// @match *://*.hentaiverse.org/*
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
// CONFIG — default settings
|
// CONFIG — default settings
|
||||||
// ═══════════════════════════════════════════════════════════════════════
|
// ═══════════════════════════════════════════════════════════════════════
|
||||||
|
|
||||||
const VERSION = '0.14.5';
|
const VERSION = '0.14.6';
|
||||||
|
|
||||||
const CFG = {
|
const CFG = {
|
||||||
// — Battle automation
|
// — Battle automation
|
||||||
|
|
@ -1428,6 +1428,30 @@ function strategyVeteran() {
|
||||||
return { type: 'toggle_spirit', _reason: 'sp_safety' };
|
return { type: 'toggle_spirit', _reason: 'sp_safety' };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 0d. HIGH-THREAT WEAPON SKILLS — before buffs/items/debuffs
|
||||||
|
// If 2+ enemies have >85% SP bar, kill/stun them NOW before they
|
||||||
|
// use special attacks. Don't waste turns buffing while monsters charge.
|
||||||
|
if (hasHighThreat(THREAT_PX) && STATE.oc >= 20) {
|
||||||
|
// Rending Blow: AoE armor pen vs 3+ enemies
|
||||||
|
if (STATE.monsters.length >= 3 && STATE.skillsKnown.includes('Rending Blow')) {
|
||||||
|
const t = findDangerousMonster();
|
||||||
|
if (t >= 0) return { type: 'skill', name: 'Rending Blow', target: t, _reason: 'threat_early' };
|
||||||
|
}
|
||||||
|
// Shatter Strike: AoE stun vs 3+ (needs Penetrated Armor)
|
||||||
|
if (STATE.monsters.length >= 3 && STATE.skillsKnown.includes('Shatter Strike')) {
|
||||||
|
const hasArmorBreak = STATE.monsters.some((m, i) => checkMonsterDebuff(i, 'penetrated_armor'));
|
||||||
|
if (hasArmorBreak) {
|
||||||
|
const t = findDangerousMonster();
|
||||||
|
if (t >= 0) return { type: 'skill', name: 'Shatter Strike', target: t, _reason: 'stun_early' };
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Great Cleave: single-target finisher
|
||||||
|
if (STATE.skillsKnown.includes('Great Cleave')) {
|
||||||
|
const t = findDangerousMonster();
|
||||||
|
if (t >= 0) return { type: 'skill', name: 'Great Cleave', target: t, _reason: 'cleave_early' };
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 1. Health items — safe to use early
|
// 1. Health items — safe to use early
|
||||||
if (STATE.hp < CFG.cureItemHP) {
|
if (STATE.hp < CFG.cureItemHP) {
|
||||||
const gem = hasUsableGem('heal');
|
const gem = hasUsableGem('heal');
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
// ==UserScript==
|
// ==UserScript==
|
||||||
// @name HV Unified
|
// @name HV Unified
|
||||||
// @namespace hvunified
|
// @namespace hvunified
|
||||||
// @version 0.14.5
|
// @version 0.14.6
|
||||||
// @description HV Unified — battle automation, guidance, and UI enhancements for HentaiVerse
|
// @description HV Unified — battle automation, guidance, and UI enhancements for HentaiVerse
|
||||||
// @author GaboGG + Hermes
|
// @author GaboGG + Hermes
|
||||||
// @match *://*.hentaiverse.org/*
|
// @match *://*.hentaiverse.org/*
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
// CONFIG — default settings
|
// CONFIG — default settings
|
||||||
// ═══════════════════════════════════════════════════════════════════════
|
// ═══════════════════════════════════════════════════════════════════════
|
||||||
|
|
||||||
const VERSION = '0.14.5';
|
const VERSION = '0.14.6';
|
||||||
|
|
||||||
const CFG = {
|
const CFG = {
|
||||||
// — Battle automation
|
// — Battle automation
|
||||||
|
|
@ -1428,6 +1428,30 @@ function strategyVeteran() {
|
||||||
return { type: 'toggle_spirit', _reason: 'sp_safety' };
|
return { type: 'toggle_spirit', _reason: 'sp_safety' };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 0d. HIGH-THREAT WEAPON SKILLS — before buffs/items/debuffs
|
||||||
|
// If 2+ enemies have >85% SP bar, kill/stun them NOW before they
|
||||||
|
// use special attacks. Don't waste turns buffing while monsters charge.
|
||||||
|
if (hasHighThreat(THREAT_PX) && STATE.oc >= 20) {
|
||||||
|
// Rending Blow: AoE armor pen vs 3+ enemies
|
||||||
|
if (STATE.monsters.length >= 3 && STATE.skillsKnown.includes('Rending Blow')) {
|
||||||
|
const t = findDangerousMonster();
|
||||||
|
if (t >= 0) return { type: 'skill', name: 'Rending Blow', target: t, _reason: 'threat_early' };
|
||||||
|
}
|
||||||
|
// Shatter Strike: AoE stun vs 3+ (needs Penetrated Armor)
|
||||||
|
if (STATE.monsters.length >= 3 && STATE.skillsKnown.includes('Shatter Strike')) {
|
||||||
|
const hasArmorBreak = STATE.monsters.some((m, i) => checkMonsterDebuff(i, 'penetrated_armor'));
|
||||||
|
if (hasArmorBreak) {
|
||||||
|
const t = findDangerousMonster();
|
||||||
|
if (t >= 0) return { type: 'skill', name: 'Shatter Strike', target: t, _reason: 'stun_early' };
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Great Cleave: single-target finisher
|
||||||
|
if (STATE.skillsKnown.includes('Great Cleave')) {
|
||||||
|
const t = findDangerousMonster();
|
||||||
|
if (t >= 0) return { type: 'skill', name: 'Great Cleave', target: t, _reason: 'cleave_early' };
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 1. Health items — safe to use early
|
// 1. Health items — safe to use early
|
||||||
if (STATE.hp < CFG.cureItemHP) {
|
if (STATE.hp < CFG.cureItemHP) {
|
||||||
const gem = hasUsableGem('heal');
|
const gem = hasUsableGem('heal');
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
// CONFIG — default settings
|
// CONFIG — default settings
|
||||||
// ═══════════════════════════════════════════════════════════════════════
|
// ═══════════════════════════════════════════════════════════════════════
|
||||||
|
|
||||||
const VERSION = '0.14.5';
|
const VERSION = '0.14.6';
|
||||||
|
|
||||||
const CFG = {
|
const CFG = {
|
||||||
// — Battle automation
|
// — Battle automation
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
// ==UserScript==
|
// ==UserScript==
|
||||||
// @name HV Unified
|
// @name HV Unified
|
||||||
// @namespace hvunified
|
// @namespace hvunified
|
||||||
// @version 0.14.5
|
// @version 0.14.6
|
||||||
// @description HV Unified — battle automation, guidance, and UI enhancements for HentaiVerse
|
// @description HV Unified — battle automation, guidance, and UI enhancements for HentaiVerse
|
||||||
// @author GaboGG + Hermes
|
// @author GaboGG + Hermes
|
||||||
// @match *://*.hentaiverse.org/*
|
// @match *://*.hentaiverse.org/*
|
||||||
|
|
|
||||||
|
|
@ -703,6 +703,30 @@ function strategyVeteran() {
|
||||||
return { type: 'toggle_spirit', _reason: 'sp_safety' };
|
return { type: 'toggle_spirit', _reason: 'sp_safety' };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 0d. HIGH-THREAT WEAPON SKILLS — before buffs/items/debuffs
|
||||||
|
// If 2+ enemies have >85% SP bar, kill/stun them NOW before they
|
||||||
|
// use special attacks. Don't waste turns buffing while monsters charge.
|
||||||
|
if (hasHighThreat(THREAT_PX) && STATE.oc >= 20) {
|
||||||
|
// Rending Blow: AoE armor pen vs 3+ enemies
|
||||||
|
if (STATE.monsters.length >= 3 && STATE.skillsKnown.includes('Rending Blow')) {
|
||||||
|
const t = findDangerousMonster();
|
||||||
|
if (t >= 0) return { type: 'skill', name: 'Rending Blow', target: t, _reason: 'threat_early' };
|
||||||
|
}
|
||||||
|
// Shatter Strike: AoE stun vs 3+ (needs Penetrated Armor)
|
||||||
|
if (STATE.monsters.length >= 3 && STATE.skillsKnown.includes('Shatter Strike')) {
|
||||||
|
const hasArmorBreak = STATE.monsters.some((m, i) => checkMonsterDebuff(i, 'penetrated_armor'));
|
||||||
|
if (hasArmorBreak) {
|
||||||
|
const t = findDangerousMonster();
|
||||||
|
if (t >= 0) return { type: 'skill', name: 'Shatter Strike', target: t, _reason: 'stun_early' };
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Great Cleave: single-target finisher
|
||||||
|
if (STATE.skillsKnown.includes('Great Cleave')) {
|
||||||
|
const t = findDangerousMonster();
|
||||||
|
if (t >= 0) return { type: 'skill', name: 'Great Cleave', target: t, _reason: 'cleave_early' };
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 1. Health items — safe to use early
|
// 1. Health items — safe to use early
|
||||||
if (STATE.hp < CFG.cureItemHP) {
|
if (STATE.hp < CFG.cureItemHP) {
|
||||||
const gem = hasUsableGem('heal');
|
const gem = hasUsableGem('heal');
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue