All notable changes to this project will be documented in this file.
Compositeclass to create armies with. This holds all the meta information for a unit group.Samplingclass. Lightweight replacement forDistribution.- Optional
tqdmpackage support with simulate_k method.
- Significant internal cleaning of
Battleobject. - Optimisations to
simulate_fastfunction have lead to around 20x speed up usingnumbamore efficiently. - Integration of numpy array with heterogenous aligned data type with numba continued.
- Unit tiling significantly improved using lerp over distance minimizations.
Distributionclass. This was too verbose and has been replaced withSampling.
- Terrains can now be generated using perlin noise. This is not only significantly faster for larger maps but generates more attractive background maps.
- Large-scale internal adjustments, code cleaning, new folders and files
- Latest versions of
numbaallow for heterogeneous matrix dtypes, allowing for code refactoring for jit sections. Significantly cleaner function arguments. - adjustments as to how
Terrainis generated.
Terrain. This is a major expansion giving 3D pseudodepth to animated battles. Depth now influences:- Decreased movement speed on hills
- Increased range of units on hills
- Increased damage output of units targeting downhill enemies
- Boundary checking for units
pipsupportCHANGELOG.mdfile- First release on GitHub 0.3.5
jitcodefor streamlinednumbause- Global
targetfunctions for initialization - Armor calculations for units
example4.ipynbto reflect changes
__init__file dependencies- Removed file requirement for
Battle() Distributionconstructor now accepts copy-constructor of another Distribution- Made
Battleattributes properties to protect them
- Alternative constructor for
Distribution
- Integrated terrain background
- Terrain weighting in unit movement calculations
- Streamlined
Terrain,DistributionintoBattleobject
test_movetest suite
- Teaching material
- General decision-based AI with
aggressiveandhit_and_runoptions Terraindefinition- LICENSE.
- Size-dependency on quiver-plots to units.
- Streamlined legend
- Memory usage from
M_object
set_positioninBattle
Ensure that any use of this material is appropriately referenced and in compliance with the license.