From 3488f40a75234a73ddf871f250799b1e62231805 Mon Sep 17 00:00:00 2001 From: Tommy Ettinger Date: Sat, 25 Feb 2017 18:53:38 -0800 Subject: [PATCH] Bugfix, right away! Release 3.0.0-b8 --- README.md | 31 +++++++++++----------- pom.xml | 4 +-- squidlib-extra/README.md | 31 +++++++++++----------- squidlib-extra/pom.xml | 4 +-- squidlib-performance/README.md | 31 +++++++++++----------- squidlib-performance/pom.xml | 6 ++--- squidlib-util/README.md | 35 +++++++++++++------------ squidlib-util/pom.xml | 2 +- squidlib/README.md | 31 +++++++++++----------- squidlib/pom.xml | 4 +-- squidlib/src/main/java/squidlib.gwt.xml | 13 +++++---- 11 files changed, 100 insertions(+), 92 deletions(-) diff --git a/README.md b/README.md index 7b66c6c7c5..12214ce3d5 100644 --- a/README.md +++ b/README.md @@ -8,19 +8,19 @@ SquidLib is used for Wyrm, Epigon, Attack the Geth, Assault Fish, [Dungeon Merce Documentation: --- Jars of javadocs are distributed with each release via Maven Central, and with the current latest via JitPack. You can -get the docs and source of the latest version, 3.0.0-b7, in two parts for each; squidlib-util (the core of the library, +get the docs and source of the latest version, 3.0.0-b8, in two parts for each; squidlib-util (the core of the library, and also the largest part) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b7/squidlib-util-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b7/squidlib-util-3.0.0-b7-sources.jar), +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b8/squidlib-util-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b8/squidlib-util-3.0.0-b8-sources.jar), while squidlib (the display part of the library, named the way it is because depending on squidlib should also pull in squidlib-util to make it a "one-stop shop" dependency) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b7/squidlib-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b7/squidlib-3.0.0-b7-sources.jar). +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b8/squidlib-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b8/squidlib-3.0.0-b8-sources.jar). The completely-optional squidlib-extra module (primarily used for serialization; relies on libGDX but doesn't use it for display) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b7/squidlib-extra-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b7/squidlib-extra-3.0.0-b7-sources.jar). +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b8/squidlib-extra-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b8/squidlib-extra-3.0.0-b8-sources.jar). -You can browse the javadocs of a recent commit (possibly newer than 3.0.0-b7, but no older) +You can browse the javadocs of a recent commit (possibly newer than 3.0.0-b8, but no older) [here for squidlib-util](http://squidpony.github.io/SquidLib/squidlib-util/index.html), [here for squidlib](http://squidpony.github.io/SquidLib/squidlib/index.html), and [here for squidlib-extra](http://squidpony.github.io/SquidLib/squidlib-extra/index.html), though the docs here are @@ -83,7 +83,7 @@ Current Features: - Can get an arbitrary amount of blend between two colors - Starting with 3.0.0 beta 2, you can alter colors automatically using Filters - Starting with 3.0.0 beta 5, lots of options are available for generating gradients, including with Filters, and gradients that wrap around like a rainbow -- In recent betas (7 at least), there's a filter that adjusts the brightness of red and green to help players with common forms of red-green colorblindness distinguish game objects that would otherwise be too similar +- In recent betas (7 onward), there's a filter that adjusts the brightness of red and green to help players with common forms of red-green colorblindness distinguish game objects that would otherwise be too similar - SquidColorCenter (and potentially other IColorCenter implementations) allow finding and adjusting the hue, saturation, and value of colors ###Roguelike-Intended Toolkit @@ -132,7 +132,7 @@ Current Features: - DijkstraMap can be given a Technique that contains a minimum and maximum range, and an Area of Effect, and it will pathfind to a relatively good place to use that technique. - There are many kinds of Area of Effect (AOE) provided, and given the right information, they can calculate the best place to position that AOE to hit as many targets as possible (not an easy task, but it gets calculated quickly). - DijkstraMap can partially scan an area, stopping once it reaches a given distance. - - As of beta 7, DijkstraMap finally incorporates the straightforward optimization of immediately stopping distance + - Since beta 7, DijkstraMap finally incorporates the straightforward optimization of immediately stopping distance calculation once an ideal path has been found; the case of scanning the whole map intentionally is unaffected, though other optimizations made that faster too - It would seem like partial scanning is normally ideal, but there are cases where you can avoid multiple partial scans @@ -140,8 +140,8 @@ Current Features: is used in BasicDemo (in the examples of the display module) to handle the highlighted path from the player to the mouse cursor - Several classes support multi-cell creatures, including DijkstraMap - DijkstraMap is currently recommended for pathfinding because it has been optimized more heavily than AStarSearch - - Make that, much more heavily, as of beta 7; DijkstraMap can, depending on heuristic, beat even top-notch pathfinding algorithms like gdx-ai's indexed A* on long/winding enough paths. - - AStarSearch has gotten some optimization, but is still much slower than DijkstraMap in beta 7 + - Make that, much more heavily, since beta 7; DijkstraMap can, depending on heuristic, beat even top-notch pathfinding algorithms like gdx-ai's indexed A* on long/winding enough paths. + - AStarSearch has gotten some optimization, but is still much slower than DijkstraMap in betas 7 and 8 - CustomDijkstraMap allows pathfinding on unusual map types, such as ones where you can rotate in your cell but it takes time, or where there are thin walls - See ThinWallDemo and RotationDemo in the display module's tests folder for examples; this is an advanced feature, though @@ -205,7 +205,7 @@ Current Features: - Using indexes instead of always using keys can be useful, but it also means that getting random values from these collections will behave as expected across platforms - Most of these classes allow you to specify how keys are hashed and compared for equality, which permits using arrays as keys (if they aren't modified) or even allows the behavior of IdentityHashMap to be used with insertion ordering (which does allow keys to be modified, but has special requirements for accessing them) - The class CrossHash includes multiple hashing algorithms and predefined IHasher values for various usages, which can be passed to many OrderedMap/Set constructors - - SquidLib releases before beta 7 used LinkedHashMap and LinkedHashSet in place of OrderedMap and OrderedSet, and converting from beta 6 to beta 7 may entail some changes + - SquidLib releases before beta 7 used LinkedHashMap and LinkedHashSet in place of OrderedMap and OrderedSet, and converting from beta 6 to beta 7 or later may entail some changes - Maker, a small class in squidlib-util, helps construct these data structures more conveniently - The serialization code in squidlib-extra is aware of these data structures and can serialize them efficiently and with less restrictions that normally apply to JSON (you can serialize non-String keys to our dialect of JSON with OrderedMap, for example) - This code also provides ways to compress the JSON output using lz-string encoding, which performs very well here; it uses the tiny library [BlazingChain](https://github.com/tommyettinger/BlazingChain) to do this @@ -264,7 +264,7 @@ configured the way libGDX prefers to work, and copy in any code you might alread Ideally, if you're just starting out you should use SquidSetup. Beta 6 has been added to SquidSetup. This is [the most recent, beta 6, release of the setup tool](https://github.com/SquidPony/SquidLib/releases/tag/v3.0.0-b6); -beta 7 support is being added to the next build. +beta 8 support is being added to the next build. This is [the new snapshot setup tool](https://github.com/tommyettinger/SquidSetup/releases/tag/v3.0.0-LATEST), which is good if you already understand Gradle, but especially if you want to test new features/fixes as they come in. It currently isn't named in the most accurate way; it actually downloads a fixed version from JitPack.io, but you can @@ -275,7 +275,8 @@ an alternative to the current official libGDX setup that aims to have more featu replace the current SquidSetup for stable releases, and it is likely that the next significant change to SquidSetup will be to make it a simple fork of czyzby's setup tool that includes the assets and also gets the most recent version from JitPack if possible. The gdx-setup project also allows demo code to be more easily supplied, and some demos are in -progress for SquidLib (one is already present in gdx-setup, but it is made for an earlier version of SquidLib). +progress for SquidLib (one is already present in gdx-setup, but it is made for an earlier version of SquidLib; this is +being remedied and gdx-setup should be ready to use beta 8 very soon). More information is available on the wiki here on Github, at the page on [Project Setup](https://github.com/SquidPony/SquidLib/wiki/Project-Setup). It may be somewhat out of date for now. diff --git a/pom.xml b/pom.xml index 7211b2d64c..6cf837365a 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ com.squidpony squidlib-parent - 3.0.0-SNAPSHOT + 3.0.0-b8 pom squidlib-parent @@ -67,7 +67,7 @@ 1.9.3 4.11 - 0.1.8 + 0.1.9 1.4.4.1 diff --git a/squidlib-extra/README.md b/squidlib-extra/README.md index 7b66c6c7c5..12214ce3d5 100644 --- a/squidlib-extra/README.md +++ b/squidlib-extra/README.md @@ -8,19 +8,19 @@ SquidLib is used for Wyrm, Epigon, Attack the Geth, Assault Fish, [Dungeon Merce Documentation: --- Jars of javadocs are distributed with each release via Maven Central, and with the current latest via JitPack. You can -get the docs and source of the latest version, 3.0.0-b7, in two parts for each; squidlib-util (the core of the library, +get the docs and source of the latest version, 3.0.0-b8, in two parts for each; squidlib-util (the core of the library, and also the largest part) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b7/squidlib-util-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b7/squidlib-util-3.0.0-b7-sources.jar), +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b8/squidlib-util-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b8/squidlib-util-3.0.0-b8-sources.jar), while squidlib (the display part of the library, named the way it is because depending on squidlib should also pull in squidlib-util to make it a "one-stop shop" dependency) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b7/squidlib-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b7/squidlib-3.0.0-b7-sources.jar). +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b8/squidlib-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b8/squidlib-3.0.0-b8-sources.jar). The completely-optional squidlib-extra module (primarily used for serialization; relies on libGDX but doesn't use it for display) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b7/squidlib-extra-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b7/squidlib-extra-3.0.0-b7-sources.jar). +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b8/squidlib-extra-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b8/squidlib-extra-3.0.0-b8-sources.jar). -You can browse the javadocs of a recent commit (possibly newer than 3.0.0-b7, but no older) +You can browse the javadocs of a recent commit (possibly newer than 3.0.0-b8, but no older) [here for squidlib-util](http://squidpony.github.io/SquidLib/squidlib-util/index.html), [here for squidlib](http://squidpony.github.io/SquidLib/squidlib/index.html), and [here for squidlib-extra](http://squidpony.github.io/SquidLib/squidlib-extra/index.html), though the docs here are @@ -83,7 +83,7 @@ Current Features: - Can get an arbitrary amount of blend between two colors - Starting with 3.0.0 beta 2, you can alter colors automatically using Filters - Starting with 3.0.0 beta 5, lots of options are available for generating gradients, including with Filters, and gradients that wrap around like a rainbow -- In recent betas (7 at least), there's a filter that adjusts the brightness of red and green to help players with common forms of red-green colorblindness distinguish game objects that would otherwise be too similar +- In recent betas (7 onward), there's a filter that adjusts the brightness of red and green to help players with common forms of red-green colorblindness distinguish game objects that would otherwise be too similar - SquidColorCenter (and potentially other IColorCenter implementations) allow finding and adjusting the hue, saturation, and value of colors ###Roguelike-Intended Toolkit @@ -132,7 +132,7 @@ Current Features: - DijkstraMap can be given a Technique that contains a minimum and maximum range, and an Area of Effect, and it will pathfind to a relatively good place to use that technique. - There are many kinds of Area of Effect (AOE) provided, and given the right information, they can calculate the best place to position that AOE to hit as many targets as possible (not an easy task, but it gets calculated quickly). - DijkstraMap can partially scan an area, stopping once it reaches a given distance. - - As of beta 7, DijkstraMap finally incorporates the straightforward optimization of immediately stopping distance + - Since beta 7, DijkstraMap finally incorporates the straightforward optimization of immediately stopping distance calculation once an ideal path has been found; the case of scanning the whole map intentionally is unaffected, though other optimizations made that faster too - It would seem like partial scanning is normally ideal, but there are cases where you can avoid multiple partial scans @@ -140,8 +140,8 @@ Current Features: is used in BasicDemo (in the examples of the display module) to handle the highlighted path from the player to the mouse cursor - Several classes support multi-cell creatures, including DijkstraMap - DijkstraMap is currently recommended for pathfinding because it has been optimized more heavily than AStarSearch - - Make that, much more heavily, as of beta 7; DijkstraMap can, depending on heuristic, beat even top-notch pathfinding algorithms like gdx-ai's indexed A* on long/winding enough paths. - - AStarSearch has gotten some optimization, but is still much slower than DijkstraMap in beta 7 + - Make that, much more heavily, since beta 7; DijkstraMap can, depending on heuristic, beat even top-notch pathfinding algorithms like gdx-ai's indexed A* on long/winding enough paths. + - AStarSearch has gotten some optimization, but is still much slower than DijkstraMap in betas 7 and 8 - CustomDijkstraMap allows pathfinding on unusual map types, such as ones where you can rotate in your cell but it takes time, or where there are thin walls - See ThinWallDemo and RotationDemo in the display module's tests folder for examples; this is an advanced feature, though @@ -205,7 +205,7 @@ Current Features: - Using indexes instead of always using keys can be useful, but it also means that getting random values from these collections will behave as expected across platforms - Most of these classes allow you to specify how keys are hashed and compared for equality, which permits using arrays as keys (if they aren't modified) or even allows the behavior of IdentityHashMap to be used with insertion ordering (which does allow keys to be modified, but has special requirements for accessing them) - The class CrossHash includes multiple hashing algorithms and predefined IHasher values for various usages, which can be passed to many OrderedMap/Set constructors - - SquidLib releases before beta 7 used LinkedHashMap and LinkedHashSet in place of OrderedMap and OrderedSet, and converting from beta 6 to beta 7 may entail some changes + - SquidLib releases before beta 7 used LinkedHashMap and LinkedHashSet in place of OrderedMap and OrderedSet, and converting from beta 6 to beta 7 or later may entail some changes - Maker, a small class in squidlib-util, helps construct these data structures more conveniently - The serialization code in squidlib-extra is aware of these data structures and can serialize them efficiently and with less restrictions that normally apply to JSON (you can serialize non-String keys to our dialect of JSON with OrderedMap, for example) - This code also provides ways to compress the JSON output using lz-string encoding, which performs very well here; it uses the tiny library [BlazingChain](https://github.com/tommyettinger/BlazingChain) to do this @@ -264,7 +264,7 @@ configured the way libGDX prefers to work, and copy in any code you might alread Ideally, if you're just starting out you should use SquidSetup. Beta 6 has been added to SquidSetup. This is [the most recent, beta 6, release of the setup tool](https://github.com/SquidPony/SquidLib/releases/tag/v3.0.0-b6); -beta 7 support is being added to the next build. +beta 8 support is being added to the next build. This is [the new snapshot setup tool](https://github.com/tommyettinger/SquidSetup/releases/tag/v3.0.0-LATEST), which is good if you already understand Gradle, but especially if you want to test new features/fixes as they come in. It currently isn't named in the most accurate way; it actually downloads a fixed version from JitPack.io, but you can @@ -275,7 +275,8 @@ an alternative to the current official libGDX setup that aims to have more featu replace the current SquidSetup for stable releases, and it is likely that the next significant change to SquidSetup will be to make it a simple fork of czyzby's setup tool that includes the assets and also gets the most recent version from JitPack if possible. The gdx-setup project also allows demo code to be more easily supplied, and some demos are in -progress for SquidLib (one is already present in gdx-setup, but it is made for an earlier version of SquidLib). +progress for SquidLib (one is already present in gdx-setup, but it is made for an earlier version of SquidLib; this is +being remedied and gdx-setup should be ready to use beta 8 very soon). More information is available on the wiki here on Github, at the page on [Project Setup](https://github.com/SquidPony/SquidLib/wiki/Project-Setup). It may be somewhat out of date for now. diff --git a/squidlib-extra/pom.xml b/squidlib-extra/pom.xml index 8b5cd47597..67098866db 100644 --- a/squidlib-extra/pom.xml +++ b/squidlib-extra/pom.xml @@ -5,7 +5,7 @@ squidlib-parent com.squidpony - 3.0.0-SNAPSHOT + 3.0.0-b8 4.0.0 @@ -28,7 +28,7 @@ com.squidpony squidlib-util - 3.0.0-SNAPSHOT + 3.0.0-b8 com.badlogicgames.gdx diff --git a/squidlib-performance/README.md b/squidlib-performance/README.md index 7b66c6c7c5..12214ce3d5 100644 --- a/squidlib-performance/README.md +++ b/squidlib-performance/README.md @@ -8,19 +8,19 @@ SquidLib is used for Wyrm, Epigon, Attack the Geth, Assault Fish, [Dungeon Merce Documentation: --- Jars of javadocs are distributed with each release via Maven Central, and with the current latest via JitPack. You can -get the docs and source of the latest version, 3.0.0-b7, in two parts for each; squidlib-util (the core of the library, +get the docs and source of the latest version, 3.0.0-b8, in two parts for each; squidlib-util (the core of the library, and also the largest part) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b7/squidlib-util-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b7/squidlib-util-3.0.0-b7-sources.jar), +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b8/squidlib-util-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b8/squidlib-util-3.0.0-b8-sources.jar), while squidlib (the display part of the library, named the way it is because depending on squidlib should also pull in squidlib-util to make it a "one-stop shop" dependency) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b7/squidlib-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b7/squidlib-3.0.0-b7-sources.jar). +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b8/squidlib-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b8/squidlib-3.0.0-b8-sources.jar). The completely-optional squidlib-extra module (primarily used for serialization; relies on libGDX but doesn't use it for display) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b7/squidlib-extra-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b7/squidlib-extra-3.0.0-b7-sources.jar). +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b8/squidlib-extra-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b8/squidlib-extra-3.0.0-b8-sources.jar). -You can browse the javadocs of a recent commit (possibly newer than 3.0.0-b7, but no older) +You can browse the javadocs of a recent commit (possibly newer than 3.0.0-b8, but no older) [here for squidlib-util](http://squidpony.github.io/SquidLib/squidlib-util/index.html), [here for squidlib](http://squidpony.github.io/SquidLib/squidlib/index.html), and [here for squidlib-extra](http://squidpony.github.io/SquidLib/squidlib-extra/index.html), though the docs here are @@ -83,7 +83,7 @@ Current Features: - Can get an arbitrary amount of blend between two colors - Starting with 3.0.0 beta 2, you can alter colors automatically using Filters - Starting with 3.0.0 beta 5, lots of options are available for generating gradients, including with Filters, and gradients that wrap around like a rainbow -- In recent betas (7 at least), there's a filter that adjusts the brightness of red and green to help players with common forms of red-green colorblindness distinguish game objects that would otherwise be too similar +- In recent betas (7 onward), there's a filter that adjusts the brightness of red and green to help players with common forms of red-green colorblindness distinguish game objects that would otherwise be too similar - SquidColorCenter (and potentially other IColorCenter implementations) allow finding and adjusting the hue, saturation, and value of colors ###Roguelike-Intended Toolkit @@ -132,7 +132,7 @@ Current Features: - DijkstraMap can be given a Technique that contains a minimum and maximum range, and an Area of Effect, and it will pathfind to a relatively good place to use that technique. - There are many kinds of Area of Effect (AOE) provided, and given the right information, they can calculate the best place to position that AOE to hit as many targets as possible (not an easy task, but it gets calculated quickly). - DijkstraMap can partially scan an area, stopping once it reaches a given distance. - - As of beta 7, DijkstraMap finally incorporates the straightforward optimization of immediately stopping distance + - Since beta 7, DijkstraMap finally incorporates the straightforward optimization of immediately stopping distance calculation once an ideal path has been found; the case of scanning the whole map intentionally is unaffected, though other optimizations made that faster too - It would seem like partial scanning is normally ideal, but there are cases where you can avoid multiple partial scans @@ -140,8 +140,8 @@ Current Features: is used in BasicDemo (in the examples of the display module) to handle the highlighted path from the player to the mouse cursor - Several classes support multi-cell creatures, including DijkstraMap - DijkstraMap is currently recommended for pathfinding because it has been optimized more heavily than AStarSearch - - Make that, much more heavily, as of beta 7; DijkstraMap can, depending on heuristic, beat even top-notch pathfinding algorithms like gdx-ai's indexed A* on long/winding enough paths. - - AStarSearch has gotten some optimization, but is still much slower than DijkstraMap in beta 7 + - Make that, much more heavily, since beta 7; DijkstraMap can, depending on heuristic, beat even top-notch pathfinding algorithms like gdx-ai's indexed A* on long/winding enough paths. + - AStarSearch has gotten some optimization, but is still much slower than DijkstraMap in betas 7 and 8 - CustomDijkstraMap allows pathfinding on unusual map types, such as ones where you can rotate in your cell but it takes time, or where there are thin walls - See ThinWallDemo and RotationDemo in the display module's tests folder for examples; this is an advanced feature, though @@ -205,7 +205,7 @@ Current Features: - Using indexes instead of always using keys can be useful, but it also means that getting random values from these collections will behave as expected across platforms - Most of these classes allow you to specify how keys are hashed and compared for equality, which permits using arrays as keys (if they aren't modified) or even allows the behavior of IdentityHashMap to be used with insertion ordering (which does allow keys to be modified, but has special requirements for accessing them) - The class CrossHash includes multiple hashing algorithms and predefined IHasher values for various usages, which can be passed to many OrderedMap/Set constructors - - SquidLib releases before beta 7 used LinkedHashMap and LinkedHashSet in place of OrderedMap and OrderedSet, and converting from beta 6 to beta 7 may entail some changes + - SquidLib releases before beta 7 used LinkedHashMap and LinkedHashSet in place of OrderedMap and OrderedSet, and converting from beta 6 to beta 7 or later may entail some changes - Maker, a small class in squidlib-util, helps construct these data structures more conveniently - The serialization code in squidlib-extra is aware of these data structures and can serialize them efficiently and with less restrictions that normally apply to JSON (you can serialize non-String keys to our dialect of JSON with OrderedMap, for example) - This code also provides ways to compress the JSON output using lz-string encoding, which performs very well here; it uses the tiny library [BlazingChain](https://github.com/tommyettinger/BlazingChain) to do this @@ -264,7 +264,7 @@ configured the way libGDX prefers to work, and copy in any code you might alread Ideally, if you're just starting out you should use SquidSetup. Beta 6 has been added to SquidSetup. This is [the most recent, beta 6, release of the setup tool](https://github.com/SquidPony/SquidLib/releases/tag/v3.0.0-b6); -beta 7 support is being added to the next build. +beta 8 support is being added to the next build. This is [the new snapshot setup tool](https://github.com/tommyettinger/SquidSetup/releases/tag/v3.0.0-LATEST), which is good if you already understand Gradle, but especially if you want to test new features/fixes as they come in. It currently isn't named in the most accurate way; it actually downloads a fixed version from JitPack.io, but you can @@ -275,7 +275,8 @@ an alternative to the current official libGDX setup that aims to have more featu replace the current SquidSetup for stable releases, and it is likely that the next significant change to SquidSetup will be to make it a simple fork of czyzby's setup tool that includes the assets and also gets the most recent version from JitPack if possible. The gdx-setup project also allows demo code to be more easily supplied, and some demos are in -progress for SquidLib (one is already present in gdx-setup, but it is made for an earlier version of SquidLib). +progress for SquidLib (one is already present in gdx-setup, but it is made for an earlier version of SquidLib; this is +being remedied and gdx-setup should be ready to use beta 8 very soon). More information is available on the wiki here on Github, at the page on [Project Setup](https://github.com/SquidPony/SquidLib/wiki/Project-Setup). It may be somewhat out of date for now. diff --git a/squidlib-performance/pom.xml b/squidlib-performance/pom.xml index 83e6d1456c..6283adf180 100644 --- a/squidlib-performance/pom.xml +++ b/squidlib-performance/pom.xml @@ -33,11 +33,11 @@ THE POSSIBILITY OF SUCH DAMAGE. squidlib-parent com.squidpony - 3.0.0-SNAPSHOT + 3.0.0-b8 squidlib-performance - 3.0.0-SNAPSHOT + 3.0.0-b8 jar squidlib-performance @@ -74,7 +74,7 @@ THE POSSIBILITY OF SUCH DAMAGE. com.squidpony squidlib - 3.0.0-SNAPSHOT + 3.0.0-b8 com.badlogicgames.gdx diff --git a/squidlib-util/README.md b/squidlib-util/README.md index bfd438acc7..12214ce3d5 100644 --- a/squidlib-util/README.md +++ b/squidlib-util/README.md @@ -8,19 +8,19 @@ SquidLib is used for Wyrm, Epigon, Attack the Geth, Assault Fish, [Dungeon Merce Documentation: --- Jars of javadocs are distributed with each release via Maven Central, and with the current latest via JitPack. You can -get the docs and source of the latest version, 3.0.0-b7, in two parts for each; squidlib-util (the core of the library, +get the docs and source of the latest version, 3.0.0-b8, in two parts for each; squidlib-util (the core of the library, and also the largest part) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b7/squidlib-util-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b7/squidlib-util-3.0.0-b7-sources.jar), +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b8/squidlib-util-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b8/squidlib-util-3.0.0-b8-sources.jar), while squidlib (the display part of the library, named the way it is because depending on squidlib should also pull in squidlib-util to make it a "one-stop shop" dependency) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b7/squidlib-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b7/squidlib-3.0.0-b7-sources.jar). +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b8/squidlib-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b8/squidlib-3.0.0-b8-sources.jar). The completely-optional squidlib-extra module (primarily used for serialization; relies on libGDX but doesn't use it for display) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b7/squidlib-extra-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b7/squidlib-extra-3.0.0-b7-sources.jar). +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b8/squidlib-extra-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b8/squidlib-extra-3.0.0-b8-sources.jar). -You can browse the javadocs of a recent commit (possibly newer than 3.0.0-b7, but no older) +You can browse the javadocs of a recent commit (possibly newer than 3.0.0-b8, but no older) [here for squidlib-util](http://squidpony.github.io/SquidLib/squidlib-util/index.html), [here for squidlib](http://squidpony.github.io/SquidLib/squidlib/index.html), and [here for squidlib-extra](http://squidpony.github.io/SquidLib/squidlib-extra/index.html), though the docs here are @@ -64,7 +64,7 @@ Current Features: - Starting with 3.0.0 beta 5, there is support for variable-width fonts in various widgets, which can be much more legible - Can create multiple overlapping layers - Basic foreground & background color differences per cell - - Using a partially-transparent, full-cell tile in an overlay can change the colors below it + - Using a partially-transparent, full-cell tile in an overlay can change the colors below it - Multiple layers can be used to have multiple characters in a single cell - Multiple different sized layers can be used for sub-cell effects - Overlays can be used to show animation effects without disturbing the display @@ -83,7 +83,7 @@ Current Features: - Can get an arbitrary amount of blend between two colors - Starting with 3.0.0 beta 2, you can alter colors automatically using Filters - Starting with 3.0.0 beta 5, lots of options are available for generating gradients, including with Filters, and gradients that wrap around like a rainbow -- In recent betas (7 at least), there's a filter that adjusts the brightness of red and green to help players with common forms of red-green colorblindness distinguish game objects that would otherwise be too similar +- In recent betas (7 onward), there's a filter that adjusts the brightness of red and green to help players with common forms of red-green colorblindness distinguish game objects that would otherwise be too similar - SquidColorCenter (and potentially other IColorCenter implementations) allow finding and adjusting the hue, saturation, and value of colors ###Roguelike-Intended Toolkit @@ -132,7 +132,7 @@ Current Features: - DijkstraMap can be given a Technique that contains a minimum and maximum range, and an Area of Effect, and it will pathfind to a relatively good place to use that technique. - There are many kinds of Area of Effect (AOE) provided, and given the right information, they can calculate the best place to position that AOE to hit as many targets as possible (not an easy task, but it gets calculated quickly). - DijkstraMap can partially scan an area, stopping once it reaches a given distance. - - As of beta 7, DijkstraMap finally incorporates the straightforward optimization of immediately stopping distance + - Since beta 7, DijkstraMap finally incorporates the straightforward optimization of immediately stopping distance calculation once an ideal path has been found; the case of scanning the whole map intentionally is unaffected, though other optimizations made that faster too - It would seem like partial scanning is normally ideal, but there are cases where you can avoid multiple partial scans @@ -140,11 +140,11 @@ Current Features: is used in BasicDemo (in the examples of the display module) to handle the highlighted path from the player to the mouse cursor - Several classes support multi-cell creatures, including DijkstraMap - DijkstraMap is currently recommended for pathfinding because it has been optimized more heavily than AStarSearch - - Make that, much more heavily, as of beta 7; DijkstraMap can, depending on heuristic, beat even top-notch pathfinding algorithms like gdx-ai's indexed A* on long/winding enough paths. - - AStarSearch has gotten some optimization, but is still much slower than DijkstraMap in beta 7 + - Make that, much more heavily, since beta 7; DijkstraMap can, depending on heuristic, beat even top-notch pathfinding algorithms like gdx-ai's indexed A* on long/winding enough paths. + - AStarSearch has gotten some optimization, but is still much slower than DijkstraMap in betas 7 and 8 - CustomDijkstraMap allows pathfinding on unusual map types, such as ones where you can rotate in your cell but it takes time, or where there are thin walls - See ThinWallDemo and RotationDemo in the display module's tests folder for examples; this is an advanced feature, though - + ###Fully Documented API - Demos of all functionality included - EverythingDemo shows off lots of features and is fully documented; a good place to start @@ -205,7 +205,7 @@ Current Features: - Using indexes instead of always using keys can be useful, but it also means that getting random values from these collections will behave as expected across platforms - Most of these classes allow you to specify how keys are hashed and compared for equality, which permits using arrays as keys (if they aren't modified) or even allows the behavior of IdentityHashMap to be used with insertion ordering (which does allow keys to be modified, but has special requirements for accessing them) - The class CrossHash includes multiple hashing algorithms and predefined IHasher values for various usages, which can be passed to many OrderedMap/Set constructors - - SquidLib releases before beta 7 used LinkedHashMap and LinkedHashSet in place of OrderedMap and OrderedSet, and converting from beta 6 to beta 7 may entail some changes + - SquidLib releases before beta 7 used LinkedHashMap and LinkedHashSet in place of OrderedMap and OrderedSet, and converting from beta 6 to beta 7 or later may entail some changes - Maker, a small class in squidlib-util, helps construct these data structures more conveniently - The serialization code in squidlib-extra is aware of these data structures and can serialize them efficiently and with less restrictions that normally apply to JSON (you can serialize non-String keys to our dialect of JSON with OrderedMap, for example) - This code also provides ways to compress the JSON output using lz-string encoding, which performs very well here; it uses the tiny library [BlazingChain](https://github.com/tommyettinger/BlazingChain) to do this @@ -264,7 +264,7 @@ configured the way libGDX prefers to work, and copy in any code you might alread Ideally, if you're just starting out you should use SquidSetup. Beta 6 has been added to SquidSetup. This is [the most recent, beta 6, release of the setup tool](https://github.com/SquidPony/SquidLib/releases/tag/v3.0.0-b6); -beta 7 support is being added to the next build. +beta 8 support is being added to the next build. This is [the new snapshot setup tool](https://github.com/tommyettinger/SquidSetup/releases/tag/v3.0.0-LATEST), which is good if you already understand Gradle, but especially if you want to test new features/fixes as they come in. It currently isn't named in the most accurate way; it actually downloads a fixed version from JitPack.io, but you can @@ -275,7 +275,8 @@ an alternative to the current official libGDX setup that aims to have more featu replace the current SquidSetup for stable releases, and it is likely that the next significant change to SquidSetup will be to make it a simple fork of czyzby's setup tool that includes the assets and also gets the most recent version from JitPack if possible. The gdx-setup project also allows demo code to be more easily supplied, and some demos are in -progress for SquidLib (one is already present in gdx-setup, but it is made for an earlier version of SquidLib). +progress for SquidLib (one is already present in gdx-setup, but it is made for an earlier version of SquidLib; this is +being remedied and gdx-setup should be ready to use beta 8 very soon). More information is available on the wiki here on Github, at the page on [Project Setup](https://github.com/SquidPony/SquidLib/wiki/Project-Setup). It may be somewhat out of date for now. diff --git a/squidlib-util/pom.xml b/squidlib-util/pom.xml index 07c9ea8fb2..dc203a9b69 100644 --- a/squidlib-util/pom.xml +++ b/squidlib-util/pom.xml @@ -6,7 +6,7 @@ com.squidpony squidlib-parent - 3.0.0-SNAPSHOT + 3.0.0-b8 ../ squidlib-util diff --git a/squidlib/README.md b/squidlib/README.md index 7b66c6c7c5..12214ce3d5 100644 --- a/squidlib/README.md +++ b/squidlib/README.md @@ -8,19 +8,19 @@ SquidLib is used for Wyrm, Epigon, Attack the Geth, Assault Fish, [Dungeon Merce Documentation: --- Jars of javadocs are distributed with each release via Maven Central, and with the current latest via JitPack. You can -get the docs and source of the latest version, 3.0.0-b7, in two parts for each; squidlib-util (the core of the library, +get the docs and source of the latest version, 3.0.0-b8, in two parts for each; squidlib-util (the core of the library, and also the largest part) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b7/squidlib-util-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b7/squidlib-util-3.0.0-b7-sources.jar), +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b8/squidlib-util-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-util/3.0.0-b8/squidlib-util-3.0.0-b8-sources.jar), while squidlib (the display part of the library, named the way it is because depending on squidlib should also pull in squidlib-util to make it a "one-stop shop" dependency) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b7/squidlib-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b7/squidlib-3.0.0-b7-sources.jar). +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b8/squidlib-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib/3.0.0-b8/squidlib-3.0.0-b8-sources.jar). The completely-optional squidlib-extra module (primarily used for serialization; relies on libGDX but doesn't use it for display) has its -[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b7/squidlib-extra-3.0.0-b7-javadoc.jar), -and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b7/squidlib-extra-3.0.0-b7-sources.jar). +[docs here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b8/squidlib-extra-3.0.0-b8-javadoc.jar), +and [source here](http://search.maven.org/remotecontent?filepath=com/squidpony/squidlib-extra/3.0.0-b8/squidlib-extra-3.0.0-b8-sources.jar). -You can browse the javadocs of a recent commit (possibly newer than 3.0.0-b7, but no older) +You can browse the javadocs of a recent commit (possibly newer than 3.0.0-b8, but no older) [here for squidlib-util](http://squidpony.github.io/SquidLib/squidlib-util/index.html), [here for squidlib](http://squidpony.github.io/SquidLib/squidlib/index.html), and [here for squidlib-extra](http://squidpony.github.io/SquidLib/squidlib-extra/index.html), though the docs here are @@ -83,7 +83,7 @@ Current Features: - Can get an arbitrary amount of blend between two colors - Starting with 3.0.0 beta 2, you can alter colors automatically using Filters - Starting with 3.0.0 beta 5, lots of options are available for generating gradients, including with Filters, and gradients that wrap around like a rainbow -- In recent betas (7 at least), there's a filter that adjusts the brightness of red and green to help players with common forms of red-green colorblindness distinguish game objects that would otherwise be too similar +- In recent betas (7 onward), there's a filter that adjusts the brightness of red and green to help players with common forms of red-green colorblindness distinguish game objects that would otherwise be too similar - SquidColorCenter (and potentially other IColorCenter implementations) allow finding and adjusting the hue, saturation, and value of colors ###Roguelike-Intended Toolkit @@ -132,7 +132,7 @@ Current Features: - DijkstraMap can be given a Technique that contains a minimum and maximum range, and an Area of Effect, and it will pathfind to a relatively good place to use that technique. - There are many kinds of Area of Effect (AOE) provided, and given the right information, they can calculate the best place to position that AOE to hit as many targets as possible (not an easy task, but it gets calculated quickly). - DijkstraMap can partially scan an area, stopping once it reaches a given distance. - - As of beta 7, DijkstraMap finally incorporates the straightforward optimization of immediately stopping distance + - Since beta 7, DijkstraMap finally incorporates the straightforward optimization of immediately stopping distance calculation once an ideal path has been found; the case of scanning the whole map intentionally is unaffected, though other optimizations made that faster too - It would seem like partial scanning is normally ideal, but there are cases where you can avoid multiple partial scans @@ -140,8 +140,8 @@ Current Features: is used in BasicDemo (in the examples of the display module) to handle the highlighted path from the player to the mouse cursor - Several classes support multi-cell creatures, including DijkstraMap - DijkstraMap is currently recommended for pathfinding because it has been optimized more heavily than AStarSearch - - Make that, much more heavily, as of beta 7; DijkstraMap can, depending on heuristic, beat even top-notch pathfinding algorithms like gdx-ai's indexed A* on long/winding enough paths. - - AStarSearch has gotten some optimization, but is still much slower than DijkstraMap in beta 7 + - Make that, much more heavily, since beta 7; DijkstraMap can, depending on heuristic, beat even top-notch pathfinding algorithms like gdx-ai's indexed A* on long/winding enough paths. + - AStarSearch has gotten some optimization, but is still much slower than DijkstraMap in betas 7 and 8 - CustomDijkstraMap allows pathfinding on unusual map types, such as ones where you can rotate in your cell but it takes time, or where there are thin walls - See ThinWallDemo and RotationDemo in the display module's tests folder for examples; this is an advanced feature, though @@ -205,7 +205,7 @@ Current Features: - Using indexes instead of always using keys can be useful, but it also means that getting random values from these collections will behave as expected across platforms - Most of these classes allow you to specify how keys are hashed and compared for equality, which permits using arrays as keys (if they aren't modified) or even allows the behavior of IdentityHashMap to be used with insertion ordering (which does allow keys to be modified, but has special requirements for accessing them) - The class CrossHash includes multiple hashing algorithms and predefined IHasher values for various usages, which can be passed to many OrderedMap/Set constructors - - SquidLib releases before beta 7 used LinkedHashMap and LinkedHashSet in place of OrderedMap and OrderedSet, and converting from beta 6 to beta 7 may entail some changes + - SquidLib releases before beta 7 used LinkedHashMap and LinkedHashSet in place of OrderedMap and OrderedSet, and converting from beta 6 to beta 7 or later may entail some changes - Maker, a small class in squidlib-util, helps construct these data structures more conveniently - The serialization code in squidlib-extra is aware of these data structures and can serialize them efficiently and with less restrictions that normally apply to JSON (you can serialize non-String keys to our dialect of JSON with OrderedMap, for example) - This code also provides ways to compress the JSON output using lz-string encoding, which performs very well here; it uses the tiny library [BlazingChain](https://github.com/tommyettinger/BlazingChain) to do this @@ -264,7 +264,7 @@ configured the way libGDX prefers to work, and copy in any code you might alread Ideally, if you're just starting out you should use SquidSetup. Beta 6 has been added to SquidSetup. This is [the most recent, beta 6, release of the setup tool](https://github.com/SquidPony/SquidLib/releases/tag/v3.0.0-b6); -beta 7 support is being added to the next build. +beta 8 support is being added to the next build. This is [the new snapshot setup tool](https://github.com/tommyettinger/SquidSetup/releases/tag/v3.0.0-LATEST), which is good if you already understand Gradle, but especially if you want to test new features/fixes as they come in. It currently isn't named in the most accurate way; it actually downloads a fixed version from JitPack.io, but you can @@ -275,7 +275,8 @@ an alternative to the current official libGDX setup that aims to have more featu replace the current SquidSetup for stable releases, and it is likely that the next significant change to SquidSetup will be to make it a simple fork of czyzby's setup tool that includes the assets and also gets the most recent version from JitPack if possible. The gdx-setup project also allows demo code to be more easily supplied, and some demos are in -progress for SquidLib (one is already present in gdx-setup, but it is made for an earlier version of SquidLib). +progress for SquidLib (one is already present in gdx-setup, but it is made for an earlier version of SquidLib; this is +being remedied and gdx-setup should be ready to use beta 8 very soon). More information is available on the wiki here on Github, at the page on [Project Setup](https://github.com/SquidPony/SquidLib/wiki/Project-Setup). It may be somewhat out of date for now. diff --git a/squidlib/pom.xml b/squidlib/pom.xml index 19e0787434..8fa3e32c3d 100644 --- a/squidlib/pom.xml +++ b/squidlib/pom.xml @@ -6,7 +6,7 @@ com.squidpony squidlib-parent - 3.0.0-SNAPSHOT + 3.0.0-b8 ../ squidlib @@ -26,7 +26,7 @@ com.squidpony squidlib-util - 3.0.0-SNAPSHOT + 3.0.0-b8 diff --git a/squidlib/src/main/java/squidlib.gwt.xml b/squidlib/src/main/java/squidlib.gwt.xml index 3b2247ce55..95a27c7e0d 100644 --- a/squidlib/src/main/java/squidlib.gwt.xml +++ b/squidlib/src/main/java/squidlib.gwt.xml @@ -1,11 +1,14 @@ - + - - - + + + \ No newline at end of file