v0.4.0
This update fixes bugs with battle effect order and adds battle visualization. These changes can be seen in PR #2.
Features
- Added better battle visualization with DAGs.
- Includes feature in
.saptest.tomlto disable graphs for performance.
- Includes feature in
- Added team names to
SapDBfrom the Team Names SAP wiki page. - Added random generation of team names for
Team. - Added
teamfield toPet. - Added
soldfield toTeamto store sold pets. - Added condition in
Team::fight()that preventsTeams with identical names from fighting.- This is necessary for building the digraph.
Changes/Fixes
- Changed
Team::clear_team()to retain empty slots in middle of friends and push up the first pet if empty slots ahead of it. - Changed certain
Actionlike theExperienceandProfitvariants to take args soMultiplenot required. - Changed
Cloneimpl forTeamadds "_copy" suffix so each team always has a unique name. - Changed
TeamEffects::trigger_effects()to be only for pet effects. Split item effects intoTeamEffects::trigger_items(). - Fixed
Team::restore()to not invalidate previousPetreferences. - Fixed bug where new
Tigerabilities fromrepeat_effects_if_tiger()were not mapped to the effect pet causing the effects to be invalid. - Fixed bug in battle effect order where which side invoked
Team::fight()would alter the battle outcome.lhs.fight(rhs) != rhs.fight(lhs)- Fixed by correctly changing triggers to deplete by the team with the lowest attack pet at the front. Also fixed so item effects activate last.
- Fixed bug with
Chilinot activating Knockout effects withRhino/Hippo. - Removed some hard-coded actions like
Action::TapirandAction::VulturewithAction::Conditionalactions. - Removed
idarg forPet::new()as uniquePetids are now required. - Updated docs and benchmarks.