Changelog
Changelog
Section titled “Changelog”Smart Trainers 1.1.1
Section titled “Smart Trainers 1.1.1”Existing custom battle_ai configs continue to load and behave normally. If you extracted bundled configs into your own datapack, merge or regenerate them to pick up the new high-skill opponent knowledge defaults.
Battle AI
Section titled “Battle AI”- Added opponent knowledge flags:
know_opponent_team,know_opponent_moves, andknow_opponent_abilities. - High-skill bundled AI configs now know unrevealed opponent moves and abilities, so they can avoid obvious ability immunities and priority blockers before the opponent reveals them.
- Status moves no longer count as STAB.
q.move.is_stabis only true for damaging moves. - No-target and field-side moves now stay in scoring instead of being dropped for lacking a direct target.
- Choice item lock checks now retain the selected move, so Choice Band, Choice Specs, and Choice Scarf behavior can be queried reliably.
- Live Cobblemon hazard contexts are considered alongside memory when reading hazards on each side.
Molang
Section titled “Molang”- Added/fixed Choice item queries:
q.pokemon.is_choice,q.pokemon.is_choice_locked, andq.pokemon.choice_locked_move. - Added target volatile queries, including
q.target.volatilesandq.target.has_volatile(name). - Added aspect queries on active Pokemon, targets, allies, and switch candidates with
aspect(name)andhas_aspect(name). - Added team and opponent-team move/ability checks under
q.team.*andq.opponent_team.*. - Added move checks for known ability immunities and priority blockers:
q.move.ability_immunity,q.move.priority_blocked_by_target_ability, andq.move.blocked_by_target_ability. - Added aggregate hazard helpers:
.anyand.total_layersonq.battle.hazards_on_our_sideandq.battle.hazards_on_enemy_side.