Skip to content

Latest commit

 

History

History
674 lines (366 loc) · 34.2 KB

CHANGELOG.md

File metadata and controls

674 lines (366 loc) · 34.2 KB

Changelog

v0.2.0 (2024-01-28)

Feature

  • Remove buildsables as a concept from polygons (aedd4de)

Fix

  • Add building of linux extension back in workflow (13368b8)
  • Update scripts to compile the extension for ladder (161bd44)
  • Remove capital letters from package name to make poetry happy (eff6f1c)

v0.1.0 (2023-09-07)

Feature

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

0.0.87 (2021-05-04)

  • Include function add_cost_to_multiple_grids to avoid calculating the same circle for every different grid the user wants to add the same cost to (6baedc0, thanks to rasper!)

0.0.86 (2021-04-03)

Bug Fixes

  • Fixing bug when going in and out of the same nydus entrance when pathfinding (abf444f1)

0.0.85 (2021-03-27)

  • Removed pyastar dependency and the deprecated pathfind_pyastar function completely (c310ac4c)
  • Added support for using nyduses with pathfinding (636af5ea)

0.0.84 (2021-02-03)

Refactoring

  • test: renamed test pathing function to be more descriptive of what it does (778333d)

Tests

  • assert that illegal weights are tolerated in Pather (4c846aa)

Bug Fixes

  • fix add_cost crashing when a very specific input is present (bc5052ec)

0.0.83 (2021-02-02)

Bug Fixes

0.0.82 (2021-01-11)

Bug Fixes

  • Fixed climber grid issue on SubmarineLE (#140)

0.0.81 (2021-01-06)

Features

  • Adjust finding eligible pathing points (090eed9)
  • Break a choke check loop if choke is removed (9413288)
  • Turn path smoothing around, so it works front to back (9413288)

Bug Fixes

  • Fix path smoothing calculations (0a69a87)
  • Fix variable having wrong type (3a663d4)
  • Fix Crash on cleaning overlapping chokes (6aebbc4)

0.0.80 (2021-01-03)

Features

  • Added support for array output in lowest_cost_points_array (06d96e4)
  • Pathfinding engine now takes into account unit size (footprint) (ec3abaf5)
  • New draw_circle function to replace skdraw.disk (072ee6c)
  • Add function to find eligible points nearby in pather (5a2e5c7)
  • Add destructable type to grid calculations (7495b9b)
  • Pathfinding now allows to query with unit sizes x <= 1 and 1 < x <= 2
  • Pathfinding starting and end points are adjusted if they are inside some nonpathable thing such as a building or rocks. The new start or end point will be the closest pathable point, prioritizing points on the same terrain height level first before looking at other points
  • Pathing grids update during the game and mostly without much work
  • Pathing grid is also now much more accurate. The attempt is to represent each unit with precisely the right size instead of circles that are roughly correct
  • Creating new pathing grids when requested is much faster because we don't need to loop over the destructables

Bug Fixes

  • air grid generation (8acbed77)
  • air vs ground grid (39ca942d)
  • deprecated time.clock() on python version > 3.7 (e83832d4)
  • All documentation example now work (e6073df5)

Tests

  • Test destructable types (cafbead)
  • fix air vs ground test (a2f4e27)
  • added --doctest-modules flag to pytest.ini. all doc tests use a Goldenwall MapData mock (5364a6c3)

Issues Closed:

0.0.79 (2020-12-30)

Features

  • add a ladder compatible version of the c extension in the repo (500a900)

Bug Fixes

  • CLI version parse error (c133b7d)

0.0.78 (2020-12-27)

A* pathfinding is now implemented within the library, in C(default) #111

  • Implementing pathfinding and map analysis in C, allowing to remove pyastar and sc2pathlib as dependencies

  • Implementing smoothed pathfinding

  • Fixing choke objects in the mapanalyzer, so they have sides etc that better reflect reality

  • Fixing ramp objects that come from burnysc2 if the info is broken due to destructables (a8ad54a)

  • overlord spots + drawing (bfac2bb)

    Refactoring

    • moving raw chokes into their own class( RawChoke) (bf9aebb)

    Tests

    • test that for each choke a main line actually exists (dcef428)
    • testing the choke sides are included in choke points (308cf29)

    ⚠ BREAKING CHANGES

    • remove sc2pathlib (787c6b8)
    • pyastar is now deprecated, yet still supported (and can be accessed via pathfind_pyastar)
    • RawChoke objects from C ext instead of PathlibChokes from former sc2pathlib

Features

  • Improve find_lowest_cost_efficiency (#114)

Bug Fixes

  • int cast bug (b055bf4)
  • scout now walks the path (2f04b03)
  • temp fix for climber grid test (1f8f611)
  • Fix crash on python3.9 (#112)

Issues Closed:

0.0.77 (2020-12-13)

Features

  • Debugger now plots choke side a and side b with text indicators (sA, sB) (9dd8c07)
  • Polygon now has top,bottom,right,left properties (8f5b0c9)
  • Round position in add_cost to reduce inaccuracy (#100)

Refactoring

  • left right of choke are now side_a and side_b, sides are computed accuratly now (125f881)

Tests

  • testing the choke sides are included in choke points (e3b0b26)

Issues Closed:

0.0.76 (2020-11-24)

Features

  • add include_destructables to get_climber_grid in mapdata (0e8aaf9)

0.0.75 (2020-11-07)

Features

  • ChokeArea now has left/right properties (be13d59)
  • MDRamp offset attribute for walloff, corner_walloff, middle_walloff_depot properties (5fb232c)
  • plot_map now also draws the Left/Right bounds of each choke (da66c0e)
  • WIP wall off points for each and every choke (e99bb63)

Bug Fixes

  • fix install order in setup (cdbf0f7)
  • overlapping chokes from sc2pathlib are merged (still WIP) (38cdaa5)
  • typo, import logger from loguru (64d0960)

Refactoring

  • add_cost is now a static method (8217749)
  • overall static methods to be static (66b4b0e)
  • remove log method from MapData (0d98393)

0.0.74 (2020-10-17)

Features

  • added example bot ref to README.MD (7ceedf2)
  • dummybot.py is an example bot with a few handy use cases showing (35f1cc9)

Issues Closed:

0.0.73 (2020-10-01)

Bug Fixes

  • fix clean_air_grid being wrongly constructed of integers instead of np.float32 (278241c)

Documentation

  • Added instruction on how to query cost in a specific point on the grid (e0c8e19)

Tests

  • now testing clean_air_grid for dtype bugfix by checking path lengths (b47bae4)

0.0.72 (2020-09-29)

Bug Fixes

  • fix double transpose bug that happens when requesting low cost points more than once per frame (ffd6b84)

Tests

  • find low cost points now also tests that the distance between the point and the origin makes sense( the array is not transposed) (76a0e19)

0.0.71 (2020-09-28)

Bug Fixes

  • fixed transposed grid bug when searching for low cost points , added support for grids constructed from outside sources (c127901)
  • log compatability with bots (8960716)

Tests

  • find low cost points is now tested on all grid types (6ec010d)

0.0.70 (2020-09-22)

Bug Fixes

  • MapData now accepts a corner_distance variable that will determine the corner distance calculation (294df181)

Build System

  • add wheel to requirements and setup.py (eb663a9)

Issues Closed:

0.0.69 (2020-09-19)

Bug Fixes

  • fix pathing grid set up incorrectly when there are no vision blockers (d49a084)

0.0.68 (2020-09-19)

Features

  • Buildable points now respect flying buildings (b90123f)
  • pathfind method will now return the path without the start point in it (06481d8)

Bug Fixes

  • Excluded lowered supply depots from non pathables #85 (#85)

Issues Closed:

0.0.67 (2020-09-17)

Features

  • add cost now accepts initial_default_weights argument ( known use case is for air_vs_ground grid ) (7fe542f)

Issues Closed:

0.0.66 (2020-09-10)

Features

  • map_data.find_lowest_cost_points within a radius (ab5073c)
  • map_data.draw_influence_in_game (23d0004)

Issues Closed:

0.0.64 (2020-09-06)

Bug Fixes

  • (81, 29) on EverDreamLE is considered in map bounds even though it is not (63b91f5)
  • air_vs_ground grid now accounts ramp points as pathable (99ad04d)

Performance Improvements

  • removed duplicate calculations from polygon _set_points (948edeb)

Tests

  • air_vs_ground grid now tests that ramps are computed correctly (6a37be1)

Issues Closed:

0.0.63 (2020-09-02)

Bug Fixes

  • debugger will now not try to inherit sc2 logger when in arcade mode (03fefd7)
  • mapdata will now compile the map in arcade mode, with limited information available (92d9a5f)

0.0.62 (2020-09-02)

Features

  • Buildable points are now mapped to Point2, logger now inherits sc2.main.logger (7d8dc88)
  • MapData now accepts arcade boolean argument on init (d380f2e)

Performance Improvements

  • Pather changed the unpacking method of vision blockers into the grid (7f4b9c3)

0.0.61 (2020-08-30)

Performance Improvements

Features

  • added check that returns only points that are in bounds (86891c9)

  • pather now includes geysers as non pathable (94d592c)

Issues Closed:

0.0.60 (2020-08-30)

Features

  • visionblockers are now counted as pathable in the path grid (8120fe9)

Issues Closed:

0.0.59 (2020-08-27)

Refactoring

Tests

  • region tests now deault to using where_all instead of where (1ec9fc1)
  • removed is_inside_indices (429dd52)

0.0.58 (2020-08-26)

Bug Fixes

  • geysers are now accounted for iin the path grid, lowered mineral radius, changed the radius constants to more descriptive name (radius_factor) (94d592c)

0.0.57 (2020-08-26)

⚠ BREAKING CHANGES

  • Polygon.buildable_points -> Polygon.buildables

Features

  • debugger now has .scatter method, moved readme examples to docs (91be892)

Documentation

Refactoring

  • BuildablePoints to Buildables (ce3b7ac)
  • Pather add_influence to add_cost (8cc6c47)

0.0.56 (2020-08-22)

Bug Fixes

  • fixed the calling order in polygon._set_points() (2e60287)

Documentation

Refactoring

  • version attribute is now in MapAnalyzer.init.py , updated versionbump methods in vb, and adjusted setup (4409c7d)

0.0.55 (2020-08-20)

Bug Fixes

  • all point properties are now converted to int instead of np.int + tests for tuple vs Point2 (120b27f)

Refactoring

  • Polygon now calls ._set_points() instead of doing it in init (02229e2)

Documentation

  • build changlog for new version (b5b357b)
  • clean up + fix vb makedocs (3e68375)
  • clean up readme a bit (d7250fa)
  • documented polygon, region, constructs (131bbd3)

0.0.54 (2020-08-19)

⚠ BREAKING CHANGES

Refactoring

  • add_influence to add_cost, r to radius, p to position, arr to grid (4bfbfee)
  • compile_map is now a private method (_compile_map) (8b27883)

Bug Fixes

  • all points returned from mapdata object will now be of type Point2, and populated with standard integers

Documentation

0.0.53 (2020-08-16)

Features

  • MapData.region_connectivity_all_paths will now return all options for pathing from Region to Region, while respecting a not_through list of regions to be excluded. (9758950)

  • Base (#65) -> dev -> master (#66) (60e2d2d), closes #65 #66 #64

Issues Closed:

0.0.52 (2020-08-15)

⚠ BREAKING CHANGES

  • Region is now a Child of Polygon (Refactor)

Bug Fixes

  • regions and ramps now set each other correctly

  • mapdata test for plotting (b987fb6)

  • Base (#65) (209d6d1), closes #65 #64

0.0.51 (2020-08-14)

Bug Fixes

  • bool compatibility with burnysc2 (9618799)

0.0.50 (2020-08-13)

Features

  • Polygon/ Region now has the property 'buildable_points' (25952f7)

Bug Fixes

  • [#61] pathfind will not crash the bot when start or goal are not passed properly, also a logging error will print out (08466b5)
  • fix point_to_numpy_array method (4d56755)
  • points_to_numpy_array now filters out outofbounds (aedf9d2)

0.0.49 (2020-08-12)

Bug Fixes

  • #58 climber_grid is now aware of nonpathables (such as minerals, destructibles etc) (98dcbec)
  • #59 clean air grid will now accept 'default_weight' argument (MapData, Pather) (355ab7d)
  • climber_grid tests (5216d0c)
  • import error on region-polygon (b8ea912)
  • mapdata test for plotting (26a7c15)
  • versionbump cli now commits setup.py before calling standard-version (50eb667)

Documentation

  • added cli reminder to commit setup.py on versionbump (28a65a3)

0.0.48 (2020-08-11)

Bug Fixes

  • path through destructables. destructables rocks radius factor from 0.8 to 1 (2fd1a32)

0.0.47 (2020-08-11)

Features

  • feat: get_air_vs_ground_grid, get_clean_air_grid

BugFixes

  • fix: max_region_size up to 8500 to fix goldenwall
  • added air_pathing deprecation warning for requesting through pyastar

Issues Closed:

0.0.46 (2020-08-10)

Documentation

  • moved changelog from readme.md to changelog.md (0927cba)

0.0.45 (2020-08-10)

Features

Climber grid (#52)

  • feat: get_climber_grid a pathing grid for climbing units such as colossus and reapers

0.0.43 (2020-08-10)

BugFixes:

  • Pather will no longer try to path through mineral walls ( like in goldenwall)
  • Fix circular import bug on Debugger
  • Fixed malformed point orientation in rare cases

Tests

  • Now testing both installation types (setup.py and requirements.txt)
  • Every test will now use the MapAnalyzer.util functions when it can
  • Removed redundant test_map_data from TestSanity, and put it in its right place, test_mapdata

Issues Closed:

Code Changes

Debugger

  • Now inspects stack and will not save on tests
  • Will no longer circular call map_data for plotting

Pather

  • Radius for resource blockers is now 2, this passes all tests

MapData

  • Grouped methods in map_data for better readablitiy
  • Moved get_sets_with_mutual_elements to utils
  • Resource_blockers are now calculated with original coords
  • Removed usage of neighbores , instead adding influence with radius

0.0.42 (2020-08-07)

  • feat Version bump cli (#50) (b753d34), closes #50

Features

  • cli interface for version bump: Bump Version + changelog generation (20b1e70)

0.0.24 (2020-08-07)