promotional bannermobile promotional banner

Aequivaleo

Analysis engine and mediator mod for analyzing recipes and equivalencies of items, blockstates and other game objects in minecraft.

File Details

aequivaleo-1.17.1-0.1.62-BETA-api-javadoc.jar

  • B
  • Sep 13, 2021
  • 404.14 KB
  • 17
  • 1.17.1
  • Forge

File Name

aequivaleo-1.17.1-0.1.62-BETA-api-javadoc.jar

Supported Versions

  • 1.17.1

Curse Maven Snippet

Forge

implementation fg.deobf("curse.maven:aequivaleo-404450:3458734")
Curse Maven does not yet support mods that have disabled 3rd party sharing

Learn more about Curse Maven

aequivaleo Changelog

Version: 1.17.1-0.1.62-BETA

  • Fix an issue that caused graphs to produce invalid cycles with double edges.

(cherry picked from commit b9e4fb0352a1fef4c8aac181d01c639c3d237413) * Implement a merger for graph analysis. * Fix the compile errors introduced by the cherry-pick due to class and method name changes. * Fix identity issues in the tag container. * Update tag systems. * Fix tags requiring iteration. * Some minor 1.17.x fixes and adding support for lossy recipe output. * Fix the duplicate resource warnings. * Update to 1.17.1 * Fix Post_Processing not counting as having data available. * Add support for querying the analysis state engine state.

Closes: #16. * Update the naming of the API methods with regards to results calculation.

Closes: #17 * Enable support for dealing with fluids in buckets automatically.

As such it suffices to give the container and the fluid the compounds and the rest (Container with fluids, FluidStacks, etc) will get populated by the engine.

Closes #19 * Fix the AbstractInformationProvider using normal hashsets in the SpecBuilder compared to LinkedHashSets. Fix several uses of normal sets where either LinkedHashSets or SortedSets are better. * Make serialization deterministic as far as I can tell. All sets have an order now when written. * Added endpoints to get the entire cache entry. Added an additional cache value endpoint which can be used to adapt the cache to a given container value. * Fix problems with readString() being sideonly. WHY?!? * Remove the gradle module from the damn publications * Make ADDITIVE the default file mode. * Fix a crash that occurs when no requiredMods are specified. * Fix the build.gradle * Add several new features related to plugins and dependent mods.

Added: - Support for conditional plugins, that depend on a set of required mods. - Support for conditionally loading generic recipes - Support for conditionally loading container information - Recipes are only processed when valid. - Better support for tags.

Reworked: - Serializers and Datagen utils now use builders. * Fix some of the remaining issues in the build.gradle file and document a missing parameter in the api. * Strip curse.maven based dependencies from being externally visible in the generated pom. * Fixed an issue where a certain graph constructs with two neighboring circles within a larger circle could cause a hardcrash when one of the inner circles had an input. * Current compiling state before updating the mappings and forge gradle. * Staging before update to the new FG and Forge RB, as well as the mappings. * Add support for dynamic deserialization of ingredient types. * Initial work on refactoring the parsing of the datapacks. * Fix log handler. Add a regex based blacklist for auto recipe conversion. * Add support simpler set management in datadriven elements. * Add support for data driven recipes. * Adding new features and add support for generic recipe processing. * Fix the unit tests by actually statically mocking the ModList. * Add a better way of determining the cachekey, this checks now for the modids loaded and their verion numbers. Added an option to store computed values in the results information cache. * Add world specific cache directory. * Adding an api endpoint that handles instance equivalencies. Adding an api which allows alternative values used during cache callback. Adding support for caching the calculation results based of off the graph hash. * Fixing the issue with the reload listener crash. * Fixing a bunch of stuff. This process a lot of things differently. Adds mediation. * Check for processing of recipe nodes in cycle reduction before actually grabbing their edges. * Performance improvements, javadoc fixes as well as several improvements to the processing logic. * Trying it that way. * Preventing loops from being generated. * Adding a throw case when the system can not find a container. * Adding Clique detection. This prevents cliques (or near cliques) from causing issues in cycle reduction. * Adding a huge performance boost to the analysis of InnerNodes by keeping track of the analyzed neighbors instead of asking the inner graph. * Add smithing and stone cutting recipes. * Removing the floor call in the unit amount calculation. * Merge pull request #9 from ldtteam/refactor/bfs-and-cycles

[Improvement] Add cycle reduction and deterministic processing. * Remove TestMain.java since this is not required anymore due to the Unit testing infra. * Fix comparators creating a new NBT Tag on itemstacks. * Merge branch 'version/1.16.3' into refactor/bfs-and-cycles

Conflicts:

gradle.properties

src/api/java/com/ldtteam/aequivaleo/api/compound/information/datagen/LockedInformationProvider.java

src/api/java/com/ldtteam/aequivaleo/api/compound/information/datagen/ValueInformationProvider.java

src/main/java/com/ldtteam/aequivaleo/analyzer/AequivaleoReloadListener.java

src/main/java/com/ldtteam/aequivaleo/analyzer/JGraphTBasedCompoundAnalyzer.java

src/main/java/com/ldtteam/aequivaleo/analyzer/jgrapht/node/AbstractNode.java

src/main/java/com/ldtteam/aequivaleo/config/CommonConfiguration.java

src/main/java/com/ldtteam/aequivaleo/recipe/equivalency/RecipeCalculator.java

src/test/java/com/ldtteam/aequivaleo/analyzer/JGraphTBasedCompoundAnalyzerTest.java

src/vanilla/java/com/ldtteam/aequivaleo/vanilla/VanillaAequivaleoPlugin.java

  • Cleanup of the engine.
  • Working version of the cycles processor.
  • A bunch of fixes.
  • Reworking the entire graph processing because recipes are stupid.
  • Subcycle processing is still broken. Nodes get a null key as value for some reason.
  • Adding custom logging and tracing that handles ingredients not loading.
  • A bunch of fixes.
  • Working on recipe graph calculations.
  • Rebased to use the new features as well in this branch.
  • Working on the implementation of the InnerGraphNode.
  • Reworking the entire graph processing because recipes are stupid.
  • Subcycle processing is still broken. Nodes get a null key as value for some reason.
  • Fix the paths that are being constructed by datagen.
  • Fix the unit tests now properly working due to the change of the way the result map is generated.
  • A bunch of fixes.
  • Add a world key parameter to the sync completed callback.
  • Fix the name of the locked and value information provider being identical.
  • Working on the implementation of the InnerGraphNode.
  • Reworking the entire graph processing because recipes are stupid.
  • Subcycle processing is still broken. Nodes get a null key as value for some reason.
  • Adding a set of additional Unit test that handle the calculation of the Stick-Bamboo issue.
  • Fixing a bug that was caused by using the wrong Pair class.
  • Start working on cycle handling.
  • Adding custom logging and tracing that handles ingredients not loading.
  • Fix the paths that are being constructed by datagen.
  • Fix the unit tests now properly working due to the change of the way the result map is generated.
  • A bunch of fixes.
  • Add a world key parameter to the sync completed callback.
  • Fix the name of the locked and value information provider being identical.
  • Merge pull request #7 from ldtteam/refactor/bfs

[ANALYSIS]: Refactor the analysis engine to use a proper queued BFS * Adding a set of additional Unit test that handle the calculation of the Stick-Bamboo issue. * Fixing a bug that was caused by using the wrong Pair class. * Adding more unit tests that valid the behaviour when values are undefined. * Adding a unit test that validates compatibility between different types and groups and their different behaviours. * Almost all unit test cases are now working and running. * Fixing the NME when loading in an SMP environment. * Working on more tests and API surfaces. * Initial iterator based working version. Removed source nodes since they are not needed anymore.

Added initial unit test structure more on that front to come. Closes #2 * Initial compile error free refactoring. * Ensuring that Items which produce a single air itemstack as a result for equivalency do not crash the engine: I am looking at you Quark. * Working on the BFS implementation. * Started the refactor. * Fixing a bug that was caused by using the wrong Pair class. * Fixing the NME when loading in an SMP environment. * Ensuring that Items which produce a single air itemstack as a result for equivalency do not crash the engine: I am looking at you Quark. * Publish a running 1.16.3 version.