matchGroups

Groups of recipe slots used by CRecipe.Type.SHAPELESS matching.

Each MatchGroup states how many of its members must actually be filled by an input item; a slot whose coordinate is not covered is simply never assigned an input, no Material.AIR placeholder candidate required (contrast GroupRecipe).

The default implementation treats every entry of items as its own mandatory group (min == max == 1), which reproduces plain full-matching SHAPELESS behaviour and keeps requiresInputItemAmountMin / requiresInputItemAmountMax correct without any extra overrides. Implementations that override this to express optional/aggregate slots (e.g. ShapelessGroupRecipe) do not need to separately override those two methods.

Ignored by CRecipe.Type.SHAPED matching, which stays purely coordinate-based.

Contract: every MatchGroup.members coordinate returned here must be a key of items; violating this causes an exception during search.

Return

List Match groups covering (all or part of) items.

Since

5.3.0

See also