Releases: hsahovic/poke-env
0.10.0 - `DoublesEnv`, damage calc & more!
What's Changed
- Introduce
DoublesEnv
by @cameronangliss in #687 - Adding Gen9 Damage Calc by @caymansimpson in #721
- Make open team sheets data populate the battle object by @cameronangliss in #660
- Clean up gimmicks interface by @cameronangliss in #732
- move RandomPlayer to baselines.py by @cameronangliss in #726
- Leave battle room when finished by @cameronangliss in #727
- Minimal env interface by @cameronangliss in #714
- Update examples by @cameronangliss in #740
Bug fixes
- Make a fix for a bug with strict in SingleAgentWrapper by @cameronangliss in #728
Dev changes & Refactors
- Unit Test Coverage for #660 by @cameronangliss in #743
- Simplify env.py file by @cameronangliss in #741
- Refactor battle order by @cameronangliss in #734
- Account config refactor by @cameronangliss in #731
- Reorganizing modules and cleaning imports by @cameronangliss in #742
Full Changelog: 0.9.0...0.10.0
0.9.0
What's new
- Add packed parsing to TeambuilderPokemon by @hsahovic in #722
- Introduce
SingleAgentWrapper
by @cameronangliss in #686
Bug fixes
Dev changes
- Some more CI failure fixes by @cameronangliss in #720
Full Changelog: 0.8.4...0.9.0
0.8.4
What's new
- remove openai branding, update gym terminology with gymnasium by @acxz in #649
- open_timeout is configurable by @cameronangliss in #665
- Improved
battle_against
API by @cameronangliss in #657 - PettingZoo Integration by @cameronangliss in #664
- Add focus punch to _FROM_DATA by @cameronangliss in #670
- Organize gymnasium_api.py by @cameronangliss in #669
- Remove unnecessary callback parameters by @cameronangliss in #673
- Get rid of last_battle by @cameronangliss in #671
- Don't pass env into
_EnvPlayer
instantiation by @cameronangliss in #672 - ObservedPokemon enhancements, parse_battle_message fixes and StringBattleOrder by @caymansimpson in #676
- No more
describe_embedding
by @cameronangliss in #674 - None input maps to "pass" instead of DefaultBattleOrder by @cameronangliss in #659
- Move away from observation timeout by @cameronangliss in #688
- Introduce
SinglesEnv
by @cameronangliss in #683 - Replace
Snow
withSnowscape
by @shrianshChari in #709 - Add backwards compatibility with servers that use Snow as the weather by @shrianshChari in #712
- Adding original_types as a property to Pokemon by @caymansimpson in #715
Bug fixes
- Revival Blessing Bugfix by @cameronangliss in #667
- Fix mistakes from #672 merge by @cameronangliss in #678
- Fix from protocol message format by @hsahovic in #690
- Fix concurrency bug by @cameronangliss in #695
- Fix several bugs getting caught by CI by @cameronangliss in #704
- Fix Reflect Type/Heart Swap errors by @TVFLabs in #711
Dev changes
New Contributors
- @shrianshChari made their first contribution in #709
- @TVFLabs made their first contribution in #711
Full Changelog: 0.8.3...0.8.4
0.8.3
What's new
- Adding VolatileStatus by @caymansimpson in #556
- Added gen and format information to AbstractBattle by @caymansimpson in #558
- Enhancing ObservedPokemon and Adding naming consistency to terrastilized by @caymansimpson in #565
- Adding stats storage, name in Pokemon, and teampreview storage by @caymansimpson in #581
- Added Effect Handling, and reordered a set for lint by @caymansimpson in #593
- Added further Effects handling from Showdown parsing and fainting by @caymansimpson in #596
- Added proper handling for moves that create -singlemove effects in Sh… by @caymansimpson in #633
- Replaced rqid with Last Request by @caymansimpson in #634
- Add Effects for VGC 2024 by @caymansimpson in #642
- Added current_observation property to AbstractBattle by @caymansimpson in #639
- Added terastarstorm support for doubles by @caymansimpson in #640
- Copied split_message for more predictable handling by @caymansimpson in #641
- Adding support for Temporary Types and Abilities by @caymansimpson in #647
- Update support python versions by @hsahovic in #648
- Make some methods of Player static by @cameronangliss in #653
- Randomize team choice for each battle by @cameronangliss in #655
- Env can accept open sheets by @cameronangliss in #654
Bug fixes
- Fixed Move SideConditions and corrected protect classifications by @caymansimpson in #557
- Ignore opponent turning off battle timer by @BaiqingL in #583
- Fixing memory leak by @Benjamin-Etheredge in #591
- Fixed name and teambuilder handling by @caymansimpson in #638
- Added correct handling for pledge moves by @caymansimpson in #637
- Added correct interpretation of hospitality showdown protocol by @caymansimpson in #635
- SimpleHeuristicPlayer bugfix by @cameronangliss in #656
Dev changes
New Contributors
- @BaiqingL made their first contribution in #583
- @Benjamin-Etheredge made their first contribution in #591
Thank you for all your contributions!
Full Changelog: 0.8.2...0.8.3
0.8.2
Edit: this version never got deployed to Pypi because of a misconfigured toml file. All these changes have been introduced in 0.8.3.
What's new
- Adding VolatileStatus by @caymansimpson in #556
- Added gen and format information to AbstractBattle by @caymansimpson in #558
- Enhancing ObservedPokemon and Adding naming consistency to terrastilized by @caymansimpson in #565
- Adding stats storage, name in Pokemon, and teampreview storage by @caymansimpson in #581
- Added Effect Handling, and reordered a set for lint by @caymansimpson in #593
- Added further Effects handling from Showdown parsing and fainting by @caymansimpson in #596
- Added proper handling for moves that create -singlemove effects in Sh… by @caymansimpson in #633
- Replaced rqid with Last Request by @caymansimpson in #634
- Add Effects for VGC 2024 by @caymansimpson in #642
- Added current_observation property to AbstractBattle by @caymansimpson in #639
- Added terastarstorm support for doubles by @caymansimpson in #640
- Copied split_message for more predictable handling by @caymansimpson in #641
- Adding support for Temporary Types and Abilities by @caymansimpson in #647
- Update support python versions by @hsahovic in #648
- Make some methods of Player static by @cameronangliss in #653
- Randomize team choice for each battle by @cameronangliss in #655
Bug fixes
- Fixed Move SideConditions and corrected protect classifications by @caymansimpson in #557
- Ignore opponent turning off battle timer by @BaiqingL in #583
- Fixing memory leak by @Benjamin-Etheredge in #591
- Fixed name and teambuilder handling by @caymansimpson in #638
- Added correct handling for pledge moves by @caymansimpson in #637
- Added correct interpretation of hospitality showdown protocol by @caymansimpson in #635
- SimpleHeuristicPlayer bugfix by @cameronangliss in #656
Dev changes
New Contributors
- @BaiqingL made their first contribution in #583
- @Benjamin-Etheredge made their first contribution in #591
Thank you for all your contributions!
Full Changelog: 0.8.1...0.8.2
0.8.1
What's Changed
- Moving from gym to gymnasium by @cameronangliss in #467
- Complying with
check_env
by @cameronangliss in #472 - Switch documentation examples to notebooks and misc improvements by @hsahovic in #459
- Updated custom_teambuilder.py by @lcgabaldon in #513
- Adding enumerations for the target property of moves by @caymansimpson in #529
- Open Team Sheets by @caymansimpson in #533
- Add doubles logic to MaxBasePowerPlayer by @hsahovic in #537
- Observations & ObservedPokemon by @caymansimpson in #544
- Force Switch Battle Property Tracking Bugfix by @cameronangliss in #478
- Add STELLAR type in 70ea04d
New Contributors
- @lcgabaldon made their first contribution in #513
- @caymansimpson made their first contribution in #529
Full Changelog: 0.8.0...0.8.1
Create ps_client submodule and better support for gens 1-4
Features
- Create
ps_client
submodule - Fix physical / special split for gen 4 and earlier
- Add
???
type - Replace python 3.7 support with python 3.11 support
Bug Fixes
- Fix avatar setting
- Fix allyswitch on same turn as faint issue
Other changes
- Move from
setup.py
topyproject.toml
(thanks @cameronangliss!) - Start using isort (thanks @cameronangliss!)
- Update deployment workflow
- Better type checking (thanks @cameronangliss!)
- Update teams used in integration tests
- Reorganize and update docs
New Contributors
- @cameronangliss made their first contribution in #398
Full Changelog: 0.7.1...0.7.2
0.7.1
This release adds Gen9EnvPlayer
, as well as a couple of gen 9-related features, bug fixes and misc improvements.
Features:
- Add
Gen9EnvPlayer
class - Add
update_team
method toPlayer
objects - Add
tera
support in theTeambuilder
submodule, in parsing and team generation - Add learnset to
GenData
objects - Ignore
OTS
requests
Bug fixes & misc:
- Deal with Metronome and Nature Power move storage bug
- Add
THERMAL_EXCHANGE
effect - Add gen9 diagnostic tool singles script
- Make
SimpleHeuristicPlayer
behave like a random agent in doubles - Add tera options to random agents in singles and doubles
- Make
GenData
deepcopy return itself - it's a singleton class
Thanks to @AoifeHughes and @kodecreer for their contributions!
Preliminary gen 9 support
This release introduces basic gen 9 support. Random battles is the main format that has been tested - things are probably still a bit broken more generally. If you encounter something weird, please open an issue.
Features:
- Basic gen 9 support, including
tera
support - Gen 9 effects
- Revamped data update scripts
Bug fixes:
- Typos in docs (#361)
- Fix a bug where spread zmoves message could freeze a battle
- Fix a bug where a
disabled
move error message could freeze a battle - Fix
recharge
Move
data - Fix a bug in simple heurstic player choose move (#376)
- Fix a bug where some moves referencing other moves would get two pp uses instead of one (#355)
- Fix a bug where indented PS teams couldn't get parsed (#367)
- Fix max PP count. Now assumes maxed out PPs (#355)
Better data utilities
poke_env.utils
are nowpoke_env.stats
- Create
data
submodule - Create
GenData
class - Bug fix: active pokemon is not set correctly when not all mons are selected in team-preview
This release is a step towards gen 9 support. Preliminary gen 9 support is available on #351